1 /* 2 * This file is auto-generated. Modifications will be lost. 3 * 4 * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/ 5 * for more information. 6 */ 7 #ifndef _UAPI_LINUX_ZORRO_H 8 #define _UAPI_LINUX_ZORRO_H 9 #include <linux/types.h> 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) ((ZORRO_MANUF_ ##manuf << 16) | ((prod) << 8) | (epc)) 14 typedef __u32 zorro_id; 15 #include <linux/zorro_ids.h> 16 #define GVP_PRODMASK (0xf8) 17 #define GVP_SCSICLKMASK (0x01) 18 enum GVP_flags { 19 GVP_IO = 0x01, 20 GVP_ACCEL = 0x02, 21 GVP_SCSI = 0x04, 22 GVP_24BITDMA = 0x08, 23 GVP_25BITDMA = 0x10, 24 GVP_NOBANK = 0x20, 25 GVP_14MHZ = 0x40, 26 }; 27 struct Node { 28 __be32 ln_Succ; 29 __be32 ln_Pred; 30 __u8 ln_Type; 31 __s8 ln_Pri; 32 __be32 ln_Name; 33 } __attribute__((__packed__)); 34 struct ExpansionRom { 35 __u8 er_Type; 36 __u8 er_Product; 37 __u8 er_Flags; 38 __u8 er_Reserved03; 39 __be16 er_Manufacturer; 40 __be32 er_SerialNumber; 41 __be16 er_InitDiagVec; 42 __u8 er_Reserved0c; 43 __u8 er_Reserved0d; 44 __u8 er_Reserved0e; 45 __u8 er_Reserved0f; 46 } __attribute__((__packed__)); 47 #define ERT_TYPEMASK 0xc0 48 #define ERT_ZORROII 0xc0 49 #define ERT_ZORROIII 0x80 50 #define ERTB_MEMLIST 5 51 #define ERTF_MEMLIST (1 << 5) 52 struct ConfigDev { 53 struct Node cd_Node; 54 __u8 cd_Flags; 55 __u8 cd_Pad; 56 struct ExpansionRom cd_Rom; 57 __be32 cd_BoardAddr; 58 __be32 cd_BoardSize; 59 __be16 cd_SlotAddr; 60 __be16 cd_SlotSize; 61 __be32 cd_Driver; 62 __be32 cd_NextCD; 63 __be32 cd_Unused[4]; 64 } __attribute__((__packed__)); 65 #define ZORRO_NUM_AUTO 16 66 #endif 67