xref: /linux/include/uapi/linux/adfs_fs.h (revision 0898782247ae533d1f4e47a06bc5d4870931b284)
16f52b16cSGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2607ca46eSDavid Howells #ifndef _UAPI_ADFS_FS_H
3607ca46eSDavid Howells #define _UAPI_ADFS_FS_H
4607ca46eSDavid Howells 
5607ca46eSDavid Howells #include <linux/types.h>
6607ca46eSDavid Howells #include <linux/magic.h>
7607ca46eSDavid Howells 
8607ca46eSDavid Howells /*
9607ca46eSDavid Howells  * Disc Record at disc address 0xc00
10607ca46eSDavid Howells  */
11607ca46eSDavid Howells struct adfs_discrecord {
12607ca46eSDavid Howells     __u8  log2secsize;
13607ca46eSDavid Howells     __u8  secspertrack;
14607ca46eSDavid Howells     __u8  heads;
15607ca46eSDavid Howells     __u8  density;
16607ca46eSDavid Howells     __u8  idlen;
17607ca46eSDavid Howells     __u8  log2bpmb;
18607ca46eSDavid Howells     __u8  skew;
19607ca46eSDavid Howells     __u8  bootoption;
20607ca46eSDavid Howells     __u8  lowsector;
21607ca46eSDavid Howells     __u8  nzones;
22607ca46eSDavid Howells     __le16 zone_spare;
23607ca46eSDavid Howells     __le32 root;
24607ca46eSDavid Howells     __le32 disc_size;
25607ca46eSDavid Howells     __le16 disc_id;
26607ca46eSDavid Howells     __u8  disc_name[10];
27607ca46eSDavid Howells     __le32 disc_type;
28607ca46eSDavid Howells     __le32 disc_size_high;
29607ca46eSDavid Howells     __u8  log2sharesize:4;
30607ca46eSDavid Howells     __u8  unused40:4;
31607ca46eSDavid Howells     __u8  big_flag:1;
32*3ae762a0SRussell King     __u8  unused41:7;
33607ca46eSDavid Howells     __u8  nzones_high;
34*3ae762a0SRussell King     __u8  reserved43;
35607ca46eSDavid Howells     __le32 format_version;
36607ca46eSDavid Howells     __le32 root_size;
37607ca46eSDavid Howells     __u8  unused52[60 - 52];
38*3ae762a0SRussell King } __attribute__((packed, aligned(4)));
39607ca46eSDavid Howells 
40607ca46eSDavid Howells #define ADFS_DISCRECORD		(0xc00)
41607ca46eSDavid Howells #define ADFS_DR_OFFSET		(0x1c0)
42607ca46eSDavid Howells #define ADFS_DR_SIZE		 60
43607ca46eSDavid Howells #define ADFS_DR_SIZE_BITS	(ADFS_DR_SIZE << 3)
44607ca46eSDavid Howells 
45607ca46eSDavid Howells #endif /* _UAPI_ADFS_FS_H */
46