ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2
[linux-2.6.git] / fs / partitions / mac.h
1 /*
2  *  fs/partitions/mac.h
3  */
4
5 #define MAC_PARTITION_MAGIC     0x504d
6
7 /* type field value for A/UX or other Unix partitions */
8 #define APPLE_AUX_TYPE  "Apple_UNIX_SVR2"
9
10 struct mac_partition {
11         __u16   signature;      /* expected to be MAC_PARTITION_MAGIC */
12         __u16   res1;
13         __u32   map_count;      /* # blocks in partition map */
14         __u32   start_block;    /* absolute starting block # of partition */
15         __u32   block_count;    /* number of blocks in partition */
16         char    name[32];       /* partition name */
17         char    type[32];       /* string type description */
18         __u32   data_start;     /* rel block # of first data block */
19         __u32   data_count;     /* number of data blocks */
20         __u32   status;         /* partition status bits */
21         __u32   boot_start;
22         __u32   boot_size;
23         __u32   boot_load;
24         __u32   boot_load2;
25         __u32   boot_entry;
26         __u32   boot_entry2;
27         __u32   boot_cksum;
28         char    processor[16];  /* identifies ISA of boot */
29         /* there is more stuff after this that we don't need */
30 };
31
32 #define MAC_STATUS_BOOTABLE     8       /* partition is bootable */
33
34 #define MAC_DRIVER_MAGIC        0x4552
35
36 /* Driver descriptor structure, in block 0 */
37 struct mac_driver_desc {
38         __u16   signature;      /* expected to be MAC_DRIVER_MAGIC */
39         __u16   block_size;
40         __u32   block_count;
41     /* ... more stuff */
42 };
43
44 int mac_partition(struct parsed_partitions *state, struct block_device *bdev);