Home
last modified time | relevance | path

Searched full:dwmac (Results 1 – 25 of 239) sorted by relevance

12345678910

/linux-6.14.4/drivers/net/ethernet/stmicro/stmmac/
Ddwmac-stm32.c3 * dwmac-stm32.c - DWMAC Specific Glue layer for STM32 MCU
113 int (*suspend)(struct stm32_dwmac *dwmac);
114 void (*resume)(struct stm32_dwmac *dwmac);
115 int (*parse_data)(struct stm32_dwmac *dwmac,
122 static int stm32_dwmac_clk_enable(struct stm32_dwmac *dwmac, bool resume) in stm32_dwmac_clk_enable() argument
126 ret = clk_prepare_enable(dwmac->clk_tx); in stm32_dwmac_clk_enable()
130 if (!dwmac->ops->clk_rx_enable_in_suspend || !resume) { in stm32_dwmac_clk_enable()
131 ret = clk_prepare_enable(dwmac->clk_rx); in stm32_dwmac_clk_enable()
136 ret = clk_prepare_enable(dwmac->syscfg_clk); in stm32_dwmac_clk_enable()
140 if (dwmac->enable_eth_ck) { in stm32_dwmac_clk_enable()
[all …]
Ddwmac-imx.c3 * dwmac-imx.c - DWMAC Specific Glue layer for NXP imx8
72 struct imx_priv_data *dwmac = plat_dat->bsp_priv; in imx8mp_set_intf_mode() local
81 val |= (dwmac->rmii_refclk_ext ? 0 : GPR_ENET_QOS_CLK_TX_CLK_SEL); in imx8mp_set_intf_mode()
91 pr_debug("imx dwmac doesn't support %d interface\n", in imx8mp_set_intf_mode()
97 return regmap_update_bits(dwmac->intf_regmap, dwmac->intf_reg_off, in imx8mp_set_intf_mode()
112 struct imx_priv_data *dwmac = plat_dat->bsp_priv; in imx93_set_intf_mode() local
120 if (dwmac->rmii_refclk_ext) { in imx93_set_intf_mode()
121 ret = regmap_clear_bits(dwmac->intf_regmap, in imx93_set_intf_mode()
122 dwmac->intf_reg_off + in imx93_set_intf_mode()
137 dev_dbg(dwmac->dev, "imx dwmac doesn't support %d interface\n", in imx93_set_intf_mode()
[all …]
Ddwmac-meson8b.c3 * Amlogic Meson8b, Meson8m2 and GXBB DWMAC glue layer
84 int (*set_phy_mode)(struct meson8b_dwmac *dwmac);
107 static void meson8b_dwmac_mask_bits(struct meson8b_dwmac *dwmac, u32 reg, in meson8b_dwmac_mask_bits() argument
112 data = readl(dwmac->regs + reg); in meson8b_dwmac_mask_bits()
116 writel(data, dwmac->regs + reg); in meson8b_dwmac_mask_bits()
119 static struct clk *meson8b_dwmac_register_clk(struct meson8b_dwmac *dwmac, in meson8b_dwmac_register_clk() argument
129 snprintf(clk_name, sizeof(clk_name), "%s#%s", dev_name(dwmac->dev), in meson8b_dwmac_register_clk()
140 return devm_clk_register(dwmac->dev, hw); in meson8b_dwmac_register_clk()
143 static int meson8b_init_rgmii_tx_clk(struct meson8b_dwmac *dwmac) in meson8b_init_rgmii_tx_clk() argument
146 struct device *dev = dwmac->dev; in meson8b_init_rgmii_tx_clk()
[all …]
Ddwmac-visconti.c59 struct visconti_eth *dwmac = priv; in visconti_eth_fix_mac_speed() local
60 struct net_device *netdev = dev_get_drvdata(dwmac->dev); in visconti_eth_fix_mac_speed()
64 spin_lock_irqsave(&dwmac->lock, flags); in visconti_eth_fix_mac_speed()
67 val = readl(dwmac->reg + MAC_CTRL_REG); in visconti_eth_fix_mac_speed()
72 if (dwmac->phy_intf_sel == ETHER_CONFIG_INTF_RGMII) in visconti_eth_fix_mac_speed()
76 if (dwmac->phy_intf_sel == ETHER_CONFIG_INTF_RGMII) in visconti_eth_fix_mac_speed()
78 if (dwmac->phy_intf_sel == ETHER_CONFIG_INTF_RMII) in visconti_eth_fix_mac_speed()
83 if (dwmac->phy_intf_sel == ETHER_CONFIG_INTF_RGMII) in visconti_eth_fix_mac_speed()
85 if (dwmac->phy_intf_sel == ETHER_CONFIG_INTF_RMII) in visconti_eth_fix_mac_speed()
92 spin_unlock_irqrestore(&dwmac->lock, flags); in visconti_eth_fix_mac_speed()
[all …]
DMakefile16 obj-$(CONFIG_DWMAC_ANARION) += dwmac-anarion.o
17 obj-$(CONFIG_DWMAC_INGENIC) += dwmac-ingenic.o
18 obj-$(CONFIG_DWMAC_IPQ806X) += dwmac-ipq806x.o
19 obj-$(CONFIG_DWMAC_LPC18XX) += dwmac-lpc18xx.o
20 obj-$(CONFIG_DWMAC_MEDIATEK) += dwmac-mediatek.o
21 obj-$(CONFIG_DWMAC_MESON) += dwmac-meson.o dwmac-meson8b.o
22 obj-$(CONFIG_DWMAC_QCOM_ETHQOS) += dwmac-qcom-ethqos.o
23 obj-$(CONFIG_DWMAC_ROCKCHIP) += dwmac-rk.o
24 obj-$(CONFIG_DWMAC_RZN1) += dwmac-rzn1.o
25 obj-$(CONFIG_DWMAC_S32) += dwmac-s32.o
[all …]
Ddwmac-intel-plat.c2 /* Intel DWMAC platform driver
33 struct intel_dwmac *dwmac = priv; in kmb_eth_fix_mac_speed() local
39 dev_err(dwmac->dev, "Invalid speed\n"); in kmb_eth_fix_mac_speed()
43 ret = clk_set_rate(dwmac->tx_clk, rate); in kmb_eth_fix_mac_speed()
45 dev_err(dwmac->dev, "Failed to configure tx clock rate\n"); in kmb_eth_fix_mac_speed()
56 { .compatible = "intel,keembay-dwmac", .data = &kmb_data },
65 struct intel_dwmac *dwmac; in intel_eth_plat_probe() local
79 dwmac = devm_kzalloc(&pdev->dev, sizeof(*dwmac), GFP_KERNEL); in intel_eth_plat_probe()
80 if (!dwmac) in intel_eth_plat_probe()
83 dwmac->dev = &pdev->dev; in intel_eth_plat_probe()
[all …]
Ddwmac-socfpga.c4 * Adopted from dwmac-sti.c
66 struct socfpga_dwmac *dwmac = (struct socfpga_dwmac *)priv; in socfpga_dwmac_fix_mac_speed() local
67 void __iomem *splitter_base = dwmac->splitter_base; in socfpga_dwmac_fix_mac_speed()
68 void __iomem *sgmii_adapter_base = dwmac->sgmii_adapter_base; in socfpga_dwmac_fix_mac_speed()
69 struct device *dev = dwmac->dev; in socfpga_dwmac_fix_mac_speed()
103 static int socfpga_dwmac_parse_data(struct socfpga_dwmac *dwmac, struct device *dev) in socfpga_dwmac_parse_data() argument
134 dwmac->f2h_ptp_ref_clk = of_property_read_bool(np, "altr,f2h_ptp_ref_clk"); in socfpga_dwmac_parse_data()
145 dwmac->splitter_base = devm_ioremap_resource(dev, &res_splitter); in socfpga_dwmac_parse_data()
146 if (IS_ERR(dwmac->splitter_base)) { in socfpga_dwmac_parse_data()
148 return PTR_ERR(dwmac->splitter_base); in socfpga_dwmac_parse_data()
[all …]
Ddwmac-sti.c3 * dwmac-sti.c - STMicroelectronics DWMAC Specific Glue layer
137 struct sti_dwmac *dwmac = priv; in stih4xx_fix_retime_src() local
138 u32 src = dwmac->tx_retime_src; in stih4xx_fix_retime_src()
139 u32 reg = dwmac->ctrl_reg; in stih4xx_fix_retime_src()
142 if (dwmac->interface == PHY_INTERFACE_MODE_MII) { in stih4xx_fix_retime_src()
144 } else if (dwmac->interface == PHY_INTERFACE_MODE_RMII) { in stih4xx_fix_retime_src()
145 if (dwmac->ext_phyclk) { in stih4xx_fix_retime_src()
151 } else if (IS_PHY_IF_MODE_RGMII(dwmac->interface)) { in stih4xx_fix_retime_src()
161 clk_set_rate(dwmac->clk, freq); in stih4xx_fix_retime_src()
163 regmap_update_bits(dwmac->regmap, reg, STIH4XX_RETIME_SRC_MASK, in stih4xx_fix_retime_src()
[all …]
Ddwmac-thead.c3 * T-HEAD DWMAC platform driver
59 struct thead_dwmac *dwmac = plat->bsp_priv; in thead_dwmac_set_phy_if() local
73 dev_err(dwmac->dev, "unsupported phy interface %d\n", in thead_dwmac_set_phy_if()
78 writel(phyif, dwmac->apb_base + GMAC_INTF_CTRL); in thead_dwmac_set_phy_if()
84 struct thead_dwmac *dwmac = plat->bsp_priv; in thead_dwmac_set_txclk_dir() local
98 dev_err(dwmac->dev, "unsupported phy interface %d\n", in thead_dwmac_set_txclk_dir()
103 writel(txclk_dir, dwmac->apb_base + GMAC_TXCLK_OEN); in thead_dwmac_set_txclk_dir()
110 struct thead_dwmac *dwmac = priv; in thead_dwmac_fix_speed() local
114 plat = dwmac->plat; in thead_dwmac_fix_speed()
128 dev_err(dwmac->dev, "invalid gmac rate %ld\n", rate); in thead_dwmac_fix_speed()
[all …]
Ddwmac-starfive.c3 * StarFive DWMAC platform driver
36 struct starfive_dwmac *dwmac = priv; in starfive_dwmac_fix_mac_speed() local
42 dev_err(dwmac->dev, "invalid speed %u\n", speed); in starfive_dwmac_fix_mac_speed()
46 err = clk_set_rate(dwmac->clk_tx, rate); in starfive_dwmac_fix_mac_speed()
48 dev_err(dwmac->dev, "failed to set tx rate %lu\n", rate); in starfive_dwmac_fix_mac_speed()
53 struct starfive_dwmac *dwmac = plat_dat->bsp_priv; in starfive_dwmac_set_mode() local
72 dev_err(dwmac->dev, "unsupported interface %d\n", in starfive_dwmac_set_mode()
77 regmap = syscon_regmap_lookup_by_phandle_args(dwmac->dev->of_node, in starfive_dwmac_set_mode()
81 return dev_err_probe(dwmac->dev, PTR_ERR(regmap), "getting the regmap failed\n"); in starfive_dwmac_set_mode()
88 return dev_err_probe(dwmac->dev, err, "error setting phy mode\n"); in starfive_dwmac_set_mode()
[all …]
Ddwmac-meson.c3 * Amlogic Meson6 and Meson8 DWMAC glue layer
27 struct meson_dwmac *dwmac = priv; in meson6_dwmac_fix_mac_speed() local
30 val = readl(dwmac->reg); in meson6_dwmac_fix_mac_speed()
41 writel(val, dwmac->reg); in meson6_dwmac_fix_mac_speed()
48 struct meson_dwmac *dwmac; in meson6_dwmac_probe() local
59 dwmac = devm_kzalloc(&pdev->dev, sizeof(*dwmac), GFP_KERNEL); in meson6_dwmac_probe()
60 if (!dwmac) in meson6_dwmac_probe()
63 dwmac->reg = devm_platform_ioremap_resource(pdev, 1); in meson6_dwmac_probe()
64 if (IS_ERR(dwmac->reg)) in meson6_dwmac_probe()
65 return PTR_ERR(dwmac->reg); in meson6_dwmac_probe()
[all …]
Ddwmac-loongson1.c3 * Loongson-1 DWMAC glue layer
51 struct ls1x_dwmac *dwmac = priv; in ls1b_dwmac_syscon_init() local
52 struct plat_stmmacenet_data *plat = dwmac->plat_dat; in ls1b_dwmac_syscon_init()
53 struct regmap *regmap = dwmac->regmap; in ls1b_dwmac_syscon_init()
118 struct ls1x_dwmac *dwmac = priv; in ls1c_dwmac_syscon_init() local
119 struct plat_stmmacenet_data *plat = dwmac->plat_dat; in ls1c_dwmac_syscon_init()
120 struct regmap *regmap = dwmac->regmap; in ls1c_dwmac_syscon_init()
147 struct ls1x_dwmac *dwmac; in ls1x_dwmac_probe() local
168 dwmac = devm_kzalloc(&pdev->dev, sizeof(*dwmac), GFP_KERNEL); in ls1x_dwmac_probe()
169 if (!dwmac) in ls1x_dwmac_probe()
[all …]
Ddwmac-generic.c2 * Generic DWMAC platform driver
54 { .compatible = "snps,dwmac-3.40a"},
55 { .compatible = "snps,dwmac-3.50a"},
56 { .compatible = "snps,dwmac-3.610"},
57 { .compatible = "snps,dwmac-3.70a"},
58 { .compatible = "snps,dwmac-3.710"},
59 { .compatible = "snps,dwmac-3.72a"},
60 { .compatible = "snps,dwmac-4.00"},
61 { .compatible = "snps,dwmac-4.10a"},
62 { .compatible = "snps,dwmac"},
[all …]
DKconfig53 tristate "Generic driver for DWMAC"
56 Generic DWMAC driver for platforms that don't require any
82 tristate "QCA IPQ806x DWMAC support"
87 Support for QCA IPQ806X DWMAC Ethernet.
94 Select the QCOM_SOCINFO config flag to enable specific dwmac
98 tristate "NXP LPC18xx/43xx DWMAC support"
103 Support for NXP LPC18xx/43xx DWMAC Ethernet.
114 tristate "Amlogic Meson dwmac support"
135 tristate "Rockchip dwmac support"
146 tristate "Renesas RZ/N1 dwmac support"
[all …]
/linux-6.14.4/Documentation/devicetree/bindings/net/
Damlogic,meson-dwmac.yaml5 $id: http://devicetree.org/schemas/net/amlogic,meson-dwmac.yaml#
8 title: Amlogic Meson DWMAC Ethernet controller
14 # We need a select here so we don't match all nodes with 'snps,dwmac'
20 - amlogic,meson6-dwmac
21 - amlogic,meson8b-dwmac
22 - amlogic,meson8m2-dwmac
23 - amlogic,meson-gxbb-dwmac
24 - amlogic,meson-axg-dwmac
25 - amlogic,meson-g12a-dwmac
30 - $ref: snps,dwmac.yaml#
[all …]
Dstm32-dwmac.yaml5 $id: http://devicetree.org/schemas/net/stm32-dwmac.yaml#
8 title: STMicroelectronics STM32 / MCU DWMAC glue layer controller
17 # We need a select here so we don't match all nodes with 'snps,dwmac'
23 - st,stm32-dwmac
24 - st,stm32mp1-dwmac
25 - st,stm32mp13-dwmac
26 - st,stm32mp25-dwmac
35 - st,stm32mp25-dwmac
36 - const: snps,dwmac-5.20
39 - st,stm32mp1-dwmac
[all …]
Dstarfive,jh7110-dwmac.yaml5 $id: http://devicetree.org/schemas/net/starfive,jh7110-dwmac.yaml#
8 title: StarFive JH7110 DWMAC glue layer
19 - starfive,jh7100-dwmac
20 - starfive,jh7110-dwmac
28 - const: starfive,jh7100-dwmac
29 - const: snps,dwmac
31 - const: starfive,jh7110-dwmac
32 - const: snps,dwmac-5.20
34 - const: starfive,jh8100-dwmac
35 - const: starfive,jh7110-dwmac
[all …]
Dsnps,dwmac.yaml4 $id: http://devicetree.org/schemas/net/snps,dwmac.yaml#
23 - snps,dwmac
24 - snps,dwmac-3.40a
25 - snps,dwmac-3.50a
26 - snps,dwmac-3.610
27 - snps,dwmac-3.70a
28 - snps,dwmac-3.710
29 - snps,dwmac-3.72a
30 - snps,dwmac-4.00
31 - snps,dwmac-4.10a
[all …]
Dnxp,dwmac-imx.yaml4 $id: http://devicetree.org/schemas/net/nxp,dwmac-imx.yaml#
7 title: NXP i.MX8/9 DWMAC glue layer
14 # We need a select here so we don't match all nodes with 'snps,dwmac'
20 - nxp,imx8mp-dwmac-eqos
21 - nxp,imx8dxl-dwmac-eqos
22 - nxp,imx93-dwmac-eqos
27 - $ref: snps,dwmac.yaml#
34 - nxp,imx8mp-dwmac-eqos
35 - nxp,imx8dxl-dwmac-eqos
36 - nxp,imx93-dwmac-eqos
[all …]
Dtoshiba,visconti-dwmac.yaml4 $id: http://devicetree.org/schemas/net/toshiba,visconti-dwmac.yaml#
7 title: Toshiba Visconti DWMAC Ethernet controller
17 - toshiba,visconti-dwmac
22 - $ref: snps,dwmac.yaml#
29 - toshiba,visconti-dwmac
30 - const: snps,dwmac-4.20a
63 compatible = "toshiba,visconti-dwmac", "snps,dwmac-4.20a";
78 compatible = "snps,dwmac-mdio";
Dnxp,s32-dwmac.yaml5 $id: http://devicetree.org/schemas/net/nxp,s32-dwmac.yaml#
15 The SoC series S32G2xx and S32G3xx feature one DWMAC instance,
23 - const: nxp,s32g2-dwmac
26 - nxp,s32g3-dwmac
27 - nxp,s32r45-dwmac
28 - const: nxp,s32g2-dwmac
60 - $ref: snps,dwmac.yaml#
74 compatible = "nxp,s32g2-dwmac";
98 compatible = "snps,dwmac-mdio";
Dintel,dwmac-plat.yaml4 $id: http://devicetree.org/schemas/net/intel,dwmac-plat.yaml#
7 title: Intel DWMAC glue layer
17 - intel,keembay-dwmac
22 - $ref: snps,dwmac.yaml#
29 - intel,keembay-dwmac
30 - const: snps,dwmac-4.10a
101 compatible = "intel,keembay-dwmac", "snps,dwmac-4.10a";
123 compatible = "snps,dwmac-mdio";
Dsti-dwmac.txt1 STMicroelectronics SoC DWMAC glue layer controller
10 - compatible : "st,stih407-dwmac"
34 ethernet0: dwmac@9630000 {
36 compatible = "st,stih407-dwmac", "snps,dwmac", "snps,dwmac-3.710";
Dsocfpga-dwmac.txt1 Altera SOCFPGA SoC DWMAC controller
3 This is a variant of the dwmac/stmmac driver an inherits all descriptions
12 Along with "snps,dwmac" and any applicable more detailed
25 DWMAC controller is connected emac splitter.
47 compatible = "altr,socfpga-stmmac", "snps,dwmac-3.70a", "snps,dwmac";
/linux-6.14.4/Documentation/devicetree/bindings/phy/
Dqcom,sa8775p-dwmac-sgmii-phy.yaml4 $id: http://devicetree.org/schemas/phy/qcom,sa8775p-dwmac-sgmii-phy.yaml#
21 - qcom,qcs8300-dwmac-sgmii-phy
22 - const: qcom,sa8775p-dwmac-sgmii-phy
23 - const: qcom,sa8775p-dwmac-sgmii-phy
55 compatible = "qcom,sa8775p-dwmac-sgmii-phy";

12345678910