ixp4xx: refresh patches
authorGabor Juhos <juhosg@openwrt.org>
Sat, 14 Aug 2010 21:07:42 +0000 (21:07 +0000)
committerGabor Juhos <juhosg@openwrt.org>
Sat, 14 Aug 2010 21:07:42 +0000 (21:07 +0000)
SVN-Revision: 22649

36 files changed:
target/linux/ixp4xx/patches-2.6.33/050-disable_dmabounce.patch
target/linux/ixp4xx/patches-2.6.33/402-ixp4xx_gpiolib.patch
target/linux/ixp4xx/patches-2.6.33/604-arm-ixp4xx-sched_clock.patch
target/linux/ixp4xx/patches-2.6.34/020-gateworks_i2c_pld.patch
target/linux/ixp4xx/patches-2.6.34/050-disable_dmabounce.patch
target/linux/ixp4xx/patches-2.6.34/100-wg302v2_gateway7001_mac_plat_info.patch
target/linux/ixp4xx/patches-2.6.34/170-ixdpg425_mac_plat_info.patch
target/linux/ixp4xx/patches-2.6.34/191-cambria_optional_uart.patch
target/linux/ixp4xx/patches-2.6.34/201-npe_driver_print_license_location.patch
target/linux/ixp4xx/patches-2.6.34/203-npe_driver_mask_phy_features.patch
target/linux/ixp4xx/patches-2.6.34/205-npe_driver_separate_phy_functions.patch
target/linux/ixp4xx/patches-2.6.34/206-npe_driver_add_update_link_function.patch
target/linux/ixp4xx/patches-2.6.34/207-npe_driver_multiphy_support.patch
target/linux/ixp4xx/patches-2.6.34/295-latch_led_driver.patch
target/linux/ixp4xx/patches-2.6.34/302-avila_gpio_device.patch
target/linux/ixp4xx/patches-2.6.34/304-ixp4xx_eth_jumboframe.patch
target/linux/ixp4xx/patches-2.6.34/311-gtwx5717_mac_plat_info.patch
target/linux/ixp4xx/patches-2.6.34/402-ixp4xx_gpiolib.patch
target/linux/ixp4xx/patches-2.6.34/601-arm-dma_free_coherent.patch
target/linux/ixp4xx/patches-2.6.34/603-arm-kluin-array-indexing.patch
target/linux/ixp4xx/patches-2.6.35/020-gateworks_i2c_pld.patch
target/linux/ixp4xx/patches-2.6.35/100-wg302v2_gateway7001_mac_plat_info.patch
target/linux/ixp4xx/patches-2.6.35/105-wg302v1_support.patch
target/linux/ixp4xx/patches-2.6.35/110-pronghorn_series_support.patch
target/linux/ixp4xx/patches-2.6.35/170-ixdpg425_mac_plat_info.patch
target/linux/ixp4xx/patches-2.6.35/191-cambria_optional_uart.patch
target/linux/ixp4xx/patches-2.6.35/201-npe_driver_print_license_location.patch
target/linux/ixp4xx/patches-2.6.35/203-npe_driver_mask_phy_features.patch
target/linux/ixp4xx/patches-2.6.35/205-npe_driver_separate_phy_functions.patch
target/linux/ixp4xx/patches-2.6.35/206-npe_driver_add_update_link_function.patch
target/linux/ixp4xx/patches-2.6.35/207-npe_driver_multiphy_support.patch
target/linux/ixp4xx/patches-2.6.35/295-latch_led_driver.patch
target/linux/ixp4xx/patches-2.6.35/302-avila_gpio_device.patch
target/linux/ixp4xx/patches-2.6.35/304-ixp4xx_eth_jumboframe.patch
target/linux/ixp4xx/patches-2.6.35/311-gtwx5717_mac_plat_info.patch
target/linux/ixp4xx/patches-2.6.35/402-ixp4xx_gpiolib.patch

index 64b3da0..08df482 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
-@@ -417,7 +417,6 @@ config ARCH_IXP4XX
+@@ -418,7 +418,6 @@ config ARCH_IXP4XX
        select GENERIC_GPIO
        select GENERIC_TIME
        select GENERIC_CLOCKEVENTS
index 0d5a253..5b0a63a 100644 (file)
@@ -50,7 +50,7 @@
  
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
-@@ -417,6 +417,7 @@ config ARCH_IXP4XX
+@@ -418,6 +418,7 @@ config ARCH_IXP4XX
        select GENERIC_GPIO
        select GENERIC_TIME
        select GENERIC_CLOCKEVENTS
index 150f852..43cbaa2 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/mach-ixp4xx/common.c
 +++ b/arch/arm/mach-ixp4xx/common.c
-@@ -427,6 +427,17 @@ static void __init ixp4xx_clocksource_in
+@@ -466,6 +466,17 @@ static void __init ixp4xx_clocksource_in
  }
  
  /*
index c2f8a53..44214f8 100644 (file)
 +MODULE_AUTHOR("Chris Lang");
 --- a/drivers/gpio/Kconfig
 +++ b/drivers/gpio/Kconfig
-@@ -196,6 +196,14 @@ config GPIO_LANGWELL
-       help
-         Say Y here to support Intel Moorestown platform GPIO.
+@@ -275,6 +275,14 @@ config GPIO_TIMBERDALE
+       ---help---
+       Add support for the GPIO IP in the timberdale FPGA.
  
 +config GPIO_GW_I2C_PLD
 +      tristate "Gateworks I2C PLD GPIO Expander"
index b0c2715..6701fb8 100644 (file)
@@ -1,6 +1,6 @@
---- a/arch/arm/Kconfig 2010-05-17 19:51:29.000000000 +0200
-+++ b/arch/arm/Kconfig 2010-05-18 17:44:39.000000000 +0200
-@@ -433,7 +433,6 @@ config ARCH_IXP4XX
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -434,7 +434,6 @@ config ARCH_IXP4XX
        select GENERIC_GPIO
        select GENERIC_TIME
        select GENERIC_CLOCKEVENTS
@@ -8,8 +8,8 @@
        help
          Support for Intel's IXP4XX (XScale) family of processors.
  
---- a/arch/arm/mach-ixp4xx/Kconfig     2010-02-25 14:45:00.000000000 +0100
-+++ b/arch/arm/mach-ixp4xx/Kconfig     2010-05-18 17:44:39.000000000 +0200
+--- a/arch/arm/mach-ixp4xx/Kconfig
++++ b/arch/arm/mach-ixp4xx/Kconfig
 @@ -199,6 +199,43 @@ config IXP4XX_INDIRECT_PCI
          need to use the indirect method instead. If you don't know
          what you need, leave this option unselected.
@@ -54,8 +54,8 @@
  config IXP4XX_QMGR
        tristate "IXP4xx Queue Manager support"
        help
---- a/arch/arm/mach-ixp4xx/common-pci.c        2010-05-17 19:51:29.000000000 +0200
-+++ b/arch/arm/mach-ixp4xx/common-pci.c        2010-05-18 17:44:39.000000000 +0200
+--- a/arch/arm/mach-ixp4xx/common-pci.c
++++ b/arch/arm/mach-ixp4xx/common-pci.c
 @@ -321,27 +321,33 @@ static int abort_handler(unsigned long a
   */
  static int ixp4xx_pci_platform_notify(struct device *dev)
  
  void __init ixp4xx_pci_preinit(void)
  {
---- a/arch/arm/mach-ixp4xx/include/mach/memory.h       2009-03-24 18:00:31.000000000 +0100
-+++ b/arch/arm/mach-ixp4xx/include/mach/memory.h       2010-05-18 17:44:39.000000000 +0200
+--- a/arch/arm/mach-ixp4xx/include/mach/memory.h
++++ b/arch/arm/mach-ixp4xx/include/mach/memory.h
 @@ -16,10 +16,12 @@
  
  #if !defined(__ASSEMBLY__) && defined(CONFIG_PCI)
index a19a408..c664eda 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/mach-ixp4xx/gateway7001-setup.c
 +++ b/arch/arm/mach-ixp4xx/gateway7001-setup.c
-@@ -76,9 +76,35 @@ static struct platform_device gateway700
+@@ -75,9 +75,35 @@ static struct platform_device gateway700
        .resource       = &gateway7001_uart_resource,
  };
  
@@ -39,7 +39,7 @@
  static void __init gateway7001_init(void)
 --- a/arch/arm/mach-ixp4xx/wg302v2-setup.c
 +++ b/arch/arm/mach-ixp4xx/wg302v2-setup.c
-@@ -77,9 +77,26 @@ static struct platform_device wg302v2_ua
+@@ -76,9 +76,26 @@ static struct platform_device wg302v2_ua
        .resource       = &wg302v2_uart_resource,
  };
  
index 279f4c6..5333532 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/mach-ixp4xx/coyote-setup.c
 +++ b/arch/arm/mach-ixp4xx/coyote-setup.c
-@@ -82,9 +82,37 @@ static struct platform_device coyote_uar
+@@ -81,9 +81,37 @@ static struct platform_device coyote_uar
        .resource       = &coyote_uart_resource,
  };
  
index 2ebe3e4..f526893 100644 (file)
        unsigned int            custom_divisor;
 --- a/drivers/serial/8250.c
 +++ b/drivers/serial/8250.c
-@@ -409,6 +409,20 @@ static void mem_serial_out(struct uart_p
+@@ -410,6 +410,20 @@ static void mem_serial_out(struct uart_p
        writeb(value, p->membase + offset);
  }
  
  static void mem32_serial_out(struct uart_port *p, int offset, int value)
  {
        offset = map_8250_out_reg(p, offset) << p->regshift;
-@@ -502,6 +516,11 @@ static void set_io_from_upio(struct uart
+@@ -503,6 +517,11 @@ static void set_io_from_upio(struct uart
                p->serial_out = mem32_serial_out;
                break;
  
  #ifdef CONFIG_SERIAL_8250_AU1X00
        case UPIO_AU:
                p->serial_in = au_serial_in;
-@@ -534,6 +553,7 @@ serial_out_sync(struct uart_8250_port *u
+@@ -535,6 +554,7 @@ serial_out_sync(struct uart_8250_port *u
        switch (p->iotype) {
        case UPIO_MEM:
        case UPIO_MEM32:
  #ifdef CONFIG_SERIAL_8250_AU1X00
        case UPIO_AU:
  #endif
-@@ -2450,6 +2470,7 @@ static int serial8250_request_std_resour
+@@ -2460,6 +2480,7 @@ static int serial8250_request_std_resour
        case UPIO_MEM32:
        case UPIO_MEM:
        case UPIO_DWAPB:
                if (!up->port.mapbase)
                        break;
  
-@@ -2487,6 +2508,7 @@ static void serial8250_release_std_resou
+@@ -2497,6 +2518,7 @@ static void serial8250_release_std_resou
        case UPIO_MEM32:
        case UPIO_MEM:
        case UPIO_DWAPB:
                if (!up->port.mapbase)
                        break;
  
-@@ -2964,6 +2986,7 @@ static int __devinit serial8250_probe(st
+@@ -2995,6 +3017,7 @@ static int __devinit serial8250_probe(st
                port.serial_in          = p->serial_in;
                port.serial_out         = p->serial_out;
                port.dev                = &dev->dev;
                port.irqflags           |= irqflag;
                ret = serial8250_register_port(&port);
                if (ret < 0) {
-@@ -3113,6 +3136,7 @@ int serial8250_register_port(struct uart
+@@ -3144,6 +3167,7 @@ int serial8250_register_port(struct uart
                uart->port.iotype       = port->iotype;
                uart->port.flags        = port->flags | UPF_BOOT_AUTOCONF;
                uart->port.mapbase      = port->mapbase;
index b97dd77..e6bbbc3 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/mach-ixp4xx/ixp4xx_npe.c
 +++ b/arch/arm/mach-ixp4xx/ixp4xx_npe.c
-@@ -583,6 +583,8 @@ int npe_load_firmware(struct npe *npe, c
+@@ -582,6 +582,8 @@ int npe_load_firmware(struct npe *npe, c
        npe_reset(npe);
  #endif
  
index eacf35d..bdb7ed0 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/arm/ixp4xx_eth.c
 +++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -1217,6 +1217,10 @@ static int __devinit eth_init_one(struct
+@@ -1221,6 +1221,10 @@ static int __devinit eth_init_one(struct
        if ((err = IS_ERR(port->phydev)))
                goto err_free_mem;
  
index b9835a0..20109f7 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/arm/ixp4xx_eth.c
 +++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -396,6 +396,50 @@ static void ixp4xx_adjust_link(struct ne
+@@ -397,6 +397,50 @@ static void ixp4xx_adjust_link(struct ne
               dev->name, port->speed, port->duplex ? "full" : "half");
  }
  
@@ -51,7 +51,7 @@
  
  static inline void debug_pkt(struct net_device *dev, const char *func,
                             u8 *data, int len)
-@@ -1005,8 +1049,7 @@ static int eth_open(struct net_device *d
+@@ -1009,8 +1053,7 @@ static int eth_open(struct net_device *d
                return err;
        }
  
@@ -61,7 +61,7 @@
  
        for (i = 0; i < ETH_ALEN; i++)
                __raw_writel(dev->dev_addr[i], &port->regs->hw_addr[i]);
-@@ -1127,7 +1170,7 @@ static int eth_close(struct net_device *
+@@ -1131,7 +1174,7 @@ static int eth_close(struct net_device *
                printk(KERN_CRIT "%s: unable to disable loopback\n",
                       dev->name);
  
@@ -70,7 +70,7 @@
  
        if (!ports_open)
                qmgr_disable_irq(TXDONE_QUEUE);
-@@ -1153,7 +1196,6 @@ static int __devinit eth_init_one(struct
+@@ -1157,7 +1200,6 @@ static int __devinit eth_init_one(struct
        struct net_device *dev;
        struct eth_plat_info *plat = pdev->dev.platform_data;
        u32 regs_phys;
@@ -78,7 +78,7 @@
        int err;
  
        if (!(dev = alloc_etherdev(sizeof(struct port))))
-@@ -1211,18 +1253,10 @@ static int __devinit eth_init_one(struct
+@@ -1215,18 +1257,10 @@ static int __devinit eth_init_one(struct
        __raw_writel(DEFAULT_CORE_CNTRL, &port->regs->core_control);
        udelay(50);
  
@@ -99,7 +99,7 @@
        if ((err = register_netdev(dev)))
                goto err_phy_dis;
  
-@@ -1232,7 +1266,7 @@ static int __devinit eth_init_one(struct
+@@ -1236,7 +1270,7 @@ static int __devinit eth_init_one(struct
        return 0;
  
  err_phy_dis:
  err_free_mem:
        npe_port_tab[NPE_ID(port->id)] = NULL;
        platform_set_drvdata(pdev, NULL);
-@@ -1250,7 +1284,7 @@ static int __devexit eth_remove_one(stru
+@@ -1254,7 +1288,7 @@ static int __devexit eth_remove_one(stru
        struct port *port = netdev_priv(dev);
  
        unregister_netdev(dev);
index 419ec4c..7550973 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/arm/ixp4xx_eth.c
 +++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -168,7 +168,7 @@ struct port {
+@@ -169,7 +169,7 @@ struct port {
        struct desc *desc_tab;  /* coherent */
        u32 desc_tab_phys;
        int id;                 /* logical port ID */
@@ -9,7 +9,7 @@
        u8 firmware[4];
  };
  
-@@ -365,37 +365,52 @@ static void ixp4xx_mdio_remove(void)
+@@ -366,37 +366,52 @@ static void ixp4xx_mdio_remove(void)
        mdiobus_free(mdio_bus);
  }
  
@@ -77,7 +77,7 @@
  static int ixp4xx_phy_connect(struct net_device *dev)
  {
        struct port *port = netdev_priv(dev);
-@@ -430,7 +445,6 @@ static void ixp4xx_phy_start(struct net_
+@@ -431,7 +446,6 @@ static void ixp4xx_phy_start(struct net_
  {
        struct port *port = netdev_priv(dev);
  
@@ -85,7 +85,7 @@
        phy_start(port->phydev);
  }
  
-@@ -1260,6 +1274,10 @@ static int __devinit eth_init_one(struct
+@@ -1264,6 +1278,10 @@ static int __devinit eth_init_one(struct
        if ((err = register_netdev(dev)))
                goto err_phy_dis;
  
index afcf7e1..e16f2d4 100644 (file)
@@ -37,7 +37,7 @@ TODO: take care of additional PHYs through the PHY abstraction layer
  /* Information about built-in HSS (synchronous serial) interfaces */
 --- a/drivers/net/arm/ixp4xx_eth.c
 +++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -417,6 +417,37 @@ static int ixp4xx_phy_connect(struct net
+@@ -418,6 +418,37 @@ static int ixp4xx_phy_connect(struct net
        struct eth_plat_info *plat = port->plat;
        char phy_id[MII_BUS_ID_SIZE + 3];
  
@@ -75,7 +75,7 @@ TODO: take care of additional PHYs through the PHY abstraction layer
        snprintf(phy_id, MII_BUS_ID_SIZE + 3, PHY_ID_FMT, "0", plat->phy);
        port->phydev = phy_connect(dev, phy_id, &ixp4xx_adjust_link, 0,
                                   PHY_INTERFACE_MODE_MII);
-@@ -438,21 +469,32 @@ static void ixp4xx_phy_disconnect(struct
+@@ -439,21 +470,32 @@ static void ixp4xx_phy_disconnect(struct
  {
        struct port *port = netdev_priv(dev);
  
@@ -111,7 +111,7 @@ TODO: take care of additional PHYs through the PHY abstraction layer
  }
  
  static inline void debug_pkt(struct net_device *dev, const char *func,
-@@ -826,6 +868,10 @@ static int eth_ioctl(struct net_device *
+@@ -830,6 +872,10 @@ static int eth_ioctl(struct net_device *
  
        if (!netif_running(dev))
                return -EINVAL;
@@ -122,7 +122,7 @@ TODO: take care of additional PHYs through the PHY abstraction layer
        return phy_mii_ioctl(port->phydev, if_mii(req), cmd);
  }
  
-@@ -845,18 +891,30 @@ static void ixp4xx_get_drvinfo(struct ne
+@@ -849,18 +895,30 @@ static void ixp4xx_get_drvinfo(struct ne
  static int ixp4xx_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
  {
        struct port *port = netdev_priv(dev);
index e173ac6..af4eada 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/leds/Kconfig
 +++ b/drivers/leds/Kconfig
-@@ -157,6 +157,13 @@ config LEDS_LP3944
+@@ -166,6 +166,13 @@ config LEDS_LP3944
          To compile this driver as a module, choose M here: the
          module will be called leds-lp3944.
  
@@ -13,7 +13,7 @@
 +
  config LEDS_CLEVO_MAIL
        tristate "Mail LED on Clevo notebook"
-       depends on LEDS_CLASS && X86 && SERIO_I8042 && DMI
+       depends on X86 && SERIO_I8042 && DMI
 --- /dev/null
 +++ b/drivers/leds/leds-latch.c
 @@ -0,0 +1,150 @@
 +MODULE_LICENSE("GPL");
 --- a/drivers/leds/Makefile
 +++ b/drivers/leds/Makefile
-@@ -20,6 +20,7 @@ obj-$(CONFIG_LEDS_COBALT_RAQ)                += leds-c
+@@ -21,6 +21,7 @@ obj-$(CONFIG_LEDS_COBALT_RAQ)                += leds-c
  obj-$(CONFIG_LEDS_SUNFIRE)            += leds-sunfire.o
  obj-$(CONFIG_LEDS_PCA9532)            += leds-pca9532.o
  obj-$(CONFIG_LEDS_GPIO)                       += leds-gpio.o
index f941a94..a45d432 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/mach-ixp4xx/avila-setup.c
 +++ b/arch/arm/mach-ixp4xx/avila-setup.c
-@@ -38,6 +38,13 @@
+@@ -36,6 +36,13 @@
  #define AVILA_SDA_PIN 7
  #define AVILA_SCL_PIN 6
  
index a9cbddc..98108c3 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/arm/ixp4xx_eth.c
 +++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -52,7 +52,7 @@
+@@ -53,7 +53,7 @@
  
  #define POOL_ALLOC_SIZE               (sizeof(struct desc) * (RX_DESCS + TX_DESCS))
  #define REGS_SIZE             0x1000
@@ -9,7 +9,7 @@
  #define RX_BUFF_SIZE          ALIGN((NET_IP_ALIGN) + MAX_MRU, 4)
  
  #define NAPI_WEIGHT           16
-@@ -1061,6 +1061,32 @@ static void destroy_queues(struct port *
+@@ -1065,6 +1065,32 @@ static void destroy_queues(struct port *
        }
  }
  
@@ -42,7 +42,7 @@
  static int eth_open(struct net_device *dev)
  {
        struct port *port = netdev_priv(dev);
-@@ -1112,6 +1138,8 @@ static int eth_open(struct net_device *d
+@@ -1116,6 +1142,8 @@ static int eth_open(struct net_device *d
        if (npe_send_recv_message(port->npe, &msg, "ETH_SET_FIREWALL_MODE"))
                return -EIO;
  
@@ -51,7 +51,7 @@
        if ((err = request_queues(port)) != 0)
                return err;
  
-@@ -1251,7 +1279,26 @@ static int eth_close(struct net_device *
+@@ -1255,7 +1283,26 @@ static int eth_close(struct net_device *
        return 0;
  }
  
index 8ce79e4..706eed2 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/mach-ixp4xx/gtwx5715-setup.c
 +++ b/arch/arm/mach-ixp4xx/gtwx5715-setup.c
-@@ -179,10 +179,37 @@ static struct platform_device gtwx5715_s
+@@ -178,10 +178,37 @@ static struct platform_device gtwx5715_s
        },
  };
  
index 0d5a253..0ec3a91 100644 (file)
@@ -50,7 +50,7 @@
  
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
-@@ -417,6 +417,7 @@ config ARCH_IXP4XX
+@@ -434,6 +434,7 @@ config ARCH_IXP4XX
        select GENERIC_GPIO
        select GENERIC_TIME
        select GENERIC_CLOCKEVENTS
index b939705..e26adbf 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/mm/dma-mapping.c
 +++ b/arch/arm/mm/dma-mapping.c
-@@ -384,7 +384,8 @@ EXPORT_SYMBOL(dma_mmap_writecombine);
+@@ -381,7 +381,8 @@ EXPORT_SYMBOL(dma_mmap_writecombine);
   */
  void dma_free_coherent(struct device *dev, size_t size, void *cpu_addr, dma_addr_t handle)
  {
index aca693a..3a8c80d 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/kernel/setup.c
 +++ b/arch/arm/kernel/setup.c
-@@ -322,12 +322,13 @@ static void __init setup_processor(void)
+@@ -323,12 +323,13 @@ static void __init setup_processor(void)
  void cpu_init(void)
  {
        unsigned int cpu = smp_processor_id();
@@ -15,7 +15,7 @@
  
        /*
         * Define the placement constraint for the inline asm directive below.
-@@ -386,13 +387,14 @@ static struct machine_desc * __init setu
+@@ -387,13 +388,14 @@ static struct machine_desc * __init setu
  
  static int __init arm_add_memory(unsigned long start, unsigned long size)
  {
index 73f0c6c..5fead52 100644 (file)
 +MODULE_AUTHOR("Chris Lang");
 --- a/drivers/gpio/Kconfig
 +++ b/drivers/gpio/Kconfig
-@@ -221,6 +221,14 @@ config GPIO_TIMBERDALE
-       ---help---
-       Add support for the GPIO IP in the timberdale FPGA.
+@@ -298,6 +298,14 @@ config GPIO_RDC321X
+         Support for the RDC R321x SoC GPIOs over southbridge
+         PCI configuration space.
  
 +config GPIO_GW_I2C_PLD
 +      tristate "Gateworks I2C PLD GPIO Expander"
  config GPIO_MAX7301
 --- a/drivers/gpio/Makefile
 +++ b/drivers/gpio/Makefile
-@@ -31,3 +31,4 @@ obj-$(CONFIG_GPIO_WM8994)    += wm8994-gpio
+@@ -35,3 +35,4 @@ obj-$(CONFIG_GPIO_WM8994)    += wm8994-gpio
  obj-$(CONFIG_GPIO_SCH)                += sch_gpio.o
  obj-$(CONFIG_GPIO_RDC321X)    += rdc321x-gpio.o
  obj-$(CONFIG_GPIO_JANZ_TTL)   += janz-ttl.o
index a19a408..c664eda 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/mach-ixp4xx/gateway7001-setup.c
 +++ b/arch/arm/mach-ixp4xx/gateway7001-setup.c
-@@ -76,9 +76,35 @@ static struct platform_device gateway700
+@@ -75,9 +75,35 @@ static struct platform_device gateway700
        .resource       = &gateway7001_uart_resource,
  };
  
@@ -39,7 +39,7 @@
  static void __init gateway7001_init(void)
 --- a/arch/arm/mach-ixp4xx/wg302v2-setup.c
 +++ b/arch/arm/mach-ixp4xx/wg302v2-setup.c
-@@ -77,9 +77,26 @@ static struct platform_device wg302v2_ua
+@@ -76,9 +76,26 @@ static struct platform_device wg302v2_ua
        .resource       = &wg302v2_uart_resource,
  };
  
index e8b4342..b199489 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/configs/ixp4xx_defconfig
 +++ b/arch/arm/configs/ixp4xx_defconfig
-@@ -155,6 +155,7 @@ CONFIG_MACH_AVILA=y
+@@ -13,6 +13,7 @@ CONFIG_MACH_AVILA=y
  CONFIG_MACH_LOFT=y
  CONFIG_ARCH_ADI_COYOTE=y
  CONFIG_MACH_GATEWAY7001=y
index c038692..9fda614 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/configs/ixp4xx_defconfig
 +++ b/arch/arm/configs/ixp4xx_defconfig
-@@ -157,6 +157,8 @@ CONFIG_ARCH_ADI_COYOTE=y
+@@ -15,6 +15,8 @@ CONFIG_ARCH_ADI_COYOTE=y
  CONFIG_MACH_GATEWAY7001=y
  CONFIG_MACH_WG302V1=y
  CONFIG_MACH_WG302V2=y
index 279f4c6..5333532 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/mach-ixp4xx/coyote-setup.c
 +++ b/arch/arm/mach-ixp4xx/coyote-setup.c
-@@ -82,9 +82,37 @@ static struct platform_device coyote_uar
+@@ -81,9 +81,37 @@ static struct platform_device coyote_uar
        .resource       = &coyote_uart_resource,
  };
  
index 2ebe3e4..ca8b937 100644 (file)
        unsigned int    type;           /* If UPF_FIXED_TYPE */
 --- a/include/linux/serial_core.h
 +++ b/include/linux/serial_core.h
-@@ -288,6 +288,7 @@ struct uart_port {
+@@ -293,6 +293,7 @@ struct uart_port {
  #define UPIO_TSI              (5)                     /* Tsi108/109 type IO */
  #define UPIO_DWAPB            (6)                     /* DesignWare APB UART */
  #define UPIO_RM9000           (7)                     /* RM9000 type IO */
  
        unsigned int            read_status_mask;       /* driver specific */
        unsigned int            ignore_status_mask;     /* driver specific */
-@@ -330,6 +331,7 @@ struct uart_port {
+@@ -335,6 +336,7 @@ struct uart_port {
  
        unsigned int            mctrl;                  /* current modem ctrl settings */
        unsigned int            timeout;                /* character-based timeout */
        unsigned int            custom_divisor;
 --- a/drivers/serial/8250.c
 +++ b/drivers/serial/8250.c
-@@ -409,6 +409,20 @@ static void mem_serial_out(struct uart_p
+@@ -410,6 +410,20 @@ static void mem_serial_out(struct uart_p
        writeb(value, p->membase + offset);
  }
  
  static void mem32_serial_out(struct uart_port *p, int offset, int value)
  {
        offset = map_8250_out_reg(p, offset) << p->regshift;
-@@ -502,6 +516,11 @@ static void set_io_from_upio(struct uart
+@@ -503,6 +517,11 @@ static void set_io_from_upio(struct uart
                p->serial_out = mem32_serial_out;
                break;
  
  #ifdef CONFIG_SERIAL_8250_AU1X00
        case UPIO_AU:
                p->serial_in = au_serial_in;
-@@ -534,6 +553,7 @@ serial_out_sync(struct uart_8250_port *u
+@@ -535,6 +554,7 @@ serial_out_sync(struct uart_8250_port *u
        switch (p->iotype) {
        case UPIO_MEM:
        case UPIO_MEM32:
  #ifdef CONFIG_SERIAL_8250_AU1X00
        case UPIO_AU:
  #endif
-@@ -2450,6 +2470,7 @@ static int serial8250_request_std_resour
+@@ -2460,6 +2480,7 @@ static int serial8250_request_std_resour
        case UPIO_MEM32:
        case UPIO_MEM:
        case UPIO_DWAPB:
                if (!up->port.mapbase)
                        break;
  
-@@ -2487,6 +2508,7 @@ static void serial8250_release_std_resou
+@@ -2497,6 +2518,7 @@ static void serial8250_release_std_resou
        case UPIO_MEM32:
        case UPIO_MEM:
        case UPIO_DWAPB:
                if (!up->port.mapbase)
                        break;
  
-@@ -2964,6 +2986,7 @@ static int __devinit serial8250_probe(st
+@@ -2995,6 +3017,7 @@ static int __devinit serial8250_probe(st
                port.serial_in          = p->serial_in;
                port.serial_out         = p->serial_out;
                port.dev                = &dev->dev;
                port.irqflags           |= irqflag;
                ret = serial8250_register_port(&port);
                if (ret < 0) {
-@@ -3113,6 +3136,7 @@ int serial8250_register_port(struct uart
+@@ -3144,6 +3167,7 @@ int serial8250_register_port(struct uart
                uart->port.iotype       = port->iotype;
                uart->port.flags        = port->flags | UPF_BOOT_AUTOCONF;
                uart->port.mapbase      = port->mapbase;
index b97dd77..e6bbbc3 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/mach-ixp4xx/ixp4xx_npe.c
 +++ b/arch/arm/mach-ixp4xx/ixp4xx_npe.c
-@@ -583,6 +583,8 @@ int npe_load_firmware(struct npe *npe, c
+@@ -582,6 +582,8 @@ int npe_load_firmware(struct npe *npe, c
        npe_reset(npe);
  #endif
  
index eacf35d..b8ef217 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/arm/ixp4xx_eth.c
 +++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -1217,6 +1217,10 @@ static int __devinit eth_init_one(struct
+@@ -1220,6 +1220,10 @@ static int __devinit eth_init_one(struct
        if ((err = IS_ERR(port->phydev)))
                goto err_free_mem;
  
index b9835a0..a4086ab 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/arm/ixp4xx_eth.c
 +++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -396,6 +396,50 @@ static void ixp4xx_adjust_link(struct ne
+@@ -397,6 +397,50 @@ static void ixp4xx_adjust_link(struct ne
               dev->name, port->speed, port->duplex ? "full" : "half");
  }
  
@@ -51,7 +51,7 @@
  
  static inline void debug_pkt(struct net_device *dev, const char *func,
                             u8 *data, int len)
-@@ -1005,8 +1049,7 @@ static int eth_open(struct net_device *d
+@@ -1008,8 +1052,7 @@ static int eth_open(struct net_device *d
                return err;
        }
  
@@ -61,7 +61,7 @@
  
        for (i = 0; i < ETH_ALEN; i++)
                __raw_writel(dev->dev_addr[i], &port->regs->hw_addr[i]);
-@@ -1127,7 +1170,7 @@ static int eth_close(struct net_device *
+@@ -1130,7 +1173,7 @@ static int eth_close(struct net_device *
                printk(KERN_CRIT "%s: unable to disable loopback\n",
                       dev->name);
  
@@ -70,7 +70,7 @@
  
        if (!ports_open)
                qmgr_disable_irq(TXDONE_QUEUE);
-@@ -1153,7 +1196,6 @@ static int __devinit eth_init_one(struct
+@@ -1156,7 +1199,6 @@ static int __devinit eth_init_one(struct
        struct net_device *dev;
        struct eth_plat_info *plat = pdev->dev.platform_data;
        u32 regs_phys;
@@ -78,7 +78,7 @@
        int err;
  
        if (!(dev = alloc_etherdev(sizeof(struct port))))
-@@ -1211,18 +1253,10 @@ static int __devinit eth_init_one(struct
+@@ -1214,18 +1256,10 @@ static int __devinit eth_init_one(struct
        __raw_writel(DEFAULT_CORE_CNTRL, &port->regs->core_control);
        udelay(50);
  
@@ -99,7 +99,7 @@
        if ((err = register_netdev(dev)))
                goto err_phy_dis;
  
-@@ -1232,7 +1266,7 @@ static int __devinit eth_init_one(struct
+@@ -1235,7 +1269,7 @@ static int __devinit eth_init_one(struct
        return 0;
  
  err_phy_dis:
  err_free_mem:
        npe_port_tab[NPE_ID(port->id)] = NULL;
        platform_set_drvdata(pdev, NULL);
-@@ -1250,7 +1284,7 @@ static int __devexit eth_remove_one(stru
+@@ -1253,7 +1287,7 @@ static int __devexit eth_remove_one(stru
        struct port *port = netdev_priv(dev);
  
        unregister_netdev(dev);
index 419ec4c..7ae1a84 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/arm/ixp4xx_eth.c
 +++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -168,7 +168,7 @@ struct port {
+@@ -169,7 +169,7 @@ struct port {
        struct desc *desc_tab;  /* coherent */
        u32 desc_tab_phys;
        int id;                 /* logical port ID */
@@ -9,7 +9,7 @@
        u8 firmware[4];
  };
  
-@@ -365,37 +365,52 @@ static void ixp4xx_mdio_remove(void)
+@@ -366,37 +366,52 @@ static void ixp4xx_mdio_remove(void)
        mdiobus_free(mdio_bus);
  }
  
@@ -77,7 +77,7 @@
  static int ixp4xx_phy_connect(struct net_device *dev)
  {
        struct port *port = netdev_priv(dev);
-@@ -430,7 +445,6 @@ static void ixp4xx_phy_start(struct net_
+@@ -431,7 +446,6 @@ static void ixp4xx_phy_start(struct net_
  {
        struct port *port = netdev_priv(dev);
  
@@ -85,7 +85,7 @@
        phy_start(port->phydev);
  }
  
-@@ -1260,6 +1274,10 @@ static int __devinit eth_init_one(struct
+@@ -1263,6 +1277,10 @@ static int __devinit eth_init_one(struct
        if ((err = register_netdev(dev)))
                goto err_phy_dis;
  
index afcf7e1..20a5119 100644 (file)
@@ -37,7 +37,7 @@ TODO: take care of additional PHYs through the PHY abstraction layer
  /* Information about built-in HSS (synchronous serial) interfaces */
 --- a/drivers/net/arm/ixp4xx_eth.c
 +++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -417,6 +417,37 @@ static int ixp4xx_phy_connect(struct net
+@@ -418,6 +418,37 @@ static int ixp4xx_phy_connect(struct net
        struct eth_plat_info *plat = port->plat;
        char phy_id[MII_BUS_ID_SIZE + 3];
  
@@ -75,7 +75,7 @@ TODO: take care of additional PHYs through the PHY abstraction layer
        snprintf(phy_id, MII_BUS_ID_SIZE + 3, PHY_ID_FMT, "0", plat->phy);
        port->phydev = phy_connect(dev, phy_id, &ixp4xx_adjust_link, 0,
                                   PHY_INTERFACE_MODE_MII);
-@@ -438,21 +469,32 @@ static void ixp4xx_phy_disconnect(struct
+@@ -439,21 +470,32 @@ static void ixp4xx_phy_disconnect(struct
  {
        struct port *port = netdev_priv(dev);
  
@@ -111,7 +111,7 @@ TODO: take care of additional PHYs through the PHY abstraction layer
  }
  
  static inline void debug_pkt(struct net_device *dev, const char *func,
-@@ -826,6 +868,10 @@ static int eth_ioctl(struct net_device *
+@@ -829,6 +871,10 @@ static int eth_ioctl(struct net_device *
  
        if (!netif_running(dev))
                return -EINVAL;
@@ -122,7 +122,7 @@ TODO: take care of additional PHYs through the PHY abstraction layer
        return phy_mii_ioctl(port->phydev, if_mii(req), cmd);
  }
  
-@@ -845,18 +891,30 @@ static void ixp4xx_get_drvinfo(struct ne
+@@ -848,18 +894,30 @@ static void ixp4xx_get_drvinfo(struct ne
  static int ixp4xx_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
  {
        struct port *port = netdev_priv(dev);
index 2d15b7e..1dc2690 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/leds/Kconfig
 +++ b/drivers/leds/Kconfig
-@@ -157,6 +157,13 @@ config LEDS_LP3944
+@@ -176,6 +176,13 @@ config LEDS_LP3944
          To compile this driver as a module, choose M here: the
          module will be called leds-lp3944.
  
@@ -13,7 +13,7 @@
 +
  config LEDS_CLEVO_MAIL
        tristate "Mail LED on Clevo notebook"
-       depends on LEDS_CLASS && X86 && SERIO_I8042 && DMI
+       depends on X86 && SERIO_I8042 && DMI
 --- /dev/null
 +++ b/drivers/leds/leds-latch.c
 @@ -0,0 +1,150 @@
 +
 +MODULE_AUTHOR("Chris Lang <clang@gateworks.com>");
 +MODULE_DESCRIPTION("Latch LED driver");
-+MODULE_LICENSE("GPL");
 --- a/drivers/leds/Makefile
 +++ b/drivers/leds/Makefile
-@@ -20,6 +20,7 @@ obj-$(CONFIG_LEDS_COBALT_RAQ)                += leds-c
+@@ -22,6 +22,7 @@ obj-$(CONFIG_LEDS_COBALT_RAQ)                += leds-c
  obj-$(CONFIG_LEDS_SUNFIRE)            += leds-sunfire.o
  obj-$(CONFIG_LEDS_PCA9532)            += leds-pca9532.o
  obj-$(CONFIG_LEDS_GPIO)                       += leds-gpio.o
  obj-$(CONFIG_LEDS_HP6XX)              += leds-hp6xx.o
 --- a/include/linux/leds.h
 +++ b/include/linux/leds.h
-@@ -161,5 +161,19 @@ struct gpio_led_platform_data {
+@@ -165,5 +165,19 @@ struct gpio_led_platform_data {
                                        unsigned long *delay_off);
  };
  
index f941a94..a45d432 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/mach-ixp4xx/avila-setup.c
 +++ b/arch/arm/mach-ixp4xx/avila-setup.c
-@@ -38,6 +38,13 @@
+@@ -36,6 +36,13 @@
  #define AVILA_SDA_PIN 7
  #define AVILA_SCL_PIN 6
  
index a9cbddc..09aeb9f 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/arm/ixp4xx_eth.c
 +++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -52,7 +52,7 @@
+@@ -53,7 +53,7 @@
  
  #define POOL_ALLOC_SIZE               (sizeof(struct desc) * (RX_DESCS + TX_DESCS))
  #define REGS_SIZE             0x1000
@@ -9,7 +9,7 @@
  #define RX_BUFF_SIZE          ALIGN((NET_IP_ALIGN) + MAX_MRU, 4)
  
  #define NAPI_WEIGHT           16
-@@ -1061,6 +1061,32 @@ static void destroy_queues(struct port *
+@@ -1064,6 +1064,32 @@ static void destroy_queues(struct port *
        }
  }
  
@@ -42,7 +42,7 @@
  static int eth_open(struct net_device *dev)
  {
        struct port *port = netdev_priv(dev);
-@@ -1112,6 +1138,8 @@ static int eth_open(struct net_device *d
+@@ -1115,6 +1141,8 @@ static int eth_open(struct net_device *d
        if (npe_send_recv_message(port->npe, &msg, "ETH_SET_FIREWALL_MODE"))
                return -EIO;
  
@@ -51,7 +51,7 @@
        if ((err = request_queues(port)) != 0)
                return err;
  
-@@ -1251,7 +1279,26 @@ static int eth_close(struct net_device *
+@@ -1254,7 +1282,26 @@ static int eth_close(struct net_device *
        return 0;
  }
  
index 8ce79e4..706eed2 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/mach-ixp4xx/gtwx5715-setup.c
 +++ b/arch/arm/mach-ixp4xx/gtwx5715-setup.c
-@@ -179,10 +179,37 @@ static struct platform_device gtwx5715_s
+@@ -178,10 +178,37 @@ static struct platform_device gtwx5715_s
        },
  };
  
index 0d5a253..bfe2227 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/mach-ixp4xx/common.c
 +++ b/arch/arm/mach-ixp4xx/common.c
-@@ -36,6 +36,7 @@
+@@ -35,6 +35,7 @@
  #include <asm/pgtable.h>
  #include <asm/page.h>
  #include <asm/irq.h>
@@ -8,7 +8,7 @@
  
  #include <asm/mach/map.h>
  #include <asm/mach/irq.h>
-@@ -375,12 +376,39 @@ static struct platform_device *ixp46x_de
+@@ -374,12 +375,39 @@ static struct platform_device *ixp46x_de
  unsigned long ixp4xx_exp_bus_size;
  EXPORT_SYMBOL(ixp4xx_exp_bus_size);
  
@@ -50,9 +50,9 @@
  
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
-@@ -417,6 +417,7 @@ config ARCH_IXP4XX
+@@ -435,6 +435,7 @@ config ARCH_IXP4XX
+       select CPU_XSCALE
        select GENERIC_GPIO
-       select GENERIC_TIME
        select GENERIC_CLOCKEVENTS
 +      select ARCH_REQUIRE_GPIOLIB
        help