xref: /netbsd/sys/dev/podulebus/podulebus.h (revision bf9ec67e)
1 /* $NetBSD: podulebus.h,v 1.6 2002/05/22 22:43:14 bjh21 Exp $ */
2 
3 /*
4  * Copyright (c) 1995 Mark Brinicombe.
5  * Copyright (c) 1995 Brini.
6  * All rights reserved.
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  * 1. Redistributions of source code must retain the above copyright
12  *    notice, this list of conditions and the following disclaimer.
13  * 2. Redistributions in binary form must reproduce the above copyright
14  *    notice, this list of conditions and the following disclaimer in the
15  *    documentation and/or other materials provided with the distribution.
16  * 3. All advertising materials mentioning features or use of this software
17  *    must display the following acknowledgement:
18  *	This product includes software developed by Brini.
19  * 4. The name of the company nor the name of the author may be used to
20  *    endorse or promote products derived from this software without specific
21  *    prior written permission.
22  *
23  * THIS SOFTWARE IS PROVIDED BY BRINI ``AS IS'' AND ANY EXPRESS OR IMPLIED
24  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
25  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
26  * IN NO EVENT SHALL BRINI OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
27  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
28  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
29  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33  * SUCH DAMAGE.
34  *
35  * RiscBSD kernel project
36  *
37  * podulebus.h
38  *
39  * Podule bus header file
40  *
41  * Created      : 26/04/95
42  */
43 
44 #ifndef _DEV_PODULEBUS_PODULEBUS_H_
45 #define _DEV_PODULEBUS_PODULEBUS_H_
46 
47 /* Define the structures used to describe the "known" podules */
48 
49 struct podule_description {
50 	int product_id;
51 	char *description;
52 };
53 
54 struct manufacturer_description {
55 	int manufacturer_id;
56 	char *description;
57 };
58 
59 #include <machine/podulebus_machdep.h>
60 
61 extern void podulebus_readcmos(struct podulebus_attach_args *, u_int8_t *);
62 
63 /* Podule loader functions. */
64 extern int podulebus_initloader(struct podulebus_attach_args *);
65 extern int podloader_readbyte(struct podulebus_attach_args *, u_int);
66 extern void podloader_writebyte(struct podulebus_attach_args *, u_int, int);
67 void podloader_reset(struct podulebus_attach_args *);
68 int podloader_callloader(struct podulebus_attach_args *, u_int, u_int);
69 
70 #endif
71