include/uapi/linux/zorro.h

Source file repositories/reference/linux-study-clean/include/uapi/linux/zorro.h

File Facts

System
Linux kernel
Corpus path
include/uapi/linux/zorro.h
Extension
.h
Size
3266 bytes
Lines
115
Domain
Core OS
Bucket
Core Kernel Interface
Inferred role
Core OS: implementation source
Status
source implementation candidate

Why This File Exists

Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.

Dependency Surface

Detected Declarations

Annotated Snippet

struct Node {
	__be32 ln_Succ;		/* Pointer to next (successor) */
	__be32 ln_Pred;		/* Pointer to previous (predecessor) */
	__u8   ln_Type;
	__s8   ln_Pri;		/* Priority, for sorting */
	__be32 ln_Name;		/* ID string, null terminated */
} __packed;

struct ExpansionRom {
	/* -First 16 bytes of the expansion ROM */
	__u8   er_Type;		/* Board type, size and flags */
	__u8   er_Product;	/* Product number, assigned by manufacturer */
	__u8   er_Flags;		/* Flags */
	__u8   er_Reserved03;	/* Must be zero ($ff inverted) */
	__be16 er_Manufacturer;	/* Unique ID, ASSIGNED BY COMMODORE-AMIGA! */
	__be32 er_SerialNumber;	/* Available for use by manufacturer */
	__be16 er_InitDiagVec;	/* Offset to optional "DiagArea" structure */
	__u8   er_Reserved0c;
	__u8   er_Reserved0d;
	__u8   er_Reserved0e;
	__u8   er_Reserved0f;
} __packed;

/* er_Type board type bits */
#define ERT_TYPEMASK	0xc0
#define ERT_ZORROII	0xc0
#define ERT_ZORROIII	0x80

/* other bits defined in er_Type */
#define ERTB_MEMLIST	5		/* Link RAM into free memory list */
#define ERTF_MEMLIST	(1<<5)

struct ConfigDev {
	struct Node	cd_Node;
	__u8		cd_Flags;	/* (read/write) */
	__u8		cd_Pad;		/* reserved */
	struct ExpansionRom cd_Rom;	/* copy of board's expansion ROM */
	__be32		cd_BoardAddr;	/* where in memory the board was placed */
	__be32		cd_BoardSize;	/* size of board in bytes */
	__be16		cd_SlotAddr;	/* which slot number (PRIVATE) */
	__be16		cd_SlotSize;	/* number of slots (PRIVATE) */
	__be32		cd_Driver;	/* pointer to node of driver */
	__be32		cd_NextCD;	/* linked list of drivers to config */
	__be32		cd_Unused[4];	/* for whatever the driver wants */
} __packed;

#define ZORRO_NUM_AUTO		16

#endif /* _UAPI_LINUX_ZORRO_H */

Annotation

Implementation Notes