Subject: Re: [PATCH 1/2] 8139too: Make PIO/MMIO a modparam

From: Jeff Garzik <[email-masked]>
Date: Tue, 15 Jul 2008 18:18:30 -0400

Dave Jones wrote:
> On Thu, May 29, 2008 at 03:01:35PM -0400, Jeff Garzik wrote:
>  > Dave Jones wrote:
>  > > On Thu, May 29, 2008 at 02:18:45PM -0400, Jeff Garzik wrote:
>  > >  > Dave Jones 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 <[email-masked]>
>  > >  > 
>  > >  > two comments:
>  > >  > 
>  > >  > 1) should use pci_iomap() for both PIO and MMIO
>  > >  > 
>  > >  > 2) modparam should be "use_io" mirroring existing drivers
>  > > 
>  > > Ok, I'll take a stab at those later today (and also your comment
>  > > from the other mail).
>  > > 
>  > > One other thing: I wasn't sure about my changes to rtl8139_get_regs
>  > > and rtl8139_get_regs_len.  Is what I did there safe?
>  > > Obviously actually implementing support for PIO reg dumping would
>  > > be better, but I think that's beyond the scope of what I'm trying
>  > > to do for now.
>  > 
>  > Yeah, that should be reasonable
> 
> Finally got back to this.  How does this look?
> 
> 	Dave
> 
> 
> 
> 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 <[email-masked]>

Looks great overall.

Minor nits:

* need module param text description

* [optional] if code not too ugly, change mod param description based on 
CONFIG_8139TOO_PIO to indicate the currently compiled default

* [optional] would prefer CONFIG_8139TOO_PIO be handled at compile time, 
by changing the initialized value

* [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.