Document what the pcic driver in newcard will support.

This commit is contained in:
Warner Losh 2002-07-09 04:43:30 +00:00
parent 65fbd12756
commit f26fae01e8
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=99637

View file

@ -32,27 +32,20 @@
.Nd pccard bridge driver
.Sh SYNOPSIS
.Cd device pcic
.Cd device card
.Cd device pccard
.Sh DESCRIPTION
The
.Nm
driver controls the pccard subsystem.
driver provides support for older ISA and non-Yenta PCI PC Card birdges.
The
.Nm
driver supports most
.Tn ExCA
devices attached to either
devices attached to the
.Tn ISA
or
bus or
.Tn PCI
bus.
The
.Nm
driver does not support the so-called TCIC controllers made by
Databook.
Nor does it support the MECIA chipset found in some early PC98
NOTE PC machines.
The mecia driver now supports that bridge.
devices that do not conform to the Yenta specification.
.Pp
The following
.Tn ISA
@ -92,151 +85,20 @@ control system.
.Tn IBM
clone of the original i82365SL part, with its own ID register value.
Has no 3.3V ability.
.It IBM KING
A strange clone of i82365SL.
This part has many restrictions not found in the i82365SL, plus some
strange power control.
It has not been tested in ages, but is believed to work.
Its use is believed to be confined to model of ISA card, available
only in Japan.
.El
.Pp
Many other vendors made parts in this arena, but most of them were
compatible with one of the above chipsets.
.Pp
The following PCI cardbus and pcmcia bridges are supported:
The following PCI pcmcia bridges are supported:
.Pp
.Bl -tag -width "Intel i82365SL Step A" -compact
.It Cirrus Logic PD6729
.It Cirrus Logic PD6730
These two might be broken at the moment.
.It Cirrus Logic PD6832
.It Cirrus Logic PD6833
.Pp
.It O2micro OZ6729
.It O2micro OZ6730
.It O2micro OZ6812
.It O2micro OZ6832
.It O2micro OZ6833
.It O2micro OZ6836
.It O2micro OZ6860
.It O2micro OZ6872
O2 Micro chips may be poorly supported because the author does not
have good access to machines with one of these bridges in it.
.Pp
.It Ricoh RL4C475
.It Ricoh RL4C476
.It Ricoh RL4C477
.It Ricoh RL4C478
.Pp
.It TI PCI-1031
.It TI PCI-1130
.It TI PCI-1131
.It TI PCI-1211
.It TI PCI-1220
.It TI PCI-1221
.It TI PCI-1225
.It TI PCI-1250
.It TI PCI-1251
.It TI PCI-1251B
.It TI PCI-1410
.It TI PCI-1420
.It TI PCI-1450
.It TI PCI-1451
.It TI PCI-4451
.Pp
.It Toshiba ToPIC95
.It Toshiba ToPIC97
.It Toshiba ToPIC100
.El
.Sh FILES
.Bl -tag -width ".Pa /dev/card0" -compact
.It Pa /dev/card0
Character device for the
.Nm
driver.
.El
.Sh MODES OF OPERATION
The ISA device supports routing ISA interrupts only.
You cannot share ISA interrupts.
Every interrupt must be unique.
.Pp
The PCI device supports routing ISA or PCI interrupts.
PCI interrupts are sharable.
ISA interrupts are not sharable.
PCI interrupts should be used unless your machine has a specific problem using
them.
.Pp
PCI interrupt routing is the default for PCI devices.
Some older laptops require ISA interrupt routing to work properly.
To enable ISA interrupt routing, you must set the tunable
.Li hw.pcic.intr_path=1
in
.Pa /boot/loader.conf .
For the present, unless you have a one slot machine, you should set
.Li hw.pcic.irq=0
to force polling mode.
Two slot machines have minor issues with using an ISA interrupt for the
CSC interrupt.
.Sh TUNABLES
.Bl -tag -width indent
.It Va hw.pcic.ignore_function_1
Needed for some, improperly manufactured PCI cards made by Orinoco.
It disables function 1 completely.
Set to 0 to enable function 1.
Set to 1 to disable function 1.
This tunable generally should not be needed on laptops.
The default is 0.
.It Va hw.pcic.init_routing
Some machines can tolerate interrupt routing selection at the cardbus
bridge level.
Others fail when you mess with these registers.
Set to 1 to force the chipset to route via parallel PCI interrupts (as
well as a few other little things).
Setting to 0, the default, forces the code to leave these registers as the
code finds them.
Most laptops will not need to set this tunable.
Many PCI cards with cardbus chips on them are believed to need this
tunable set to 1.
The default is 0.
.It Va hw.pcic.intr_path
Should PCI pcic devices route interrupts via ISA or PCI.
A value of 1 means route via ISA.
A value of 2 means route via PCI.
This is ignored for the ISA device.
Many older laptops do not have PCI BIOS implementations that
.Fx
can use to route interrupts properly.
These laptops may need to set this to 1 and
.Va hw.pcic.irq
to a value
(or 0 for polling).
The default is 2.
.It Va hw.pcic.irq
Overrides the IRQ to use for ISA interrupt routing of the CSC or
management interrupt.
If you are using the ISA device, you can set this tunable, or use the
.Cd "irq N"
clause in config file.
If you are using a PCI device in ISA interrupt mode (see
.Va hw.pcic.intr_path ) ,
then you must set the interrupt with this
sysctl, or polling mode will be used.
Due to limitations in the tunable system, only one interrupt can be selected
for all cards.
Systems with multiple PCI bridges that need to use ISA routing are encouraged
to use polling mode on each of the cards.
The default is 0.
.It Va hw.pcic.ignore_pci
Defaults to 0.
Set to 1 to completely ignore the cardbus bridge.
This may help some old laptops work.
Setting to 1 on newer laptops will almost certainly fail.
.El
.Sh HISTORY
Too long to detail in the man page.
.Sh BUGS
Too many to list.
Some are the fault of the standard.
Some are the fault of bad standard compliance.
Some are Warner's fault.
This does not work at all at the moment.