diff options
author | John Crispin <john@phrozen.org> | 2018-08-09 15:59:41 +0200 |
---|---|---|
committer | John Crispin <john@phrozen.org> | 2018-08-22 08:09:00 +0200 |
commit | 318e19ba6755105bb6cc19937d8fff26cbd2cc6f (patch) | |
tree | 2f7c96140932a2770fb767141c7d1e93d29127b0 /target/linux/ar71xx/files/drivers/net | |
parent | e5f56c07d7fab9a6f2201f4100b593349b8ef67d (diff) | |
download | upstream-318e19ba6755105bb6cc19937d8fff26cbd2cc6f.tar.gz upstream-318e19ba6755105bb6cc19937d8fff26cbd2cc6f.tar.bz2 upstream-318e19ba6755105bb6cc19937d8fff26cbd2cc6f.zip |
ar71xx: add v4.14 support
adds v4.14 patches for testing but leaves v4.9 as default for now.
Signed-off-by: John Crispin <john@phrozen.org>
Diffstat (limited to 'target/linux/ar71xx/files/drivers/net')
-rw-r--r-- | target/linux/ar71xx/files/drivers/net/dsa/mv88e6063.c | 18 | ||||
-rw-r--r-- | target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_ethtool.c | 8 |
2 files changed, 26 insertions, 0 deletions
diff --git a/target/linux/ar71xx/files/drivers/net/dsa/mv88e6063.c b/target/linux/ar71xx/files/drivers/net/dsa/mv88e6063.c index 5b6da713f4..71ecd61c80 100644 --- a/target/linux/ar71xx/files/drivers/net/dsa/mv88e6063.c +++ b/target/linux/ar71xx/files/drivers/net/dsa/mv88e6063.c @@ -182,7 +182,11 @@ static int mv88e6063_setup_port(struct dsa_switch *ds, int p) #else ds->enabled_port_mask : #endif +#if LINUX_VERSION_CODE < KERNEL_VERSION(4,14,0) (1 << ds->dst->cpu_port))); +#else + (1 << ds->dst->cpu_dp->index))); +#endif /* * Port Association Vector: when learning source addresses @@ -275,15 +279,29 @@ static struct dsa_switch_ops mv88e6063_switch_ops = { .phy_write = mv88e6063_phy_write, }; +#if LINUX_VERSION_CODE > KERNEL_VERSION(4,13,0) +static struct dsa_switch_driver mv88e6063_switch_drv = { + .ops = &mv88e6063_switch_ops, +}; +#endif + static int __init mv88e6063_init(void) { +#if LINUX_VERSION_CODE < KERNEL_VERSION(4,14,0) register_switch_driver(&mv88e6063_switch_ops); +#else + register_switch_driver(&mv88e6063_switch_drv); +#endif return 0; } module_init(mv88e6063_init); static void __exit mv88e6063_cleanup(void) { +#if LINUX_VERSION_CODE < KERNEL_VERSION(4,14,0) unregister_switch_driver(&mv88e6063_switch_ops); +#else + unregister_switch_driver(&mv88e6063_switch_drv); +#endif } module_exit(mv88e6063_cleanup); diff --git a/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_ethtool.c b/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_ethtool.c index f0e102152f..a8fd5c7209 100644 --- a/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_ethtool.c +++ b/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_ethtool.c @@ -22,7 +22,11 @@ static int ag71xx_ethtool_get_settings(struct net_device *dev, if (!phydev) return -ENODEV; +#if LINUX_VERSION_CODE < KERNEL_VERSION(4,14,0) return phy_ethtool_gset(phydev, cmd); +#else + return phy_ethtool_ioctl(phydev, cmd); +#endif } static int ag71xx_ethtool_set_settings(struct net_device *dev, @@ -34,7 +38,11 @@ static int ag71xx_ethtool_set_settings(struct net_device *dev, if (!phydev) return -ENODEV; +#if LINUX_VERSION_CODE < KERNEL_VERSION(4,14,0) return phy_ethtool_sset(phydev, cmd); +#else + return phy_ethtool_ioctl(phydev, cmd); +#endif } static void ag71xx_ethtool_get_drvinfo(struct net_device *dev, |