14c3c522bSGeert Uytterhoeven /*
24c3c522bSGeert Uytterhoeven ** asm/bootinfo-vme.h -- VME-specific boot information definitions
34c3c522bSGeert Uytterhoeven */
44c3c522bSGeert Uytterhoeven 
54c3c522bSGeert Uytterhoeven #ifndef _UAPI_ASM_M68K_BOOTINFO_VME_H
64c3c522bSGeert Uytterhoeven #define _UAPI_ASM_M68K_BOOTINFO_VME_H
74c3c522bSGeert Uytterhoeven 
84c3c522bSGeert Uytterhoeven 
9abe48101SGeert Uytterhoeven #include <linux/types.h>
10abe48101SGeert Uytterhoeven 
11abe48101SGeert Uytterhoeven 
124c3c522bSGeert Uytterhoeven     /*
134c3c522bSGeert Uytterhoeven      *  VME-specific tags
144c3c522bSGeert Uytterhoeven      */
154c3c522bSGeert Uytterhoeven 
16abe48101SGeert Uytterhoeven #define BI_VME_TYPE		0x8000	/* VME sub-architecture (__be32) */
174c3c522bSGeert Uytterhoeven #define BI_VME_BRDINFO		0x8001	/* VME board information (struct) */
184c3c522bSGeert Uytterhoeven 
194c3c522bSGeert Uytterhoeven 
204c3c522bSGeert Uytterhoeven     /*
214c3c522bSGeert Uytterhoeven      *  VME models (BI_VME_TYPE)
224c3c522bSGeert Uytterhoeven      */
234c3c522bSGeert Uytterhoeven 
244c3c522bSGeert Uytterhoeven #define VME_TYPE_TP34V		0x0034	/* Tadpole TP34V */
254c3c522bSGeert Uytterhoeven #define VME_TYPE_MVME147	0x0147	/* Motorola MVME147 */
264c3c522bSGeert Uytterhoeven #define VME_TYPE_MVME162	0x0162	/* Motorola MVME162 */
274c3c522bSGeert Uytterhoeven #define VME_TYPE_MVME166	0x0166	/* Motorola MVME166 */
284c3c522bSGeert Uytterhoeven #define VME_TYPE_MVME167	0x0167	/* Motorola MVME167 */
294c3c522bSGeert Uytterhoeven #define VME_TYPE_MVME172	0x0172	/* Motorola MVME172 */
304c3c522bSGeert Uytterhoeven #define VME_TYPE_MVME177	0x0177	/* Motorola MVME177 */
314c3c522bSGeert Uytterhoeven #define VME_TYPE_BVME4000	0x4000	/* BVM Ltd. BVME4000 */
324c3c522bSGeert Uytterhoeven #define VME_TYPE_BVME6000	0x6000	/* BVM Ltd. BVME6000 */
334c3c522bSGeert Uytterhoeven 
34cf288bd5SGeert Uytterhoeven 
35cf288bd5SGeert Uytterhoeven #ifndef __ASSEMBLY__
36cf288bd5SGeert Uytterhoeven 
37cf288bd5SGeert Uytterhoeven /*
38cf288bd5SGeert Uytterhoeven  * Board ID data structure - pointer to this retrieved from Bug by head.S
39cf288bd5SGeert Uytterhoeven  *
40cf288bd5SGeert Uytterhoeven  * BI_VME_BRDINFO is a 32 byte struct as returned by the Bug code on
414c3c522bSGeert Uytterhoeven  * Motorola VME boards.  Contains board number, Bug version, board
42cf288bd5SGeert Uytterhoeven  * configuration options, etc.
43cf288bd5SGeert Uytterhoeven  *
44cf288bd5SGeert Uytterhoeven  * Note, bytes 12 and 13 are board no in BCD (0162,0166,0167,0177,etc)
454c3c522bSGeert Uytterhoeven  */
464c3c522bSGeert Uytterhoeven 
47cf288bd5SGeert Uytterhoeven typedef struct {
48cf288bd5SGeert Uytterhoeven 	char	bdid[4];
49abe48101SGeert Uytterhoeven 	__u8	rev, mth, day, yr;
50abe48101SGeert Uytterhoeven 	__be16	size, reserved;
51abe48101SGeert Uytterhoeven 	__be16	brdno;
52cf288bd5SGeert Uytterhoeven 	char	brdsuffix[2];
53abe48101SGeert Uytterhoeven 	__be32	options;
54abe48101SGeert Uytterhoeven 	__be16	clun, dlun, ctype, dnum;
55abe48101SGeert Uytterhoeven 	__be32	option2;
56cf288bd5SGeert Uytterhoeven } t_bdid, *p_bdid;
57cf288bd5SGeert Uytterhoeven 
58cf288bd5SGeert Uytterhoeven #endif /* __ASSEMBLY__ */
59cf288bd5SGeert Uytterhoeven 
604c3c522bSGeert Uytterhoeven 
614c3c522bSGeert Uytterhoeven     /*
624c3c522bSGeert Uytterhoeven      *  Latest VME bootinfo versions
634c3c522bSGeert Uytterhoeven      */
644c3c522bSGeert Uytterhoeven 
654c3c522bSGeert Uytterhoeven #define MVME147_BOOTI_VERSION	MK_BI_VERSION(2, 0)
664c3c522bSGeert Uytterhoeven #define MVME16x_BOOTI_VERSION	MK_BI_VERSION(2, 0)
674c3c522bSGeert Uytterhoeven #define BVME6000_BOOTI_VERSION	MK_BI_VERSION(2, 0)
684c3c522bSGeert Uytterhoeven 
694c3c522bSGeert Uytterhoeven 
704c3c522bSGeert Uytterhoeven #endif /* _UAPI_ASM_M68K_BOOTINFO_VME_H */
71