]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
Merge branches 'machtypes', 'core', 'ep93xx', 'ks8695', 'netdev' and 'sa1100' into...
authorRussell King <rmk@dyn-67.arm.linux.org.uk>
Thu, 9 Oct 2008 20:31:54 +0000 (21:31 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 9 Oct 2008 20:31:54 +0000 (21:31 +0100)
15 files changed:
1  2  3  4  5  6 
arch/arm/mach-ep93xx/adssphere.c
arch/arm/mach-ep93xx/core.c
arch/arm/mach-ep93xx/edb9302.c
arch/arm/mach-ep93xx/edb9302a.c
arch/arm/mach-ep93xx/edb9307.c
arch/arm/mach-ep93xx/edb9312.c
arch/arm/mach-ep93xx/edb9315.c
arch/arm/mach-ep93xx/edb9315a.c
arch/arm/mach-ep93xx/gesbc9312.c
arch/arm/mach-ep93xx/gpio.c
arch/arm/mach-ep93xx/micro9.c
arch/arm/mach-ep93xx/ts72xx.c
arch/arm/mach-ks8695/gpio.c
arch/arm/mach-ks8695/pci.c
arch/arm/mach-sa1100/pleb.c

index aa1fb352fb8f6fb1c64cc0f216e3d3e62568f90c,18f8b1dc8bd0a61dbe7718ad052185f57402cdeb,8e3bbb5299e9757b1d0ca10741942467822a0e9b,aa1fb352fb8f6fb1c64cc0f216e3d3e62568f90c,aa1fb352fb8f6fb1c64cc0f216e3d3e62568f90c,aa1fb352fb8f6fb1c64cc0f216e3d3e62568f90c..561db73ec1ae1c559fc0c2c2528c308f495b5c5f
      #include <linux/ioport.h>
      #include <linux/mtd/physmap.h>
      #include <linux/platform_device.h>
- ----#include <asm/io.h>
+ ++++#include <linux/io.h>
      #include <mach/hardware.h>
      #include <asm/mach-types.h>
      #include <asm/mach/arch.h>
@@@@@@@ -47,36 -47,36 -47,12 -47,36 -47,36 -47,36 +47,12 @@@@@@@ static struct ep93xx_eth_data adssphere
        .phy_id         = 1,
      };
      
-- ---static struct resource adssphere_eth_resource[] = {
-- ---  {
-- ---          .start  = EP93XX_ETHERNET_PHYS_BASE,
-- ---          .end    = EP93XX_ETHERNET_PHYS_BASE + 0xffff,
-- ---          .flags  = IORESOURCE_MEM,
-- ---  }, {
-- ---          .start  = IRQ_EP93XX_ETHERNET,
-- ---          .end    = IRQ_EP93XX_ETHERNET,
-- ---          .flags  = IORESOURCE_IRQ,
-- ---  }
-- ---};
-- ---
-- ---static struct platform_device adssphere_eth_device = {
-- ---  .name           = "ep93xx-eth",
-- ---  .id             = -1,
-- ---  .dev            = {
-- ---          .platform_data  = &adssphere_eth_data,
-- ---  },
-- ---  .num_resources  = 2,
-- ---  .resource       = adssphere_eth_resource,
-- ---};
-- ---
      static void __init adssphere_init_machine(void)
      {
        ep93xx_init_devices();
        platform_device_register(&adssphere_flash);
      
-- ---  memcpy(adssphere_eth_data.dev_addr,
-- ---          (void *)(EP93XX_ETHERNET_BASE + 0x50), 6);
-- ---  platform_device_register(&adssphere_eth_device);
++ +++  ep93xx_register_eth(&adssphere_eth_data, 1);
      }
      
      MACHINE_START(ADSSPHERE, "ADS Sphere board")
index f99f436693928d36adf25aad1cbac3a9e7e35e60,1a5af1b262be7e60915e4dfbee3838ebede5d338,52ee8aa046c4303ad0fc04f2aa771da06b311cbe,f99f436693928d36adf25aad1cbac3a9e7e35e60,f99f436693928d36adf25aad1cbac3a9e7e35e60,f99f436693928d36adf25aad1cbac3a9e7e35e60..7e65d23e14b59d47c13ad1a4b12279766d436699
      #include <linux/termios.h>
      #include <linux/amba/bus.h>
      #include <linux/amba/serial.h>
+ ++++#include <linux/io.h>
      
      #include <asm/types.h>
      #include <asm/setup.h>
      #include <asm/system.h>
      #include <asm/tlbflush.h>
      #include <asm/pgtable.h>
- ----#include <asm/io.h>
      
      #include <asm/mach/map.h>
      #include <asm/mach/time.h>
@@@@@@@ -157,7 -157,7 -157,7 -157,7 -157,7 -157,7 +157,7 @@@@@@@ static unsigned char gpio_int_type2[3]
      static const u8 int_type1_register_offset[3]      = { 0x90, 0xac, 0x4c };
      static const u8 int_type2_register_offset[3]      = { 0x94, 0xb0, 0x50 };
      static const u8 eoi_register_offset[3]            = { 0x98, 0xb4, 0x54 };
-- ---static const u8 int_en_register_offset[3] = { 0x9c, 0xb8, 0x5c };
++ +++static const u8 int_en_register_offset[3] = { 0x9c, 0xb8, 0x58 };
      
      void ep93xx_gpio_update_int_params(unsigned port)
      {
@@@@@@@ -461,6 -461,6 -461,41 -461,6 -461,6 -461,6 +461,41 @@@@@@@ static struct platform_device ep93xx_oh
        .resource       = ep93xx_ohci_resources,
      };
      
++ +++static struct ep93xx_eth_data ep93xx_eth_data;
++ +++
++ +++static struct resource ep93xx_eth_resource[] = {
++ +++  {
++ +++          .start  = EP93XX_ETHERNET_PHYS_BASE,
++ +++          .end    = EP93XX_ETHERNET_PHYS_BASE + 0xffff,
++ +++          .flags  = IORESOURCE_MEM,
++ +++  }, {
++ +++          .start  = IRQ_EP93XX_ETHERNET,
++ +++          .end    = IRQ_EP93XX_ETHERNET,
++ +++          .flags  = IORESOURCE_IRQ,
++ +++  }
++ +++};
++ +++
++ +++static struct platform_device ep93xx_eth_device = {
++ +++  .name           = "ep93xx-eth",
++ +++  .id             = -1,
++ +++  .dev            = {
++ +++          .platform_data  = &ep93xx_eth_data,
++ +++  },
++ +++  .num_resources  = ARRAY_SIZE(ep93xx_eth_resource),
++ +++  .resource       = ep93xx_eth_resource,
++ +++};
++ +++
++ +++void __init ep93xx_register_eth(struct ep93xx_eth_data *data, int copy_addr)
++ +++{
++ +++  if (copy_addr) {
++ +++          memcpy(data->dev_addr,
++ +++                  (void *)(EP93XX_ETHERNET_BASE + 0x50), 6);
++ +++  }
++ +++
++ +++  ep93xx_eth_data = *data;
++ +++  platform_device_register(&ep93xx_eth_device);
++ +++}
++ +++
      extern void ep93xx_gpio_init(void);
      
      void __init ep93xx_init_devices(void)
index 97550c0ad7b045adc41a513895687a590d0d75a2,358a83392d04b5d023bf622fe50180d38be9b514,899784f3b7b82fe99613a6a21f17e55d1880536c,97550c0ad7b045adc41a513895687a590d0d75a2,97550c0ad7b045adc41a513895687a590d0d75a2,97550c0ad7b045adc41a513895687a590d0d75a2..e4add5bdccfd71532c1c5b26b2a02fd09aca3d06
      #include <linux/ioport.h>
      #include <linux/mtd/physmap.h>
      #include <linux/platform_device.h>
- ----#include <asm/io.h>
+ ++++#include <linux/io.h>
      #include <mach/hardware.h>
      #include <asm/mach-types.h>
      #include <asm/mach/arch.h>
@@@@@@@ -43,10 -43,10 -43,16 -43,10 -43,10 -43,10 +43,16 @@@@@@@ static struct platform_device edb9302_f
        .resource       = &edb9302_flash_resource,
      };
      
++ +++static struct ep93xx_eth_data edb9302_eth_data = {
++ +++  .phy_id         = 1,
++ +++};
++ +++
      static void __init edb9302_init_machine(void)
      {
        ep93xx_init_devices();
        platform_device_register(&edb9302_flash);
++ +++
++ +++  ep93xx_register_eth(&edb9302_eth_data, 1);
      }
      
      MACHINE_START(EDB9302, "Cirrus Logic EDB9302 Evaluation Board")
index 99b01d44bf1cf09fe1577f1d577025301e7e813c,65cc55cfeac73d78d3215207d6000d638f8007cb,ea7e4eb0cc2d86cb67841964cb88bb2208e0af00,99b01d44bf1cf09fe1577f1d577025301e7e813c,99b01d44bf1cf09fe1577f1d577025301e7e813c,99b01d44bf1cf09fe1577f1d577025301e7e813c..02c4405afed7969fbf372f2be5d83f3788f7e61e
      #include <linux/ioport.h>
      #include <linux/mtd/physmap.h>
      #include <linux/platform_device.h>
- ----#include <asm/io.h>
+ ++++#include <linux/io.h>
      #include <mach/hardware.h>
      #include <asm/mach-types.h>
      #include <asm/mach/arch.h>
@@@@@@@ -47,36 -47,36 -47,12 -47,36 -47,36 -47,36 +47,12 @@@@@@@ static struct ep93xx_eth_data edb9302a_
        .phy_id                 = 1,
      };
      
-- ---static struct resource edb9302a_eth_resource[] = {
-- ---  {
-- ---          .start  = EP93XX_ETHERNET_PHYS_BASE,
-- ---          .end    = EP93XX_ETHERNET_PHYS_BASE + 0xffff,
-- ---          .flags  = IORESOURCE_MEM,
-- ---  }, {
-- ---          .start  = IRQ_EP93XX_ETHERNET,
-- ---          .end    = IRQ_EP93XX_ETHERNET,
-- ---          .flags  = IORESOURCE_IRQ,
-- ---  }
-- ---};
-- ---
-- ---static struct platform_device edb9302a_eth_device = {
-- ---  .name           = "ep93xx-eth",
-- ---  .id             = -1,
-- ---  .dev            = {
-- ---          .platform_data  = &edb9302a_eth_data,
-- ---  },
-- ---  .num_resources  = 2,
-- ---  .resource       = edb9302a_eth_resource,
-- ---};
-- ---
      static void __init edb9302a_init_machine(void)
      {
        ep93xx_init_devices();
        platform_device_register(&edb9302a_flash);
      
-- ---  memcpy(edb9302a_eth_data.dev_addr,
-- ---          (void *)(EP93XX_ETHERNET_BASE + 0x50), 6);
-- ---  platform_device_register(&edb9302a_eth_device);
++ +++  ep93xx_register_eth(&edb9302a_eth_data, 1);
      }
      
      MACHINE_START(EDB9302A, "Cirrus Logic EDB9302A Evaluation Board")
index 9fb72d01a36c2a9dd868f06536fb962491e9b0a9,551de24d6f25931a3bb90ffaab02edffe8d16d35,7dee28e9d7f9d31e7e9b361fc920eda11d664733,9fb72d01a36c2a9dd868f06536fb962491e9b0a9,9fb72d01a36c2a9dd868f06536fb962491e9b0a9,9fb72d01a36c2a9dd868f06536fb962491e9b0a9..040edbd2ea053d92437e42129bcea91b9b684123
      #include <linux/ioport.h>
      #include <linux/mtd/physmap.h>
      #include <linux/platform_device.h>
- ----#include <asm/io.h>
+ ++++#include <linux/io.h>
      #include <mach/hardware.h>
      #include <asm/mach-types.h>
      #include <asm/mach/arch.h>
@@@@@@@ -47,36 -47,36 -47,12 -47,36 -47,36 -47,36 +47,12 @@@@@@@ static struct ep93xx_eth_data edb9307_e
        .phy_id                 = 1,
      };
      
-- ---static struct resource edb9307_eth_resource[] = {
-- ---  {
-- ---          .start  = EP93XX_ETHERNET_PHYS_BASE,
-- ---          .end    = EP93XX_ETHERNET_PHYS_BASE + 0xffff,
-- ---          .flags  = IORESOURCE_MEM,
-- ---  }, {
-- ---          .start  = IRQ_EP93XX_ETHERNET,
-- ---          .end    = IRQ_EP93XX_ETHERNET,
-- ---          .flags  = IORESOURCE_IRQ,
-- ---  }
-- ---};
-- ---
-- ---static struct platform_device edb9307_eth_device = {
-- ---  .name           = "ep93xx-eth",
-- ---  .id             = -1,
-- ---  .dev            = {
-- ---          .platform_data  = &edb9307_eth_data,
-- ---  },
-- ---  .num_resources  = 2,
-- ---  .resource       = edb9307_eth_resource,
-- ---};
-- ---
      static void __init edb9307_init_machine(void)
      {
        ep93xx_init_devices();
        platform_device_register(&edb9307_flash);
      
-- ---  memcpy(edb9307_eth_data.dev_addr,
-- ---          (void *)(EP93XX_ETHERNET_BASE + 0x50), 6);
-- ---  platform_device_register(&edb9307_eth_device);
++ +++  ep93xx_register_eth(&edb9307_eth_data, 1);
      }
      
      MACHINE_START(EDB9307, "Cirrus Logic EDB9307 Evaluation Board")
index 87267a574f5ea5f5813943f4408cfca5823a5fb1,9167e7c8dbc4581d192b5512181efc7f45cf7fe6,3f660d1fc9661aa26e19f9b0e4541b3cc5d0cd8e,87267a574f5ea5f5813943f4408cfca5823a5fb1,87267a574f5ea5f5813943f4408cfca5823a5fb1,87267a574f5ea5f5813943f4408cfca5823a5fb1..6853e302bc3a8f8bad7362a94b8ac0ebd07a1e86
      #include <linux/ioport.h>
      #include <linux/mtd/physmap.h>
      #include <linux/platform_device.h>
- ----#include <asm/io.h>
+ ++++#include <linux/io.h>
      #include <mach/hardware.h>
      #include <asm/mach-types.h>
      #include <asm/mach/arch.h>
@@@@@@@ -44,10 -44,10 -44,16 -44,10 -44,10 -44,10 +44,16 @@@@@@@ static struct platform_device edb9312_f
        .resource       = &edb9312_flash_resource,
      };
      
++ +++static struct ep93xx_eth_data edb9312_eth_data = {
++ +++  .phy_id                 = 1,
++ +++};
++ +++
      static void __init edb9312_init_machine(void)
      {
        ep93xx_init_devices();
        platform_device_register(&edb9312_flash);
++ +++
++ +++  ep93xx_register_eth(&edb9312_eth_data, 1);
      }
      
      MACHINE_START(EDB9312, "Cirrus Logic EDB9312 Evaluation Board")
index 7e373950be4d386fe3cdfe33fce1e8d47413b55a,d267bb6444735cd38dd9eb31b3b849e4f5025ad1,a1e76c329daaafdb61f8bb13eab8405fbeebf508,7e373950be4d386fe3cdfe33fce1e8d47413b55a,7e373950be4d386fe3cdfe33fce1e8d47413b55a,7e373950be4d386fe3cdfe33fce1e8d47413b55a..9469b350d253ba6c291b3b7cc15c1c847e8e8e76
      #include <linux/ioport.h>
      #include <linux/mtd/physmap.h>
      #include <linux/platform_device.h>
- ----#include <asm/io.h>
+ ++++#include <linux/io.h>
      #include <mach/hardware.h>
      #include <asm/mach-types.h>
      #include <asm/mach/arch.h>
@@@@@@@ -43,10 -43,10 -43,16 -43,10 -43,10 -43,10 +43,16 @@@@@@@ static struct platform_device edb9315_f
        .resource       = &edb9315_flash_resource,
      };
      
++ +++static struct ep93xx_eth_data edb9315_eth_data = {
++ +++  .phy_id                 = 1,
++ +++};
++ +++
      static void __init edb9315_init_machine(void)
      {
        ep93xx_init_devices();
        platform_device_register(&edb9315_flash);
++ +++
++ +++  ep93xx_register_eth(&edb9315_eth_data, 1);
      }
      
      MACHINE_START(EDB9315, "Cirrus Logic EDB9315 Evaluation Board")
index 08a7c9bfb689bc6473052e21b0aeaee9df9b33d2,6ffe21d81e46332560631ef018c96da5f7881273,cbd77bf18aaff36ef60cc274629007106d6beb62,08a7c9bfb689bc6473052e21b0aeaee9df9b33d2,08a7c9bfb689bc6473052e21b0aeaee9df9b33d2,08a7c9bfb689bc6473052e21b0aeaee9df9b33d2..584457ce7c80f410e71b8323de5a94d668722569
      #include <linux/ioport.h>
      #include <linux/mtd/physmap.h>
      #include <linux/platform_device.h>
- ----#include <asm/io.h>
+ ++++#include <linux/io.h>
      #include <mach/hardware.h>
      #include <asm/mach-types.h>
      #include <asm/mach/arch.h>
@@@@@@@ -47,36 -47,36 -47,12 -47,36 -47,36 -47,36 +47,12 @@@@@@@ static struct ep93xx_eth_data edb9315a_
        .phy_id                 = 1,
      };
      
-- ---static struct resource edb9315a_eth_resource[] = {
-- ---  {
-- ---          .start  = EP93XX_ETHERNET_PHYS_BASE,
-- ---          .end    = EP93XX_ETHERNET_PHYS_BASE + 0xffff,
-- ---          .flags  = IORESOURCE_MEM,
-- ---  }, {
-- ---          .start  = IRQ_EP93XX_ETHERNET,
-- ---          .end    = IRQ_EP93XX_ETHERNET,
-- ---          .flags  = IORESOURCE_IRQ,
-- ---  }
-- ---};
-- ---
-- ---static struct platform_device edb9315a_eth_device = {
-- ---  .name           = "ep93xx-eth",
-- ---  .id             = -1,
-- ---  .dev            = {
-- ---          .platform_data  = &edb9315a_eth_data,
-- ---  },
-- ---  .num_resources  = 2,
-- ---  .resource       = edb9315a_eth_resource,
-- ---};
-- ---
      static void __init edb9315a_init_machine(void)
      {
        ep93xx_init_devices();
        platform_device_register(&edb9315a_flash);
      
-- ---  memcpy(edb9315a_eth_data.dev_addr,
-- ---          (void *)(EP93XX_ETHERNET_BASE + 0x50), 6);
-- ---  platform_device_register(&edb9315a_eth_device);
++ +++  ep93xx_register_eth(&edb9315a_eth_data, 1);
      }
      
      MACHINE_START(EDB9315A, "Cirrus Logic EDB9315A Evaluation Board")
index 9b41ec1f089e78201f05191f94dc1389ec9f06a9,ad57bb1780da1b460b17d334f011c3737863619a,8a67e53cba61436fe412e46bb381ed90dc8e69a1,9b41ec1f089e78201f05191f94dc1389ec9f06a9,9b41ec1f089e78201f05191f94dc1389ec9f06a9,9b41ec1f089e78201f05191f94dc1389ec9f06a9..035b24e31b64a99f0264a7c3ab460299a89f8976
      #include <linux/ioport.h>
      #include <linux/mtd/physmap.h>
      #include <linux/platform_device.h>
- ----#include <asm/io.h>
+ ++++#include <linux/io.h>
      #include <mach/hardware.h>
      #include <asm/mach-types.h>
      #include <asm/mach/arch.h>
@@@@@@@ -44,36 -44,36 -44,15 -44,36 -44,36 -44,36 +44,15 @@@@@@@ static struct platform_device gesbc9312
      };
      
      static struct ep93xx_eth_data gesbc9312_eth_data = {
-- ---  .phy_id                 = 1,
-- ---};
-- ---
-- ---static struct resource gesbc9312_eth_resource[] = {
-- ---  {
-- ---          .start  = EP93XX_ETHERNET_PHYS_BASE,
-- ---          .end    = EP93XX_ETHERNET_PHYS_BASE + 0xffff,
-- ---          .flags  = IORESOURCE_MEM,
-- ---  }, {
-- ---          .start  = IRQ_EP93XX_ETHERNET,
-- ---          .end    = IRQ_EP93XX_ETHERNET,
-- ---          .flags  = IORESOURCE_IRQ,
-- ---  }
-- ---};
-- ---
-- ---static struct platform_device gesbc9312_eth_device = {
-- ---  .name           = "ep93xx-eth",
-- ---  .id             = -1,
-- ---  .dev            = {
-- ---          .platform_data  = &gesbc9312_eth_data,
-- ---  },
-- ---  .num_resources  = 2,
-- ---  .resource       = gesbc9312_eth_resource,
++ +++  .phy_id         = 1,
      };
      
      static void __init gesbc9312_init_machine(void)
      {
        ep93xx_init_devices();
        platform_device_register(&gesbc9312_flash);
-- ---  platform_device_register(&gesbc9312_eth_device);
++ +++
++ +++  ep93xx_register_eth(&gesbc9312_eth_data, 0);
      }
      
      MACHINE_START(GESBC9312, "Glomation GESBC-9312-sx")
index 0f3fb87ca4be778f33b2b8e48848c6761b0ecd92,5a06ed9eafdcd84232fe46068eb8dd8769c6be40,468d5234da74c7c5f45557fbce19339e7a56ab32,0f3fb87ca4be778f33b2b8e48848c6761b0ecd92,0f3fb87ca4be778f33b2b8e48848c6761b0ecd92,0f3fb87ca4be778f33b2b8e48848c6761b0ecd92..482cf3d2fbcd5de4c6e841590c200bb4d5d9df8c
      #include <linux/init.h>
      #include <linux/module.h>
      #include <linux/seq_file.h>
+ ++++#include <linux/io.h>
      
      #include <mach/ep93xx-regs.h>
- ----#include <asm/io.h>
      #include <asm/gpio.h>
      
      struct ep93xx_gpio_chip {
@@@@@@@ -141,10 -141,10 -141,10 -141,10 -141,10 -141,10 +141,10 @@@@@@@ static void ep93xx_gpio_dbg_show(struc
      static struct ep93xx_gpio_chip ep93xx_gpio_banks[] = {
        EP93XX_GPIO_BANK("A", 0x00, 0x10, 0),
        EP93XX_GPIO_BANK("B", 0x04, 0x14, 8),
-- ---  EP93XX_GPIO_BANK("C", 0x30, 0x34, 40),
++ +++  EP93XX_GPIO_BANK("C", 0x08, 0x18, 40),
        EP93XX_GPIO_BANK("D", 0x0c, 0x1c, 24),
        EP93XX_GPIO_BANK("E", 0x20, 0x24, 32),
-- ---  EP93XX_GPIO_BANK("F", 0x08, 0x18, 16),
++ +++  EP93XX_GPIO_BANK("F", 0x30, 0x34, 16),
        EP93XX_GPIO_BANK("G", 0x38, 0x3c, 48),
        EP93XX_GPIO_BANK("H", 0x40, 0x44, 56),
      };
index de047a5c811256a4b50835cc7ab06220cfece58a,06555f372cd1d85f7c6c44ab5e540352f0612d72,72c8d44f4ddbe4b3e2b9d2072b2a60fdeb990e5a,de047a5c811256a4b50835cc7ab06220cfece58a,de047a5c811256a4b50835cc7ab06220cfece58a,de047a5c811256a4b50835cc7ab06220cfece58a..c2197236b63285190d99bcd0fa80225b84e67eac
      #include <linux/mm.h>
      #include <linux/platform_device.h>
      #include <linux/sched.h>
- ----
+ ++++#include <linux/io.h>
      #include <linux/mtd/physmap.h>
      
- ----#include <asm/io.h>
      #include <mach/hardware.h>
      
      #include <asm/mach/arch.h>
@@@@@@@ -29,38 -28,38 -29,9 -29,38 -29,38 -29,38 +28,9 @@@@@@@ static struct ep93xx_eth_data micro9_et
             .phy_id                 = 0x1f,
      };
      
-- ---static struct resource micro9_eth_resource[] = {
-- ---       {
-- ---               .start  = EP93XX_ETHERNET_PHYS_BASE,
-- ---               .end    = EP93XX_ETHERNET_PHYS_BASE + 0xffff,
-- ---               .flags  = IORESOURCE_MEM,
-- ---       }, {
-- ---               .start  = IRQ_EP93XX_ETHERNET,
-- ---               .end    = IRQ_EP93XX_ETHERNET,
-- ---               .flags  = IORESOURCE_IRQ,
-- ---       }
-- ---};
-- ---
-- ---static struct platform_device micro9_eth_device = {
-- ---       .name           = "ep93xx-eth",
-- ---       .id             = -1,
-- ---       .dev            = {
-- ---               .platform_data  = &micro9_eth_data,
-- ---       },
-- ---       .num_resources = ARRAY_SIZE(micro9_eth_resource),
-- ---       .resource       = micro9_eth_resource,
-- ---};
-- ---
-- ---static void __init micro9_eth_init(void)
-- ---{
-- ---       memcpy(micro9_eth_data.dev_addr,
-- ---               (void *)(EP93XX_ETHERNET_BASE + 0x50), 6);
-- ---       platform_device_register(&micro9_eth_device);
-- ---}
-- ---
      static void __init micro9_init(void)
      {
-- ---       micro9_eth_init();
++ +++  ep93xx_register_eth(&micro9_eth_data, 1);
      }
      
      /*
index c3cbff126d0caa0e32b519fb30de5c0923d0140f,a6959c8bb84f411b63622808eb3813f33a23695f,61e7d664fd2212060813233a8baab373abd143a3,c3cbff126d0caa0e32b519fb30de5c0923d0140f,c3cbff126d0caa0e32b519fb30de5c0923d0140f,c3cbff126d0caa0e32b519fb30de5c0923d0140f..b4aa4c0542769ebe4fd4409a938c98c315f7cc58
      #include <linux/mtd/physmap.h>
      #include <linux/platform_device.h>
      #include <linux/m48t86.h>
- ----#include <asm/io.h>
+ ++++#include <linux/io.h>
      #include <mach/hardware.h>
      #include <asm/mach-types.h>
      #include <asm/mach/arch.h>
@@@@@@@ -161,28 -161,28 -161,6 -161,28 -161,28 -161,28 +161,6 @@@@@@@ static struct ep93xx_eth_data ts72xx_et
        .phy_id                 = 1,
      };
      
-- ---static struct resource ts72xx_eth_resource[] = {
-- ---  {
-- ---          .start  = EP93XX_ETHERNET_PHYS_BASE,
-- ---          .end    = EP93XX_ETHERNET_PHYS_BASE + 0xffff,
-- ---          .flags  = IORESOURCE_MEM,
-- ---  }, {
-- ---          .start  = IRQ_EP93XX_ETHERNET,
-- ---          .end    = IRQ_EP93XX_ETHERNET,
-- ---          .flags  = IORESOURCE_IRQ,
-- ---  }
-- ---};
-- ---
-- ---static struct platform_device ts72xx_eth_device = {
-- ---  .name           = "ep93xx-eth",
-- ---  .id             = -1,
-- ---  .dev            = {
-- ---          .platform_data  = &ts72xx_eth_data,
-- ---  },
-- ---  .num_resources  = 2,
-- ---  .resource       = ts72xx_eth_resource,
-- ---};
-- ---
      static void __init ts72xx_init_machine(void)
      {
        ep93xx_init_devices();
                platform_device_register(&ts72xx_flash);
        platform_device_register(&ts72xx_rtc_device);
      
-- ---  memcpy(ts72xx_eth_data.dev_addr,
-- ---          (void *)(EP93XX_ETHERNET_BASE + 0x50), 6);
-- ---  platform_device_register(&ts72xx_eth_device);
++ +++  ep93xx_register_eth(&ts72xx_eth_data, 1);
      }
      
      MACHINE_START(TS72XX, "Technologic Systems TS-72xx SBC")
index 3624e65cd89b8752622802799e2fc343324cb303,2f122823f85a73d4c201319a11426fafef15e48f,3624e65cd89b8752622802799e2fc343324cb303,55cee776ff55151b657d8a827755a45f7714c5a3,3624e65cd89b8752622802799e2fc343324cb303,3624e65cd89b8752622802799e2fc343324cb303..9aecf0c4b8b1e47b8c65e0655c3eaa0774e38554
      #include <linux/debugfs.h>
      #include <linux/seq_file.h>
      #include <linux/module.h>
+ ++++#include <linux/io.h>
      
- ----#include <asm/io.h>
      #include <mach/hardware.h>
      #include <asm/mach/irq.h>
      
@@@@@@@ -72,7 -72,7 -72,7 -72,7 -72,7 -72,7 +72,7 @@@@@@@ int __init_or_module ks8695_gpio_interr
      
        /* set pin as input */
        x = __raw_readl(KS8695_GPIO_VA + KS8695_IOPM);
--- --  x &= ~IOPM_(pin);
+++ ++  x &= ~IOPM(pin);
        __raw_writel(x, KS8695_GPIO_VA + KS8695_IOPM);
      
        local_irq_restore(flags);
@@@@@@@ -108,7 -108,7 -108,7 -108,7 -108,7 -108,7 +108,7 @@@@@@@ int __init_or_module gpio_direction_inp
      
        /* set pin as input */
        x = __raw_readl(KS8695_GPIO_VA + KS8695_IOPM);
--- --  x &= ~IOPM_(pin);
+++ ++  x &= ~IOPM(pin);
        __raw_writel(x, KS8695_GPIO_VA + KS8695_IOPM);
      
        local_irq_restore(flags);
@@@@@@@ -136,14 -136,14 -136,14 -136,14 -136,14 -136,14 +136,14 @@@@@@@ int __init_or_module gpio_direction_out
        /* set line state */
        x = __raw_readl(KS8695_GPIO_VA + KS8695_IOPD);
        if (state)
--- --          x |= (1 << pin);
+++ ++          x |= IOPD(pin);
        else
--- --          x &= ~(1 << pin);
+++ ++          x &= ~IOPD(pin);
        __raw_writel(x, KS8695_GPIO_VA + KS8695_IOPD);
      
        /* set pin as output */
        x = __raw_readl(KS8695_GPIO_VA + KS8695_IOPM);
--- --  x |= IOPM_(pin);
+++ ++  x |= IOPM(pin);
        __raw_writel(x, KS8695_GPIO_VA + KS8695_IOPM);
      
        local_irq_restore(flags);
@@@@@@@ -168,9 -168,9 -168,9 -168,9 -168,9 -168,9 +168,9 @@@@@@@ void gpio_set_value(unsigned int pin, u
        /* set output line state */
        x = __raw_readl(KS8695_GPIO_VA + KS8695_IOPD);
        if (state)
--- --          x |= (1 << pin);
+++ ++          x |= IOPD(pin);
        else
--- --          x &= ~(1 << pin);
+++ ++          x &= ~IOPD(pin);
        __raw_writel(x, KS8695_GPIO_VA + KS8695_IOPD);
      
        local_irq_restore(flags);
@@@@@@@ -189,7 -189,7 -189,7 -189,7 -189,7 -189,7 +189,7 @@@@@@@ int gpio_get_value(unsigned int pin
                return -EINVAL;
      
        x = __raw_readl(KS8695_GPIO_VA + KS8695_IOPD);
--- --  return (x & (1 << pin)) != 0;
+++ ++  return (x & IOPD(pin)) != 0;
      }
      EXPORT_SYMBOL(gpio_get_value);
      
@@@@@@@ -240,7 -240,7 -240,7 -240,7 -240,7 -240,7 +240,7 @@@@@@@ static int ks8695_gpio_show(struct seq_
        for (i = KS8695_GPIO_0; i <= KS8695_GPIO_15 ; i++) {
                seq_printf(s, "%i:\t", i);
      
--- --          seq_printf(s, "%s\t", (mode & IOPM_(i)) ? "Output" : "Input");
+++ ++          seq_printf(s, "%s\t", (mode & IOPM(i)) ? "Output" : "Input");
      
                if (i <= KS8695_GPIO_3) {
                        if (ctrl & enable[i]) {
      
                seq_printf(s, "\t");
      
--- --          seq_printf(s, "%i\n", (data & IOPD_(i)) ? 1 : 0);
+++ ++          seq_printf(s, "%i\n", (data & IOPD(i)) ? 1 : 0);
        }
        return 0;
      }
index 1746c67af1762f71ba42045088784fdc778cc68c,064b3208141dc21741a5d4f36a013bc8877908d0,1746c67af1762f71ba42045088784fdc778cc68c,507933c8379c6e12204d72e2421fd9d6043d9426,1746c67af1762f71ba42045088784fdc778cc68c,1746c67af1762f71ba42045088784fdc778cc68c..f5ebcc0fcab9f9c36eaaf5dcbcc6b350393fbb2a
      #include <linux/init.h>
      #include <linux/irq.h>
      #include <linux/delay.h>
+ ++++#include <linux/io.h>
      
- ----#include <asm/io.h>
      #include <asm/signal.h>
      #include <asm/mach/pci.h>
      #include <mach/hardware.h>
@@@@@@@ -141,7 -141,7 -141,7 -141,7 -141,7 -141,7 +141,7 @@@@@@@ static struct pci_ops ks8695_pci_ops = 
        .write  = ks8695_pci_writeconfig,
      };
      
--- --static struct pci_bus *ks8695_pci_scan_bus(int nr, struct pci_sys_data *sys)
+++ ++static struct pci_bus* __init ks8695_pci_scan_bus(int nr, struct pci_sys_data *sys)
      {
        return pci_scan_bus(sys->busnr, &ks8695_pci_ops, sys);
      }
index 83be1c6c5f80a731f0996714f67da037c399c273,159fffb96d7243760aa2d56028fb3d39a7023772,83be1c6c5f80a731f0996714f67da037c399c273,83be1c6c5f80a731f0996714f67da037c399c273,83be1c6c5f80a731f0996714f67da037c399c273,ec519ecfef1bcc6429146d3b779bdc80b04a21b5..e45d3a1890bcee7faaf6d23f406aa055726e4c10
      #include <linux/ioport.h>
      #include <linux/platform_device.h>
      #include <linux/irq.h>
- ----
+ ++++#include <linux/io.h>
      #include <linux/mtd/partitions.h>
      
      #include <mach/hardware.h>
- ----#include <asm/io.h>
      #include <asm/setup.h>
      #include <asm/mach-types.h>
      
      
      static struct resource smc91x_resources[] = {
        [0] = {
-----           .start  =  PLEB_ETH0_P,
-----           .end    =  PLEB_ETH0_P | 0x03ffffff,
+++++           .start  = PLEB_ETH0_P,
+++++           .end    = PLEB_ETH0_P | 0x03ffffff,
                .flags  = IORESOURCE_MEM,
        },
      #if 0 /* Autoprobe instead, to get rising/falling edge characteristic right */
@@@@@@@ -87,15 -86,15 -87,15 -87,15 -87,15 -87,15 +86,15 @@@@@@@ static struct resource pleb_flash_resou
      static struct mtd_partition pleb_partitions[] = {
        {
                .name           = "blob",
-----           .offset         = 0,
+++++           .offset         = 0,
                .size           = 0x00020000,
        }, {
                .name           = "kernel",
-----           .offset         = MTDPART_OFS_APPEND,
+++++           .offset         = MTDPART_OFS_APPEND,
                .size           = 0x000e0000,
        }, {
                .name           = "rootfs",
-----           .offset         = MTDPART_OFS_APPEND,
+++++           .offset         = MTDPART_OFS_APPEND,
                .size           = 0x00300000,
        }
      };