ixp4xx: refresh patches
authorFelix Fietkau <nbd@openwrt.org>
Tue, 25 Aug 2009 12:13:18 +0000 (12:13 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Tue, 25 Aug 2009 12:13:18 +0000 (12:13 +0000)
SVN-Revision: 17397

target/linux/ixp4xx/patches-2.6.28/304-ixp4xx_eth_jumboframe.patch
target/linux/ixp4xx/patches-2.6.30/050-disable_dmabounce.patch
target/linux/ixp4xx/patches-2.6.30/191-cambria_optional_uart.patch
target/linux/ixp4xx/patches-2.6.30/203-npe_driver_mask_phy_features.patch
target/linux/ixp4xx/patches-2.6.30/204-npe_driver_add_missing_phy_disconnect.patch
target/linux/ixp4xx/patches-2.6.30/205-npe_driver_separate_phy_functions.patch
target/linux/ixp4xx/patches-2.6.30/304-ixp4xx_eth_jumboframe.patch
target/linux/ixp4xx/patches-2.6.30/402-ixp4xx_gpiolib.patch

index 7f8f2420ec5c438dd43d3f1fd87edf98107f0f9d..f7b5c81b6864ecf684c3532ba1bdbccb3e4310a2 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/arm/ixp4xx_eth.c
 +++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -53,7 +53,7 @@
+@@ -54,7 +54,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
-@@ -927,6 +927,32 @@
+@@ -1011,6 +1011,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);
-@@ -976,6 +1002,8 @@
+@@ -1061,6 +1087,8 @@ static int eth_open(struct net_device *d
        if (npe_send_recv_message(port->npe, &msg, "ETH_SET_FIREWALL_MODE"))
                return -EIO;
  
@@ -51,8 +51,8 @@
        if ((err = request_queues(port)) != 0)
                return err;
  
-@@ -1119,6 +1147,24 @@
-       return 0;
+@@ -1238,6 +1266,24 @@ static void eth_init_mii(struct net_devi
  }
  
 +static int eth_change_mtu(struct net_device *dev, int mtu)
@@ -76,7 +76,7 @@
  static int __devinit eth_init_one(struct platform_device *pdev)
  {
        struct port *port;
-@@ -1153,6 +1199,7 @@
+@@ -1272,6 +1318,7 @@ static int __devinit eth_init_one(struct
                goto err_free;
        }
  
index a4b1e816d45971d2d1b9038b8792e9698bc2b584..eb36eb1c9454d1775151dc3978a7ac47f7885606 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
-@@ -374,7 +374,6 @@ config ARCH_IXP4XX
+@@ -375,7 +375,6 @@ config ARCH_IXP4XX
        select GENERIC_GPIO
        select GENERIC_TIME
        select GENERIC_CLOCKEVENTS
index c7b600a2ef16143dbd2c2527a850e5a9a1a4fc58..f4ce53a400268647dbde552c7e282d586ba80ef4 100644 (file)
        unsigned int            custom_divisor;
 --- a/drivers/serial/8250.c
 +++ b/drivers/serial/8250.c
-@@ -396,6 +396,20 @@ static void mem_serial_out(struct uart_p
+@@ -397,6 +397,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;
-@@ -488,6 +502,11 @@ static void set_io_from_upio(struct uart
+@@ -490,6 +504,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;
-@@ -518,6 +537,7 @@ serial_out_sync(struct uart_8250_port *u
+@@ -522,6 +541,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
-@@ -2433,6 +2453,7 @@ static int serial8250_request_std_resour
+@@ -2440,6 +2460,7 @@ static int serial8250_request_std_resour
        case UPIO_MEM32:
        case UPIO_MEM:
        case UPIO_DWAPB:
                if (!up->port.mapbase)
                        break;
  
-@@ -2470,6 +2491,7 @@ static void serial8250_release_std_resou
+@@ -2477,6 +2498,7 @@ static void serial8250_release_std_resou
        case UPIO_MEM32:
        case UPIO_MEM:
        case UPIO_DWAPB:
                if (!up->port.mapbase)
                        break;
  
-@@ -2931,6 +2953,7 @@ static int __devinit serial8250_probe(st
+@@ -2946,6 +2968,7 @@ static int __devinit serial8250_probe(st
                port.serial_in          = p->serial_in;
                port.serial_out         = p->serial_out;
                port.dev                = &dev->dev;
                if (share_irqs)
                        port.flags |= UPF_SHARE_IRQ;
                ret = serial8250_register_port(&port);
-@@ -3080,6 +3103,7 @@ int serial8250_register_port(struct uart
+@@ -3095,6 +3118,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 ac0582ac386706b817858bfca84e3c50f8f835d5..aa88939cb3fee3af348c3272f17e66a7644acf25 100644 (file)
@@ -1,8 +1,8 @@
 --- a/drivers/net/arm/ixp4xx_eth.c
 +++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -1220,6 +1220,10 @@ static int __devinit eth_init_one(struct
-               return PTR_ERR(port->phydev);
-       }
+@@ -1215,6 +1215,10 @@ static int __devinit eth_init_one(struct
+       if ((err = IS_ERR(port->phydev)))
+               goto err_free_mem;
  
 +      /* mask with MAC supported features */
 +      port->phydev->supported &= PHY_BASIC_FEATURES;
@@ -10,4 +10,4 @@
 +
        port->phydev->irq = PHY_POLL;
  
-       printk(KERN_INFO "%s: MII PHY %i on %s\n", dev->name, plat->phy,
+       if ((err = register_netdev(dev)))
index 8ed192ae11b0ab0c096fe3ccd5eaac09c9487e9e..6663733db050ec64042cb76cf603aaec469ae689 100644 (file)
@@ -1,10 +1,10 @@
 --- a/drivers/net/arm/ixp4xx_eth.c
 +++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -1245,6 +1245,7 @@ static int __devexit eth_remove_one(stru
+@@ -1247,6 +1247,7 @@ static int __devexit eth_remove_one(stru
        struct net_device *dev = platform_get_drvdata(pdev);
        struct port *port = netdev_priv(dev);
  
 +      phy_disconnect(port->phydev);
        unregister_netdev(dev);
+       phy_disconnect(port->phydev);
        npe_port_tab[NPE_ID(port->id)] = NULL;
-       platform_set_drvdata(pdev, NULL);
index 885ececed0a34004460b108074500878bb27dbcf..6120176b6cf8db2f66997ffa8847f329d8812af4 100644 (file)
@@ -73,7 +73,7 @@
  
        if (!ports_open)
                qmgr_disable_irq(TXDONE_QUEUE);
-@@ -1149,7 +1195,6 @@ static int __devinit eth_init_one(struct
+@@ -1151,7 +1197,6 @@ static int __devinit eth_init_one(struct
        struct net_device *dev;
        struct eth_plat_info *plat = pdev->dev.platform_data;
        u32 regs_phys;
@@ -81,7 +81,7 @@
        int err;
  
        if (!(dev = alloc_etherdev(sizeof(struct port))))
-@@ -1207,18 +1252,10 @@ static int __devinit eth_init_one(struct
+@@ -1209,18 +1254,10 @@ static int __devinit eth_init_one(struct
        __raw_writel(DEFAULT_CORE_CNTRL, &port->regs->core_control);
        udelay(50);
  
        if ((err = register_netdev(dev)))
                goto err_phy_dis;
  
-@@ -1245,7 +1282,7 @@ static int __devexit eth_remove_one(stru
+@@ -1247,7 +1284,7 @@ static int __devexit eth_remove_one(stru
        struct net_device *dev = platform_get_drvdata(pdev);
        struct port *port = netdev_priv(dev);
  
index 9d13cbc510dcab0eb917a7613f44acd7f1334833..d7f5a1f56fba2a6c4629445b67f671350a46f005 100644 (file)
@@ -9,7 +9,7 @@
  #define RX_BUFF_SIZE          ALIGN((NET_IP_ALIGN) + MAX_MRU, 4)
  
  #define NAPI_WEIGHT           16
-@@ -943,6 +943,32 @@
+@@ -1066,6 +1066,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);
-@@ -994,6 +1020,8 @@
+@@ -1117,6 +1143,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;
  
-@@ -1134,7 +1162,26 @@
+@@ -1256,7 +1284,26 @@ static int eth_close(struct net_device *
        return 0;
  }
  
index 7e296c1995c5d1f9fadcab3f924f35462e05bf38..979a63d6e41a67836312d71a6e1d09b61f24f31e 100644 (file)
@@ -50,7 +50,7 @@
  
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
-@@ -374,6 +374,7 @@ config ARCH_IXP4XX
+@@ -375,6 +375,7 @@ config ARCH_IXP4XX
        select GENERIC_GPIO
        select GENERIC_TIME
        select GENERIC_CLOCKEVENTS