Lines Matching refs:eth
18 int (*set_path)(struct mtk_eth *eth, int path);
43 static int set_mux_gdm1_to_gmac1_esw(struct mtk_eth *eth, int path) in set_mux_gdm1_to_gmac1_esw() argument
63 val = mtk_r32(eth, MTK_MAC_MISC); in set_mux_gdm1_to_gmac1_esw()
65 mtk_w32(eth, val, MTK_MAC_MISC); in set_mux_gdm1_to_gmac1_esw()
68 dev_dbg(eth->dev, "path %s in %s updated = %d\n", in set_mux_gdm1_to_gmac1_esw()
74 static int set_mux_gmac2_gmac0_to_gephy(struct mtk_eth *eth, int path) in set_mux_gmac2_gmac0_to_gephy() argument
89 regmap_update_bits(eth->infra, INFRA_MISC2, GEPHY_MAC_SEL, val); in set_mux_gmac2_gmac0_to_gephy()
91 dev_dbg(eth->dev, "path %s in %s updated = %d\n", in set_mux_gmac2_gmac0_to_gephy()
97 static int set_mux_u3_gmac2_to_qphy(struct mtk_eth *eth, int path) in set_mux_u3_gmac2_to_qphy() argument
112 regmap_update_bits(eth->infra, INFRA_MISC2, CO_QPHY_SEL, val); in set_mux_u3_gmac2_to_qphy()
114 dev_dbg(eth->dev, "path %s in %s updated = %d\n", in set_mux_u3_gmac2_to_qphy()
120 static int set_mux_gmac1_gmac2_to_sgmii_rgmii(struct mtk_eth *eth, int path) in set_mux_gmac1_gmac2_to_sgmii_rgmii() argument
134 regmap_read(eth->ethsys, ETHSYS_SYSCFG0, &val); in set_mux_gmac1_gmac2_to_sgmii_rgmii()
149 regmap_update_bits(eth->ethsys, ETHSYS_SYSCFG0, in set_mux_gmac1_gmac2_to_sgmii_rgmii()
152 dev_dbg(eth->dev, "path %s in %s updated = %d\n", in set_mux_gmac1_gmac2_to_sgmii_rgmii()
158 static int set_mux_gmac12_to_gephy_sgmii(struct mtk_eth *eth, int path) in set_mux_gmac12_to_gephy_sgmii() argument
163 regmap_read(eth->ethsys, ETHSYS_SYSCFG0, &val); in set_mux_gmac12_to_gephy_sgmii()
180 regmap_update_bits(eth->ethsys, ETHSYS_SYSCFG0, in set_mux_gmac12_to_gephy_sgmii()
183 dev_dbg(eth->dev, "path %s in %s updated = %d\n", in set_mux_gmac12_to_gephy_sgmii()
213 static int mtk_eth_mux_setup(struct mtk_eth *eth, int path) in mtk_eth_mux_setup() argument
217 if (!MTK_HAS_CAPS(eth->soc->caps, path)) { in mtk_eth_mux_setup()
218 dev_err(eth->dev, "path %s isn't support on the SoC\n", in mtk_eth_mux_setup()
223 if (!MTK_HAS_CAPS(eth->soc->caps, MTK_MUX)) in mtk_eth_mux_setup()
228 if (MTK_HAS_CAPS(eth->soc->caps, mtk_eth_muxc[i].cap_bit)) { in mtk_eth_mux_setup()
229 err = mtk_eth_muxc[i].set_path(eth, path); in mtk_eth_mux_setup()
233 dev_dbg(eth->dev, "mux %s isn't present on the SoC\n", in mtk_eth_mux_setup()
242 int mtk_gmac_sgmii_path_setup(struct mtk_eth *eth, int mac_id) in mtk_gmac_sgmii_path_setup() argument
250 return mtk_eth_mux_setup(eth, path); in mtk_gmac_sgmii_path_setup()
253 int mtk_gmac_gephy_path_setup(struct mtk_eth *eth, int mac_id) in mtk_gmac_gephy_path_setup() argument
264 return mtk_eth_mux_setup(eth, path); in mtk_gmac_gephy_path_setup()
267 int mtk_gmac_rgmii_path_setup(struct mtk_eth *eth, int mac_id) in mtk_gmac_rgmii_path_setup() argument
275 return mtk_eth_mux_setup(eth, path); in mtk_gmac_rgmii_path_setup()