]> git.kernelconcepts.de Git - karo-tx-uboot.git/commitdiff
dfu:core: Find DFU alt setting number by passing its name
authorLukasz Majewski <l.majewski@samsung.com>
Tue, 8 Oct 2013 12:30:38 +0000 (14:30 +0200)
committerMarek Vasut <marex@denx.de>
Sun, 20 Oct 2013 21:42:40 +0000 (23:42 +0200)
New function - dfu_get_alt() - has been added to dfu core. If present, it
returns alt setting's number corresponding to passed name.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
drivers/dfu/dfu.c
include/dfu.h

index f3287359db916f9424d7dde518510fcdf5f1661e..4ec330ce5ba0032f3731bb2e7066a271a0eb64df 100644 (file)
@@ -440,3 +440,15 @@ struct dfu_entity *dfu_get_entity(int alt)
 
        return NULL;
 }
 
        return NULL;
 }
+
+int dfu_get_alt(char *name)
+{
+       struct dfu_entity *dfu;
+
+       list_for_each_entry(dfu, &dfu_list, list) {
+               if (!strncmp(dfu->name, name, strlen(dfu->name)))
+                       return dfu->alt;
+       }
+
+       return -ENODEV;
+}
index b2ecf1bebea99178e70466a23c7d64e13096d568..b14425503d6914549f6722170e06b99458099255 100644 (file)
@@ -126,6 +126,7 @@ const char *dfu_get_layout(enum dfu_layout l);
 struct dfu_entity *dfu_get_entity(int alt);
 char *dfu_extract_token(char** e, int *n);
 void dfu_trigger_reset(void);
 struct dfu_entity *dfu_get_entity(int alt);
 char *dfu_extract_token(char** e, int *n);
 void dfu_trigger_reset(void);
+int dfu_get_alt(char *name);
 bool dfu_reset(void);
 int dfu_init_env_entities(char *interface, int dev);
 
 bool dfu_reset(void);
 int dfu_init_env_entities(char *interface, int dev);