diff options
author | John Crispin <john@openwrt.org> | 2015-02-15 19:45:29 +0000 |
---|---|---|
committer | John Crispin <john@openwrt.org> | 2015-02-15 19:45:29 +0000 |
commit | 7e4b3de2493f024432935e283f5eeb2920957871 (patch) | |
tree | 10524efa8132ebe05e93a75a10ef3ca733edea0e /target/linux/ar71xx/files | |
parent | 9b1c7a9de4a2734b701660a9f3720e842626aea3 (diff) | |
download | mtk-20170518-7e4b3de2493f024432935e283f5eeb2920957871.zip mtk-20170518-7e4b3de2493f024432935e283f5eeb2920957871.tar.gz mtk-20170518-7e4b3de2493f024432935e283f5eeb2920957871.tar.bz2 |
ar71xx: add v3.18 support
Signed-off-by: John Crispin <blogic@openwrt.org>
SVN-Revision: 44456
Diffstat (limited to 'target/linux/ar71xx/files')
-rw-r--r-- | target/linux/ar71xx/files/arch/mips/ath79/dev-dsa.c | 5 | ||||
-rw-r--r-- | target/linux/ar71xx/files/drivers/gpio/gpio-nxp-74hc153.c | 6 | ||||
-rw-r--r-- | target/linux/ar71xx/files/drivers/net/dsa/mv88e6063.c | 16 |
3 files changed, 26 insertions, 1 deletions
diff --git a/target/linux/ar71xx/files/arch/mips/ath79/dev-dsa.c b/target/linux/ar71xx/files/arch/mips/ath79/dev-dsa.c index 1764147..a9bb334 100644 --- a/target/linux/ar71xx/files/arch/mips/ath79/dev-dsa.c +++ b/target/linux/ar71xx/files/arch/mips/ath79/dev-dsa.c @@ -10,6 +10,7 @@ */ #include <linux/init.h> +#include <linux/version.h> #include <linux/platform_device.h> #include <asm/mach-ath79/ath79.h> @@ -29,7 +30,11 @@ void __init ath79_register_dsa(struct device *netdev, d->netdev = netdev; for (i = 0; i < d->nr_chips; i++) +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,15,0) d->chip[i].mii_bus = miidev; +#else + d->chip[i].host_dev = miidev; +#endif ar71xx_dsa_switch_device.dev.platform_data = d; platform_device_register(&ar71xx_dsa_switch_device); diff --git a/target/linux/ar71xx/files/drivers/gpio/gpio-nxp-74hc153.c b/target/linux/ar71xx/files/drivers/gpio/gpio-nxp-74hc153.c index 5bdeb3d..8c01efe 100644 --- a/target/linux/ar71xx/files/drivers/gpio/gpio-nxp-74hc153.c +++ b/target/linux/ar71xx/files/drivers/gpio/gpio-nxp-74hc153.c @@ -8,6 +8,7 @@ * published by the Free Software Foundation. */ +#include <linux/version.h> #include <linux/module.h> #include <linux/init.h> #include <linux/gpio.h> @@ -198,6 +199,7 @@ static int nxp_74hc153_remove(struct platform_device *pdev) struct nxp_74hc153_platform_data *pdata = pdev->dev.platform_data; if (nxp) { +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,15,0) int err; err = gpiochip_remove(&nxp->gpio_chip); @@ -207,7 +209,9 @@ static int nxp_74hc153_remove(struct platform_device *pdev) err); return err; } - +#else + gpiochip_remove(&nxp->gpio_chip); +#endif gpio_free(pdata->gpio_pin_2y); gpio_free(pdata->gpio_pin_1y); gpio_free(pdata->gpio_pin_s1); diff --git a/target/linux/ar71xx/files/drivers/net/dsa/mv88e6063.c b/target/linux/ar71xx/files/drivers/net/dsa/mv88e6063.c index b41eb54..224b491 100644 --- a/target/linux/ar71xx/files/drivers/net/dsa/mv88e6063.c +++ b/target/linux/ar71xx/files/drivers/net/dsa/mv88e6063.c @@ -12,6 +12,7 @@ * (at your option) any later version. */ +#include <linux/version.h> #include <linux/list.h> #include <linux/netdevice.h> #include <linux/phy.h> @@ -25,7 +26,12 @@ static int reg_read(struct dsa_switch *ds, int addr, int reg) { +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,15,0) return mdiobus_read(ds->master_mii_bus, addr, reg); +#else + struct mii_bus *bus = dsa_host_dev_to_mii_bus(ds->master_dev); + return mdiobus_read(bus, addr, reg); +#endif } #define REG_READ(addr, reg) \ @@ -41,7 +47,12 @@ static int reg_read(struct dsa_switch *ds, int addr, int reg) static int reg_write(struct dsa_switch *ds, int addr, int reg, u16 val) { +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,15,0) return mdiobus_write(ds->master_mii_bus, addr, reg, val); +#else + struct mii_bus *bus = dsa_host_dev_to_mii_bus(ds->master_dev); + return mdiobus_write(bus, addr, reg, val); +#endif } #define REG_WRITE(addr, reg, val) \ @@ -53,8 +64,13 @@ static int reg_write(struct dsa_switch *ds, int addr, int reg, u16 val) return __ret; \ }) +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,15,0) static char *mv88e6063_probe(struct mii_bus *bus, int sw_addr) +#else +static char *mv88e6063_probe(struct device *host_dev, int sw_addr) +#endif { + struct mii_bus *bus = dsa_host_dev_to_mii_bus(host_dev); int ret; ret = mdiobus_read(bus, REG_PORT(0), 0x03); |