aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/lantiq/patches-2.6.32/530-register_tapi.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/lantiq/patches-2.6.32/530-register_tapi.patch')
-rw-r--r--target/linux/lantiq/patches-2.6.32/530-register_tapi.patch42
1 files changed, 42 insertions, 0 deletions
diff --git a/target/linux/lantiq/patches-2.6.32/530-register_tapi.patch b/target/linux/lantiq/patches-2.6.32/530-register_tapi.patch
new file mode 100644
index 0000000000..a581064443
--- /dev/null
+++ b/target/linux/lantiq/patches-2.6.32/530-register_tapi.patch
@@ -0,0 +1,42 @@
+--- a/arch/mips/lantiq/devices.c
++++ b/arch/mips/lantiq/devices.c
+@@ -120,3 +120,20 @@
+ pr_err("kernel is compiled without PCI support\n");
+ }
+ #endif
++
++static unsigned int *cp1_base = 0;
++unsigned int*
++ltq_get_cp1_base(void)
++{
++ return cp1_base;
++}
++EXPORT_SYMBOL(ltq_get_cp1_base);
++
++void __init
++ltq_register_tapi(void)
++{
++#define CP1_SIZE (1 << 20)
++ dma_addr_t dma;
++ cp1_base =
++ (void*)CPHYSADDR(dma_alloc_coherent(NULL, CP1_SIZE, &dma, GFP_ATOMIC));
++}
+--- a/arch/mips/lantiq/devices.h
++++ b/arch/mips/lantiq/devices.h
+@@ -19,5 +19,6 @@
+ extern void ltq_register_wdt(void);
+ extern void ltq_register_asc(int port);
+ extern void ltq_register_pci(struct ltq_pci_data *data);
++extern void ltq_register_tapi(void);
+
+ #endif
+--- a/arch/mips/lantiq/xway/mach-easy50712.c
++++ b/arch/mips/lantiq/xway/mach-easy50712.c
+@@ -66,6 +66,7 @@
+ ltq_register_nor(&easy50712_flash_data);
+ ltq_register_pci(&ltq_pci_data);
+ ltq_register_etop(&ltq_eth_data);
++ ltq_register_tapi();
+ }
+
+ MIPS_MACHINE(LTQ_MACH_EASY50712,