+#include <linux/random.h>
+#include <linux/etherdevice.h>
+#include <linux/irq.h>
++#include <linux/io.h>
+#include <asm/irq_cpu.h>
+#include <asm/reboot.h>
-+#include <asm/io.h>
+
+#include <ar231x_platform.h>
+#include "devices.h"
+#include <asm/reboot.h>
+#include <asm/time.h>
+#include <linux/irq.h>
-+#include <asm/io.h>
++#include <linux/io.h>
+
+#include <ar231x_platform.h>
+#include <ar5312_regs.h>
+#include <asm/reboot.h>
+#include <asm/time.h>
+#include <linux/irq.h>
-+#include <asm/io.h>
++#include <linux/io.h>
+
+#include <ar231x_platform.h>
+#include <ar2315_regs.h>
+obj-$(CONFIG_ATHEROS_AR2315_PCI) += pci.o
--- /dev/null
+++ b/arch/mips/ar231x/pci.c
-@@ -0,0 +1,230 @@
+@@ -0,0 +1,228 @@
+/*
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+#include <linux/spinlock.h>
+#include <linux/delay.h>
+#include <linux/irq.h>
-+#include <asm/bootinfo.h>
++#include <linux/io.h>
+#include <asm/paccess.h>
-+#include <asm/irq_cpu.h>
-+#include <asm/io.h>
+#include <ar231x_platform.h>
+#include <ar231x.h>
+#include <ar2315_regs.h>
+obj-$(CONFIG_NET_VENDOR_AR231X) += ar231x.o
--- /dev/null
+++ b/drivers/net/ethernet/ar231x/ar231x.c
-@@ -0,0 +1,1260 @@
+@@ -0,0 +1,1256 @@
+/*
+ * ar231x.c: Linux driver for the Atheros AR231x Ethernet device.
+ *
+#include <linux/ethtool.h>
+#include <linux/ctype.h>
+#include <linux/platform_device.h>
++#include <linux/io.h>
++#include <linux/uaccess.h>
+
+#include <net/sock.h>
+#include <net/ip.h>
+
-+#include <asm/io.h>
-+#include <asm/irq.h>
-+#include <asm/byteorder.h>
-+#include <asm/uaccess.h>
-+#include <asm/bootinfo.h>
-+
+#define AR2313_MTU 1692
+#define AR2313_PRIOS 1
+#define AR2313_QUEUES (2*AR2313_PRIOS)
+
--- /dev/null
+++ b/drivers/net/ethernet/ar231x/ar231x.h
-@@ -0,0 +1,289 @@
+@@ -0,0 +1,288 @@
+/*
+ * ar231x.h: Linux driver for the Atheros AR231x Ethernet device.
+ *
+#include <linux/interrupt.h>
+#include <generated/autoconf.h>
+#include <linux/bitops.h>
-+#include <asm/bootinfo.h>
+#include <ar231x_platform.h>
+
+/* probe link timer - 5 secs */
--- /dev/null
+++ b/drivers/mtd/devices/ar2315.c
-@@ -0,0 +1,515 @@
+@@ -0,0 +1,514 @@
+
+/*
+ * MTD driver for the SPI Flash Memory support on Atheros AR2315
+#include <linux/sched.h>
+#include <linux/root_dev.h>
+#include <linux/delay.h>
-+#include <asm/delay.h>
-+#include <asm/io.h>
++#include <linux/io.h>
+
+#include <ar2315_spiflash.h>
+#include <ar231x_platform.h>
--- /dev/null
+++ b/drivers/watchdog/ar2315-wtd.c
-@@ -0,0 +1,200 @@
+@@ -0,0 +1,199 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+#include <linux/reboot.h>
+#include <linux/init.h>
+#include <linux/platform_device.h>
++#include <linux/io.h>
++#include <linux/uaccess.h>
+
-+#include <asm/io.h>
-+#include <asm/uaccess.h>
-+#include <asm/addrspace.h>
+#include <ar231x_platform.h>
+#include <ar2315_regs.h>
+#include <ar231x.h>
--- a/drivers/net/ethernet/ar231x/ar231x.c
+++ b/drivers/net/ethernet/ar231x/ar231x.c
-@@ -150,6 +150,7 @@ static int ar231x_mdiobus_write(struct m
+@@ -146,6 +146,7 @@ static int ar231x_mdiobus_write(struct m
static int ar231x_mdiobus_reset(struct mii_bus *bus);
static int ar231x_mdiobus_probe (struct net_device *dev);
static void ar231x_adjust_link(struct net_device *dev);
#ifndef ERR
#define ERR(fmt, args...) printk("%s: " fmt, __func__, ##args)
-@@ -182,6 +183,32 @@ static const struct net_device_ops ar231
+@@ -178,6 +179,32 @@ static const struct net_device_ops ar231
#endif
};
int ar231x_probe(struct platform_device *pdev)
{
struct net_device *dev;
-@@ -297,6 +324,23 @@ int ar231x_probe(struct platform_device
+@@ -293,6 +320,23 @@ int ar231x_probe(struct platform_device
mdiobus_register(sp->mii_bus);
if (ar231x_mdiobus_probe(dev) != 0) {
printk(KERN_ERR "%s: mdiobus_probe failed\n", dev->name);
rx_tasklet_cleanup(dev);
-@@ -353,8 +397,10 @@ static int ar231x_remove(struct platform
+@@ -349,8 +393,10 @@ static int ar231x_remove(struct platform
rx_tasklet_cleanup(dev);
ar231x_init_cleanup(dev);
unregister_netdev(dev);
kfree(dev);
return 0;
}
-@@ -1115,6 +1161,9 @@ static int ar231x_ioctl(struct net_devic
+@@ -1111,6 +1157,9 @@ static int ar231x_ioctl(struct net_devic
struct ar231x_private *sp = netdev_priv(dev);
int ret;
--- a/drivers/net/ethernet/ar231x/ar231x.c
+++ b/drivers/net/ethernet/ar231x/ar231x.c
-@@ -1277,7 +1277,7 @@ static int ar231x_mdiobus_probe (struct
+@@ -1273,7 +1273,7 @@ static int ar231x_mdiobus_probe (struct
BUG_ON(!phydev);
BUG_ON(phydev->attached_dev);