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