[Prism54-users] prism54 and ACPI

Stephan Krings Stephan.Krings@gmx.de
Sat, 22 Nov 2003 22:23:23 +0100


Hi,

I finally found a solution for the problems with a SMC2835W I reported
some days ago. "iwconfig-uring" the card would only timeout and

"islpci_mgt_response(): queue empty, retrying (jiffies left"

messages filled my logs.

Following a hint a list, I could get the card to work by completely
disabling ACPI in the kernel.

I tracked this down even more to the ACPI processor module. And even
more specific: The C3 processor state for power saving which is
described in the ACPI spec.

This state gets entered on the P4M notebook I'm using when the system
is otherwise idle and makes the machine run longer for 15-20 minutes
when on batteries. ACPI processor support must be enabled in the
kernel for this to work.

However, when the kernel uses this state the prism54 driver will not
work. I guess it has something to do with busmastering, because in C3
state the processor is not required to snoop for bus master accesses.

By leaving out ACPI processor support the driver will work for
me. However the thermal management module seems to depend on the
processor and leaving this out seems a little bit dangerous for me.

I found a rather funny, temporary solution by just loading the USB
OHCI driver, which I do not load usually. When this driver is loaded,
the CPU will never enter ACPI C3 (USB seems to require bus master
activity all the time) and the prism54 driver will work also.

These solutions work both for kernel versions 2.4 and 2.6. I also used
an older Orinoco based card for some time, which does not exhibit this
behaviour. But I guess the drivers are just completely different.

Unfortunalty I do not know enough about the driver (or kernel driver
development in general) to offer a fix/patch for this problem. But
maybe someone of the authors finds these hints useful.

I guess that this may be the reason for some of the other posts on
this list about "islpci_mgt_response(): queue empty, retrying (jiffies
left" messages.

Regards,

Stephan