[ltp] hw configuration issues_ˇPS2.EXE,_adiós!

Thomas Hood linux-thinkpad@www.bm-soft.com
Sat, 24 Feb 2001 21:40:30 +0000 (GMT)


--- I <jdthood2@yahoo.co.uk> wrote: 
> Question for Till:
> 
> What is the difference between pcmcia-cs's support
> for the PnP BIOS and the isa-pnp's support for Pnp
> devices?  

Answer to self: RTFM (in this case the Plug-n-Play HOWTO).

The isa-pnp kernel driver implements OS-level PnP 
configuration.  It is only *needed* if the BIOS doesn't
already do PnP configuration.  Windows does PnP config
itself because then it knows what the hw configuration is
and can configure its drivers accordingly.  Linux, in
contrast, hasn't traditionally done PnP configuration 
itself and so Linux drivers rely on probing and on config
files and other kludges in order to find out where their
devices are---i.e. where someone else (usually the PnP BIOS)
put them.

If the isa-pnp driver is used to configure PnP devices
the the information about where it has put them is made
available to drivers.  It does so through the following
functions:

> EXPORT_SYMBOL(isapnp_cards);
> EXPORT_SYMBOL(isapnp_devices);
> EXPORT_SYMBOL(isapnp_present);
> EXPORT_SYMBOL(isapnp_cfg_begin);
> EXPORT_SYMBOL(isapnp_cfg_end);
> EXPORT_SYMBOL(isapnp_read_byte);
> EXPORT_SYMBOL(isapnp_read_word);
> EXPORT_SYMBOL(isapnp_read_dword);
> EXPORT_SYMBOL(isapnp_write_byte);
> EXPORT_SYMBOL(isapnp_write_word);
> EXPORT_SYMBOL(isapnp_write_dword);
> EXPORT_SYMBOL(isapnp_wake);
> EXPORT_SYMBOL(isapnp_device);
> EXPORT_SYMBOL(isapnp_activate);
> EXPORT_SYMBOL(isapnp_deactivate);
> EXPORT_SYMBOL(isapnp_find_card);
> EXPORT_SYMBOL(isapnp_find_dev);
> EXPORT_SYMBOL(isapnp_probe_cards);
> EXPORT_SYMBOL(isapnp_probe_devs);
> EXPORT_SYMBOL(isapnp_activate_dev);
> EXPORT_SYMBOL(isapnp_resource_change);

The ALSA sound drivers, for example, can be configured to
use this information instead of values stored in the
/etc/modules.conf file.

> Why doesn't the isa-pnp module find any devices?
> I always get this in /var/log/messages when I
> insmod isa-pnp.o
> 
> Feb 23 11:37:15 thanatos kernel: isapnp: Scanning for Pnp cards...
> Feb 23 11:37:15 thanatos kernel: isapnp: No Plug & Play device found

The reason is that my ThinkPad PnP BIOS has already configured
all the devices, so the devices do not respond to PnP configuration
messages any more.  In order to use the isa-pnp.o module I would
have to disable PnP BIOS configuration.  (I take it I could do this
if I set "QuickBoot" to "disable"; however I have my doubts about
this.  Surely there is more to "QuickBoot" than mere PnP config,
otherwise I can't see why they chose that hame.  Anyone at IBM
care to comment?)

PnP BIOS support in pcmcia-cs is there so that the pcmcia driver
can interface with the PnP BIOS if the PnP BIOS is what is being
used to do hw configuration.  You would think that the pcmcia driver
could also interface with the isa-pnp driver, but I see no evidence
that it can.  Many other drivers in the Linux kernel do interface
with isa-pnp.

So.  Has anyone tried to use isa-pnp?

Thomas


____________________________________________________________
Do You Yahoo!?
Get your free @yahoo.co.uk address at http://mail.yahoo.co.uk
or your free @yahoo.ie address at http://mail.yahoo.ie

----- The Linux ThinkPad mailing list -----
The linux-thinkpad mailing list home page is at:
http://www.bm-soft.com/~bm/tp_mailing.html