[ltp] lspnp & setpnp which distros?

Thomas Hood linux-thinkpad@linux-thinkpad.org
Sat, 06 Dec 2003 12:36:44 +0100


On Thu, 2003-12-04 at 16:48, Michael Hagemann wrote:
> On Thu, 04 Dec 2003 09:33:24 -0600 wes schreiner wrote:
> > Bert Haskins wrote:
> > > Which distros have lspnp & setpnp?
> > > These don't seem to be available on RedHat, can they be added?
> > > Thanks, Bert
> >
> > lspnp/setpnp come with the pcmcia package.  But the real question is 
> > which distros have PNP support patched in, as PNP support is not in 
> > mainline 2.4.x, though it is in 2.6.  I think RedHat has it, but not 
> > Debian, and I don't know about other distros.
> 
> Actually it is in 2.4 for a while now (2.4.18?).  The problem was, that
> the IBM pnp implementation isn't standard.  The -ac patches used fix
> this (because Alan Cox owns a thinkpad, too), but I think at least the
> 2.4.23 kernel incorporates those by now...
> 
> Maybe it is by default disabled in the vendor kernels; it used to cause
> trouble on too many machines...

Access to "PnP BIOS" firmware routines is provided by the pnpbios
driver in Linux 2.4 .  The driver was originally included in the
pcmcia-cs package.  It was integrated into the 2.4-ac series and
went through several rounds of debugging and improvement there.
See drivers/pnp/pnpbios*.[ch] in the 2.4-ac source tree.

The original pcmcia-cs drivers were buggy.  So far as I know,
improvements were never backported to the pcmcia-cs package
because it was always assumed that the pnpbios driver would go
into the stock kernel.  Unfortunately, pnpbios was never integrated
into stock Linux 2.4.  I just checked the 2.4.23 source tree and
there are no pnpbios files in drivers/pnp, just isapnp driver files.

Because it has been a long time feature of 2.4-ac, I have always
assumed that it was available in Red Hat kernels (since Alan Cox
works for Red Hat); however I never checked to make sure.

The userspace tools for pnpbios are lspnp and setpnp.  These were
also rather buggy in the original pcmcia-cs package.  Several changes
did get applied, however, and I believe they now work correctly.
lspnp and setpnp are shipped in the standard Debian pcmcia-cs
package.  I don't know about other distros.

The pnpbios code was taken over by Adam Belay who fused pnpbios
together with isapnp.  The resulting pnp layer is a standard
feature of Linux 2.6.
-- 
Thomas Hood <jdthood2@yahoo.co.uk>