1 /* SPDX-License-Identifier: GPL-2.0 */ 2 3 #ifndef _ASM_SN_KLDIR_H 4 #define _ASM_SN_KLDIR_H 5 6 #define KLDIR_MAGIC 0x434d5f53505f5357 7 8 #define KLDIR_OFF_MAGIC 0x00 9 #define KLDIR_OFF_OFFSET 0x08 10 #define KLDIR_OFF_POINTER 0x10 11 #define KLDIR_OFF_SIZE 0x18 12 #define KLDIR_OFF_COUNT 0x20 13 #define KLDIR_OFF_STRIDE 0x28 14 15 #define KLDIR_ENT_SIZE 0x40 16 #define KLDIR_MAX_ENTRIES (0x400 / 0x40) 17 18 #ifndef __ASSEMBLY__ 19 typedef struct kldir_ent_s { 20 u64 magic; /* Indicates validity of entry */ 21 off_t offset; /* Offset from start of node space */ 22 unsigned long pointer; /* Pointer to area in some cases */ 23 size_t size; /* Size in bytes */ 24 u64 count; /* Repeat count if array, 1 if not */ 25 size_t stride; /* Stride if array, 0 if not */ 26 char rsvd[16]; /* Pad entry to 0x40 bytes */ 27 /* NOTE: These 16 bytes are used in the Partition KLDIR 28 entry to store partition info. Refer to klpart.h for this. */ 29 } kldir_ent_t; 30 #endif /* !__ASSEMBLY__ */ 31 32 #ifdef CONFIG_SGI_IP27 33 #include <asm/sn/sn0/kldir.h> 34 #endif 35 36 #endif /* _ASM_SN_KLDIR_H */ 37