Commit Graph

87 Commits

Author SHA1 Message Date
simonb d9220af5c4 Remove unreachable "break"s after "return"s. 2003-01-20 02:29:56 +00:00
thorpej 72a7af27b0 Use aprint_normal() in cfprint routines. 2003-01-01 00:10:15 +00:00
tsutsui 238efe4697 Replace magic numbers for power management control with PCI_PMCSR* macros.
XXX Should we use pci_get_powerstate() and pci_set_powerstate() in pci.c?
2002-12-23 02:58:36 +00:00
martin f5b121503a Add TI PCI4410 PCI-CardBus Bridge w/ OHCI IEEE 1394,
from FUKAUMI Naoki in PR 18989.
2002-11-09 08:51:14 +00:00
atatat df90f09849 Don't print messages about pccbb_intr_disestablish() unless debugging
is actually enabled.
2002-10-19 18:01:59 +00:00
thorpej b75a007d9f Add trailing ; to CFATTACH_DECL. 2002-10-02 16:51:16 +00:00
onoe 25c18040cf make it compilable with CBB_DEBUG. 2002-10-01 14:30:54 +00:00
haya f7568c1e88 Use LIST in sys/queue. Add some comments. 2002-10-01 09:09:16 +00:00
thorpej 387fc6dc87 Use CFATTACH_DECL(). 2002-09-30 20:37:04 +00:00
thorpej f818766afe Declare all cfattach structures const. 2002-09-27 20:31:45 +00:00
mycroft 5ca56020c7 Patch the CLKRUN enable bit on ToPIC chips. 2002-05-31 13:34:03 +00:00
haya a7937db203 Add comment. 2002-05-31 09:54:52 +00:00
haya cff90ff521 Enforce 10-bit width for I/O addresses of 16-bit PC Cards when I/O
start address is assigned by a driver.
2002-03-05 11:56:33 +00:00
haya 1e4fff76f0 Bug fix: correct chattering suppressor. Card insertion will be
detected properly by this fix.
2002-01-10 10:30:08 +00:00
christos d3d8a33acf change if defined foo to ifdef foo and change a c++ comment into a c comment. 2001-12-24 09:41:34 +00:00
lukem 2565646230 don't need <sys/types.h> when including <sys/param.h> 2001-11-15 09:47:59 +00:00
lukem 9048aaae21 add RCSID 2001-11-13 07:48:40 +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
haya 5f75bfa4ba Move some chip initialise code into pccbb_chipinit() function. 2001-10-17 10:25:51 +00:00
yamt cf2debbc86 force 0x1000 align for memory base before
calling rbus_space_alloc().
resource management may be inconsistent without it.
2001-09-30 06:32:02 +00:00
haya 2228225e5c Add some register definitions for TI PCI12XX and Toshiba ToPIC.
Add ToPIC97 and ToPIC100 chip initialisation routine.
Add more TI PCI12XX chip initialisation.
2001-08-30 09:20:17 +00:00
haya 45e61b5399 Buf fix: use PWAIT priority and do not set PCATCH. 2001-08-24 10:55:53 +00:00
mcr aa7bfea672 split pccbb_intr_route() into seperate function. 2001-07-06 18:06:59 +00:00
soren 281f1795a4 Add TI 1410 to yc_chipsets[]. 2001-05-19 19:46:08 +00:00
jmc 36d8e99d14 Cast args correctly to match format strings. 2001-04-30 02:49:04 +00:00
thorpej 909f3d7efb splimp -> splvm (use IPL_IMP needs to be revisited). 2001-04-12 18:18:31 +00:00
enami 79d20d7c7a - Initialize auto variable (win[{0,1}].win_flags).
- If PCCBB_MEM_CACHABLE isn't set, clear CB_BCR_PREFETCH_MEMWIN[01].
2001-02-22 10:39:31 +00:00
jdolecek 522f569810 make some more constant arrays 'const' 2001-02-21 21:39:52 +00:00
minoura a7d1fe9920 Correct the 1st argument for pci_conf_{read,write}.
On non-i386 platforms the previous revision could not be compiled.
Pointed out by mjl.
2001-02-21 00:32:31 +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
haya d413da0c4a BUG FIX: calculate address line mask in pccbb_pcmcia_io_alloc() when
start address is not set.
2001-02-09 10:41:50 +00:00
itohy 5ce651390d Fix problem where tsleep() is used not on the cardbus thread.
This change makes PCMCIA cards work again on my machine.

Unfortunately, some of the DELAY_MS() are called when the current
process is not the cardbus thread, that is, on interrupt contexts.
I confirmed these are actually used in interrupt context and replaced
them with delay()s.  However, I haven't confirmed other DELAY_MS()s
are always on the cardbus thread.

This shall be a temporary fix.  The driver needs being rewritten
not to use such delay()s, of course.
2001-01-30 07:23:14 +00:00
haya c54894efe9 IMPROVEMENT: use tsleep() instead of delay(). Kernel do not stop
during card insertion, deletion and power change.
2001-01-24 10:10:04 +00:00
augustss 22a541e778 Add a comment. 2001-01-22 01:13:47 +00:00
haya 193fd06950 Fix comment. 2001-01-17 08:37:09 +00:00
augustss 2c65dfb9b5 Be less talkative in attach. 2000-12-30 00:37:24 +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
mycroft 1ac1248e45 Turn off the damned TI `VCC protection' bit. 2000-12-08 21:51:02 +00:00
haya 2b0374c5d9 WORKAROUND: CardBus bridge avoids turning off the power of channel in
shutdown hook when the bridge chip is TI113X.  Because PowerBook 2400
hangs here.
2000-12-08 10:24:14 +00:00
haya 92f11ef3d3 BUG FIX: change enable sequence for 16-bit pcmcia cards. This change
provides better (not perfect) reset sequence.  The most significant
change is asserting output enable reg before power up.  Stop routing
interrupt during reset.
2000-11-28 09:11:36 +00:00
haya 02aaf95f67 BUG FIX: pccbb turns off PC Cards' power on the bus in shutdown hook.
Some machines cannot reboot without this fix.
2000-11-27 09:04:32 +00:00
haya b44679b7ec Bugfix: reset 16-bit pcmcia in chip initialisation sequence. 2000-10-25 09:15:58 +00:00
haya 128fa6e8fb Correct PCI interrput setup routine for Texas Instruments PCI113X.
Now PCI113X is able to handle hot insertion and deletion properly.
2000-08-28 09:26:38 +00:00
jhawk 469c88cc11 Clarify that the RX5C47X requires writes to the PCI_LEGACY to
disable and not PCI_BCR_INTR; this is what rev 1.9 did under
the label of "Maintenance."
2000-07-09 22:06:02 +00:00
jhawk e6e9cc5c41 Move legacy pcic-mode disabling code from pccbb_chipinit() to
pccbbattach(). This is necessary as pccbb_chipinit() is deferred, and
may not run until after the pcic is already attached.

Now pcics are properly disabled on Sony VAIO, f'rinstance.
2000-07-09 21:58:30 +00:00
cgd eee18e1f6c beat back the undead: __BROKEN_INDIRECT_CONFIG had risen, and was
terrorizing innocent hackers...
2000-06-16 23:41:33 +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
haya dca97557cd Add CB_BCR_RESET_ENABLE in bridge control resister's bit definition. 2000-06-07 09:02:46 +00:00
kleink de328af944 Fix a inverted logic botch introduced in rev. 1.35, typically causing
cb_chipset() to return the wrong chipset type.
2000-05-08 07:31:20 +00:00
haya 7bc5a1ca36 Add CardBus interrupt enable flag. When this flag is asserted, a
CardBus interrupt is routed to the child devices and vice versa.  This
flag is negated when a pccbb receives a suspend or stanby event.
2000-04-06 09:11:57 +00:00