--- avm/osp.avm.de/fritzbox/fritzbox-5490/source-files-FRITZ.Box_5490-07.12/linux/drivers/net/avm_cpmac/configs/config_HW185.h 2018-12-07 09:24:14.000000000 +0100 +++ avm/osp.avm.de/fritzbox/fritzbox-5490/source-files-FRITZ.Box_5490-07.12/linux/drivers/net/avm_cpmac/configs/config_HW223.h 2018-12-07 09:24:14.000000000 +0100 @@ -1,5 +1,5 @@ -#if !defined(__AVM_NET_CFG_HW185_) -#define __AVM_NET_CFG_HW185_ +#if !defined(__AVM_NET_CFG_HW223_) +#define __AVM_NET_CFG_HW223_ #include #include @@ -8,15 +8,45 @@ #include "../switch/ifx/7port/swi_7port.h" #include "../switch/ifx/7port/mac_7port.h" #include "../phy/avmnet_ar803x.h" +#include "../phy/avmnet_ar8337.h" #include "../phy/phy_wasp.h" -extern avmnet_module_t hw185_avmnet_mac_7port_0; -extern avmnet_module_t hw185_avmnet_mac_7port_1; -extern avmnet_module_t hw185_avmnet_mac_7port_2; -extern avmnet_module_t hw185_avmnet_mac_7port_4; -extern avmnet_module_t hw185_avmnet_mac_7port_5; +extern avmnet_module_t hw223_avmnet_mac_7port_0; +extern avmnet_module_t hw223_avmnet_mac_7port_1; +extern avmnet_module_t hw223_avmnet_mac_7port_2; +extern avmnet_module_t hw223_avmnet_mac_7port_4; +extern avmnet_module_t hw223_avmnet_mac_7port_5; -avmnet_device_t hw185_avmnet_avm_device_0 = +avmnet_device_t hw223_avmnet_avm_device_0 = +{ + .device = NULL, + .device_name = "wan", + .external_port_no = 4, +#if defined(CONFIG_AVM_SCATTER_GATHER) + .net_dev_features = NETIF_F_SG | NETIF_F_IP_CSUM, +#endif + .device_ops = { + .ndo_init = ifx_ppa_eth_init, + .ndo_get_stats = avmnet_swi_7port_get_net_device_stats, + .ndo_open = avmnet_netdev_open, + .ndo_stop = avmnet_netdev_stop, + .ndo_do_ioctl = ifx_ppa_eth_ioctl, + .ndo_tx_timeout = ifx_ppa_eth_tx_timeout, + .ndo_start_xmit = ifx_ppa_eth_hard_start_xmit + }, + .sizeof_priv = sizeof(avmnet_netdev_priv_t), + .device_setup = ifx_ppa_setup_eth, + .device_setup_priv = ifx_ppa_setup_priv, + .flags = AVMNET_DEVICE_IFXPPA_ETH_WAN | AVMNET_CONFIG_FLAG_SWITCH_WAN | AVMNET_CONFIG_FLAG_USE_GPON, + .mac_module = &hw223_avmnet_mac_7port_0, + .etht_stat = { + DEFAULT_HW_STATS, + DEFAULT_AVMNET_STATS, + .gather_hw_stats = create_7port_rmon_cnt, + }, +}; + +avmnet_device_t hw223_avmnet_avm_device_1 = { .device = NULL, .device_name = "eth0", @@ -37,7 +67,7 @@ .device_setup = ifx_ppa_setup_eth, .device_setup_priv = ifx_ppa_setup_priv, .flags = AVMNET_DEVICE_IFXPPA_ETH_LAN, - .mac_module = &hw185_avmnet_mac_7port_4, + .mac_module = &hw223_avmnet_mac_7port_4, .etht_stat = { DEFAULT_HW_STATS, DEFAULT_AVMNET_STATS, @@ -45,7 +75,7 @@ }, }; -avmnet_device_t hw185_avmnet_avm_device_1 = +avmnet_device_t hw223_avmnet_avm_device_2 = { .device = NULL, .device_name = "eth1", @@ -66,7 +96,7 @@ .device_setup = ifx_ppa_setup_eth, .device_setup_priv = ifx_ppa_setup_priv, .flags = AVMNET_DEVICE_IFXPPA_ETH_LAN, - .mac_module = &hw185_avmnet_mac_7port_2, + .mac_module = &hw223_avmnet_mac_7port_2, .etht_stat = { DEFAULT_HW_STATS, DEFAULT_AVMNET_STATS, @@ -74,10 +104,13 @@ }, }; -avmnet_device_t hw185_avmnet_avm_device_2 = +/*------------------------------------------------------------------------------------------*\ + * eth2 und eth3 sind keinem MAC zugeordnet - hier wird nur der Status angezeigt +\*------------------------------------------------------------------------------------------*/ +avmnet_device_t hw223_avmnet_avm_device_3 = { .device = NULL, - .device_name = "eth2", + .device_name = "eth2.2", .external_port_no = 2, #if defined(CONFIG_AVM_SCATTER_GATHER) .net_dev_features = NETIF_F_SG | NETIF_F_IP_CSUM, @@ -88,25 +121,33 @@ .ndo_open = avmnet_netdev_open, .ndo_stop = avmnet_netdev_stop, .ndo_do_ioctl = ifx_ppa_eth_ioctl, - .ndo_tx_timeout = ifx_ppa_eth_tx_timeout, - .ndo_start_xmit = ifx_ppa_eth_hard_start_xmit + .ndo_tx_timeout = ifx_ppa_eth_tx_timeout_HW223, + .ndo_start_xmit = ifx_ppa_eth_hard_start_xmit_HW223 }, .sizeof_priv = sizeof(avmnet_netdev_priv_t), - .device_setup = ifx_ppa_setup_eth, + .device_setup = ether_setup, .device_setup_priv = ifx_ppa_setup_priv, .flags = AVMNET_DEVICE_IFXPPA_ETH_LAN, - .mac_module = &hw185_avmnet_mac_7port_0, + /*--- .mac_module = &hw223_avmnet_mac_7port_1, ---*/ + .vlanID = 2, + .vlanCFG = S17_VTU_FUNC0_VALID | S17_VTU_FUNC0_IVL_EN | + S17_VTU_FUNC0_EG_VLANMODE_PORT0(VLANMODE_TAGGED) | + S17_VTU_FUNC0_EG_VLANMODE_PORT1(VLANMODE_NOMEMBER) | + S17_VTU_FUNC0_EG_VLANMODE_PORT2(VLANMODE_UNTAGGED) | + S17_VTU_FUNC0_EG_VLANMODE_PORT3(VLANMODE_NOMEMBER) | + S17_VTU_FUNC0_EG_VLANMODE_PORT4(VLANMODE_NOMEMBER) | + S17_VTU_FUNC0_EG_VLANMODE_PORT5(VLANMODE_NOMEMBER) | + S17_VTU_FUNC0_EG_VLANMODE_PORT6(VLANMODE_NOMEMBER), .etht_stat = { DEFAULT_HW_STATS, - DEFAULT_AVMNET_STATS, - .gather_hw_stats = create_7port_rmon_cnt, + .gather_hw_stats = create_ar8337_rmon_cnt, }, }; -avmnet_device_t hw185_avmnet_avm_device_3 = +avmnet_device_t hw223_avmnet_avm_device_4 = { .device = NULL, - .device_name = "eth3", + .device_name = "eth3.3", .external_port_no = 3, #if defined(CONFIG_AVM_SCATTER_GATHER) .net_dev_features = NETIF_F_SG | NETIF_F_IP_CSUM, @@ -117,14 +158,51 @@ .ndo_open = avmnet_netdev_open, .ndo_stop = avmnet_netdev_stop, .ndo_do_ioctl = ifx_ppa_eth_ioctl, + .ndo_tx_timeout = ifx_ppa_eth_tx_timeout_HW223, + .ndo_start_xmit = ifx_ppa_eth_hard_start_xmit_HW223 + }, + .sizeof_priv = sizeof(avmnet_netdev_priv_t), + .device_setup = ether_setup, + .device_setup_priv = ifx_ppa_setup_priv, + .flags = AVMNET_DEVICE_IFXPPA_ETH_LAN, + /*--- .mac_module = &hw223_avmnet_mac_7port_1, ---*/ + .vlanID = 3, /*--- vlanID == sourcePortID ---*/ + .vlanCFG = S17_VTU_FUNC0_VALID | S17_VTU_FUNC0_IVL_EN | + S17_VTU_FUNC0_EG_VLANMODE_PORT0(VLANMODE_TAGGED) | + S17_VTU_FUNC0_EG_VLANMODE_PORT1(VLANMODE_NOMEMBER) | + S17_VTU_FUNC0_EG_VLANMODE_PORT2(VLANMODE_NOMEMBER) | + S17_VTU_FUNC0_EG_VLANMODE_PORT3(VLANMODE_UNTAGGED) | + S17_VTU_FUNC0_EG_VLANMODE_PORT4(VLANMODE_NOMEMBER) | + S17_VTU_FUNC0_EG_VLANMODE_PORT5(VLANMODE_NOMEMBER) | + S17_VTU_FUNC0_EG_VLANMODE_PORT6(VLANMODE_NOMEMBER), + .etht_stat = { + DEFAULT_HW_STATS, + .gather_hw_stats = create_ar8337_rmon_cnt, + }, +}; + +avmnet_device_t hw223_avmnet_avm_device_5 = +{ + .device = NULL, + .device_name = "wasp", + .external_port_no = 255, +#if defined(CONFIG_AVM_SCATTER_GATHER) + .net_dev_features = NETIF_F_SG | NETIF_F_IP_CSUM, +#endif + .device_ops = { + .ndo_init = ifx_ppa_eth_init, + .ndo_get_stats = avmnet_swi_7port_get_net_device_stats, + .ndo_open = avmnet_netdev_open, + .ndo_stop = avmnet_netdev_stop, + .ndo_do_ioctl = ifx_ppa_eth_ioctl, .ndo_tx_timeout = ifx_ppa_eth_tx_timeout, .ndo_start_xmit = ifx_ppa_eth_hard_start_xmit }, .sizeof_priv = sizeof(avmnet_netdev_priv_t), .device_setup = ifx_ppa_setup_eth, .device_setup_priv = ifx_ppa_setup_priv, - .flags = AVMNET_DEVICE_IFXPPA_ETH_LAN, - .mac_module = &hw185_avmnet_mac_7port_1, + .flags = AVMNET_DEVICE_IFXPPA_ETH_LAN | AVMNET_DEVICE_FLAG_PHYS_OFFLOAD_LINK | AVMNET_DEVICE_FLAG_NO_MCFW, + .mac_module = &hw223_avmnet_mac_7port_5, .etht_stat = { DEFAULT_HW_STATS, DEFAULT_AVMNET_STATS, @@ -132,10 +210,10 @@ }, }; -avmnet_device_t hw185_avmnet_avm_device_4 = +avmnet_device_t hw223_avmnet_avm_device_6 = { .device = NULL, - .device_name = "wasp", + .device_name = "vlan_master0", .external_port_no = 255, #if defined(CONFIG_AVM_SCATTER_GATHER) .net_dev_features = NETIF_F_SG | NETIF_F_IP_CSUM, @@ -152,8 +230,9 @@ .sizeof_priv = sizeof(avmnet_netdev_priv_t), .device_setup = ifx_ppa_setup_eth, .device_setup_priv = ifx_ppa_setup_priv, - .flags = AVMNET_DEVICE_IFXPPA_ETH_LAN | AVMNET_DEVICE_FLAG_PHYS_OFFLOAD_LINK | AVMNET_DEVICE_FLAG_NO_MCFW, - .mac_module = &hw185_avmnet_mac_7port_5, + .device_setup_late = hw223_late_init, + .flags = AVMNET_DEVICE_IFXPPA_ETH_LAN, + .mac_module = &hw223_avmnet_mac_7port_1, .etht_stat = { DEFAULT_HW_STATS, DEFAULT_AVMNET_STATS, @@ -161,30 +240,17 @@ }, }; -avmnet_device_t hw185_avmnet_avm_device_5 = -{ - .device = NULL, - .device_name = "ptm_vr9", - .external_port_no = 255, - .sizeof_priv = sizeof(avmnet_netdev_priv_t), - .device_setup_priv = ifx_ppa_setup_priv, - .flags = AVMNET_DEVICE_IFXPPA_PTM_WAN | AVMNET_DEVICE_FLAG_WAIT_FOR_MODULE_FUNCTIONS, - .device_ops = { - .ndo_get_stats = avmnet_generic_get_stats, - }, - .mac_module = NULL, -}; - -avmnet_device_t *hw185_avmnet_avm_devices[] = { - &hw185_avmnet_avm_device_0, - &hw185_avmnet_avm_device_1, - &hw185_avmnet_avm_device_2, - &hw185_avmnet_avm_device_3, - &hw185_avmnet_avm_device_4, - &hw185_avmnet_avm_device_5 +avmnet_device_t *hw223_avmnet_avm_devices[] = { + &hw223_avmnet_avm_device_0, + &hw223_avmnet_avm_device_1, + &hw223_avmnet_avm_device_2, + &hw223_avmnet_avm_device_3, + &hw223_avmnet_avm_device_4, + &hw223_avmnet_avm_device_5, + &hw223_avmnet_avm_device_6, }; -avmnet_module_t hw185_avmnet = +avmnet_module_t hw223_avmnet = { .name = "swi_vr9", .type = avmnet_modtype_switch, @@ -213,22 +279,24 @@ .parent = NULL, .num_children = 5, .children = { - &hw185_avmnet_mac_7port_5, - &hw185_avmnet_mac_7port_0, - &hw185_avmnet_mac_7port_1, - &hw185_avmnet_mac_7port_2, - &hw185_avmnet_mac_7port_4 + &hw223_avmnet_mac_7port_5, + &hw223_avmnet_mac_7port_0, + &hw223_avmnet_mac_7port_1, + &hw223_avmnet_mac_7port_2, + &hw223_avmnet_mac_7port_4 } }; +extern avmnet_module_t hw223_avmnet_phy_fiber; +extern avmnet_module_t hw223_avmnet_phy_ar803x_0; +extern avmnet_module_t hw223_avmnet_phy_ar803x_1; +extern avmnet_module_t hw223_ath_switch; +extern avmnet_module_t hw223_avmnet_phy_11G_0; +extern avmnet_module_t hw223_avmnet_phy_11G_1; +extern avmnet_module_t hw223_avmnet_phy_wasp; +extern avmnet_module_t hw223_avmnet_dummy; -extern avmnet_module_t hw185_avmnet_phy_ar803x_0; -extern avmnet_module_t hw185_avmnet_phy_ar803x_1; -extern avmnet_module_t hw185_avmnet_phy_11G_0; -extern avmnet_module_t hw185_avmnet_phy_11G_1; -extern avmnet_module_t hw185_avmnet_phy_wasp; - -avmnet_module_t hw185_avmnet_mac_7port_0 = +avmnet_module_t hw223_avmnet_mac_7port_0 = { .name = "mac_7port_0", .type = avmnet_modtype_mac, @@ -242,31 +310,32 @@ MAC_VR9_STDFUNCS, - .parent = &hw185_avmnet, + .parent = &hw223_avmnet, .num_children = 1, - .children = { &hw185_avmnet_phy_ar803x_0 } + .children = { &hw223_avmnet_phy_fiber } }; -avmnet_module_t hw185_avmnet_mac_7port_1 = +avmnet_module_t hw223_avmnet_mac_7port_1 = { .name = "mac_7port_1", .type = avmnet_modtype_mac, .priv = NULL, .initdata.mac = { + .flags = AVMNET_CONFIG_FLAG_SWITCHPORT | + AVMNET_CONFIG_FLAG_MAC_SUPPORT_FC_ASYM | + AVMNET_CONFIG_FLAG_MAC_SUPPORT_FC_SYM, .mac_nr = 1, .mac_mode = MAC_MODE_RGMII_1000, - .flags = AVMNET_CONFIG_FLAG_MAC_SUPPORT_FC_ASYM | - AVMNET_CONFIG_FLAG_MAC_SUPPORT_FC_SYM, - }, + }, - MAC_VR9_STDFUNCS, - - .parent = &hw185_avmnet, + MAC_VR9_STDFUNCS, + + .parent = &hw223_avmnet, .num_children = 1, - .children = { &hw185_avmnet_phy_ar803x_1 } + .children = { &hw223_ath_switch } }; -avmnet_module_t hw185_avmnet_mac_7port_2 = +avmnet_module_t hw223_avmnet_mac_7port_2 = { .name = "mac_7port_2", .type = avmnet_modtype_mac, @@ -276,16 +345,16 @@ .mac_mode = MAC_MODE_GMII, .flags = AVMNET_CONFIG_FLAG_MAC_SUPPORT_FC_ASYM | AVMNET_CONFIG_FLAG_MAC_SUPPORT_FC_SYM, - }, - - MAC_VR9_STDFUNCS, + }, + + MAC_VR9_STDFUNCS, - .parent = &hw185_avmnet, + .parent = &hw223_avmnet, .num_children = 1, - .children = { &hw185_avmnet_phy_11G_1 } + .children = { &hw223_avmnet_phy_11G_1 } }; -avmnet_module_t hw185_avmnet_mac_7port_4 = +avmnet_module_t hw223_avmnet_mac_7port_4 = { .name = "mac_7port_4", .type = avmnet_modtype_mac, @@ -295,16 +364,16 @@ .mac_mode = MAC_MODE_GMII, .flags = AVMNET_CONFIG_FLAG_MAC_SUPPORT_FC_ASYM | AVMNET_CONFIG_FLAG_MAC_SUPPORT_FC_SYM, - }, - - MAC_VR9_STDFUNCS, + }, - .parent = &hw185_avmnet, + MAC_VR9_STDFUNCS, + + .parent = &hw223_avmnet, .num_children = 1, - .children = { &hw185_avmnet_phy_11G_0 } + .children = { &hw223_avmnet_phy_11G_0 } }; -avmnet_module_t hw185_avmnet_mac_7port_5 = +avmnet_module_t hw223_avmnet_mac_7port_5 = { .name = "mac_7port_5", .type = avmnet_modtype_mac, @@ -317,111 +386,198 @@ .mac_mode = MAC_MODE_RGMII_1000, .rx_delay = 0, .tx_delay = 1, - }, + }, - MAC_VR9_STDFUNCS, + MAC_VR9_STDFUNCS, - .parent = &hw185_avmnet, + .parent = &hw223_avmnet, .num_children = 1, - .children = { &hw185_avmnet_phy_wasp } + .children = { &hw223_avmnet_phy_wasp } +}; + +avmnet_module_t hw223_ath_switch = +{ + .name = "ar8334", + .device_id = &hw223_avmnet_avm_device_6, /*--- das Interface zum hw223_avmnet_mac_7port_1 wird hier initialisiert ---*/ + .type = avmnet_modtype_switch, + .priv = NULL, + .initdata.swi = { + .flags = AVMNET_CONFIG_FLAG_TX_DELAY | + AVMNET_CONFIG_FLAG_RX_DELAY | + AVMNET_CONFIG_FLAG_RESET, + .rx_delay = 0, + .tx_delay = 3, + .reset = 44, + }, + + .init = avmnet_ar8337_init, + .setup = avmnet_ar8334_vlan_setup, + .exit = avmnet_ar8337_exit, + + .lock = avmnet_s17_lock, + .unlock = avmnet_s17_unlock, + .trylock = avmnet_s17_trylock, + + .reg_read = avmnet_s17_rd_phy, + .reg_write = avmnet_s17_wr_phy, + .status_changed = avmnet_ar8337_status_changed, + .poll = avmnet_ar8337_HW223_poll, + .set_status = avmnet_ar8337_set_status, + .setup_irq = avmnet_ar8337_setup_interrupt, + + .parent = &hw223_avmnet_mac_7port_1, + .num_children = 2, + .children = { &hw223_avmnet_phy_ar803x_0, &hw223_avmnet_phy_ar803x_1 } }; -avmnet_module_t hw185_avmnet_phy_ar803x_0 = +avmnet_module_t hw223_avmnet_phy_ar803x_0 = { .name = "phy_ar803x_0", - .device_id = &hw185_avmnet_avm_device_2, + .device_id = &hw223_avmnet_avm_device_3, .type = avmnet_modtype_phy, .priv = NULL, .initdata.phy = { - .flags = AVMNET_CONFIG_FLAG_MDIOADDR - | AVMNET_CONFIG_FLAG_RESET - | AVMNET_CONFIG_FLAG_PHY_GBIT - | AVMNET_CONFIG_FLAG_DEFAULT_EN_FC_RX, - .mdio_addr = 0x00, - .reset = 32 + .flags = AVMNET_CONFIG_FLAG_MDIOADDR | + AVMNET_CONFIG_FLAG_PHY_GBIT | + AVMNET_CONFIG_FLAG_INTERNAL | + AVMNET_CONFIG_FLAG_DEFAULT_EN_FC_RX, + .mdio_addr = 0x01, }, AR803X_STDFUNCS, + .setup_special_hw = avmnet_athrs17_setup_phy, .ethtool_ops = AR803X_ETHOPS, - .parent = &hw185_avmnet_mac_7port_0, + .parent = &hw223_ath_switch, .num_children = 0, .children = {} }; -avmnet_module_t hw185_avmnet_phy_ar803x_1 = +avmnet_module_t hw223_avmnet_phy_ar803x_1 = { .name = "phy_ar803x_1", - .device_id = &hw185_avmnet_avm_device_3, + .device_id = &hw223_avmnet_avm_device_4, .type = avmnet_modtype_phy, .priv = NULL, .initdata.phy = { - .flags = AVMNET_CONFIG_FLAG_MDIOADDR - | AVMNET_CONFIG_FLAG_RESET - | AVMNET_CONFIG_FLAG_PHY_GBIT - | AVMNET_CONFIG_FLAG_DEFAULT_EN_FC_RX, - .mdio_addr = 0x01, - .reset = 44 + .flags = AVMNET_CONFIG_FLAG_MDIOADDR | + AVMNET_CONFIG_FLAG_PHY_GBIT | + AVMNET_CONFIG_FLAG_INTERNAL | + AVMNET_CONFIG_FLAG_DEFAULT_EN_FC_RX, + .mdio_addr = 0x02, }, AR803X_STDFUNCS, + .setup_special_hw = avmnet_athrs17_setup_phy, .ethtool_ops = AR803X_ETHOPS, - .parent = &hw185_avmnet_mac_7port_1, + .parent = &hw223_ath_switch, .num_children = 0, .children = {} }; -avmnet_module_t hw185_avmnet_phy_11G_0 = +avmnet_module_t hw223_avmnet_phy_11G_0 = { .name = "phy_11G_0", - .device_id = &hw185_avmnet_avm_device_0, + .device_id = &hw223_avmnet_avm_device_1, .type = avmnet_modtype_phy, .priv = NULL, .initdata.phy = { - .flags = AVMNET_CONFIG_FLAG_PHY_GBIT | + .flags = AVMNET_CONFIG_FLAG_MDIOADDR | + AVMNET_CONFIG_FLAG_PHY_GBIT | AVMNET_CONFIG_FLAG_INTERNAL | AVMNET_CONFIG_FLAG_DEFAULT_EN_FC_RX, - .mdio_addr = 0x13, + .mdio_addr = 0x9, }, PHY_11G_STDFUNCS, .ethtool_ops = PHY_11G_ETHOPS, - .parent = &hw185_avmnet_mac_7port_4, + .parent = &hw223_avmnet_mac_7port_4, .num_children = 0, .children = {} }; -avmnet_module_t hw185_avmnet_phy_11G_1 = +avmnet_module_t hw223_avmnet_phy_11G_1 = { .name = "phy_11G_1", - .device_id = &hw185_avmnet_avm_device_1, + .device_id = &hw223_avmnet_avm_device_2, .type = avmnet_modtype_phy, .priv = NULL, .initdata.phy = { - .flags = AVMNET_CONFIG_FLAG_PHY_GBIT | + .flags = AVMNET_CONFIG_FLAG_MDIOADDR | + AVMNET_CONFIG_FLAG_PHY_GBIT | AVMNET_CONFIG_FLAG_INTERNAL | AVMNET_CONFIG_FLAG_DEFAULT_EN_FC_RX, - .mdio_addr = 0x11, + .mdio_addr = 0x5, }, PHY_11G_STDFUNCS, .ethtool_ops = PHY_11G_ETHOPS, - .parent = &hw185_avmnet_mac_7port_2, + .parent = &hw223_avmnet_mac_7port_2, + .num_children = 0, + .children = {} +}; + +avmnet_module_t hw223_avmnet_phy_fiber = +{ + .name = "phy_fiber", + .device_id = &hw223_avmnet_avm_device_0, + .type = avmnet_modtype_phy, + .priv = NULL, + .initdata.phy = { + .flags = AVMNET_CONFIG_FLAG_MDIOADDR | + AVMNET_CONFIG_FLAG_RESET | + AVMNET_CONFIG_FLAG_PHY_MODE_CONF | + AVMNET_CONFIG_FLAG_PHY_GBIT | + AVMNET_CONFIG_FLAG_DEFAULT_EN_FC_RX, + .mode_conf = ( ADVERTISED_1000baseT_Half + | ADVERTISED_1000baseT_Full + | ADVERTISED_100baseT_Half + | ADVERTISED_100baseT_Full + | ADVERTISED_Autoneg + | ADVERTISED_FIBRE + ), + .mdio_addr = 0x06, + .reset = 32, + }, + + .init = avmnet_ar803x_init, + .setup = avmnet_ar803x_setup, + .exit = avmnet_ar803x_exit, + + .reg_read = avmnet_ar803x_reg_read, + .reg_write = avmnet_ar803x_reg_write, + .lock = avmnet_ar803x_lock, + .unlock = avmnet_ar803x_unlock, + .trylock = avmnet_ar803x_trylock, + .status_changed = avmnet_ar803x_status_changed, + + .poll = avmnet_hw223_fiber_poll, + + .setup_irq = avmnet_ar803x_setup_interrupt, + .powerup = avmnet_ar803x_powerup, + .powerdown = avmnet_ar803x_powerdown, + .suspend = avmnet_ar803x_suspend, + .resume = avmnet_ar803x_resume, + .reinit = avmnet_ar803x_reinit, + + .ethtool_ops = AR803X_ETHOPS, + + .parent = &hw223_avmnet_mac_7port_0, .num_children = 0, .children = {} }; -avmnet_module_t hw185_avmnet_phy_wasp = +avmnet_module_t hw223_avmnet_phy_wasp = { .name = "phy_wasp", - .device_id = &hw185_avmnet_avm_device_4, + .device_id = &hw223_avmnet_avm_device_5, .type = avmnet_modtype_phy, .priv = NULL, .initdata.phy = { @@ -443,9 +599,9 @@ .powerup = avmnet_phy_wasp_powerup, .powerdown = avmnet_phy_wasp_powerdown, - .parent = &hw185_avmnet_mac_7port_5, + .parent = &hw223_avmnet_mac_7port_5, .num_children = 0, .children = {} }; -#endif // __AVM_NET_CFG_HW185_ +#endif // __AVM_NET_CFG_HW223_