Merge https://source.denx.de/u-boot/custodians/u-boot-sunxi
[platform/kernel/u-boot.git] / disk / part_dos.h
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * (C) Copyright 2000
4  * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
5  */
6
7 #ifndef _DISK_PART_DOS_H
8 #define _DISK_PART_DOS_H
9
10 #define DOS_PART_DISKSIG_OFFSET 0x1b8
11 #define DOS_PART_TBL_OFFSET     0x1be
12 #define DOS_PART_MAGIC_OFFSET   0x1fe
13 #define DOS_PBR_FSTYPE_OFFSET   0x36
14 #define DOS_PBR32_FSTYPE_OFFSET 0x52
15 #define DOS_PBR_MEDIA_TYPE_OFFSET       0x15
16 #define DOS_MBR 0
17 #define DOS_PBR 1
18 #define DOS_PART_TYPE_EXTENDED          0x05
19 #define DOS_PART_TYPE_EXTENDED_LBA      0x0F
20 #define DOS_PART_TYPE_EXTENDED_LINUX    0x85
21
22 #define DOS_PART_DEFAULT_GAP            2048
23
24 typedef struct dos_partition {
25         unsigned char boot_ind;         /* 0x80 - active                        */
26         unsigned char head;             /* starting head                        */
27         unsigned char sector;           /* starting sector                      */
28         unsigned char cyl;              /* starting cylinder                    */
29         unsigned char sys_ind;          /* What partition type                  */
30         unsigned char end_head;         /* end head                             */
31         unsigned char end_sector;       /* end sector                           */
32         unsigned char end_cyl;          /* end cylinder                         */
33         unsigned char start4[4];        /* starting sector counting from 0      */
34         unsigned char size4[4];         /* nr of sectors in partition           */
35 } dos_partition_t;
36
37 #endif  /* _DISK_PART_DOS_H */