part_dos.h 1.1 KB

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