Re: EeePC card reader activated after suspend to ram

From: Alan Jenkins
Date: Tue Feb 17 2009 - 09:30:38 EST


Sitsofe Wheeler wrote:
> Hi,
>
> I've found that there is a particular circumstance when the card reader
> in my EeePC 900 will always be activated on resume even though before
> the suspend to ram it was switched off.
>
> The steps to reproduce are as follows:
>
> 1. Ensure the card reader is enabled before Linux boots (e.g. if Linux
> is already running do (as root)
> echo 1 > /sys/devices/platform/eeepc/cardr
> and then reboot).
> 2. In the freshly booted kernel issue (as root)
> echo 0 > /sys/devices/platform/eeepc/cardr
> 3. Initiate suspend to RAM e.g.:
> echo mem > /sys/power/state
> 4. Press a key to resume.
>
> Notice that the logs will contain something similar to the following:
>
> kernel: [ 841.435629] Restarting tasks ... done.
> kernel: [ 907.576216] usb 1-5: new high speed USB device using ehci_hcd and address 3
> kernel: [ 907.699381] usb 1-5: configuration #1 chosen from 1 choice
> kernel: [ 907.707460] scsi3 : SCSI emulation for USB Mass Storage devices
>
> Doing
> cat /sys/devices/platform/eeepc/cardr
> returns 0. Issuing
> echo 0 > /sys/devices/platform/eeepc/cardr
> even though the card reader is supposedly off will result in it being
> disabled until after the next suspend to ram/resume.
>
> Reproduced with a clean 2.6.29rc5 and the heavily Xandros patched
> Xandros 2.6.21 kernel that the Eee ships with.
>
> Does anyone have any ideas about this one?
>

It happens on my 701 too. The driver doesn't explicitly cache the
"cardr" value, so I'd blame the BIOS.

You could work around it. Add a hack somewhere that does the equivalent of

x=`cat /sys/devices/platform/eeepc/cardr`
echo $x > /sys/devices/platform/eeepc/cardr

But it is a tradeoff. This is a largely unused feature. You've found one
pretty harmless bug in the hardware... there's the risk that there's
another hardware bug which would then be easier to trigger, and cause
bigger problems. It'd be much better if Asus could fix the BIOS :-).

Alan

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/