^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/mac.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) #define MAC_PARTITION_MAGIC 0x504d
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) /* type field value for A/UX or other Unix partitions */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) #define APPLE_AUX_TYPE "Apple_UNIX_SVR2"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) struct mac_partition {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) __be16 signature; /* expected to be MAC_PARTITION_MAGIC */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) __be16 res1;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) __be32 map_count; /* # blocks in partition map */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) __be32 start_block; /* absolute starting block # of partition */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) __be32 block_count; /* number of blocks in partition */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) char name[32]; /* partition name */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) char type[32]; /* string type description */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) __be32 data_start; /* rel block # of first data block */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) __be32 data_count; /* number of data blocks */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) __be32 status; /* partition status bits */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) __be32 boot_start;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) __be32 boot_size;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) __be32 boot_load;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) __be32 boot_load2;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) __be32 boot_entry;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) __be32 boot_entry2;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) __be32 boot_cksum;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) char processor[16]; /* identifies ISA of boot */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) /* there is more stuff after this that we don't need */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) #define MAC_STATUS_BOOTABLE 8 /* partition is bootable */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) #define MAC_DRIVER_MAGIC 0x4552
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) /* Driver descriptor structure, in block 0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) struct mac_driver_desc {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) __be16 signature; /* expected to be MAC_DRIVER_MAGIC */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) __be16 block_size;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) __be32 block_count;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) /* ... more stuff */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)