From patchwork Wed Oct 10 18:13:59 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [U-Boot,V3,1/4] part: add partition number to disk_partition_t Date: Wed, 10 Oct 2012 08:13:59 -0000 From: Stephen Warren X-Patchwork-Id: 190806 Message-Id: <1349892842-11994-1-git-send-email-swarren@wwwdotorg.org> To: Tom Rini Cc: u-boot@lists.denx.de, Stephen Warren , Rob Herring From: Stephen Warren The FAT filesystem code knows which partition ID it is operating on. Currently, this is passed to fat_register_device() as a parameter. In order to convert FAT to the more standardized fat_set_blk_dev(), the information needs to come from somewhere else, and the partition definition structure is the logical place. Signed-off-by: Stephen Warren --- v3: Set info->part in get_device_and_partition() when returning "whole disk" partition. v2: No change. --- disk/part.c | 2 ++ include/part.h | 1 + 2 files changed, 3 insertions(+), 0 deletions(-) diff --git a/disk/part.c b/disk/part.c index 8ba3cde..6d8135d 100644 --- a/disk/part.c +++ b/disk/part.c @@ -391,6 +391,7 @@ int get_partition_info(block_dev_desc_t *dev_desc, int part defined(CONFIG_MMC) || \ defined(CONFIG_SYSTEMACE) + info->part = part; #ifdef CONFIG_PARTITION_UUIDS /* The common case is no UUID support */ info->uuid[0] = 0; @@ -557,6 +558,7 @@ int get_device_and_partition(const char *ifname, const char *dev_part_str, goto cleanup; } + info->part = 0; info->start = 0; info->size = (*dev_desc)->lba; info->blksz = (*dev_desc)->blksz; diff --git a/include/part.h b/include/part.h index 27ea283..ebdebd8 100644 --- a/include/part.h +++ b/include/part.h @@ -88,6 +88,7 @@ typedef struct block_dev_desc { #define DEV_TYPE_OPDISK 0x07 /* optical disk */ typedef struct disk_partition { + int part; /* Partition number */ ulong start; /* # of first block in partition */ ulong size; /* number of blocks in partition */ ulong blksz; /* block size in bytes */