summaryrefslogtreecommitdiffstats
path: root/target/linux/lantiq/patches-2.6.39/500-register_ebu.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/lantiq/patches-2.6.39/500-register_ebu.patch')
-rw-r--r--target/linux/lantiq/patches-2.6.39/500-register_ebu.patch41
1 files changed, 41 insertions, 0 deletions
diff --git a/target/linux/lantiq/patches-2.6.39/500-register_ebu.patch b/target/linux/lantiq/patches-2.6.39/500-register_ebu.patch
new file mode 100644
index 000000000..613cb69dc
--- /dev/null
+++ b/target/linux/lantiq/patches-2.6.39/500-register_ebu.patch
@@ -0,0 +1,41 @@
+--- a/arch/mips/lantiq/xway/devices.c
++++ b/arch/mips/lantiq/xway/devices.c
+@@ -121,6 +121,29 @@
+ }
+ }
+
++/* ebu */
++static struct resource ltq_ebu_resource =
++{
++ .name = "gpio_ebu",
++ .start = LTQ_EBU_GPIO_START,
++ .end = LTQ_EBU_GPIO_START + LTQ_EBU_GPIO_SIZE - 1,
++ .flags = IORESOURCE_MEM,
++};
++
++static struct platform_device ltq_ebu =
++{
++ .name = "ltq_ebu",
++ .resource = &ltq_ebu_resource,
++ .num_resources = 1,
++};
++
++void __init
++ltq_register_gpio_ebu(unsigned int value)
++{
++ ltq_ebu.dev.platform_data = (void*) value;
++ platform_device_register(&ltq_ebu);
++}
++
+ static struct resource ltq_spi_resources[] = {
+ {
+ .start = LTQ_SSC_BASE_ADDR,
+--- a/arch/mips/lantiq/xway/devices.h
++++ b/arch/mips/lantiq/xway/devices.h
+@@ -16,5 +16,6 @@
+ extern void ltq_register_gpio_stp(void);
+ extern void ltq_register_ase_asc(void);
+ extern void ltq_register_etop(struct ltq_eth_data *eth);
++extern void ltq_register_gpio_ebu(unsigned int value);
+
+ #endif