Commit 9fcb697
committed
Ignore power down event with disable_powersave=1 module option
When the chip is in lower power state, it listens only for the packets
which destination MAC match device's MAC address.
Incoming broadcast and multicast packets, which MAC does not equal
to the device MAC, gets dropped.
This breaks mDNS and other protocols.
Power saving works as follows: the chip sends PWR_DOWN event to the
kernel module when it's ready to go into lower state, and if the kernel
is also ready (nothing in tx queue), it replies with ACK.
Add disable_powersave=1 kernel option to ignore PWR_DOWN event completely
to reliably accept multicast, at the cost of +0.4W
Link: orangepi-xunlong/linux-orangepi#98 (comment)1 parent d6bec75 commit 9fcb697
3 files changed
Lines changed: 11 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3257 | 3257 | | |
3258 | 3258 | | |
3259 | 3259 | | |
| 3260 | + | |
| 3261 | + | |
| 3262 | + | |
| 3263 | + | |
| 3264 | + | |
| 3265 | + | |
3260 | 3266 | | |
3261 | 3267 | | |
3262 | 3268 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
75 | 75 | | |
76 | 76 | | |
77 | 77 | | |
| 78 | + | |
78 | 79 | | |
79 | 80 | | |
80 | 81 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1658 | 1658 | | |
1659 | 1659 | | |
1660 | 1660 | | |
| 1661 | + | |
| 1662 | + | |
| 1663 | + | |
| 1664 | + | |
1661 | 1665 | | |
1662 | 1666 | | |
1663 | 1667 | | |
| |||
0 commit comments