Ticket #2171 (closed defect: invalid)
stable-tracking 80f4b57/resume: eth0: ERROR while getting interface flags: No such device
| Reported by: | lindi | Owned by: | openmoko-kernel |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | kernel | Version: | unspecified |
| Severity: | normal | Keywords: | |
| Cc: | Blocked By: | ||
| Blocking: | Estimated Completion (week): | ||
| HasPatchForReview: | no | PatchReviewResult: | |
| Reproducible: |
Description
After resume with stable-tracking 80f4b57fef5dcffb I noticed that I can no longer start wifi:
$ sudo ifconfig eth0 up eth0: ERROR while getting interface flags: No such device $ lsmod Module Size Used by ppp_deflate 5056 0 bsd_comp 5920 0 ppp_async 9824 0 crc_ccitt 1888 1 ppp_async ppp_generic 25100 3 ppp_deflate,bsd_comp,ppp_async slhc 5568 1 ppp_generic rtc_s3c 9548 0 $ zgrep WLA /proc/config.gz # CONFIG_WLAN_PRE80211 is not set # CONFIG_WLAN_80211 is not set CONFIG_AR6000_WLAN=y
This does not happen always and I unfortunately do not have a reliable way to reproduce this. I am including output of dmesg immediately after running "ifconfig eth0 up" but since the uptime of the system is more than two days the first boot messages are not visible anymore.
Any idea what should I try to debug this?
Attachments
Change History
comment:1 Changed 4 years ago by lindi
At least with andy-tracking b8b36e5ec3db71 I can reliably start wifi with
echo 1 | sudo tee $sys_pm_wlan/power_on echo s3c2440-sdi | sudo tee $sys_wlan_driver/unbind 2> /dev/null > /dev/null echo s3c2440-sdi | sudo tee $sys_wlan_driver/bind sudo ifconfig eth0 up
so this issue must have been fixed somewhere during the last 5 weeks?
comment:2 Changed 4 years ago by werner
Do you actually need to explicitly power on and unbind/bind before you
can use eth0 after resume ? In general, it should come up without such
things. (If using andy-tracking.)
- Werner
comment:3 Changed 4 years ago by lindi
Yes I do, power_on alone is not enough:
lindi@ginger:~$ apm -s lindi@ginger:~$ echo 1 | sudo tee /sys/bus/platform/drivers/gta02-pm-wlan/gta02-pm-wlan.0/power_on 1 lindi@ginger:~$ cat /sys/bus/platform/drivers/gta02-pm-wlan/gta02-pm-wlan.0/power_on 1 lindi@ginger:~$ sudo ifconfig eth0 up eth0: ERROR while getting interface flags: No such device lindi@ginger:~$ echo s3c2440-sdi | sudo tee /sys/bus/platform/drivers/s3c2440-sdi/bind s3c2440-sdi lindi@ginger:~$ sudo ifconfig eth0 up lindi@ginger:~$
comment:4 Changed 4 years ago by werner
Okay, if you use power_on, that's expected. What power_on does is a reset
of the module, but completely behind the back of everything else.
Unbind/bind has pretty much the same effect (one layer above power_on),
so that's where you get the correct on/off action.
But what's the whole story ? Do you want to enter a power-saving state ?
There are currenly three choices for this that aren't specific to the
WLAN module: unbind/bind, suspend/resume (*), and module unload/load.
They all should produce the same effect, namely that the driver gets
removed and the module powers down.
(*) That is, unless you've set the "persist" option of the S3C MMC
driver.
Furthermore, you can use wmiconfig to disable the module without driver
removal. --power rec sets a sensible power consumption and --wlan disable
turns off transmission and rejects other ioctls until --wlan enable.
- Werner
comment:5 Changed 4 years ago by andy
How has this issue ended up... WLAN can start OK now after resume or is there still an issue?
