summaryrefslogtreecommitdiffstats
path: root/sys/dev/pccbb/pccbbvar.h
diff options
context:
space:
mode:
authorimp <imp@FreeBSD.org>2002-02-17 03:11:11 +0000
committerimp <imp@FreeBSD.org>2002-02-17 03:11:11 +0000
commit88a25257e9ceba246d683c669e10c42286190f3a (patch)
treebffefb1459f50caaa8bafb19d4d263641f00e994 /sys/dev/pccbb/pccbbvar.h
parent3985693d095687c838e01df0861a4081f487ee0e (diff)
downloadFreeBSD-src-88a25257e9ceba246d683c669e10c42286190f3a.zip
FreeBSD-src-88a25257e9ceba246d683c669e10c42286190f3a.tar.gz
Bulk changes made during the BSDcon kernel summit and travel afterwards.
Appologies for making this one bulk commit, but I have tested all these changes together and don't want to break anything by trying to disentangle it. o Make debugging a sysctl/tunable o Remove flags word from yenta chip info, it is unused o Make 16-bit card I/O range and 32-bit card I/O range tunables o Start the rename of pccbb to cbb to match NetBSD by misc renames. o Kill the now bogus list of softcs to create kthread. Instead, just create the kthread in the attach routine. o Remove sc_ from some structure names. It isn't needed. o Refine chipset lookup code. o Match generic PCI <-> CardBus bridges. We specifically don't generically match PCI PCMCIA bridges because they are not, with one exception, yenta devices. o Add some comments about the why we need to have a function table ala OLDCARD o The PCI interrupt routing by using the ExCA registers is needed for for all bridges, per the spec, not just TI ones. o Collapse TOPIC95 and TOPIC95B. o Using the ToPIC 97 and 100 datasheets, try to support these bridges better, but more work is needed. o Generally clarify some XXX comments and add them in a few places where things didn't look right to me. o Move interrupt generating register access until after we establish an ISR. o Add support for YV and XV cards. X and Y are numbers to be determined later (but maybe never). o factor powerup code for 16-bit and 32-bit cards. o When a card supports more than one voltage, prefer the lowest supported volage. Windows does this, and MS's design guides imply this is the right thing to do. o Document race between kthread_exit(0) and kldunload's unmapping of pages that John Baldwin and I discovered. o Debounce the CSC interrupt a little better. o When a 16-bit card is inserted when we don't have a pccard child, warn about it better. Ditto for 32-bit card. o Ack ALL the interrupt bits that we get, not just 0x1. o maybe a couple minor style nits corrected.
Diffstat (limited to 'sys/dev/pccbb/pccbbvar.h')
-rw-r--r--sys/dev/pccbb/pccbbvar.h34
1 files changed, 16 insertions, 18 deletions
diff --git a/sys/dev/pccbb/pccbbvar.h b/sys/dev/pccbb/pccbbvar.h
index 2453187a..80cf178 100644
--- a/sys/dev/pccbb/pccbbvar.h
+++ b/sys/dev/pccbb/pccbbvar.h
@@ -53,37 +53,35 @@ struct pccbb_reslist {
#define PCCBB_AUTO_OPEN_SMALLHOLE 0x100
struct pccbb_softc {
- device_t sc_dev;
+ device_t dev;
struct exca_softc exca;
- struct resource *sc_base_res;
- struct resource *sc_irq_res;
- void *sc_intrhand;
- bus_space_tag_t sc_bst;
- bus_space_handle_t sc_bsh;
- u_int8_t sc_secbus;
- u_int8_t sc_subbus;
- struct mtx sc_mtx;
- u_int32_t sc_flags;
+ struct resource *base_res;
+ struct resource *irq_res;
+ void *intrhand;
+ bus_space_tag_t bst;
+ bus_space_handle_t bsh;
+ u_int8_t secbus;
+ u_int8_t subbus;
+ struct mtx mtx;
+ u_int32_t flags;
#define PCCBB_16BIT_CARD 0x02000000
#define PCCBB_KTHREAD_RUNNING 0x04000000
#define PCCBB_KTHREAD_DONE 0x08000000
- int sc_chipset; /* chipset id */
+ int chipset; /* chipset id */
#define CB_UNKNOWN 0 /* NOT Cardbus-PCI bridge */
#define CB_TI113X 1 /* TI PCI1130/1131 */
#define CB_TI12XX 2 /* TI PCI1250/1220 */
#define CB_RF5C47X 3 /* RICOH RF5C475/476/477 */
#define CB_RF5C46X 4 /* RICOH RF5C465/466/467 */
-#define CB_TOPIC95 5 /* Toshiba ToPIC95 */
-#define CB_TOPIC95B 6 /* Toshiba ToPIC95B */
+#define CB_CIRRUS 5 /* Cirrus Logic CLPD683x */
+#define CB_TOPIC95 6 /* Toshiba ToPIC95 */
#define CB_TOPIC97 7 /* Toshiba ToPIC97/100 */
-#define CB_CIRRUS 8 /* Cirrus Logic CLPD683x */
SLIST_HEAD(, pccbb_reslist) rl;
- device_t sc_cbdev;
- device_t sc_pccarddev;
+ device_t cbdev;
+ device_t pccarddev;
- /* kthread staff */
- struct proc *event_thread;
+ struct proc *event_thread;
};
/* result of detect_card */
OpenPOWER on IntegriCloud