Commit Graph

24 Commits

Author SHA1 Message Date
perry 18db93c7f6 de-__P 2005-02-04 02:10:35 +00:00
jmcneill 27d1abf7f8 Capture PCI configuration state on suspend and restore it on resume, from
Kentaro A. Kurahone.
2005-01-27 02:44:59 +00:00
mycroft b0345c674e Christos's crappy Libretto 100CT has an extremely long ramp for socket Vcc
(violating the PC Card spec), so... use the "power cycle" socket event to
determine when we've reached Vcc before proceeding, rather than using a fixed
amount of time.  This has the double advantage that it makes the card attach
time even shorter on sane systems -- the minimum is now ~38ms on my i8500
rather than 222ms.

Probably a similar change should be made to pcic, but it was hard enough
figuring out whether it would work with pccbb.  The chip specs suck.

For now, I'm leaving in a couple of additional printf()s in the hope that I
will get some interesting data from them.
2005-01-16 08:51:55 +00:00
mycroft 1925108989 If the bus number has not been initialized, do not attach a cardslot, and
output a diagnostic:
pccbbN: secondary bus number uninitialized; try PCIBIOS_BUS_FIXUP
2004-07-22 16:39:51 +00:00
briggs 3c06a40b83 Power up the card without OE enabled to avoid letting SanDisks enter
True IDE mode.  Hinted at by Charles Hannum a while back.  This lets
my PCI-Cardbus adapter read SanDisk CF cards much more reliably.

Also bring in a few defines from FreeBSD for some more TI registers and such.
2003-12-10 02:55:48 +00:00
nakayama a8e1b2f5c5 PCI-CardBus bridge support for sparc64:
- add pccbb_attach_hook in pccbbattach for MD initializations.
- omit arithmetics to bus_space_handle_t.
- remove use of IST_LEVEL; not defined on sparc64 and unused.
2003-03-22 06:25:14 +00:00
haya f7568c1e88 Use LIST in sys/queue. Add some comments. 2002-10-01 09:09:16 +00:00
haya 2c903bf2c0 Add PCI power management control. If the power state of a bridge is
not D0 at device attaching or resuming, set the bridge D0 mode.
2001-11-02 03:32:33 +00:00
mcr aa7bfea672 split pccbb_intr_route() into seperate function. 2001-07-06 18:06:59 +00:00
minoura 3b418f4eec Re-initialize more registers after resuming from suspend.
Some APM BIOSes do not restore them.
Reviewd by haya.
2001-02-20 15:16:38 +00:00
sommerfeld 851de295eb Change pci_intr_map to get interrupt source information from a "struct
pci_attach_args *" instead of from four separate parameters which in
all cases were extracted from the same "struct pci_attach_args".

This both simplifies the driver api, and allows for alternate PCI
interrupt mapping schemes, such as one using the tables described in
the Intel Multiprocessor Spec which describe interrupt wirings for
devices behind pci-pci bridges based on the device's location rather
the bridge's location.

Tested on alpha and i386; welcome to 1.5Q
2000-12-28 22:59:06 +00:00
haya b6a821f042 Change IPL when bridge's interrupt handler calls child device's
interrupt handler (This solution is not very good).
2000-06-08 10:28:28 +00:00
thorpej fc96443d15 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 07:01:25 +00:00
haya ddd36bd41a 1. Do not apply 5 V on a CardBus card.
2. Do not avoid ISA hole when a device requires more than
   256-byte io space.
3. Remove sending CardBus bridge's function number to
   cardbus stack.  This number is not needed for anyone.
2000-03-22 09:35:06 +00:00
haya b6f22443bb Remove ancient code. 2000-03-15 00:38:40 +00:00
mycroft 781b535703 Revert the previous change. 2000-03-12 04:27:12 +00:00
thorpej 5c64f2064d Add missing sc_pil_intr_enable member to pccbb_softc.
XXX Double check this, please.  The code appears to only use it as a
boolean, but...
2000-03-12 01:15:04 +00:00
thorpej 285a315e99 Simplify the winlist code. 2000-03-01 23:40:26 +00:00
chopps 6d8c9583a7 indent this file 2000-02-05 18:42:37 +00:00
haya 639bd74d21 Pccbb manages interrupt handlers by itself for its child device. 2000-01-26 09:02:41 +00:00
haya 8553661a5e Maintainance the name of Ricoh PCI-CardBus bridges. 1999-11-01 08:58:45 +00:00
haya 5aa225ed2e Disable legacy io port before the bridge is probed as a pcic on isa.
Comments ware changed to comply the KNF.
Add PCCBB_PCMCIA_16BITONLY to support TI PCI103X series.
1999-10-19 09:29:46 +00:00
haya e5cc414836 add NetBSD ID tag. 1999-10-15 06:42:21 +00:00
haya 4eee111127 This is the first check-in of CardBus driver. CardBus driver contains
CardBus bus stub, YENTA PCI-CardBus bridge (cbb), 3Com 3C575TX driver
(ex) and Intel fxp driver.

TODO:
  o Conform to the KNF more strictly.
  o Be unified with pcmcia code as much as possible.
  o Add more drivers for CardBus card, such as APA-1480 or USB card.

The affected files are listed below.

	sys/arch/i386/conf/files.i386
	sys/arch/macppc/conf/files.macppc
	sys/conf/files
	sys/dev/ic/elinkxl.c
	sys/dev/ic/elinkxlvar.h
	sys/dev/ic/i82365.c
	sys/dev/ic/i82365var.h
	sys/dev/isa/i82365_isasubr.c
	sys/dev/pci/files.pci
	sys/dev/pcmcia/pcmcia.c
	sys/dev/pcmcia/pcmciachip.h

The added files are listed below.

	sys/arch/i386/conf/CARDBUS
	sys/arch/i386/include/rbus_machdep.h
	sys/arch/i386/i386/rbus_machdep.c
	sys/arch/macppc/include/rbus_machdep.h
	sys/arch/macppc/macppc/rbus_machdep.c
	sys/dev/cardbus/if_ex_cardbus.c
	sys/dev/cardbus/Makefile.cardbusdevs
	sys/dev/cardbus/cardbus.c
	sys/dev/cardbus/cardbus_map.c
	sys/dev/cardbus/cardbusdevs
	sys/dev/cardbus/cardbusdevs.h
	sys/dev/cardbus/cardbusdevs_data.h
	sys/dev/cardbus/cardbusvar.h
	sys/dev/cardbus/cardslot.c
	sys/dev/cardbus/cardslotvar.h
	sys/dev/cardbus/devlist2h.awk
	sys/dev/cardbus/files.cardbus
	sys/dev/cardbus/if_fxp_cardbus.c
	sys/dev/cardbus/pccardcis.h
	sys/dev/cardbus/rbus.c
	sys/dev/cardbus/rbus.h
	sys/dev/pci/pccbb.c
	sys/dev/pci/pccbbreg.h
	sys/dev/pci/pccbbvar.h
1999-10-15 06:07:17 +00:00