Lines Matching +full:nsp +full:- +full:amac
38 return readl(bgmac->plat.base + offset); in platform_bgmac_read()
43 writel(value, bgmac->plat.base + offset); in platform_bgmac_write()
48 return readl(bgmac->plat.idm_base + offset); in platform_bgmac_idm_read()
53 writel(value, bgmac->plat.idm_base + offset); in platform_bgmac_idm_write()
58 if (!bgmac->plat.idm_base) in platform_bgmac_clk_enabled()
72 if (!bgmac->plat.idm_base) in platform_bgmac_clk_enable()
123 if (!bgmac->plat.nicpm_base) in bgmac_nicpm_speed_set()
128 bgmac->plat.nicpm_base + NICPM_PADRING_CFG); in bgmac_nicpm_speed_set()
131 switch (bgmac->net_dev->phydev->speed) { in bgmac_nicpm_speed_set()
146 writel(val, bgmac->plat.nicpm_base + NICPM_IOMUX_CTRL); in bgmac_nicpm_speed_set()
148 bgmac_adjust_link(bgmac->net_dev); in bgmac_nicpm_speed_set()
155 if (bgmac->plat.nicpm_base) in platform_phy_connect()
156 phy_dev = of_phy_get_and_connect(bgmac->net_dev, in platform_phy_connect()
157 bgmac->dev->of_node, in platform_phy_connect()
160 phy_dev = of_phy_get_and_connect(bgmac->net_dev, in platform_phy_connect()
161 bgmac->dev->of_node, in platform_phy_connect()
164 dev_err(bgmac->dev, "PHY connection failed\n"); in platform_phy_connect()
165 return -ENODEV; in platform_phy_connect()
173 struct device_node *np = pdev->dev.of_node; in bgmac_probe()
179 bgmac = bgmac_alloc(&pdev->dev); in bgmac_probe()
181 return -ENOMEM; in bgmac_probe()
186 bgmac->feature_flags |= BGMAC_FEAT_CLKCTLST; in bgmac_probe()
187 bgmac->feature_flags |= BGMAC_FEAT_NO_RESET; in bgmac_probe()
188 bgmac->feature_flags |= BGMAC_FEAT_CMDCFG_SR_REV4; in bgmac_probe()
189 bgmac->feature_flags |= BGMAC_FEAT_TX_MASK_SETUP; in bgmac_probe()
190 bgmac->feature_flags |= BGMAC_FEAT_RX_MASK_SETUP; in bgmac_probe()
191 bgmac->feature_flags |= BGMAC_FEAT_IDM_MASK; in bgmac_probe()
193 bgmac->dev = &pdev->dev; in bgmac_probe()
194 bgmac->dma_dev = &pdev->dev; in bgmac_probe()
196 ret = of_get_ethdev_address(np, bgmac->net_dev); in bgmac_probe()
197 if (ret == -EPROBE_DEFER) in bgmac_probe()
201 dev_warn(&pdev->dev, in bgmac_probe()
204 bgmac->irq = platform_get_irq(pdev, 0); in bgmac_probe()
205 if (bgmac->irq < 0) in bgmac_probe()
206 return bgmac->irq; in bgmac_probe()
208 bgmac->plat.base = in bgmac_probe()
210 if (IS_ERR(bgmac->plat.base)) in bgmac_probe()
211 return PTR_ERR(bgmac->plat.base); in bgmac_probe()
216 bgmac->plat.idm_base = devm_ioremap_resource(&pdev->dev, regs); in bgmac_probe()
217 if (IS_ERR(bgmac->plat.idm_base)) in bgmac_probe()
218 return PTR_ERR(bgmac->plat.idm_base); in bgmac_probe()
219 bgmac->feature_flags &= ~BGMAC_FEAT_IDM_MASK; in bgmac_probe()
225 bgmac->plat.nicpm_base = devm_ioremap_resource(&pdev->dev, in bgmac_probe()
227 if (IS_ERR(bgmac->plat.nicpm_base)) in bgmac_probe()
228 return PTR_ERR(bgmac->plat.nicpm_base); in bgmac_probe()
231 bgmac->read = platform_bgmac_read; in bgmac_probe()
232 bgmac->write = platform_bgmac_write; in bgmac_probe()
233 bgmac->idm_read = platform_bgmac_idm_read; in bgmac_probe()
234 bgmac->idm_write = platform_bgmac_idm_write; in bgmac_probe()
235 bgmac->clk_enabled = platform_bgmac_clk_enabled; in bgmac_probe()
236 bgmac->clk_enable = platform_bgmac_clk_enable; in bgmac_probe()
237 bgmac->cco_ctl_maskset = platform_bgmac_cco_ctl_maskset; in bgmac_probe()
238 bgmac->get_bus_clock = platform_bgmac_get_bus_clock; in bgmac_probe()
239 bgmac->cmn_maskset32 = platform_bgmac_cmn_maskset32; in bgmac_probe()
240 phy_node = of_parse_phandle(np, "phy-handle", 0); in bgmac_probe()
243 bgmac->phy_connect = platform_phy_connect; in bgmac_probe()
245 bgmac->phy_connect = bgmac_phy_connect_direct; in bgmac_probe()
246 bgmac->feature_flags |= BGMAC_FEAT_FORCE_SPEED_2500; in bgmac_probe()
285 {.compatible = "brcm,amac",},
286 {.compatible = "brcm,nsp-amac",},
287 {.compatible = "brcm,ns2-amac",},
295 .name = "bgmac-enet",