• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * This header was generated from the Linux kernel headers by update_headers.py,
3  * to provide necessary information from kernel to userspace, such as constants,
4  * structures, and macros, and thus, contains no copyrightable information.
5  */
6 #ifndef _UAPI_LINUX_ZORRO_H
7 #define _UAPI_LINUX_ZORRO_H
8 #include <linux/types.h>
9 
10 #define ZORRO_MANUF(id)		((id) >> 16)
11 #define ZORRO_PROD(id)		(((id) >> 8) & 0xff)
12 #define ZORRO_EPC(id)		((id) & 0xff)
13 #define ZORRO_ID(manuf, prod, epc) \
14 	((ZORRO_MANUF_##manuf << 16) | ((prod) << 8) | (epc))
15 typedef __u32 zorro_id;
16 #include <linux/zorro_ids.h>
17 
18 #define GVP_PRODMASK		(0xf8)
19 #define GVP_SCSICLKMASK		(0x01)
20 enum GVP_flags {
21 	GVP_IO			= 0x01,
22 	GVP_ACCEL		= 0x02,
23 	GVP_SCSI		= 0x04,
24 	GVP_24BITDMA		= 0x08,
25 	GVP_25BITDMA		= 0x10,
26 	GVP_NOBANK		= 0x20,
27 	GVP_14MHZ		= 0x40,
28 };
29 struct Node {
30 	__be32 ln_Succ;
31 	__be32 ln_Pred;
32 	__u8   ln_Type;
33 	__s8   ln_Pri;
34 	__be32 ln_Name;
35 } __packed;
36 struct ExpansionRom {
37 
38 	__u8   er_Type;
39 	__u8   er_Product;
40 	__u8   er_Flags;
41 	__u8   er_Reserved03;
42 	__be16 er_Manufacturer;
43 	__be32 er_SerialNumber;
44 	__be16 er_InitDiagVec;
45 	__u8   er_Reserved0c;
46 	__u8   er_Reserved0d;
47 	__u8   er_Reserved0e;
48 	__u8   er_Reserved0f;
49 } __packed;
50 #define ERT_TYPEMASK	0xc0
51 #define ERT_ZORROII	0xc0
52 #define ERT_ZORROIII	0x80
53 #define ERTB_MEMLIST	5
54 #define ERTF_MEMLIST	(1<<5)
55 struct ConfigDev {
56 	struct Node	cd_Node;
57 	__u8		cd_Flags;
58 	__u8		cd_Pad;
59 	struct ExpansionRom cd_Rom;
60 	__be32		cd_BoardAddr;
61 	__be32		cd_BoardSize;
62 	__be16		cd_SlotAddr;
63 	__be16		cd_SlotSize;
64 	__be32		cd_Driver;
65 	__be32		cd_NextCD;
66 	__be32		cd_Unused[4];
67 } __packed;
68 #define ZORRO_NUM_AUTO		16
69 #endif
70