Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
[linux-2.6] / 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         __be16  signature;      /* expected to be MAC_PARTITION_MAGIC */
12         __be16  res1;
13         __be32  map_count;      /* # blocks in partition map */
14         __be32  start_block;    /* absolute starting block # of partition */
15         __be32  block_count;    /* number of blocks in partition */
16         char    name[32];       /* partition name */
17         char    type[32];       /* string type description */
18         __be32  data_start;     /* rel block # of first data block */
19         __be32  data_count;     /* number of data blocks */
20         __be32  status;         /* partition status bits */
21         __be32  boot_start;
22         __be32  boot_size;
23         __be32  boot_load;
24         __be32  boot_load2;
25         __be32  boot_entry;
26         __be32  boot_entry2;
27         __be32  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         __be16  signature;      /* expected to be MAC_DRIVER_MAGIC */
39         __be16  block_size;
40         __be32  block_count;
41     /* ... more stuff */
42 };
43
44 int mac_partition(struct parsed_partitions *state, struct block_device *bdev);