mirror of
				https://source.denx.de/u-boot/u-boot.git
				synced 2025-11-03 18:01:41 +01:00 
			
		
		
		
	Add a code for creating and writing MBR partition layout. The code generates similar layout of EBRs (Exteneded Block Records) and logical volumes as Linux's fdisk utility. Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
		
			
				
	
	
		
			38 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/* SPDX-License-Identifier: GPL-2.0+ */
 | 
						|
/*
 | 
						|
 * (C) Copyright 2000
 | 
						|
 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
 | 
						|
 */
 | 
						|
 | 
						|
#ifndef _DISK_PART_DOS_H
 | 
						|
#define _DISK_PART_DOS_H
 | 
						|
 | 
						|
#define DOS_PART_DISKSIG_OFFSET	0x1b8
 | 
						|
#define DOS_PART_TBL_OFFSET	0x1be
 | 
						|
#define DOS_PART_MAGIC_OFFSET	0x1fe
 | 
						|
#define DOS_PBR_FSTYPE_OFFSET	0x36
 | 
						|
#define DOS_PBR32_FSTYPE_OFFSET	0x52
 | 
						|
#define DOS_PBR_MEDIA_TYPE_OFFSET	0x15
 | 
						|
#define DOS_MBR	0
 | 
						|
#define DOS_PBR	1
 | 
						|
#define DOS_PART_TYPE_EXTENDED		0x05
 | 
						|
#define DOS_PART_TYPE_EXTENDED_LBA	0x0F
 | 
						|
#define DOS_PART_TYPE_EXTENDED_LINUX	0x85
 | 
						|
 | 
						|
#define DOS_PART_DEFAULT_GAP		2048
 | 
						|
 | 
						|
typedef struct dos_partition {
 | 
						|
	unsigned char boot_ind;		/* 0x80 - active			*/
 | 
						|
	unsigned char head;		/* starting head			*/
 | 
						|
	unsigned char sector;		/* starting sector			*/
 | 
						|
	unsigned char cyl;		/* starting cylinder			*/
 | 
						|
	unsigned char sys_ind;		/* What partition type			*/
 | 
						|
	unsigned char end_head;		/* end head				*/
 | 
						|
	unsigned char end_sector;	/* end sector				*/
 | 
						|
	unsigned char end_cyl;		/* end cylinder				*/
 | 
						|
	unsigned char start4[4];	/* starting sector counting from 0	*/
 | 
						|
	unsigned char size4[4];		/* nr of sectors in partition		*/
 | 
						|
} dos_partition_t;
 | 
						|
 | 
						|
#endif	/* _DISK_PART_DOS_H */
 |