[U-Boot] [PATCH V3 3/8] disk: introduce get_device()

Rob Herring robherring2 at gmail.com
Wed Sep 19 03:25:31 CEST 2012


On 09/18/2012 08:21 PM, Rob Herring wrote:
> On 09/18/2012 05:37 PM, Stephen Warren wrote:
>> From: Stephen Warren <swarren at nvidia.com>
>>
>> This patch introduces function get_device(). This looks up a
>> block_dev_desc_t from an interface name (e.g. mmc) and device number
>> (e.g. 0). This function is essentially the non-partition-specific
>> prefix of get_device_and_partition().
> 
> Then shouldn't get_device_and_partition just call get_device. Perhaps
> create get_partition() and then get_device_and_partition is just a wrapper.
> 

I should read all the way through the series before replying...

Anyway, I would squash it all unless you want to have restructuring with
current functionality and then enhancements.

Rob

> Rob
> 
>>
>> Signed-off-by: Stephen Warren <swarren at nvidia.com>
>> ---
>> v3: New patch.
>> ---
>>  disk/part.c    |   22 ++++++++++++++++++++++
>>  include/part.h |    5 +++++
>>  2 files changed, 27 insertions(+), 0 deletions(-)
>>
>> diff --git a/disk/part.c b/disk/part.c
>> index 277a243..9920d48 100644
>> --- a/disk/part.c
>> +++ b/disk/part.c
>> @@ -435,6 +435,28 @@ void print_part (block_dev_desc_t * dev_desc)
>>  
>>  #endif
>>  
>> +int get_device(const char *ifname, const char *dev_str,
>> +	       block_dev_desc_t **dev_desc)
>> +{
>> +	char *ep;
>> +	int dev;
>> +
>> +	dev = simple_strtoul(dev_str, &ep, 16);
>> +	if (*ep) {
>> +		printf("** Bad device specification %s %s **\n",
>> +		       ifname, dev_str);
>> +		return -1;
>> +	}
>> +
>> +	*dev_desc = get_dev(ifname, dev);
>> +	if (!(*dev_desc) || ((*dev_desc)->type == DEV_TYPE_UNKNOWN)) {
>> +		printf("** Bad device %s %s **\n", ifname, dev_str);
>> +		return -1;
>> +	}
>> +
>> +	return dev;
>> +}
>> +
>>  #define MAX_SEARCH_PARTITIONS 16
>>  int get_device_and_partition(const char *ifname, const char *dev_str,
>>  			     block_dev_desc_t **dev_desc,
>> diff --git a/include/part.h b/include/part.h
>> index a6d06f3..144df4e 100644
>> --- a/include/part.h
>> +++ b/include/part.h
>> @@ -112,6 +112,8 @@ int get_partition_info (block_dev_desc_t * dev_desc, int part, disk_partition_t
>>  void print_part (block_dev_desc_t *dev_desc);
>>  void  init_part (block_dev_desc_t *dev_desc);
>>  void dev_print(block_dev_desc_t *dev_desc);
>> +int get_device(const char *ifname, const char *dev_str,
>> +	       block_dev_desc_t **dev_desc);
>>  int get_device_and_partition(const char *ifname, const char *dev_str,
>>  			     block_dev_desc_t **dev_desc,
>>  			     disk_partition_t *info);
>> @@ -131,6 +133,9 @@ static inline int get_partition_info (block_dev_desc_t * dev_desc, int part,
>>  static inline void print_part (block_dev_desc_t *dev_desc) {}
>>  static inline void  init_part (block_dev_desc_t *dev_desc) {}
>>  static inline void dev_print(block_dev_desc_t *dev_desc) {}
>> +static inline int get_device(const char *ifname, const char *dev_str,
>> +	       block_dev_desc_t **dev_desc)
>> +{ return -1; }
>>  static inline int get_device_and_partition(const char *ifname,
>>  					   const char *dev_str,
>>  					   block_dev_desc_t **dev_desc,
>>
> 



More information about the U-Boot mailing list