Author: gordon-guest
Date: Sat Feb  2 09:46:12 2008
New Revision: 10372

Log:
arm/ixp4xx: Update Ethernet driver and support. The driver is now loaded by 
udev automatically.


Modified:
   dists/sid/linux-2.6/debian/patches/features/arm/ixp4xx-net-drivers.patch
   dists/sid/linux-2.6/debian/patches/features/arm/ixp4xx-net-headers.patch
   
dists/sid/linux-2.6/debian/patches/features/arm/nas100d-net-driver-support.patch
   
dists/sid/linux-2.6/debian/patches/features/arm/nslu2-net-driver-support.patch

Modified: 
dists/sid/linux-2.6/debian/patches/features/arm/ixp4xx-net-drivers.patch
==============================================================================
--- dists/sid/linux-2.6/debian/patches/features/arm/ixp4xx-net-drivers.patch    
(original)
+++ dists/sid/linux-2.6/debian/patches/features/arm/ixp4xx-net-drivers.patch    
Sat Feb  2 09:46:12 2008
@@ -27,10 +27,10 @@
 +obj-$(CONFIG_IXP4XX_ETH)      += ixp4xx_eth.o
 diff --git a/drivers/net/arm/ixp4xx_eth.c b/drivers/net/arm/ixp4xx_eth.c
 new file mode 100644
-index 0000000..b654060
+index 0000000..0ee490b
 --- /dev/null
 +++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -0,0 +1,1261 @@
+@@ -0,0 +1,1262 @@
 +/*
 + * Intel IXP4xx Ethernet driver for Linux
 + *
@@ -1290,5 +1290,6 @@
 +MODULE_AUTHOR("Krzysztof Halasa");
 +MODULE_DESCRIPTION("Intel IXP4xx Ethernet driver");
 +MODULE_LICENSE("GPL v2");
++MODULE_ALIAS("platform:ixp4xx_eth");
 +module_init(eth_init_module);
 +module_exit(eth_cleanup_module);

Modified: 
dists/sid/linux-2.6/debian/patches/features/arm/ixp4xx-net-headers.patch
==============================================================================
--- dists/sid/linux-2.6/debian/patches/features/arm/ixp4xx-net-headers.patch    
(original)
+++ dists/sid/linux-2.6/debian/patches/features/arm/ixp4xx-net-headers.patch    
Sat Feb  2 09:46:12 2008
@@ -1,20 +1,10 @@
 diff --git a/include/asm-arm/arch-ixp4xx/platform.h 
b/include/asm-arm/arch-ixp4xx/platform.h
-index 2a44d3d..695b9c4 100644
+index 2a44d3d..aee915f 100644
 --- a/include/asm-arm/arch-ixp4xx/platform.h
 +++ b/include/asm-arm/arch-ixp4xx/platform.h
-@@ -77,8 +77,7 @@ extern unsigned long ixp4xx_exp_bus_size;
+@@ -102,6 +102,27 @@ struct ixp4xx_pata_data {
  
- /*
-  * The IXP4xx chips do not have an I2C unit, so GPIO lines are just
-- * used to 
-- * Used as platform_data to provide GPIO pin information to the ixp42x
-+ * used as platform_data to provide GPIO pin information to the ixp42x
-  * I2C driver.
-  */
- struct ixp4xx_i2c_pins {
-@@ -86,6 +85,27 @@ struct ixp4xx_i2c_pins {
-       unsigned long scl_pin;
- };
+ struct sys_timer;
  
 +#define IXP4XX_ETH_NPEA               0x00
 +#define IXP4XX_ETH_NPEB               0x10
@@ -38,7 +28,5 @@
 +};
 +
  /*
-  * This structure provide a means for the board setup code
-  * to give information to th pata_ixp4xx driver. It is
-
-
+  * Frequency of clock used for primary clocksource
+  */

Modified: 
dists/sid/linux-2.6/debian/patches/features/arm/nas100d-net-driver-support.patch
==============================================================================
--- 
dists/sid/linux-2.6/debian/patches/features/arm/nas100d-net-driver-support.patch
    (original)
+++ 
dists/sid/linux-2.6/debian/patches/features/arm/nas100d-net-driver-support.patch
    Sat Feb  2 09:46:12 2008
@@ -1,8 +1,16 @@
 diff --git a/arch/arm/mach-ixp4xx/nas100d-setup.c 
b/arch/arm/mach-ixp4xx/nas100d-setup.c
-index 54d884f..39d7d90 100644
+index 54d884f..2cbcd41 100644
 --- a/arch/arm/mach-ixp4xx/nas100d-setup.c
 +++ b/arch/arm/mach-ixp4xx/nas100d-setup.c
-@@ -21,6 +21,7 @@
+@@ -12,6 +12,7 @@
+  *
+  */
+ 
++#include <linux/if_ether.h>
+ #include <linux/kernel.h>
+ #include <linux/serial.h>
+ #include <linux/serial_8250.h>
+@@ -21,6 +22,7 @@
  #include <asm/mach-types.h>
  #include <asm/mach/arch.h>
  #include <asm/mach/flash.h>
@@ -10,7 +18,7 @@
  
  static struct flash_platform_data nas100d_flash_data = {
        .map_name               = "cfi_probe",
-@@ -125,12 +126,30 @@ static struct platform_device nas100d_uart = {
+@@ -125,12 +127,30 @@ static struct platform_device nas100d_uart = {
        .resource               = nas100d_uart_resources,
  };
  
@@ -41,47 +49,39 @@
  };
  
  static void nas100d_power_off(void)
-@@ -146,6 +165,9 @@ static void nas100d_power_off(void)
+@@ -146,6 +166,10 @@ static void nas100d_power_off(void)
  
  static void __init nas100d_init(void)
  {
++      DECLARE_MAC_BUF(mac_buf);
 +      uint8_t __iomem *f;
 +      int i;
 +
        ixp4xx_sys_init();
  
        /* gpio 14 and 15 are _not_ clocks */
-@@ -165,6 +187,33 @@ static void __init nas100d_init(void)
+@@ -165,6 +189,24 @@ static void __init nas100d_init(void)
        (void)platform_device_register(&nas100d_uart);
  
        platform_add_devices(nas100d_devices, ARRAY_SIZE(nas100d_devices));
 +
-+
 +      /*
 +       * Map in a portion of the flash and read the MAC address.
 +       * Since it is stored in BE in the flash itself, we need to
 +       * byteswap it if we're in LE mode.
 +       */
-+      if ((f = ioremap(IXP4XX_EXP_BUS_BASE(0), 0x1000000))) {
++      f = ioremap(IXP4XX_EXP_BUS_BASE(0), 0x1000000);
++      if (f) {
++              for (i = 0; i < 6; i++)
 +#ifdef __ARMEB__
-+              for (i = 0; i < 6; i++) {
 +                      nas100d_plat_eth[0].hwaddr[i] = readb(f + 0xFC0FD8 + i);
-+              }
 +#else
-+              nas100d_plat_eth[0].hwaddr[0] = readb(f + 0xFC0FD8 + 3);
-+              nas100d_plat_eth[0].hwaddr[1] = readb(f + 0xFC0FD8 + 2);
-+              nas100d_plat_eth[0].hwaddr[2] = readb(f + 0xFC0FD8 + 1);
-+              nas100d_plat_eth[0].hwaddr[3] = readb(f + 0xFC0FD8 + 0);
-+              nas100d_plat_eth[0].hwaddr[4] = readb(f + 0xFC0FD8 + 7);
-+              nas100d_plat_eth[0].hwaddr[5] = readb(f + 0xFC0FD8 + 6);
++                      nas100d_plat_eth[0].hwaddr[i] = readb(f + 0xFC0FD8 + 
(i^3));
 +#endif
 +              iounmap(f);
 +      }
-+      printk(KERN_INFO "NAS100D: Using MAC address 
%.2x:%.2x:%.2x:%.2x:%.2x:%.2x for port 0\n",
-+             nas100d_plat_eth[0].hwaddr[0], nas100d_plat_eth[0].hwaddr[1],
-+             nas100d_plat_eth[0].hwaddr[2], nas100d_plat_eth[0].hwaddr[3],
-+             nas100d_plat_eth[0].hwaddr[4], nas100d_plat_eth[0].hwaddr[5]);
-+
++      printk(KERN_INFO "NAS100D: Using MAC address %s for port 0\n",
++              print_mac(mac_buf, nas100d_plat_eth[0].hwaddr));
  }
  
  MACHINE_START(NAS100D, "Iomega NAS 100d")

Modified: 
dists/sid/linux-2.6/debian/patches/features/arm/nslu2-net-driver-support.patch
==============================================================================
--- 
dists/sid/linux-2.6/debian/patches/features/arm/nslu2-net-driver-support.patch  
    (original)
+++ 
dists/sid/linux-2.6/debian/patches/features/arm/nslu2-net-driver-support.patch  
    Sat Feb  2 09:46:12 2008
@@ -1,8 +1,16 @@
 diff --git a/arch/arm/mach-ixp4xx/nslu2-setup.c 
b/arch/arm/mach-ixp4xx/nslu2-setup.c
-index 77277d2..f5e9cf7 100644
+index 77277d2..fcd4fa6 100644
 --- a/arch/arm/mach-ixp4xx/nslu2-setup.c
 +++ b/arch/arm/mach-ixp4xx/nslu2-setup.c
-@@ -24,6 +24,7 @@
+@@ -14,6 +14,7 @@
+  * Changed to conform to new style __init ixdp425 kas11 10/22/04
+  */
+ 
++#include <linux/if_ether.h>
+ #include <linux/kernel.h>
+ #include <linux/serial.h>
+ #include <linux/serial_8250.h>
+@@ -24,6 +25,7 @@
  #include <asm/mach/arch.h>
  #include <asm/mach/flash.h>
  #include <asm/mach/time.h>
@@ -10,7 +18,7 @@
  
  static struct flash_platform_data nslu2_flash_data = {
        .map_name               = "cfi_probe",
-@@ -140,6 +141,23 @@ static struct platform_device nslu2_uart = {
+@@ -140,6 +142,23 @@ static struct platform_device nslu2_uart = {
        .resource               = nslu2_uart_resources,
  };
  
@@ -34,7 +42,7 @@
  static struct platform_device *nslu2_devices[] __initdata = {
        &nslu2_i2c_gpio,
        &nslu2_flash,
-@@ -147,6 +165,7 @@ static struct platform_device *nslu2_devices[] __initdata 
= {
+@@ -147,6 +166,7 @@ static struct platform_device *nslu2_devices[] __initdata 
= {
  #ifdef CONFIG_LEDS_IXP4XX
        &nslu2_leds,
  #endif
@@ -42,46 +50,39 @@
  };
  
  static void nslu2_power_off(void)
-@@ -175,6 +194,9 @@ static struct sys_timer nslu2_timer = {
+@@ -175,6 +195,10 @@ static struct sys_timer nslu2_timer = {
  
  static void __init nslu2_init(void)
  {
++      DECLARE_MAC_BUF(mac_buf);
 +      uint8_t __iomem *f;
 +      int i;
 +
        ixp4xx_sys_init();
  
        nslu2_flash_resource.start = IXP4XX_EXP_BUS_BASE(0);
-@@ -191,6 +213,33 @@ static void __init nslu2_init(void)
+@@ -191,6 +215,25 @@ static void __init nslu2_init(void)
        (void)platform_device_register(&nslu2_uart);
  
        platform_add_devices(nslu2_devices, ARRAY_SIZE(nslu2_devices));
 +
-+
 +      /*
 +       * Map in a portion of the flash and read the MAC address.
 +       * Since it is stored in BE in the flash itself, we need to
 +       * byteswap it if we're in LE mode.
 +       */
-+      if ((f = ioremap(IXP4XX_EXP_BUS_BASE(0), 0x40000))) {
++      f = ioremap(IXP4XX_EXP_BUS_BASE(0), 0x40000);
++      if (f) {
++              for (i = 0; i < 6; i++)
 +#ifdef __ARMEB__
-+              for (i = 0; i < 6; i++) {
 +                      nslu2_plat_eth[0].hwaddr[i] = readb(f + 0x3FFB0 + i);
-+              }
 +#else
-+              nslu2_plat_eth[0].hwaddr[0] = readb(f + 0x3FFB0 + 3);
-+              nslu2_plat_eth[0].hwaddr[1] = readb(f + 0x3FFB0 + 2);
-+              nslu2_plat_eth[0].hwaddr[2] = readb(f + 0x3FFB0 + 1);
-+              nslu2_plat_eth[0].hwaddr[3] = readb(f + 0x3FFB0 + 0);
-+              nslu2_plat_eth[0].hwaddr[4] = readb(f + 0x3FFB0 + 7);
-+              nslu2_plat_eth[0].hwaddr[5] = readb(f + 0x3FFB0 + 6);
++                      nslu2_plat_eth[0].hwaddr[i] = readb(f + 0x3FFB0 + 
(i^3));
 +#endif
 +              iounmap(f);
 +      }
-+      printk(KERN_INFO "NSLU2: Using MAC address 
%.2x:%.2x:%.2x:%.2x:%.2x:%.2x for port 0\n",
-+             nslu2_plat_eth[0].hwaddr[0], nslu2_plat_eth[0].hwaddr[1],
-+             nslu2_plat_eth[0].hwaddr[2], nslu2_plat_eth[0].hwaddr[3],
-+             nslu2_plat_eth[0].hwaddr[4], nslu2_plat_eth[0].hwaddr[5]);
++      printk(KERN_INFO "NSLU2: Using MAC address %s for port 0\n",
++              print_mac(mac_buf, nslu2_plat_eth[0].hwaddr));
 +
  }
  

_______________________________________________
Kernel-svn-changes mailing list
Kernel-svn-changes@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/kernel-svn-changes

Reply via email to