We must not clear bits in 'aspm_enabled' using 'aspm_support', or
'aspm_enabled' and 'aspm_default' might be different from the actual
state. In addtion, 'aspm_default' should be intialized even if
'aspm_support' is 0.
Acked-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
link->latency.l0s = max_t(u32, link->latency.l0s, l0s);
link->latency.l1 = max_t(u32, link->latency.l1, l1);
+ /* Save default state */
+ link->aspm_default = link->aspm_enabled;
+
if (!link->aspm_support)
return;
- link->aspm_enabled &= link->aspm_support;
- link->aspm_default = link->aspm_enabled;
-
/* ENDPOINT states*/
list_for_each_entry(child, &linkbus->devices, bus_list) {
int pos;