@@ -243,8 +243,7 @@ struct pcie_link_state {
243243 /* Clock PM state */
244244 u32 clkpm_capable :1 ; /* Clock PM capable? */
245245 u32 clkpm_enabled :1 ; /* Current Clock PM state */
246- u32 clkpm_default :1 ; /* Default Clock PM state by BIOS or
247- override */
246+ u32 clkpm_default :1 ; /* Default Clock PM state by BIOS */
248247 u32 clkpm_disable :1 ; /* Clock PM disabled */
249248};
250249
@@ -376,18 +375,6 @@ static void pcie_set_clkpm(struct pcie_link_state *link, int enable)
376375 pcie_set_clkpm_nocheck (link , enable );
377376}
378377
379- static void pcie_clkpm_override_default_link_state (struct pcie_link_state * link ,
380- int enabled )
381- {
382- struct pci_dev * pdev = link -> downstream ;
383-
384- /* For devicetree platforms, enable ClockPM by default */
385- if (of_have_populated_dt () && !enabled ) {
386- link -> clkpm_default = 1 ;
387- pci_info (pdev , "ASPM: DT platform, enabling ClockPM\n" );
388- }
389- }
390-
391378static void pcie_clkpm_cap_init (struct pcie_link_state * link , int blacklist )
392379{
393380 int capable = 1 , enabled = 1 ;
@@ -410,7 +397,6 @@ static void pcie_clkpm_cap_init(struct pcie_link_state *link, int blacklist)
410397 }
411398 link -> clkpm_enabled = enabled ;
412399 link -> clkpm_default = enabled ;
413- pcie_clkpm_override_default_link_state (link , enabled );
414400 link -> clkpm_capable = capable ;
415401 link -> clkpm_disable = blacklist ? 1 : 0 ;
416402}
@@ -811,19 +797,17 @@ static void pcie_aspm_override_default_link_state(struct pcie_link_state *link)
811797 struct pci_dev * pdev = link -> downstream ;
812798 u32 override ;
813799
814- /* For devicetree platforms, enable all ASPM states by default */
800+ /* For devicetree platforms, enable L0s and L1 by default */
815801 if (of_have_populated_dt ()) {
816- link -> aspm_default = PCIE_LINK_STATE_ASPM_ALL ;
802+ if (link -> aspm_support & PCIE_LINK_STATE_L0S )
803+ link -> aspm_default |= PCIE_LINK_STATE_L0S ;
804+ if (link -> aspm_support & PCIE_LINK_STATE_L1 )
805+ link -> aspm_default |= PCIE_LINK_STATE_L1 ;
817806 override = link -> aspm_default & ~link -> aspm_enabled ;
818807 if (override )
819- pci_info (pdev , "ASPM: DT platform, enabling%s%s%s%s%s%s%s\n" ,
820- FLAG (override , L0S_UP , " L0s-up" ),
821- FLAG (override , L0S_DW , " L0s-dw" ),
822- FLAG (override , L1 , " L1" ),
823- FLAG (override , L1_1 , " ASPM-L1.1" ),
824- FLAG (override , L1_2 , " ASPM-L1.2" ),
825- FLAG (override , L1_1_PCIPM , " PCI-PM-L1.1" ),
826- FLAG (override , L1_2_PCIPM , " PCI-PM-L1.2" ));
808+ pci_info (pdev , "ASPM: default states%s%s\n" ,
809+ FLAG (override , L0S , " L0s" ),
810+ FLAG (override , L1 , " L1" ));
827811 }
828812}
829813
0 commit comments