Messages in this thread | | | Date | Tue, 6 Sep 2005 16:13:30 -0700 | From | Andrew Morton <> | Subject | Re: [patch 2.6.13 2/2] 3c59x: add option for using memory-mapped PCI I/O resources |
| |
"John W. Linville" <linville@tuxdriver.com> wrote: > > On Tue, Sep 06, 2005 at 03:15:46PM -0700, Andrew Morton wrote: > > "John W. Linville" <linville@tuxdriver.com> wrote: > > > > > > I fully intend to have have a flag in the private data set based on > > > the PCI ID when I accumulate some data on which devices support this > > > and which don't. So far I've only got a short list... Do you think > > > such a flag should be based on which ones work, or which ones break? > > > > The ones which are known to work. > > > > Bear in mind that this is an old, messy and relatively stable driver which > > handles a huge number of different NICs. Caution is the rule here. > > I definitely agree. That is another part of why I defaulted to "use_mmio=0". > > I'll post PCI ID based patches as I determine supported cards. >
What I'd suggest you do is to look at enabling the feature for, say, IS_CYCLONE and IS_TORNADO NICs. Do that as a separate -mm patch, make sure that an explicit `use_mmio=0' will still turn it off.
So in the style of that driver, something like:
static int use_mmio[MAX_UNITS] = { [ 0 .. MAX_UNITS-1 ] = -1, };
Then:
if (module parm given) use_mmio[unit] = 1 or 0
...
/* Determine the default if the user didn't override us */ if (use_mmio[unit] == -1 && (IS_CYCLONE || IS_TORNADO)) use_mmio[unit] = 1;
priv->use_mmio = use_mmio[unit]; (maybe)
....
if (priv->use_mmio == 1) do mmio stuff
There's a bit to be done here, so I'll drop your initial set of patches.
btw, Donald Becker's 3c59x.c has done mmio for ages. Suggest you take a look in there. http://www.scyld.com/vortex.html - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |