ssb: Update the GPIO API
[openwrt/staging/lynxis/omap.git] / target / linux / brcm47xx / patches-2.6.23 / 602-ssb-fix-serial-on-new-devices.patch
index 2e0c862bec15556e9bf905a0c70ba41c3788fd19..d80b86e78a1ac05f4120b0e129b17fca4abc3291 100644 (file)
@@ -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 */