Home
Main website
Display Sidebar
Hide Ads
Recent Changes
View Source:
pnpdump(8)
Edit
PageHistory
Diff
Info
LikePages
PNPDUMP !!!PNPDUMP NAME SYNOPSIS DESCRIPTION FILES BUGS WARNING AUTHOR AVAILABILITY REFERENCES SEE ALSO ---- !!NAME pnpdump - Dump ISA Plug-And-Play devices resource information !!SYNOPSIS __pnpdump__ [[ --help ] [[ --config ] [[ --script[[=outputfile] ] [[ --reset ] [[ --ignorecsum ] [[ --masks ] [[ --dumpregs ] [[ --max-realtime=''t'' ] [[ --version ] [[ --debug-isolate ] [[ --outputfile=outputfile] [[ [[ ''devs'' ] ''readport'' ] !!DESCRIPTION __pnpdump__ will scan all the ISA PnP cards, dumping their resource data to ''stdout''. The resource data is supposed to be a description of the resources (IO ports, interrupts, DMA channels) that the card would like, or needs, to use to work. It is stored in a small ROM on the card, which can be read as part of the Plug and Play configuration process. Note that some manufacturers are rather lax about the contents of this ROM, particularly if the card is not required for booting, so the resource data may not be accurate. As they also typically provide a DOS/Windows driver for the card, they really only need to be able to recognise it, as the driver can then complete the configuration. The output of __pnpdump__ is in a form that can be used by __isapnp__, except that the actual configuration statements are commented out. See __isapnp.conf(5)__ for details of the format. By default, __pnpdump__ will reset all the Card Serial Numbers, then ISOLATE each one and allocate it a handle (Card Select Number). This process will include trying different ''readport'' addresses until a suitable one is found avoiding conflicts with other hardware. For a description of what the ''readport'' is, see the relevant entry in __isapnp.conf(5)__. As of the isapnptools 1.12 release, any existing configuration settings will be unaffected. If a single parameter is provided, this will be used as the minimum ''readport'' address to start scanning. This may be chosen to avoid an unfortunate conflict. To skip the Isolation process, both additional parameters may be supplied: __Parameters__ ''devs'' is the ''number of PnP cards'' that the BIOS has found, ISOLATEd and allocated CSNs to in the system. Note that if this is greater than the actual number of cards in the system, pnpdump will stop scanning when it receives a first serial identifier byte of 0xff (this is what happens when there isn't a card with that CSN). If this parameter is provided, then __pnpdump__ will not ISOLATE each card and assign CSNs, however, the ''readport'' provided must be the same as the one the BIOS used. This could be difficult to determine if it is not assigned via a BIOS setup screen. ''readport'' is the address of the ''readport'' to use for the Plug-And-Play access. The number base is determined by the format: a leading ''0x'' implies hex, a leading ''0'' implies octal, otherwise decimal is assumed. The address of the ''readport'' must be chosen to avoid any conflicts with existing (non Plug and Play) hardware, and must be in the range 0x203..0x3ff. If the ''readport'' is specified without ''devs'', then this is the minimum ''readport'' to use when scanning for a suitable one. Note that for the two parameter option to work, you must have a PnP BIOS which has already carried out the ISOLATION process correctly, and you must know what ''readport'' address the BIOS used. __pnpdump__ will run with real-time scheduling if possible to achieve the required IO timings. This will lock out all normal programs while it executes. In version 1.19 and later of __isapnptools__, __pnpdump__ will only run in this mode for 5 seconds (or as set on the command line), it then reverts to standard scheduling like any other program. Previous versions should only be run from a standard console as ^C will kill it from there. If you run the command remotely (and X counts as remote), you will not be able to kill it as no other programs can run. __Options__ ''-h, --help'' Show a help summary. ''-c, --config'' attempt to determine safe settings to which the devices can be set, and uncomment those settings in the output. pnpdump will use information in the /proc filesystem and the contents of the /etc/isapnp.gone file to discover system resources that have already been allocated, if these facilities are available on the system. Note that if the resource allocation is impossible, pnpdump is not intelligent enough to realise this and may hang trying to find a solution. ''-d, --dumpregs'' this will cause pnpdump will dump all the standard configuration registers for each board. Note that this dump is dumping the physical registers, and will thus show the settings that have been put in there by the BIOS, or some cards will put a default setting in. Unused registers read back as 0. ''-D, --debug-isolate'' this will cause pnpdump to output loads of extra information, showing the actual data received during the isolation process. You'll probably need the ISAPnP spec to work out what it means. ''-i, --ignorecsum'' this will cause pnpdump will ignore checksum errors when deciding if the readport address is good. Section 3.3.2 of the spec suggests that a bad checksum should cause the ''readport'' to be rejected. In reality, it seems to be possible for the checksum to be bad for reasons other than a ''readport'' address conflict, and in this situation all ''readport'' addresses will be rejected resulting in no boards found. Using this flag allows the boards to still be found. Boards with a bad identifier checksum will have the identifier corrected by the resource data if the resource data identifier has a good checksum. ''-r, --reset'' Carry out a full configuration reset, rather than just resetting the CSNs. __DANGEROUS__ as this could reset PnP boards in active use by the kernel, resulting in a lockup or worse. ''-m, --masks'' Print the lists of acceptable interrupts and direct memory access (DMA) channels as binary bitmasks. For example, print ''-o, --outputfile=filename'' write all output to the file specified, rather than stdout. This option is not available in the DOS version. ''-t t, --max-realtime=t'' Set the maximum time the process can run at real-time priority to ''t'' seconds. If ''t'' is set to 0, the timeout is disabled; in this case you __must__ run the program from a normal text console to allow it to be aborted via control-C if it hangs. The default timeout is 5 seconds. After the timeout has expired, the process runs with normal scheduling, which means it may go a lot slower, but will prevent locking up the comupter (if it hangs while running under X windows for example). This option is only available when compiled with real time scheduling support. ''-s, --script[[=outputscript]'' write a shell script to the specified file that can be used to configure the system based on what ISA PnP boards were found and how they were configured. Note that the script generated uses array variables, so you need bash version 2 and later to run them. This option is not available in the DOS version. If --script is specified without an argument, then the script is piped (using popen) directly into a shell (sh) process. This is really useful only with --config. For each card, the script tries to execute the shell script /etc/pnp/config-scripts/isa/PRODUCT_ID or, failing that, /usr/share/pnp/config-scripts/isa/PRODUCT_ID. The generated shell script will try the compatible device ID's if any can any are in the ISA PnP information and no script for the device itself can be found. The /usr/share directory contents are the standard location, while the /etc directory is for you to put your customized versions of these scripts. You should write these shell scripts to generate the file /etc/conf.modules.isapnp at boot time, and then do something like ''-v, --version'' Print the isapnptools version number on stderr. !!FILES /sbin/pnpdump The executable. /etc/isapnp.conf The resting place of the editted output. /etc/isapnp.gone The standard place for describing resources that are unavailable, but not flagged as such in /proc/* etc. The format of this file is explained in the example provided with __isapnptools__. !!BUGS If the resource allocation is impossible, pnpdump -c is not intelligent enough to realise this and may hang trying to find a solution. Check http://www.roestock.demon.co.uk/isapnptools/ for latest information and FAQ. If you think you have found one not mentioned in the latest version, please send a report to isapnp@roestock.demon.co.uk. !!WARNING This program can reset all your Plug-and-Play devices. It can also lock up your machine. Use at your own risk. !!AUTHOR __pnpdump__ has been written by Peter Fox __ !!AVAILABILITY The latest version of the sources may be obtained by ftp from ftp://ftp.demon.co.uk/pub/unix/linux/utils Or follow the pointer from my web page at http://www.roestock.demon.co.uk/isapnptools/ !!REFERENCES Plug and Play ISA Specification, Version 1.0a, May 5, 1994. Available from ftp://ftp.microsoft.com/developr/drg/Plug-and-Play/Pnpspecs !!SEE ALSO isapnp(8), isapnp.conf(5) ----
3 pages link to
pnpdump(8)
:
Man8p
isapnp(8)
isapnp.conf(5)
This page is a man page (or other imported legacy content). We are unable to automatically determine the license status of this page.