Commit f365ad5f authored by Linus Torvalds's avatar Linus Torvalds

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:
  [POWERPC] Fix DMA nodes in the MPC8610 HPCD device tree
  [POWERPC] Export empty_zero_page and copy_page in arch/ppc
  [POWERPC] Add "memory" clobber to MMIO accessors
  [POWERPC] pasemi: update pasemi_defconfig, enable electra_cf
  electra_cf: Add MODULE_DEVICE_TABLE()
parents 61ac7bf5 9c8b28c2
...@@ -251,14 +251,14 @@ ...@@ -251,14 +251,14 @@
dma@c300 { dma@c300 {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
compatible = "fsl,mpc8610-dma", "fsl,mpc8540-dma"; compatible = "fsl,mpc8610-dma", "fsl,eloplus-dma";
cell-index = <1>; cell-index = <1>;
reg = <0xc300 0x4>; /* DMA general status register */ reg = <0xc300 0x4>; /* DMA general status register */
ranges = <0x0 0xc100 0x200>; ranges = <0x0 0xc100 0x200>;
dma-channel@0 { dma-channel@0 {
compatible = "fsl,mpc8610-dma-channel", compatible = "fsl,mpc8610-dma-channel",
"fsl,mpc8540-dma-channel"; "fsl,eloplus-dma-channel";
cell-index = <0>; cell-index = <0>;
reg = <0x0 0x80>; reg = <0x0 0x80>;
interrupt-parent = <&mpic>; interrupt-parent = <&mpic>;
...@@ -266,7 +266,7 @@ ...@@ -266,7 +266,7 @@
}; };
dma-channel@1 { dma-channel@1 {
compatible = "fsl,mpc8610-dma-channel", compatible = "fsl,mpc8610-dma-channel",
"fsl,mpc8540-dma-channel"; "fsl,eloplus-dma-channel";
cell-index = <1>; cell-index = <1>;
reg = <0x80 0x80>; reg = <0x80 0x80>;
interrupt-parent = <&mpic>; interrupt-parent = <&mpic>;
...@@ -274,7 +274,7 @@ ...@@ -274,7 +274,7 @@
}; };
dma-channel@2 { dma-channel@2 {
compatible = "fsl,mpc8610-dma-channel", compatible = "fsl,mpc8610-dma-channel",
"fsl,mpc8540-dma-channel"; "fsl,eloplus-dma-channel";
cell-index = <2>; cell-index = <2>;
reg = <0x100 0x80>; reg = <0x100 0x80>;
interrupt-parent = <&mpic>; interrupt-parent = <&mpic>;
...@@ -282,7 +282,7 @@ ...@@ -282,7 +282,7 @@
}; };
dma-channel@3 { dma-channel@3 {
compatible = "fsl,mpc8610-dma-channel", compatible = "fsl,mpc8610-dma-channel",
"fsl,mpc8540-dma-channel"; "fsl,eloplus-dma-channel";
cell-index = <3>; cell-index = <3>;
reg = <0x180 0x80>; reg = <0x180 0x80>;
interrupt-parent = <&mpic>; interrupt-parent = <&mpic>;
......
This diff is collapsed.
...@@ -60,8 +60,10 @@ long long __ashrdi3(long long, int); ...@@ -60,8 +60,10 @@ long long __ashrdi3(long long, int);
long long __ashldi3(long long, int); long long __ashldi3(long long, int);
long long __lshrdi3(long long, int); long long __lshrdi3(long long, int);
EXPORT_SYMBOL(empty_zero_page);
EXPORT_SYMBOL(clear_pages); EXPORT_SYMBOL(clear_pages);
EXPORT_SYMBOL(clear_user_page); EXPORT_SYMBOL(clear_user_page);
EXPORT_SYMBOL(copy_page);
EXPORT_SYMBOL(transfer_to_handler); EXPORT_SYMBOL(transfer_to_handler);
EXPORT_SYMBOL(do_IRQ); EXPORT_SYMBOL(do_IRQ);
EXPORT_SYMBOL(machine_check_exception); EXPORT_SYMBOL(machine_check_exception);
......
...@@ -352,6 +352,7 @@ static struct of_device_id electra_cf_match[] = { ...@@ -352,6 +352,7 @@ static struct of_device_id electra_cf_match[] = {
}, },
{}, {},
}; };
MODULE_DEVICE_TABLE(of, electra_cf_match);
static struct of_platform_driver electra_cf_driver = { static struct of_platform_driver electra_cf_driver = {
.name = (char *)driver_name, .name = (char *)driver_name,
......
...@@ -100,7 +100,7 @@ static inline type name(const volatile type __iomem *addr) \ ...@@ -100,7 +100,7 @@ static inline type name(const volatile type __iomem *addr) \
{ \ { \
type ret; \ type ret; \
__asm__ __volatile__("sync;" insn ";twi 0,%0,0;isync" \ __asm__ __volatile__("sync;" insn ";twi 0,%0,0;isync" \
: "=r" (ret) : "r" (addr), "m" (*addr)); \ : "=r" (ret) : "r" (addr), "m" (*addr) : "memory"); \
return ret; \ return ret; \
} }
...@@ -108,8 +108,8 @@ static inline type name(const volatile type __iomem *addr) \ ...@@ -108,8 +108,8 @@ static inline type name(const volatile type __iomem *addr) \
static inline void name(volatile type __iomem *addr, type val) \ static inline void name(volatile type __iomem *addr, type val) \
{ \ { \
__asm__ __volatile__("sync;" insn \ __asm__ __volatile__("sync;" insn \
: "=m" (*addr) : "r" (val), "r" (addr)); \ : "=m" (*addr) : "r" (val), "r" (addr) : "memory"); \
IO_SET_SYNC_FLAG(); \ IO_SET_SYNC_FLAG(); \
} }
...@@ -333,7 +333,8 @@ static inline unsigned int name(unsigned int port) \ ...@@ -333,7 +333,8 @@ static inline unsigned int name(unsigned int port) \
" .long 3b,5b\n" \ " .long 3b,5b\n" \
".previous" \ ".previous" \
: "=&r" (x) \ : "=&r" (x) \
: "r" (port + _IO_BASE)); \ : "r" (port + _IO_BASE) \
: "memory"); \
return x; \ return x; \
} }
...@@ -350,7 +351,8 @@ static inline void name(unsigned int val, unsigned int port) \ ...@@ -350,7 +351,8 @@ static inline void name(unsigned int val, unsigned int port) \
" .long 0b,2b\n" \ " .long 0b,2b\n" \
" .long 1b,2b\n" \ " .long 1b,2b\n" \
".previous" \ ".previous" \
: : "r" (val), "r" (port + _IO_BASE)); \ : : "r" (val), "r" (port + _IO_BASE) \
: "memory"); \
} }
__do_in_asm(_rec_inb, "lbzx") __do_in_asm(_rec_inb, "lbzx")
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment