diff --git a/sys/arch/pmax/tc/tc_3max.c b/sys/arch/pmax/tc/tc_3max.c index 458a2d2b75ef..592af99d7d57 100644 --- a/sys/arch/pmax/tc/tc_3max.c +++ b/sys/arch/pmax/tc/tc_3max.c @@ -1,4 +1,4 @@ -/* $NetBSD: tc_3max.c,v 1.3 1999/11/15 09:50:43 nisimura Exp $ */ +/* $NetBSD: tc_3max.c,v 1.4 1999/12/01 08:41:41 nisimura Exp $ */ /* * Copyright (c) 1998 Jonathan Stone. All rights reserved. @@ -31,7 +31,7 @@ */ #include /* RCS ID & Copyright macro defns */ -__KERNEL_RCSID(0, "$NetBSD: tc_3max.c,v 1.3 1999/11/15 09:50:43 nisimura Exp $ "); +__KERNEL_RCSID(0, "$NetBSD: tc_3max.c,v 1.4 1999/12/01 08:41:41 nisimura Exp $ "); #include @@ -41,38 +41,35 @@ __KERNEL_RCSID(0, "$NetBSD: tc_3max.c,v 1.3 1999/11/15 09:50:43 nisimura Exp $ " #include #include -/* 3MAX (kn02) TURBOchannel slots */ -/* slot addreseses */ -struct tc_slotdesc tc_kn02_slots [8] = { +/* + * 3MAX has 8 TC slot address space starting at 0x1e00.0000 with 4MB + * range for each. Three option slots are available as #0,1,2. Two + * devices on baseboard, ASC SCSI and LANCE Ether, are designed as TC + * option cards and populated in distinct slots. Slot #7, which + * contains RTC and serial chip, forms 3MAX system base. + */ +static struct tc_slotdesc tc_kn02_slots [8] = { { TC_KV(KN02_PHYS_TC_0_START), TC_C(0), }, /* tc option slot 0 */ { TC_KV(KN02_PHYS_TC_1_START), TC_C(1), }, /* tc option slot 1 */ { TC_KV(KN02_PHYS_TC_2_START), TC_C(2), }, /* tc option slot 2 */ { TC_KV(KN02_PHYS_TC_3_START), TC_C(3), }, /* - reserved */ { TC_KV(KN02_PHYS_TC_4_START), TC_C(4), }, /* - reserved */ - { TC_KV(KN02_PHYS_TC_5_START), TC_C(5), }, /* SCSI on b`board */ + { TC_KV(KN02_PHYS_TC_5_START), TC_C(5), }, /* b`board SCSI */ { TC_KV(KN02_PHYS_TC_6_START), TC_C(6), }, /* b'board Ether */ { TC_KV(KN02_PHYS_TC_7_START), TC_C(7), } /* system CSR, etc. */ }; -int tc_kn02_nslots = sizeof(tc_kn02_slots) / sizeof(tc_kn02_slots[0]); - -#define TC_KN02_DEV_IOASIC -1 -#define TC_KN02_DEV_ETHER 6 -#define TC_KN02_DEV_SCSI 5 - const struct tc_builtin tc_kn02_builtins[] = { - { "KN02SYS ", 7, 0x0, TC_C(TC_KN02_DEV_IOASIC) /* TC_C(7)*/ }, - { "PMAD-AA ", 6, 0x0, TC_C(TC_KN02_DEV_ETHER) /* TC_C(6)*/ }, - { "PMAZ-AA ", 5, 0x0, TC_C(TC_KN02_DEV_SCSI) /* TC_C(5)*/ } + { "KN02SYS ", 7, 0x0, TC_C(7), }, + { "PMAD-AA ", 6, 0x0, TC_C(6), }, + { "PMAZ-AA ", 5, 0x0, TC_C(5), } }; - struct tcbus_attach_args kn02_tc_desc = { - NULL, - 0, + NULL, 0, TC_SPEED_25_MHZ, - 8, tc_kn02_slots, - 3, tc_kn02_builtins, /*XXX*/ - NULL, + KN02_TC_NSLOTS, tc_kn02_slots, + 3, tc_kn02_builtins, + NULL, NULL, NULL, }; diff --git a/sys/arch/pmax/tc/tc_3maxplus.c b/sys/arch/pmax/tc/tc_3maxplus.c index 547a4214cf7a..5d8d96017ef4 100644 --- a/sys/arch/pmax/tc/tc_3maxplus.c +++ b/sys/arch/pmax/tc/tc_3maxplus.c @@ -1,4 +1,4 @@ -/* $NetBSD: tc_3maxplus.c,v 1.3 1999/11/15 09:50:42 nisimura Exp $ */ +/* $NetBSD: tc_3maxplus.c,v 1.4 1999/12/01 08:41:41 nisimura Exp $ */ /* * Copyright (c) 1998 Jonathan Stone. All rights reserved. @@ -31,7 +31,7 @@ */ #include /* RCS ID & Copyright macro defns */ -__KERNEL_RCSID(0, "$NetBSD: tc_3maxplus.c,v 1.3 1999/11/15 09:50:42 nisimura Exp $ "); +__KERNEL_RCSID(0, "$NetBSD: tc_3maxplus.c,v 1.4 1999/12/01 08:41:41 nisimura Exp $ "); #include #include @@ -41,33 +41,28 @@ __KERNEL_RCSID(0, "$NetBSD: tc_3maxplus.c,v 1.3 1999/11/15 09:50:42 nisimura Exp #include /* - * The only builtin TURBOchannel device on the kn03 (and kmin) - * is the IOCTL asic, which is mapped into TC slot 3. + * 3MAX+ has 4 TC option slot address space starting at 0x1e00.0000. + * TC slot size is 8MB. Three option slots are available. IOASIC, + * which governs various baseboard devices like keyboard/mouse, RTC, + * DMA assisted ASC SCSI, LANCE Ether, forms a system base. IOASIC + * is designed as a TC device and sits in slot #3 space. */ -const struct tc_builtin tc_kn03_builtins[] = { - { "IOCTL ", 3, 0x0, TC_C(3), /*TC_C(3)*/ } -}; - - -/* 3MAXPLUS TC slot addresses */ static struct tc_slotdesc tc_kn03_slots [4] = { { TC_KV(KN03_PHYS_TC_0_START), TC_C(0) }, /* 0 - tc option slot 0 */ { TC_KV(KN03_PHYS_TC_1_START), TC_C(1) }, /* 1 - tc option slot 1 */ { TC_KV(KN03_PHYS_TC_2_START), TC_C(2) }, /* 2 - tc option slot 2 */ - { TC_KV(KN03_PHYS_TC_3_START), TC_C(3) } /* 3 - IOasic on b'board */ + { TC_KV(KN03_PHYS_TC_3_START), TC_C(3) } /* 3 - IOASIC on b'board */ }; -int tc_kn03_nslots = sizeof(tc_kn03_slots) / sizeof(tc_kn03_slots[0]); +const struct tc_builtin tc_kn03_builtins[] = { + { "IOCTL ", 3, 0x0, TC_C(3), } +}; -/* - * 3MAXPLUS TURBOchannel autoconfiguration table - */ struct tcbus_attach_args kn03_tc_desc = { - NULL, - 0, + NULL, 0, TC_SPEED_25_MHZ, KN03_TC_NSLOTS, tc_kn03_slots, 1, tc_kn03_builtins, - NULL, + NULL, NULL, NULL, }; diff --git a/sys/arch/pmax/tc/tc_3min.c b/sys/arch/pmax/tc/tc_3min.c index ff5f3118b5f2..ef0e2c04cc4f 100644 --- a/sys/arch/pmax/tc/tc_3min.c +++ b/sys/arch/pmax/tc/tc_3min.c @@ -1,4 +1,4 @@ -/* $NetBSD: tc_3min.c,v 1.2 1999/11/15 09:50:41 nisimura Exp $ */ +/* $NetBSD: tc_3min.c,v 1.3 1999/12/01 08:41:41 nisimura Exp $ */ /* * Copyright (c) 1998 Jonathan Stone. All rights reserved. @@ -31,7 +31,7 @@ */ #include /* RCS ID & Copyright macro defns */ -__KERNEL_RCSID(0, "$NetBSD: tc_3min.c,v 1.2 1999/11/15 09:50:41 nisimura Exp $ "); +__KERNEL_RCSID(0, "$NetBSD: tc_3min.c,v 1.3 1999/12/01 08:41:41 nisimura Exp $ "); #include #include @@ -40,32 +40,30 @@ __KERNEL_RCSID(0, "$NetBSD: tc_3min.c,v 1.2 1999/11/15 09:50:41 nisimura Exp $ " #include #include -/* 3MIN slot addreseses */ -static struct tc_slotdesc tc_kmin_slots [] = { - { TC_KV(KMIN_PHYS_TC_0_START), TC_C(0) }, /* 0 - tc option slot 0 */ - { TC_KV(KMIN_PHYS_TC_1_START), TC_C(1) }, /* 1 - tc option slot 1 */ - { TC_KV(KMIN_PHYS_TC_2_START), TC_C(2) }, /* 2 - tc option slot 2 */ - { TC_KV(KMIN_PHYS_TC_3_START), TC_C(3) } /* 3 - IO asic on b'board */ -}; - /* - * The only builtin TURBOchannel device on the kn03 (and kmin) - * is the IOCTL asic, which is mapped into TC slot 3. + * 3MIN has 4 TC option slot address space starting at 0x1000.0000. + * TC slot size is 32MB. Three option slots are available. IOASIC, + * which governs various baseboard devices like keyboard/mouse, RTC, + * DMA assisted ASC SCSI, LANCE Ether, forms a system base. IOASIC + * is designed as a TC device and sits in slot #3 space. */ -const struct tc_builtin tc_kn02ba_builtins[] = { - { "IOCTL ", 3, 0x0, TC_C(3), /*TC_C(3)*/ } +static struct tc_slotdesc tc_kmin_slots [] = { + { TC_KV(KMIN_PHYS_TC_0_START), TC_C(0) }, /* 0 - TC option slot 0 */ + { TC_KV(KMIN_PHYS_TC_1_START), TC_C(1) }, /* 1 - TC option slot 1 */ + { TC_KV(KMIN_PHYS_TC_2_START), TC_C(2) }, /* 2 - TC option slot 2 */ + { TC_KV(KMIN_PHYS_TC_3_START), TC_C(3) } /* 3 - IOASIC on b'board */ }; -int tc_kmin_nslots = sizeof(tc_kmin_slots) / sizeof(tc_kmin_slots[0]); +const struct tc_builtin tc_kn02ba_builtins[] = { + { "IOCTL ", 3, 0x0, TC_C(3), } +}; -/* 3MIN TURBOchannel autoconfiguration table */ struct tcbus_attach_args kmin_tc_desc = { - NULL, - 0, + NULL, 0, TC_SPEED_12_5_MHZ, KMIN_TC_NSLOTS, tc_kmin_slots, - 1, tc_kn02ba_builtins, /*XXX*/ - NULL, + 1, tc_kn02ba_builtins, + NULL, NULL, NULL, }; diff --git a/sys/arch/pmax/tc/tc_maxine.c b/sys/arch/pmax/tc/tc_maxine.c index 53d78f09d9e6..8e344b1fecf7 100644 --- a/sys/arch/pmax/tc/tc_maxine.c +++ b/sys/arch/pmax/tc/tc_maxine.c @@ -1,4 +1,4 @@ -/* $NetBSD: tc_maxine.c,v 1.2 1999/11/15 09:50:40 nisimura Exp $ */ +/* $NetBSD: tc_maxine.c,v 1.3 1999/12/01 08:41:42 nisimura Exp $ */ /* * Copyright (c) 1998 Jonathan Stone. All rights reserved. @@ -31,7 +31,7 @@ */ #include /* RCS ID & Copyright macro defns */ -__KERNEL_RCSID(0, "$NetBSD: tc_maxine.c,v 1.2 1999/11/15 09:50:40 nisimura Exp $ "); +__KERNEL_RCSID(0, "$NetBSD: tc_maxine.c,v 1.3 1999/12/01 08:41:42 nisimura Exp $ "); #include #include @@ -41,32 +41,31 @@ __KERNEL_RCSID(0, "$NetBSD: tc_maxine.c,v 1.2 1999/11/15 09:50:40 nisimura Exp $ #include /* - * The builtin TURBOchannel devices on the MAXINE - * is the IOCTL asic, which is mapped into TC slot 3, and the PMAG-DV - * xcfb framebuffer, which is built into the baseboard. + * MAXINE has 4 TC option slot address space starting at 0x1000.0000. + * TC slot size is 32MB. Two option slots are available. Slot#2 is + * not available for option cards. IOASIC, which governs various + * baseboard devices like RTC, DMA assisted ASC SCSI, LANCE Ether, + * forms a system base. MAXINE IOASIC also controls ACCESS.bus + * keyboard/mouse, floppy disk and ISDN. IOASIC is designed as a TC + * device and sits in slot #3 space. */ -const struct tc_builtin tc_xine_builtins[] = { - { "IOCTL ", 3, 0x0, TC_C(3), /*TC_C(3)*/ }, - { "PMAG-DV ", 2, 0x0, TC_C(2), /*TC_C(4)*/ } -}; - -/* MAXINE slot addreseses */ static struct tc_slotdesc tc_xine_slots [4] = { { TC_KV(XINE_PHYS_TC_0_START), TC_C(0) }, /* 0 - tc option slot 0 */ { TC_KV(XINE_PHYS_TC_1_START), TC_C(1) }, /* 1 - tc option slot 1 */ - /*{ TC_KV(-1), TC_C(-1) },*/ /* physical space for ``slot 2'' is reserved */ - { TC_KV(XINE_PHYS_CFB_START), TC_C(2) }, /* 2 - fb on b'board */ - { TC_KV(XINE_PHYS_TC_3_START), TC_C(3) } /* 3 - IOasic on b'board */ + { TC_KV(XINE_PHYS_CFB_START), TC_C(2) }, /* 2 - fb on b'board */ + { TC_KV(XINE_PHYS_TC_3_START), TC_C(3) }, /* 3 - IOASIC on b'board */ }; -int tc_xine_nslots = sizeof(tc_xine_slots) / sizeof(tc_xine_slots[0]); +const struct tc_builtin tc_xine_builtins[] = { + { "IOCTL ", 3, 0x0, TC_C(3), }, + { "PMAG-DV ", 2, 0x0, TC_C(2), }, /* pretend as a TC device */ +}; struct tcbus_attach_args xine_tc_desc = { - NULL, - 0, - TC_SPEED_12_5_MHZ, /* TC bus speed */ + NULL, 0, + TC_SPEED_12_5_MHZ, XINE_TC_NSLOTS, tc_xine_slots, 2, tc_xine_builtins, - NULL, + NULL, NULL, NULL, };