Re: 2.4.x APM interferes with FA311TX/natsemi.o
On Tue, 1 May 2001, Alan Cox wrote: > > When the call > > apm_bios_call_simple(APM_FUNC_SET_STATE, 0x100, APM_STATE_READY, ) > > is made, the PMEEN (PME enable) bit in the CCSR register on my FA311 > > mysteriously changes from 0 to 1, causing the card to stop processing > > The Linux driver set the power management of the card off. The BIOS then > rudely fiddled with it. If its not a laptop seriously consider just turning > off APM support. The Linux idle loop halts will do a fair job of power > saving anyway Thanks to everyone that has helped me with this problem (Netgear FA311 dies when apm.c's set_power_state() is called to unblank screen, for instance when an X server exits or the monitor is awakened from APM-induced sleep). Since everyone has suggested work arounds, I'm going to assume it isn't worthwhile digging any deeper for causes. I've sent a two-line patch for the natsemi.c driver to the mainainers, which simply re-disables power management before checking if there are any packets to process in the receive buffer. Turning off the APM screen blanking option in the kernel also works. My patch isn't in the 2.4.4 kernel -- perhaps the maintainers have a better idea than my hack, or are hoping to find one =-) -- but if anybody wants this patch, my email address should be valid at least until the 2.6.x kernels. -Paul Komarek [EMAIL PROTECTED] - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: 2.4.x APM interferes with FA311TX/natsemi.o
On Tue, 1 May 2001, Alan Cox wrote: When the call apm_bios_call_simple(APM_FUNC_SET_STATE, 0x100, APM_STATE_READY, eax) is made, the PMEEN (PME enable) bit in the CCSR register on my FA311 mysteriously changes from 0 to 1, causing the card to stop processing The Linux driver set the power management of the card off. The BIOS then rudely fiddled with it. If its not a laptop seriously consider just turning off APM support. The Linux idle loop halts will do a fair job of power saving anyway Thanks to everyone that has helped me with this problem (Netgear FA311 dies when apm.c's set_power_state() is called to unblank screen, for instance when an X server exits or the monitor is awakened from APM-induced sleep). Since everyone has suggested work arounds, I'm going to assume it isn't worthwhile digging any deeper for causes. I've sent a two-line patch for the natsemi.c driver to the mainainers, which simply re-disables power management before checking if there are any packets to process in the receive buffer. Turning off the APM screen blanking option in the kernel also works. My patch isn't in the 2.4.4 kernel -- perhaps the maintainers have a better idea than my hack, or are hoping to find one =-) -- but if anybody wants this patch, my email address should be valid at least until the 2.6.x kernels. -Paul Komarek [EMAIL PROTECTED] - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: 2.4.x APM interferes with FA311TX/natsemi.o
> When the call > apm_bios_call_simple(APM_FUNC_SET_STATE, 0x100, APM_STATE_READY, ) > is made, the PMEEN (PME enable) bit in the CCSR register on my FA311 > mysteriously changes from 0 to 1, causing the card to stop processing The Linux driver set the power management of the card off. The BIOS then rudely fiddled with it. If its not a laptop seriously consider just turning off APM support. The Linux idle loop halts will do a fair job of power saving anyway - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: 2.4.x APM interferes with FA311TX/natsemi.o
When the call apm_bios_call_simple(APM_FUNC_SET_STATE, 0x100, APM_STATE_READY, eax) is made, the PMEEN (PME enable) bit in the CCSR register on my FA311 mysteriously changes from 0 to 1, causing the card to stop processing The Linux driver set the power management of the card off. The BIOS then rudely fiddled with it. If its not a laptop seriously consider just turning off APM support. The Linux idle loop halts will do a fair job of power saving anyway - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
2.4.x APM interferes with FA311TX/natsemi.o
SUMMARY: the APM call apm_bios_call_simple(APM_FUNC_SET_STATE, 0x100, APM_STATE_READY, ) causes my Netgear FA311TX to enter a sleep mode. DESCRIPTION: I am having difficulties with the natsemi.o driver with a Netgear FA311TX. When the call apm_bios_call_simple(APM_FUNC_SET_STATE, 0x100, APM_STATE_READY, ) is made, the PMEEN (PME enable) bit in the CCSR register on my FA311 mysteriously changes from 0 to 1, causing the card to stop processing received packets. This APM call is made when unblanking the screen, for instance when switching from KD_GRAPHICS to KD_TEXT with the KDSETMODE ioctl on a virtual terminal. I've modified this APM call to report the status of the PMEEN bit before and after the short sequence of assembly statement in apm_bios_call_simple() is executed. I'm guessing there isn't any interrupt activity between my "before" and "after" checks. At least the natsemi.o driver's interrupt handler isn't being called, but I can't vouch for other interrupt handlers. I'm more-or-less stuck for what to do next. I'm a complete novice with the kernel, the PCI bus, APM, or network cards, and this is my first project. I'd appreciate pointers for what to try next, since I've received no responses from the driver maintainers Donald Becker, Tjeerd Mulder, and Jeff Garzik yet. Please cc me in any responses, as I'm not currently subscribed to the kernel mailing list. Thanks in advance. -Paul Komarek - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
2.4.x APM interferes with FA311TX/natsemi.o
SUMMARY: the APM call apm_bios_call_simple(APM_FUNC_SET_STATE, 0x100, APM_STATE_READY, eax) causes my Netgear FA311TX to enter a sleep mode. DESCRIPTION: I am having difficulties with the natsemi.o driver with a Netgear FA311TX. When the call apm_bios_call_simple(APM_FUNC_SET_STATE, 0x100, APM_STATE_READY, eax) is made, the PMEEN (PME enable) bit in the CCSR register on my FA311 mysteriously changes from 0 to 1, causing the card to stop processing received packets. This APM call is made when unblanking the screen, for instance when switching from KD_GRAPHICS to KD_TEXT with the KDSETMODE ioctl on a virtual terminal. I've modified this APM call to report the status of the PMEEN bit before and after the short sequence of assembly statement in apm_bios_call_simple() is executed. I'm guessing there isn't any interrupt activity between my before and after checks. At least the natsemi.o driver's interrupt handler isn't being called, but I can't vouch for other interrupt handlers. I'm more-or-less stuck for what to do next. I'm a complete novice with the kernel, the PCI bus, APM, or network cards, and this is my first project. I'd appreciate pointers for what to try next, since I've received no responses from the driver maintainers Donald Becker, Tjeerd Mulder, and Jeff Garzik yet. Please cc me in any responses, as I'm not currently subscribed to the kernel mailing list. Thanks in advance. -Paul Komarek - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/