summaryrefslogtreecommitdiffstats
path: root/target/linux/lantiq/patches-2.6.39/530-register_tapi.patch
blob: a525313eae749bb320a366ecca754687053d4a30 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
--- a/arch/mips/lantiq/devices.c
+++ b/arch/mips/lantiq/devices.c
@@ -120,3 +120,20 @@ void __init ltq_register_pci(struct ltq_
 	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_nor(struct phys
 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 @@ static void __init easy50712_init(void)
 	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,