1 /*        $NetBSD: p_nec_jc94.c,v 1.8 2008/05/14 13:29:27 tsutsui Exp $         */
2 
3 /*-
4  * Copyright (c) 2001 Izumi Tsutsui.  All rights reserved.
5  *
6  * Redistribution and use in source and binary forms, with or without
7  * modification, are permitted provided that the following conditions
8  * are met:
9  * 1. Redistributions of source code must retain the above copyright
10  *    notice, this list of conditions and the following disclaimer.
11  * 2. Redistributions in binary form must reproduce the above copyright
12  *    notice, this list of conditions and the following disclaimer in the
13  *    documentation and/or other materials provided with the distribution.
14  *
15  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
16  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
17  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
18  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
19  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
20  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
21  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
22  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
24  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25  */
26 
27 #include <sys/cdefs.h>
28 __KERNEL_RCSID(0, "$NetBSD: p_nec_jc94.c,v 1.8 2008/05/14 13:29:27 tsutsui Exp $");
29 
30 #include <sys/param.h>
31 
32 #include <machine/autoconf.h>
33 #include <machine/platform.h>
34 
35 #include <arc/jazz/rd94.h>
36 #include <arc/jazz/jazziovar.h>
37 
38 void p_nec_jc94_init(void);
39 
40 struct platform platform_nec_jc94 = {
41           "NEC-JC94",
42           "NEC W&S",
43           " R4400 PCI",
44           "Express 5800/230",
45           "NEC",
46           200, /* MHz */
47           c_nec_pci_mainbusdevs,
48           platform_generic_match,
49           p_nec_jc94_init,
50           c_nec_pci_cons_init,
51           jazzio_reset,
52           c_nec_jazz_set_intr,
53 };
54 
55 /*
56  * jazzio bus configuration
57  */
58 
59 struct pica_dev nec_jc94_cpu[] = {
60           {{ "timer",         -1, 0, }, (void *)RD94_SYS_IT_VALUE, },
61           {{ "dallas_rtc", -1, 0, },    (void *)RD94_SYS_CLOCK, },
62           {{ "LPT1",          0, 0, },  (void *)RD94_SYS_PAR1, },
63           {{ "I82077",        1, 0, },  (void *)RD94_SYS_FLOPPY, },
64           {{ "AD1848",        2, 0, },  (void *)RD94_SYS_SOUND,},
65           {{ "SONIC",         3, 0, },  (void *)RD94_SYS_SONIC, },
66           {{ "NCRC710",       5, 0, },  (void *)RD94_SYS_SCSI1, }, /*scsi(0)*/
67           {{ "NCRC710",       4, 0, },  (void *)RD94_SYS_SCSI0, }, /*scsi(1)*/
68           {{ "I8742",         6, 0, },  (void *)RD94_SYS_KBD, },
69           {{ "pms", 7, 0, },  (void *)RD94_SYS_KBD, }, /* XXX */
70           {{ "COM1",          8, 0, },  (void *)RD94_SYS_COM1, },
71           {{ "COM2",          9, 0, },  (void *)RD94_SYS_COM2, },
72           {{ NULL,  -1, 0, }, NULL, },
73 };
74 
75 /*
76  * critial i/o space, interrupt, and other chipset related initialization.
77  */
78 void
p_nec_jc94_init(void)79 p_nec_jc94_init(void)
80 {
81 
82           c_nec_pci_init();
83 
84           /* chipset-dependent jazzio bus configuration */
85           jazzio_devconfig = nec_jc94_cpu;
86 }
87