summaryrefslogtreecommitdiffstats
path: root/target/linux/brcm47xx
diff options
context:
space:
mode:
authormb <mb@3c298f89-4303-0410-b956-a3cf2f4a3e73>2008-02-19 13:52:57 +0000
committermb <mb@3c298f89-4303-0410-b956-a3cf2f4a3e73>2008-02-19 13:52:57 +0000
commit641e19bb651ea4b4bb998c68252fe09227f41e8e (patch)
tree9aa1e77c58fac6efbdff6b2bdaf15155d8667a08 /target/linux/brcm47xx
parent4202d050af8cf088e7dfb643d491d3b4b169e473 (diff)
ssb: Update the GPIO API
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10495 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/brcm47xx')
-rw-r--r--target/linux/brcm47xx/patches-2.6.23/001-ssb-fix-gpio-api.patch160
-rw-r--r--target/linux/brcm47xx/patches-2.6.23/220-bcm5354.patch18
-rw-r--r--target/linux/brcm47xx/patches-2.6.23/602-ssb-fix-serial-on-new-devices.patch16
-rw-r--r--target/linux/brcm47xx/patches-2.6.23/610-ssb-watchdog-fix.patch36
4 files changed, 195 insertions, 35 deletions
diff --git a/target/linux/brcm47xx/patches-2.6.23/001-ssb-fix-gpio-api.patch b/target/linux/brcm47xx/patches-2.6.23/001-ssb-fix-gpio-api.patch
new file mode 100644
index 000000000..f8d454f5a
--- /dev/null
+++ b/target/linux/brcm47xx/patches-2.6.23/001-ssb-fix-gpio-api.patch
@@ -0,0 +1,160 @@
+Index: linux-2.6.23.16/drivers/ssb/driver_chipcommon.c
+===================================================================
+--- linux-2.6.23.16.orig/drivers/ssb/driver_chipcommon.c 2008-02-19 14:37:06.000000000 +0100
++++ linux-2.6.23.16/drivers/ssb/driver_chipcommon.c 2008-02-19 14:37:08.000000000 +0100
+@@ -39,12 +39,14 @@ static inline void chipco_write32(struct
+ ssb_write32(cc->dev, offset, value);
+ }
+
+-static inline void chipco_write32_masked(struct ssb_chipcommon *cc, u16 offset,
+- u32 mask, u32 value)
++static inline u32 chipco_write32_masked(struct ssb_chipcommon *cc, u16 offset,
++ u32 mask, u32 value)
+ {
+ value &= mask;
+ value |= chipco_read32(cc, offset) & ~mask;
+ chipco_write32(cc, offset, value);
++
++ return value;
+ }
+
+ void ssb_chipco_set_clockmode(struct ssb_chipcommon *cc,
+@@ -355,16 +357,37 @@ u32 ssb_chipco_gpio_in(struct ssb_chipco
+ {
+ return chipco_read32(cc, SSB_CHIPCO_GPIOIN) & mask;
+ }
++EXPORT_SYMBOL(ssb_chipco_gpio_in);
++
++u32 ssb_chipco_gpio_out(struct ssb_chipcommon *cc, u32 mask, u32 value)
++{
++ return chipco_write32_masked(cc, SSB_CHIPCO_GPIOOUT, mask, value);
++}
++EXPORT_SYMBOL(ssb_chipco_gpio_out);
++
++u32 ssb_chipco_gpio_outen(struct ssb_chipcommon *cc, u32 mask, u32 value)
++{
++ return chipco_write32_masked(cc, SSB_CHIPCO_GPIOOUTEN, mask, value);
++}
++EXPORT_SYMBOL(ssb_chipco_gpio_outen);
++
++u32 ssb_chipco_gpio_control(struct ssb_chipcommon *cc, u32 mask, u32 value)
++{
++ return chipco_write32_masked(cc, SSB_CHIPCO_GPIOCTL, mask, value);
++}
++EXPORT_SYMBOL(ssb_chipco_gpio_control);
+
+-void ssb_chipco_gpio_out(struct ssb_chipcommon *cc, u32 mask, u32 value)
++u32 ssb_chipco_gpio_intmask(struct ssb_chipcommon *cc, u32 mask, u32 value)
+ {
+- chipco_write32_masked(cc, SSB_CHIPCO_GPIOOUT, mask, value);
++ return chipco_write32_masked(cc, SSB_CHIPCO_GPIOIRQ, mask, value);
+ }
++EXPORT_SYMBOL(ssb_chipco_gpio_intmask);
+
+-void ssb_chipco_gpio_outen(struct ssb_chipcommon *cc, u32 mask, u32 value)
++u32 ssb_chipco_gpio_polarity(struct ssb_chipcommon *cc, u32 mask, u32 value)
+ {
+- chipco_write32_masked(cc, SSB_CHIPCO_GPIOOUTEN, mask, value);
++ return chipco_write32_masked(cc, SSB_CHIPCO_GPIOPOL, mask, value);
+ }
++EXPORT_SYMBOL(ssb_chipco_gpio_polarity);
+
+ #ifdef CONFIG_SSB_SERIAL
+ int ssb_chipco_serial_init(struct ssb_chipcommon *cc,
+Index: linux-2.6.23.16/drivers/ssb/driver_extif.c
+===================================================================
+--- linux-2.6.23.16.orig/drivers/ssb/driver_extif.c 2008-02-19 14:37:06.000000000 +0100
++++ linux-2.6.23.16/drivers/ssb/driver_extif.c 2008-02-19 14:37:08.000000000 +0100
+@@ -27,12 +27,14 @@ static inline void extif_write32(struct
+ ssb_write32(extif->dev, offset, value);
+ }
+
+-static inline void extif_write32_masked(struct ssb_extif *extif, u16 offset,
+- u32 mask, u32 value)
++static inline u32 extif_write32_masked(struct ssb_extif *extif, u16 offset,
++ u32 mask, u32 value)
+ {
+ value &= mask;
+ value |= extif_read32(extif, offset) & ~mask;
+ extif_write32(extif, offset, value);
++
++ return value;
+ }
+
+ #ifdef CONFIG_SSB_SERIAL
+@@ -114,16 +116,30 @@ u32 ssb_extif_gpio_in(struct ssb_extif *
+ {
+ return extif_read32(extif, SSB_EXTIF_GPIO_IN) & mask;
+ }
++EXPORT_SYMBOL(ssb_extif_gpio_in);
+
+-void ssb_extif_gpio_out(struct ssb_extif *extif, u32 mask, u32 value)
++u32 ssb_extif_gpio_out(struct ssb_extif *extif, u32 mask, u32 value)
+ {
+ return extif_write32_masked(extif, SSB_EXTIF_GPIO_OUT(0),
+ mask, value);
+ }
++EXPORT_SYMBOL(ssb_extif_gpio_out);
+
+-void ssb_extif_gpio_outen(struct ssb_extif *extif, u32 mask, u32 value)
++u32 ssb_extif_gpio_outen(struct ssb_extif *extif, u32 mask, u32 value)
+ {
+ return extif_write32_masked(extif, SSB_EXTIF_GPIO_OUTEN(0),
+ mask, value);
+ }
++EXPORT_SYMBOL(ssb_extif_gpio_outen);
++
++u32 ssb_extif_gpio_polarity(struct ssb_extif *extif, u32 mask, u32 value)
++{
++ return extif_write32_masked(extif, SSB_EXTIF_GPIO_INTPOL, mask, value);
++}
++EXPORT_SYMBOL(ssb_extif_gpio_polarity);
+
++u32 ssb_extif_gpio_intmask(struct ssb_extif *extif, u32 mask, u32 value)
++{
++ return extif_write32_masked(extif, SSB_EXTIF_GPIO_INTMASK, mask, value);
++}
++EXPORT_SYMBOL(ssb_extif_gpio_intmask);
+Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_chipcommon.h
+===================================================================
+--- linux-2.6.23.16.orig/include/linux/ssb/ssb_driver_chipcommon.h 2008-02-19 14:37:06.000000000 +0100
++++ linux-2.6.23.16/include/linux/ssb/ssb_driver_chipcommon.h 2008-02-19 14:37:08.000000000 +0100
+@@ -382,11 +382,13 @@ extern void ssb_chipco_set_clockmode(str
+ extern void ssb_chipco_watchdog_timer_set(struct ssb_chipcommon *cc,
+ u32 ticks);
+
++/* Chipcommon GPIO pin access. */
+ u32 ssb_chipco_gpio_in(struct ssb_chipcommon *cc, u32 mask);
+-
+-void ssb_chipco_gpio_out(struct ssb_chipcommon *cc, u32 mask, u32 value);
+-
+-void ssb_chipco_gpio_outen(struct ssb_chipcommon *cc, u32 mask, u32 value);
++u32 ssb_chipco_gpio_out(struct ssb_chipcommon *cc, u32 mask, u32 value);
++u32 ssb_chipco_gpio_outen(struct ssb_chipcommon *cc, u32 mask, u32 value);
++u32 ssb_chipco_gpio_control(struct ssb_chipcommon *cc, u32 mask, u32 value);
++u32 ssb_chipco_gpio_intmask(struct ssb_chipcommon *cc, u32 mask, u32 value);
++u32 ssb_chipco_gpio_polarity(struct ssb_chipcommon *cc, u32 mask, u32 value);
+
+ #ifdef CONFIG_SSB_SERIAL
+ extern int ssb_chipco_serial_init(struct ssb_chipcommon *cc,
+Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_extif.h
+===================================================================
+--- linux-2.6.23.16.orig/include/linux/ssb/ssb_driver_extif.h 2008-02-19 14:37:06.000000000 +0100
++++ linux-2.6.23.16/include/linux/ssb/ssb_driver_extif.h 2008-02-19 14:37:08.000000000 +0100
+@@ -171,11 +171,12 @@ extern void ssb_extif_get_clockcontrol(s
+ extern void ssb_extif_timing_init(struct ssb_extif *extif,
+ unsigned long ns);
+
++/* Extif GPIO pin access */
+ u32 ssb_extif_gpio_in(struct ssb_extif *extif, u32 mask);
+-
+-void ssb_extif_gpio_out(struct ssb_extif *extif, u32 mask, u32 value);
+-
+-void ssb_extif_gpio_outen(struct ssb_extif *extif, u32 mask, u32 value);
++u32 ssb_extif_gpio_out(struct ssb_extif *extif, u32 mask, u32 value);
++u32 ssb_extif_gpio_outen(struct ssb_extif *extif, u32 mask, u32 value);
++u32 ssb_extif_gpio_polarity(struct ssb_extif *extif, u32 mask, u32 value);
++u32 ssb_extif_gpio_intmask(struct ssb_extif *extif, u32 mask, u32 value);
+
+ #ifdef CONFIG_SSB_SERIAL
+ extern int ssb_extif_serial_init(struct ssb_extif *extif,
diff --git a/target/linux/brcm47xx/patches-2.6.23/220-bcm5354.patch b/target/linux/brcm47xx/patches-2.6.23/220-bcm5354.patch
index e3afcbc23..53818aba6 100644
--- a/target/linux/brcm47xx/patches-2.6.23/220-bcm5354.patch
+++ b/target/linux/brcm47xx/patches-2.6.23/220-bcm5354.patch
@@ -1,8 +1,8 @@
Index: linux-2.6.23.16/drivers/ssb/driver_chipcommon.c
===================================================================
---- linux-2.6.23.16.orig/drivers/ssb/driver_chipcommon.c 2008-02-19 00:42:42.000000000 +0100
-+++ linux-2.6.23.16/drivers/ssb/driver_chipcommon.c 2008-02-19 00:43:34.000000000 +0100
-@@ -268,6 +268,8 @@ void ssb_chipco_resume(struct ssb_chipco
+--- linux-2.6.23.16.orig/drivers/ssb/driver_chipcommon.c 2008-02-19 13:46:08.000000000 +0100
++++ linux-2.6.23.16/drivers/ssb/driver_chipcommon.c 2008-02-19 13:46:17.000000000 +0100
+@@ -270,6 +270,8 @@ void ssb_chipco_resume(struct ssb_chipco
void ssb_chipco_get_clockcpu(struct ssb_chipcommon *cc,
u32 *plltype, u32 *n, u32 *m)
{
@@ -11,7 +11,7 @@ Index: linux-2.6.23.16/drivers/ssb/driver_chipcommon.c
*n = chipco_read32(cc, SSB_CHIPCO_CLOCK_N);
*plltype = (cc->capabilities & SSB_CHIPCO_CAP_PLLT);
switch (*plltype) {
-@@ -291,6 +293,8 @@ void ssb_chipco_get_clockcpu(struct ssb_
+@@ -293,6 +295,8 @@ void ssb_chipco_get_clockcpu(struct ssb_
void ssb_chipco_get_clockcontrol(struct ssb_chipcommon *cc,
u32 *plltype, u32 *n, u32 *m)
{
@@ -22,8 +22,8 @@ Index: linux-2.6.23.16/drivers/ssb/driver_chipcommon.c
switch (*plltype) {
Index: linux-2.6.23.16/drivers/ssb/driver_mipscore.c
===================================================================
---- linux-2.6.23.16.orig/drivers/ssb/driver_mipscore.c 2008-02-19 00:42:42.000000000 +0100
-+++ linux-2.6.23.16/drivers/ssb/driver_mipscore.c 2008-02-19 00:43:34.000000000 +0100
+--- linux-2.6.23.16.orig/drivers/ssb/driver_mipscore.c 2008-02-19 13:46:08.000000000 +0100
++++ linux-2.6.23.16/drivers/ssb/driver_mipscore.c 2008-02-19 13:46:17.000000000 +0100
@@ -160,6 +160,8 @@ u32 ssb_cpu_clock(struct ssb_mipscore *m
if ((pll_type == SSB_PLLTYPE_5) || (bus->chip_id == 0x5365)) {
@@ -35,9 +35,9 @@ Index: linux-2.6.23.16/drivers/ssb/driver_mipscore.c
}
Index: linux-2.6.23.16/drivers/ssb/main.c
===================================================================
---- linux-2.6.23.16.orig/drivers/ssb/main.c 2008-02-19 00:42:15.000000000 +0100
-+++ linux-2.6.23.16/drivers/ssb/main.c 2008-02-19 00:43:34.000000000 +0100
-@@ -860,6 +860,8 @@ u32 ssb_clockspeed(struct ssb_bus *bus)
+--- linux-2.6.23.16.orig/drivers/ssb/main.c 2008-02-19 13:46:08.000000000 +0100
++++ linux-2.6.23.16/drivers/ssb/main.c 2008-02-19 13:46:17.000000000 +0100
+@@ -862,6 +862,8 @@ u32 ssb_clockspeed(struct ssb_bus *bus)
if (bus->chip_id == 0x5365) {
rate = 100000000;
diff --git a/target/linux/brcm47xx/patches-2.6.23/602-ssb-fix-serial-on-new-devices.patch b/target/linux/brcm47xx/patches-2.6.23/602-ssb-fix-serial-on-new-devices.patch
index 2e0c862be..d80b86e78 100644
--- a/target/linux/brcm47xx/patches-2.6.23/602-ssb-fix-serial-on-new-devices.patch
+++ b/target/linux/brcm47xx/patches-2.6.23/602-ssb-fix-serial-on-new-devices.patch
@@ -1,8 +1,8 @@
Index: linux-2.6.23.16/drivers/ssb/driver_chipcommon.c
===================================================================
---- linux-2.6.23.16.orig/drivers/ssb/driver_chipcommon.c 2008-02-18 21:38:58.000000000 +0100
-+++ linux-2.6.23.16/drivers/ssb/driver_chipcommon.c 2008-02-18 21:39:00.000000000 +0100
-@@ -365,6 +365,7 @@ int ssb_chipco_serial_init(struct ssb_ch
+--- linux-2.6.23.16.orig/drivers/ssb/driver_chipcommon.c 2008-02-19 14:37:26.000000000 +0100
++++ linux-2.6.23.16/drivers/ssb/driver_chipcommon.c 2008-02-19 14:37:27.000000000 +0100
+@@ -403,6 +403,7 @@ int ssb_chipco_serial_init(struct ssb_ch
unsigned int irq;
u32 baud_base, div;
u32 i, n;
@@ -10,7 +10,7 @@ Index: linux-2.6.23.16/drivers/ssb/driver_chipcommon.c
plltype = (cc->capabilities & SSB_CHIPCO_CAP_PLLT);
irq = ssb_mips_irq(cc->dev);
-@@ -376,14 +377,39 @@ int ssb_chipco_serial_init(struct ssb_ch
+@@ -414,14 +415,39 @@ int ssb_chipco_serial_init(struct ssb_ch
chipco_read32(cc, SSB_CHIPCO_CLOCK_M2));
div = 1;
} else {
@@ -53,7 +53,7 @@ Index: linux-2.6.23.16/drivers/ssb/driver_chipcommon.c
/* Internal backplane clock */
baud_base = ssb_clockspeed(bus);
div = chipco_read32(cc, SSB_CHIPCO_CLKDIV)
-@@ -395,7 +421,7 @@ int ssb_chipco_serial_init(struct ssb_ch
+@@ -433,7 +459,7 @@ int ssb_chipco_serial_init(struct ssb_ch
}
/* Clock source depends on strapping if UartClkOverride is unset */
@@ -62,7 +62,7 @@ Index: linux-2.6.23.16/drivers/ssb/driver_chipcommon.c
!(chipco_read32(cc, SSB_CHIPCO_CORECTL) & SSB_CHIPCO_CORECTL_UARTCLK0)) {
if ((cc->capabilities & SSB_CHIPCO_CAP_UARTCLK) ==
SSB_CHIPCO_CAP_UARTCLK_INT) {
-@@ -417,7 +443,7 @@ int ssb_chipco_serial_init(struct ssb_ch
+@@ -455,7 +481,7 @@ int ssb_chipco_serial_init(struct ssb_ch
cc_mmio = cc->dev->bus->mmio + (cc->dev->core_index * SSB_CORE_SIZE);
uart_regs = cc_mmio + SSB_CHIPCO_UART0_DATA;
/* Offset changed at after rev 0 */
@@ -73,8 +73,8 @@ Index: linux-2.6.23.16/drivers/ssb/driver_chipcommon.c
uart_regs += (i * 256);
Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_chipcommon.h
===================================================================
---- linux-2.6.23.16.orig/include/linux/ssb/ssb_driver_chipcommon.h 2008-02-18 21:38:58.000000000 +0100
-+++ linux-2.6.23.16/include/linux/ssb/ssb_driver_chipcommon.h 2008-02-18 21:39:00.000000000 +0100
+--- linux-2.6.23.16.orig/include/linux/ssb/ssb_driver_chipcommon.h 2008-02-19 14:37:26.000000000 +0100
++++ linux-2.6.23.16/include/linux/ssb/ssb_driver_chipcommon.h 2008-02-19 14:37:27.000000000 +0100
@@ -51,9 +51,12 @@
#define SSB_CHIPCO_CAP_JTAGM 0x00400000 /* JTAG master present */
#define SSB_CHIPCO_CAP_BROM 0x00800000 /* Internal boot ROM active */
diff --git a/target/linux/brcm47xx/patches-2.6.23/610-ssb-watchdog-fix.patch b/target/linux/brcm47xx/patches-2.6.23/610-ssb-watchdog-fix.patch
index 93cd6b080..fecb8b50d 100644
--- a/target/linux/brcm47xx/patches-2.6.23/610-ssb-watchdog-fix.patch
+++ b/target/linux/brcm47xx/patches-2.6.23/610-ssb-watchdog-fix.patch
@@ -1,7 +1,7 @@
Index: linux-2.6.23.16/drivers/ssb/Kconfig
===================================================================
---- linux-2.6.23.16.orig/drivers/ssb/Kconfig 2008-02-19 12:38:31.000000000 +0100
-+++ linux-2.6.23.16/drivers/ssb/Kconfig 2008-02-19 12:43:58.000000000 +0100
+--- linux-2.6.23.16.orig/drivers/ssb/Kconfig 2008-02-19 13:46:05.000000000 +0100
++++ linux-2.6.23.16/drivers/ssb/Kconfig 2008-02-19 13:46:33.000000000 +0100
@@ -105,6 +105,12 @@ config SSB_DRIVER_MIPS
If unsure, say N
@@ -17,8 +17,8 @@ Index: linux-2.6.23.16/drivers/ssb/Kconfig
depends on SSB_DRIVER_MIPS && EXPERIMENTAL
Index: linux-2.6.23.16/drivers/ssb/Makefile
===================================================================
---- linux-2.6.23.16.orig/drivers/ssb/Makefile 2008-02-19 12:38:31.000000000 +0100
-+++ linux-2.6.23.16/drivers/ssb/Makefile 2008-02-19 12:43:58.000000000 +0100
+--- linux-2.6.23.16.orig/drivers/ssb/Makefile 2008-02-19 13:46:05.000000000 +0100
++++ linux-2.6.23.16/drivers/ssb/Makefile 2008-02-19 13:46:33.000000000 +0100
@@ -1,5 +1,6 @@
# core
ssb-y += main.o scan.o
@@ -28,10 +28,10 @@ Index: linux-2.6.23.16/drivers/ssb/Makefile
ssb-$(CONFIG_SSB_PCIHOST) += pci.o pcihost_wrapper.o
Index: linux-2.6.23.16/drivers/ssb/driver_extif.c
===================================================================
---- linux-2.6.23.16.orig/drivers/ssb/driver_extif.c 2008-02-19 12:38:34.000000000 +0100
-+++ linux-2.6.23.16/drivers/ssb/driver_extif.c 2008-02-19 12:45:13.000000000 +0100
-@@ -35,6 +35,12 @@ static inline void extif_write32_masked(
- extif_write32(extif, offset, value);
+--- linux-2.6.23.16.orig/drivers/ssb/driver_extif.c 2008-02-19 13:46:05.000000000 +0100
++++ linux-2.6.23.16/drivers/ssb/driver_extif.c 2008-02-19 13:46:33.000000000 +0100
+@@ -37,6 +37,12 @@ static inline u32 extif_write32_masked(s
+ return value;
}
+void ssb_extif_watchdog_timer_set(struct ssb_extif *extif,
@@ -46,7 +46,7 @@ Index: linux-2.6.23.16/drivers/ssb/driver_extif.c
Index: linux-2.6.23.16/drivers/ssb/embedded.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23.16/drivers/ssb/embedded.c 2008-02-19 12:43:58.000000000 +0100
++++ linux-2.6.23.16/drivers/ssb/embedded.c 2008-02-19 13:46:33.000000000 +0100
@@ -0,0 +1,26 @@
+/*
+ * Sonics Silicon Backplane
@@ -76,8 +76,8 @@ Index: linux-2.6.23.16/drivers/ssb/embedded.c
+}
Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_chipcommon.h
===================================================================
---- linux-2.6.23.16.orig/include/linux/ssb/ssb_driver_chipcommon.h 2008-02-19 12:38:34.000000000 +0100
-+++ linux-2.6.23.16/include/linux/ssb/ssb_driver_chipcommon.h 2008-02-19 12:43:58.000000000 +0100
+--- linux-2.6.23.16.orig/include/linux/ssb/ssb_driver_chipcommon.h 2008-02-19 13:46:29.000000000 +0100
++++ linux-2.6.23.16/include/linux/ssb/ssb_driver_chipcommon.h 2008-02-19 13:46:33.000000000 +0100
@@ -360,6 +360,11 @@ struct ssb_chipcommon {
u16 fast_pwrup_delay;
};
@@ -92,11 +92,11 @@ Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_chipcommon.h
#include <linux/pm.h>
Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_extif.h
===================================================================
---- linux-2.6.23.16.orig/include/linux/ssb/ssb_driver_extif.h 2008-02-19 12:38:34.000000000 +0100
-+++ linux-2.6.23.16/include/linux/ssb/ssb_driver_extif.h 2008-02-19 12:47:03.000000000 +0100
-@@ -170,6 +170,9 @@ extern void ssb_extif_get_clockcontrol(s
- extern void ssb_extif_timing_init(struct ssb_extif *extif,
- unsigned long ns);
+--- linux-2.6.23.16.orig/include/linux/ssb/ssb_driver_extif.h 2008-02-19 13:46:05.000000000 +0100
++++ linux-2.6.23.16/include/linux/ssb/ssb_driver_extif.h 2008-02-19 13:46:33.000000000 +0100
+@@ -178,6 +178,9 @@ u32 ssb_extif_gpio_outen(struct ssb_exti
+ u32 ssb_extif_gpio_polarity(struct ssb_extif *extif, u32 mask, u32 value);
+ u32 ssb_extif_gpio_intmask(struct ssb_extif *extif, u32 mask, u32 value);
+extern void ssb_extif_watchdog_timer_set(struct ssb_extif *extif,
+ u32 ticks);
@@ -104,7 +104,7 @@ Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_extif.h
#ifdef CONFIG_SSB_SERIAL
extern int ssb_extif_serial_init(struct ssb_extif *extif,
struct ssb_serial_port *ports);
-@@ -224,5 +227,11 @@ void ssb_extif_get_clockcontrol(struct s
+@@ -201,5 +204,11 @@ void ssb_extif_get_clockcontrol(struct s
{
}
@@ -119,7 +119,7 @@ Index: linux-2.6.23.16/include/linux/ssb/ssb_driver_extif.h
Index: linux-2.6.23.16/include/linux/ssb/ssb_embedded.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23.16/include/linux/ssb/ssb_embedded.h 2008-02-19 12:43:58.000000000 +0100
++++ linux-2.6.23.16/include/linux/ssb/ssb_embedded.h 2008-02-19 13:46:33.000000000 +0100
@@ -0,0 +1,10 @@
+#ifndef LINUX_SSB_EMBEDDED_H_
+#define LINUX_SSB_EMBEDDED_H_