dfu: modify an argument type for an address

The range of an addressable pointer can go beyond 'integer'.
So change the argument type to a void pointer.

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
AKASHI Takahiro 2020-10-29 13:47:42 +09:00 committed by Heinrich Schuchardt
parent 045fd8b13d
commit 1c2d1293f6
3 changed files with 7 additions and 6 deletions

View file

@ -324,7 +324,8 @@ got_update_file:
} }
} else if (fit_image_check_type(fit, noffset, } else if (fit_image_check_type(fit, noffset,
IH_TYPE_FIRMWARE)) { IH_TYPE_FIRMWARE)) {
ret = dfu_write_by_name(fit_image_name, update_addr, ret = dfu_write_by_name(fit_image_name,
(void *)update_addr,
update_size, interface, update_size, interface,
devstring); devstring);
if (ret) if (ret)

View file

@ -23,14 +23,14 @@
* *
* Return: 0 - on success, error code - otherwise * Return: 0 - on success, error code - otherwise
*/ */
int dfu_write_by_name(char *dfu_entity_name, unsigned int addr, int dfu_write_by_name(char *dfu_entity_name, void *addr,
unsigned int len, char *interface, char *devstring) unsigned int len, char *interface, char *devstring)
{ {
char *s, *sb; char *s, *sb;
int alt_setting_num, ret; int alt_setting_num, ret;
struct dfu_entity *dfu; struct dfu_entity *dfu;
debug("%s: name: %s addr: 0x%x len: %d device: %s:%s\n", __func__, debug("%s: name: %s addr: 0x%p len: %d device: %s:%s\n", __func__,
dfu_entity_name, addr, len, interface, devstring); dfu_entity_name, addr, len, interface, devstring);
ret = dfu_init_env_entities(interface, devstring); ret = dfu_init_env_entities(interface, devstring);
@ -69,7 +69,7 @@ int dfu_write_by_name(char *dfu_entity_name, unsigned int addr,
goto done; goto done;
} }
ret = dfu_write_from_mem_addr(dfu, (void *)(uintptr_t)addr, len); ret = dfu_write_from_mem_addr(dfu, (void *)addr, len);
done: done:
dfu_free_entities(); dfu_free_entities();

View file

@ -507,10 +507,10 @@ static inline int dfu_fill_entity_virt(struct dfu_entity *dfu, char *devstr,
* Return: 0 - on success, error code - otherwise * Return: 0 - on success, error code - otherwise
*/ */
#if CONFIG_IS_ENABLED(DFU_WRITE_ALT) #if CONFIG_IS_ENABLED(DFU_WRITE_ALT)
int dfu_write_by_name(char *dfu_entity_name, unsigned int addr, int dfu_write_by_name(char *dfu_entity_name, void *addr,
unsigned int len, char *interface, char *devstring); unsigned int len, char *interface, char *devstring);
#else #else
static inline int dfu_write_by_name(char *dfu_entity_name, unsigned int addr, static inline int dfu_write_by_name(char *dfu_entity_name, void *addr,
unsigned int len, char *interface, unsigned int len, char *interface,
char *devstring) char *devstring)
{ {