Lines Matching defs:dwmac

59 	struct visconti_eth *dwmac = priv;
60 struct net_device *netdev = dev_get_drvdata(dwmac->dev);
64 spin_lock_irqsave(&dwmac->lock, flags);
67 val = readl(dwmac->reg + MAC_CTRL_REG);
72 if (dwmac->phy_intf_sel == ETHER_CONFIG_INTF_RGMII)
76 if (dwmac->phy_intf_sel == ETHER_CONFIG_INTF_RGMII)
78 if (dwmac->phy_intf_sel == ETHER_CONFIG_INTF_RMII)
83 if (dwmac->phy_intf_sel == ETHER_CONFIG_INTF_RGMII)
85 if (dwmac->phy_intf_sel == ETHER_CONFIG_INTF_RMII)
92 spin_unlock_irqrestore(&dwmac->lock, flags);
96 writel(val, dwmac->reg + MAC_CTRL_REG);
99 val = readl(dwmac->reg + REG_ETHER_CLOCK_SEL);
102 writel(val, dwmac->reg + REG_ETHER_CLOCK_SEL);
105 switch (dwmac->phy_intf_sel) {
108 writel(val, dwmac->reg + REG_ETHER_CLOCK_SEL);
111 writel(val, dwmac->reg + REG_ETHER_CLOCK_SEL);
114 writel(val, dwmac->reg + REG_ETHER_CLOCK_SEL);
120 writel(val, dwmac->reg + REG_ETHER_CLOCK_SEL);
123 writel(val, dwmac->reg + REG_ETHER_CLOCK_SEL);
126 writel(val, dwmac->reg + REG_ETHER_CLOCK_SEL);
132 writel(val, dwmac->reg + REG_ETHER_CLOCK_SEL);
135 writel(val, dwmac->reg + REG_ETHER_CLOCK_SEL);
139 spin_unlock_irqrestore(&dwmac->lock, flags);
144 struct visconti_eth *dwmac = plat_dat->bsp_priv;
152 dwmac->phy_intf_sel = ETHER_CONFIG_INTF_RGMII;
155 dwmac->phy_intf_sel = ETHER_CONFIG_INTF_MII;
158 dwmac->phy_intf_sel = ETHER_CONFIG_INTF_RMII;
165 reg_val = dwmac->phy_intf_sel;
166 writel(reg_val, dwmac->reg + REG_ETHER_CONTROL);
170 writel(clk_sel_val, dwmac->reg + REG_ETHER_CLOCK_SEL);
173 dwmac->reg + REG_ETHER_CLOCK_SEL);
177 writel(reg_val, dwmac->reg + REG_ETHER_CONTROL);
185 struct visconti_eth *dwmac = plat_dat->bsp_priv;
188 dwmac->phy_ref_clk = devm_clk_get(&pdev->dev, "phy_ref_clk");
189 if (IS_ERR(dwmac->phy_ref_clk))
190 return dev_err_probe(&pdev->dev, PTR_ERR(dwmac->phy_ref_clk),
193 err = clk_prepare_enable(dwmac->phy_ref_clk);
204 struct visconti_eth *dwmac = get_stmmac_bsp_priv(&pdev->dev);
208 clk_disable_unprepare(dwmac->phy_ref_clk);
216 struct visconti_eth *dwmac;
227 dwmac = devm_kzalloc(&pdev->dev, sizeof(*dwmac), GFP_KERNEL);
228 if (!dwmac) {
233 spin_lock_init(&dwmac->lock);
234 dwmac->reg = stmmac_res.addr;
235 dwmac->dev = &pdev->dev;
236 plat_dat->bsp_priv = dwmac;
274 { .compatible = "toshiba,visconti-dwmac" },
283 .name = "visconti-eth-dwmac",