old-www/HOWTO/BootPrompt-HOWTO-4.html

118 lines
4.0 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE>The Linux BootPrompt-HowTo: Boot Arguments to Control PCI Bus Behaviour (`pci=')</TITLE>
<LINK HREF="BootPrompt-HOWTO-5.html" REL=next>
<LINK HREF="BootPrompt-HOWTO-3.html" REL=previous>
<LINK HREF="BootPrompt-HOWTO.html#toc4" REL=contents>
</HEAD>
<BODY>
<A HREF="BootPrompt-HOWTO-5.html">Next</A>
<A HREF="BootPrompt-HOWTO-3.html">Previous</A>
<A HREF="BootPrompt-HOWTO.html#toc4">Contents</A>
<HR>
<H2><A NAME="s4">4. Boot Arguments to Control PCI Bus Behaviour (`pci=')</A></H2>
<P>The `pci=' argument (not avail. in v2.0 kernels)
can be used to change the behaviour of PCI bus device
probing and device behaviour. Firstly the file
<CODE>linux/drivers/pci/pci.c</CODE> checks for
architecture independent <CODE>pci=</CODE> options.
The remaining allowed arguments are handled
in <CODE>linux/arch/???/kernel/bios32.c</CODE> and are
listed below for ???=i386.
<P>
<H2><A NAME="ss4.1">4.1 The `pci=assign-busses' Argument</A>
</H2>
<P>This tells the kernel to always assign all PCI bus numbers,
overriding whatever the firmware may have done.
<P>
<H2><A NAME="ss4.2">4.2 The `pci=bios' and `pci=nobios' Arguments</A>
</H2>
<P>These are used to set/clear the flag indicating that the
PCI probing is to take place via the PCI BIOS. The default
is to use the BIOS.
<P>
<H2><A NAME="ss4.3">4.3 The `pci=conf1' and `pci=conf2' Arguments</A>
</H2>
<P>If PCI direct mode is enabled, the use of these enables
either configuration Type 1 or Type 2. These implicitly
clear the PCI BIOS probe flag (i.e. `pci=nobios') too.
<P>
<H2><A NAME="ss4.4">4.4 The `pci=irqmask=' Argument</A>
</H2>
<P>This allows the user to supply an IRQ mask value, which
is converted using strtol(). It will set a bit mask of IRQs
allowed to be assigned automatically to PCI devices. You
can make the kernel exclude IRQs of your ISA cards this way.
<P>
<H2><A NAME="ss4.5">4.5 The `pci=lastbus=' Argument</A>
</H2>
<P>This allows the user to supply a lastbus value, which
is converted using strtol(). It will scan all buses till bus N.
Can be useful if the kernel is unable to find your secondary buses
and you want to tell it explicitly which ones they are.
<P>
<H2><A NAME="ss4.6">4.6 The `pci=noacpi' Argument</A>
</H2>
<P>
<P>This disables the use of ACPI routing information during
the PCI configuration stages.
<P>
<H2><A NAME="ss4.7">4.7 The `pci=nopeer' Argument</A>
</H2>
<P>This disables the default peer bridge fixup, which according
to the source does the following:
<P>``In case there are peer host bridges, scan bus behind each of
them. Although several sources claim that the host bridges should
have header type 1 and be assigned a bus number as for PCI2PCI
bridges, the reality doesn't pass this test and the bus number
is usually set by BIOS to the first free value.''
<P>
<H2><A NAME="ss4.8">4.8 The `pci=nosort' Argument</A>
</H2>
<P>Using this argument instructs the kernel to not sort the
PCI devices during the probing phase.
<P>
<H2><A NAME="ss4.9">4.9 The `pci=off' Argument</A>
</H2>
<P>Using this option disables all PCI bus probing. Any
device drivers that make use of PCI functions to find
and initialize hardware will most likely fail to work.
<P>
<H2><A NAME="ss4.10">4.10 The `pci=usepirqmask' Argument</A>
</H2>
<P>This sets the USE_PIRQ_MASK flag during PCI init.
The kernel will honour the possible IRQ mask
stored in the BIOS PIR table. This is needed on some systems
with broken BIOSes, notably some HP Pavilion N5400
and Omnibook XE3 notebooks. This will have no effect if
ACPI IRQ routing is enabled.
<P>
<H2><A NAME="ss4.11">4.11 The `pci=rom' Argument</A>
</H2>
<P>This sets the ASSIGN_ROM flag during the probing phase.
The kernel will assign address space to expansion ROMs.
Use with caution as certain devices share address
decoders between ROMs and other resources.
<P>
<P>
<HR>
<A HREF="BootPrompt-HOWTO-5.html">Next</A>
<A HREF="BootPrompt-HOWTO-3.html">Previous</A>
<A HREF="BootPrompt-HOWTO.html#toc4">Contents</A>
</BODY>
</HTML>