blob: f2ec43bfeec139b59b8a2dd0ecef47a7e86dc488 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
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
Gideon Israel Dsouzae3ebf0d2014-02-17 21:17:16 +053014#include <linux/compiler.h>
15
Linus Torvalds1da177e2005-04-16 15:20:36 -070016struct 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
24struct 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 */
Gideon Israel Dsouzae3ebf0d2014-02-17 21:17:16 +053034} __packed;
Linus Torvalds1da177e2005-04-16 15:20:36 -070035
Tejun Heo1493bf22010-05-15 20:09:30 +020036int atari_partition(struct parsed_partitions *state);