Lines Matching refs:eth
110 struct at91_pm_quirk_eth eth[AT91_PM_MAX_ETH]; member
320 static bool at91_pm_eth_quirk_is_valid(struct at91_pm_quirk_eth *eth) in at91_pm_eth_quirk_is_valid() argument
325 if (!eth->np) in at91_pm_eth_quirk_is_valid()
329 if (!(eth->modes & BIT(soc_pm.data.mode))) in at91_pm_eth_quirk_is_valid()
332 if (!eth->dev) { in at91_pm_eth_quirk_is_valid()
334 pdev = of_find_device_by_node(eth->np); in at91_pm_eth_quirk_is_valid()
337 eth->dev = &pdev->dev; in at91_pm_eth_quirk_is_valid()
341 if (!device_may_wakeup(eth->dev)) { in at91_pm_eth_quirk_is_valid()
342 put_device(eth->dev); in at91_pm_eth_quirk_is_valid()
352 struct at91_pm_quirk_eth *eth; in at91_pm_config_quirks() local
366 eth = &soc_pm.quirks.eth[i]; in at91_pm_config_quirks()
368 if (!at91_pm_eth_quirk_is_valid(eth)) in at91_pm_config_quirks()
377 if (suspend && eth->dns_modes & BIT(soc_pm.data.mode)) { in at91_pm_config_quirks()
383 if (ws->dev == eth->dev) in at91_pm_config_quirks()
399 put_device(eth->dev); in at91_pm_config_quirks()
400 eth->dev = NULL; in at91_pm_config_quirks()
408 clk_bulk_disable_unprepare(AT91_PM_ETH_MAX_CLK, eth->clks); in at91_pm_config_quirks()
411 eth->clks); in at91_pm_config_quirks()
418 put_device(eth->dev); in at91_pm_config_quirks()
419 eth->dev = NULL; in at91_pm_config_quirks()
432 eth = &soc_pm.quirks.eth[j]; in at91_pm_config_quirks()
434 if (!at91_pm_eth_quirk_is_valid(eth)) in at91_pm_config_quirks()
437 tmp = clk_bulk_prepare_enable(AT91_PM_ETH_MAX_CLK, eth->clks); in at91_pm_config_quirks()
447 put_device(eth->dev); in at91_pm_config_quirks()
448 eth->dev = NULL; in at91_pm_config_quirks()
1220 struct at91_pm_quirk_eth *gmac = &soc_pm.quirks.eth[AT91_PM_G_ETH]; in at91_pm_modes_init()
1221 struct at91_pm_quirk_eth *emac = &soc_pm.quirks.eth[AT91_PM_E_ETH]; in at91_pm_modes_init()
1545 soc_pm.quirks.eth[AT91_PM_G_ETH].modes = BIT(AT91_PM_ULP0) | in sama5_pm_init()
1549 soc_pm.quirks.eth[AT91_PM_G_ETH].dns_modes = BIT(AT91_PM_ULP0) | in sama5_pm_init()
1596 soc_pm.quirks.eth[AT91_PM_G_ETH].modes = BIT(AT91_PM_ULP0) | in sama5d2_pm_init()
1603 soc_pm.quirks.eth[AT91_PM_G_ETH].dns_modes = BIT(AT91_PM_ULP0) | in sama5d2_pm_init()
1643 soc_pm.quirks.eth[AT91_PM_E_ETH].modes = BIT(AT91_PM_ULP1); in sama7_pm_init()
1644 soc_pm.quirks.eth[AT91_PM_G_ETH].modes = BIT(AT91_PM_ULP1); in sama7_pm_init()