Commit b5fbb78
committed
mwifiex: Add quirk resetting the PCI bridge on Surface Pro 5 devices
The most recent firmware of the 88W8897 card reports a hardcoded LTR
value to the system during initialization (probably as an (unsuccessful)
attempt of the developers to fix firmware crashes). This LTR value
prevents certain systems like the Microsoft Surface Pro 5 from entering
deep powersaving states (platform C-State 10), because the exit latency
of that state would be higher than what the card can tolerate.
Now the card works just the same (including the firmware crashes) when
that hardcoded LTR value is reported, so it's kind of useless and only
prevents us from saving power.
It appears that the power management core of the PCH resets its stored
LTR values when doing a function level reset of the PCI bridge device.
ALso the card firmware won't report a new LTR unless it's restarted, so
resetting the bridge device seems to be a good solution for resetting
the LTR value to 0 and thus allowing deep powersaving states.1 parent e8470c7 commit b5fbb78
File tree
3 files changed
+19
-2
lines changed- drivers/net/wireless/marvell/mwifiex
3 files changed
+19
-2
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1600 | 1600 | | |
1601 | 1601 | | |
1602 | 1602 | | |
| 1603 | + | |
| 1604 | + | |
1603 | 1605 | | |
1604 | 1606 | | |
1605 | 1607 | | |
| 1608 | + | |
| 1609 | + | |
| 1610 | + | |
| 1611 | + | |
| 1612 | + | |
| 1613 | + | |
| 1614 | + | |
| 1615 | + | |
| 1616 | + | |
| 1617 | + | |
1606 | 1618 | | |
1607 | 1619 | | |
1608 | 1620 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
46 | | - | |
| 46 | + | |
| 47 | + | |
47 | 48 | | |
48 | 49 | | |
49 | 50 | | |
| |||
53 | 54 | | |
54 | 55 | | |
55 | 56 | | |
56 | | - | |
| 57 | + | |
| 58 | + | |
57 | 59 | | |
58 | 60 | | |
59 | 61 | | |
| |||
147 | 149 | | |
148 | 150 | | |
149 | 151 | | |
| 152 | + | |
| 153 | + | |
150 | 154 | | |
151 | 155 | | |
152 | 156 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
| 15 | + | |
15 | 16 | | |
16 | 17 | | |
17 | 18 | | |
| |||
0 commit comments