@@ -1542,6 +1542,7 @@ void __init sama5_pm_init(void)
15421542 };
15431543 static const u32 iomaps [] __initconst = {
15441544 [AT91_PM_ULP0 ] = AT91_PM_IOMAP (ETHC ),
1545+ [AT91_PM_ULP0_FAST ] = AT91_PM_IOMAP (ETHC ),
15451546 };
15461547 int ret ;
15471548
@@ -1558,9 +1559,11 @@ void __init sama5_pm_init(void)
15581559
15591560 /* Quirks applies to ULP0 and ULP1 modes. */
15601561 soc_pm .quirks .eth [AT91_PM_G_ETH ].modes = BIT (AT91_PM_ULP0 ) |
1562+ BIT (AT91_PM_ULP0_FAST ) |
15611563 BIT (AT91_PM_ULP1 );
15621564 /* Do not suspend in ULP0 if GETH is the only wakeup source. */
1563- soc_pm .quirks .eth [AT91_PM_G_ETH ].dns_modes = BIT (AT91_PM_ULP0 );
1565+ soc_pm .quirks .eth [AT91_PM_G_ETH ].dns_modes = BIT (AT91_PM_ULP0 ) |
1566+ BIT (AT91_PM_ULP0_FAST );
15641567}
15651568
15661569void __init sama5d2_pm_init (void )
@@ -1571,6 +1574,7 @@ void __init sama5d2_pm_init(void)
15711574 };
15721575 static const u32 iomaps [] __initconst = {
15731576 [AT91_PM_ULP0 ] = AT91_PM_IOMAP (ETHC ),
1577+ [AT91_PM_ULP0_FAST ] = AT91_PM_IOMAP (ETHC ),
15741578 [AT91_PM_ULP1 ] = AT91_PM_IOMAP (SHDWC ) |
15751579 AT91_PM_IOMAP (ETHC ),
15761580 [AT91_PM_BACKUP ] = AT91_PM_IOMAP (SHDWC ) |
@@ -1600,9 +1604,11 @@ void __init sama5d2_pm_init(void)
16001604
16011605 /* Quirk applies to ULP0 and ULP1 modes. */
16021606 soc_pm .quirks .eth [AT91_PM_G_ETH ].modes = BIT (AT91_PM_ULP0 ) |
1607+ BIT (AT91_PM_ULP0_FAST ) |
16031608 BIT (AT91_PM_ULP1 );
16041609 /* Do not suspend in ULP0 if GETH is the only wakeup source. */
1605- soc_pm .quirks .eth [AT91_PM_G_ETH ].dns_modes = BIT (AT91_PM_ULP0 );
1610+ soc_pm .quirks .eth [AT91_PM_G_ETH ].dns_modes = BIT (AT91_PM_ULP0 ) |
1611+ BIT (AT91_PM_ULP0_FAST );
16061612}
16071613
16081614void __init sama7_pm_init (void )
0 commit comments