Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: Fix compile failure with non modular builds powerpc: Holly board needs dtbImage target powerpc: Fix interrupt values for DMA2 in MPC8610 HPCD device tree
This commit is contained in:
Коммит
b9719635f8
|
@ -195,7 +195,7 @@ image-$(CONFIG_PPC_CELLEB) += zImage.pseries
|
|||
image-$(CONFIG_PPC_CHRP) += zImage.chrp
|
||||
image-$(CONFIG_PPC_EFIKA) += zImage.chrp
|
||||
image-$(CONFIG_PPC_PMAC) += zImage.pmac
|
||||
image-$(CONFIG_PPC_HOLLY) += zImage.holly
|
||||
image-$(CONFIG_PPC_HOLLY) += dtbImage.holly
|
||||
image-$(CONFIG_PPC_PRPMC2800) += dtbImage.prpmc2800
|
||||
image-$(CONFIG_PPC_ISERIES) += zImage.iseries
|
||||
image-$(CONFIG_DEFAULT_UIMAGE) += uImage
|
||||
|
|
|
@ -281,7 +281,7 @@
|
|||
cell-index = <0>;
|
||||
reg = <0x0 0x80>;
|
||||
interrupt-parent = <&mpic>;
|
||||
interrupts = <60 2>;
|
||||
interrupts = <76 2>;
|
||||
};
|
||||
dma-channel@1 {
|
||||
compatible = "fsl,mpc8610-dma-channel",
|
||||
|
@ -289,7 +289,7 @@
|
|||
cell-index = <1>;
|
||||
reg = <0x80 0x80>;
|
||||
interrupt-parent = <&mpic>;
|
||||
interrupts = <61 2>;
|
||||
interrupts = <77 2>;
|
||||
};
|
||||
dma-channel@2 {
|
||||
compatible = "fsl,mpc8610-dma-channel",
|
||||
|
@ -297,7 +297,7 @@
|
|||
cell-index = <2>;
|
||||
reg = <0x100 0x80>;
|
||||
interrupt-parent = <&mpic>;
|
||||
interrupts = <62 2>;
|
||||
interrupts = <78 2>;
|
||||
};
|
||||
dma-channel@3 {
|
||||
compatible = "fsl,mpc8610-dma-channel",
|
||||
|
@ -305,7 +305,7 @@
|
|||
cell-index = <3>;
|
||||
reg = <0x180 0x80>;
|
||||
interrupt-parent = <&mpic>;
|
||||
interrupts = <63 2>;
|
||||
interrupts = <79 2>;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -409,6 +409,13 @@ do { \
|
|||
/* Keep this the last entry. */
|
||||
#define R_PPC64_NUM 107
|
||||
|
||||
/* There's actually a third entry here, but it's unused */
|
||||
struct ppc64_opd_entry
|
||||
{
|
||||
unsigned long funcaddr;
|
||||
unsigned long r2;
|
||||
};
|
||||
|
||||
#ifdef __KERNEL__
|
||||
|
||||
#ifdef CONFIG_SPU_BASE
|
||||
|
|
|
@ -2,6 +2,8 @@
|
|||
#define _ASM_POWERPC_SECTIONS_H
|
||||
#ifdef __KERNEL__
|
||||
|
||||
#include <linux/elf.h>
|
||||
#include <linux/uaccess.h>
|
||||
#include <asm-generic/sections.h>
|
||||
|
||||
#ifdef __powerpc64__
|
||||
|
@ -17,7 +19,15 @@ static inline int in_kernel_text(unsigned long addr)
|
|||
}
|
||||
|
||||
#undef dereference_function_descriptor
|
||||
void *dereference_function_descriptor(void *);
|
||||
static inline void *dereference_function_descriptor(void *ptr)
|
||||
{
|
||||
struct ppc64_opd_entry *desc = ptr;
|
||||
void *p;
|
||||
|
||||
if (!probe_kernel_address(&desc->funcaddr, p))
|
||||
ptr = p;
|
||||
return ptr;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
|
|
@ -21,9 +21,7 @@
|
|||
#include <linux/err.h>
|
||||
#include <linux/vmalloc.h>
|
||||
#include <linux/bug.h>
|
||||
#include <linux/uaccess.h>
|
||||
#include <asm/module.h>
|
||||
#include <asm/sections.h>
|
||||
#include <asm/firmware.h>
|
||||
#include <asm/code-patching.h>
|
||||
#include <linux/sort.h>
|
||||
|
@ -43,13 +41,6 @@
|
|||
#define DEBUGP(fmt , ...)
|
||||
#endif
|
||||
|
||||
/* There's actually a third entry here, but it's unused */
|
||||
struct ppc64_opd_entry
|
||||
{
|
||||
unsigned long funcaddr;
|
||||
unsigned long r2;
|
||||
};
|
||||
|
||||
/* Like PPC32, we need little trampolines to do > 24-bit jumps (into
|
||||
the kernel itself). But on PPC64, these need to be used for every
|
||||
jump, actually, to reset r2 (TOC+0x8000). */
|
||||
|
@ -452,13 +443,3 @@ int apply_relocate_add(Elf64_Shdr *sechdrs,
|
|||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void *dereference_function_descriptor(void *ptr)
|
||||
{
|
||||
struct ppc64_opd_entry *desc = ptr;
|
||||
void *p;
|
||||
|
||||
if (!probe_kernel_address(&desc->funcaddr, p))
|
||||
ptr = p;
|
||||
return ptr;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче