xref: /linux/block/partitions/atari.h (revision ca55b2fef3a9373fcfc30f82fd26bc7fccbda732)
1 /*
2  *  fs/partitions/atari.h
3  *  Moved by Russell King from:
4  *
5  * linux/include/linux/atari_rootsec.h
6  * definitions for Atari Rootsector layout
7  * by Andreas Schwab (schwab@ls5.informatik.uni-dortmund.de)
8  *
9  * modified for ICD/Supra partitioning scheme restricted to at most 12
10  * partitions
11  * by Guenther Kelleter (guenther@pool.informatik.rwth-aachen.de)
12  */
13 
14 #include <linux/compiler.h>
15 
16 struct partition_info
17 {
18   u8 flg;			/* bit 0: active; bit 7: bootable */
19   char id[3];			/* "GEM", "BGM", "XGM", or other */
20   __be32 st;			/* start of partition */
21   __be32 siz;			/* length of partition */
22 };
23 
24 struct rootsector
25 {
26   char unused[0x156];		/* room for boot code */
27   struct partition_info icdpart[8];	/* info for ICD-partitions 5..12 */
28   char unused2[0xc];
29   u32 hd_siz;			/* size of disk in blocks */
30   struct partition_info part[4];
31   u32 bsl_st;			/* start of bad sector list */
32   u32 bsl_cnt;			/* length of bad sector list */
33   u16 checksum;			/* checksum for bootable disks */
34 } __packed;
35 
36 int atari_partition(struct parsed_partitions *state);
37