Re: [PATCH 1/2] 8139too: Make PIO/MMIO a modparam
From: Dave Jones <hidden>
Date: 2008-07-15 22:44:23
On Tue, Jul 15, 2008 at 06:18:30PM -0400, Jeff Garzik wrote: > > Make PIO/MMIO a runtime thing via a module parameter. > > This is needed to support devices that only work with PIO > > without penalising devices that work fine with MMIO in > > distro kernels. > > > > Signed-off-by: Dave Jones [off-list ref] > > Looks great overall. > > Minor nits: > > * need module param text description oops. will fix. > * [optional] if code not too ugly, change mod param description based on > CONFIG_8139TOO_PIO to indicate the currently compiled default Not sure of a non-icky way to do this other than ifdefs. The best I could come up with is. #ifdef CONFIG_8139TOO_PIO MODULE_PARM_DESC(use_io, "PIO/MMIO switch. 0=MMIO 1=PIO default=PIO"); #else MODULE_PARM_DESC(use_io, "PIO/MMIO switch. 0=MMIO 1=PIO default=MMIO"); #endif palatable? > * [optional] would prefer CONFIG_8139TOO_PIO be handled at compile time, > by changing the initialized value This bit should be taken care of in rtl8139_init_module() at the bottom.. + /* enable PIO instead of MMIO, if CONFIG_8139TOO_PIO is selected */ +#ifdef CONFIG_8139TOO_PIO + use_io = 1; +#endif > * [extra project] would be highly useful for MMIO to fall back to PIO, > and vice versa, should any resource be unavailable. Sometimes, mainly > with MMIO and broken/weird BIOSen, only the PIO PCI BARs will be filled > in with useful info. Sounds do-able. I'll add it to my rainy-day project list. Dave -- http://www.codemonkey.org.uk