From: Stephen Warren Date: Fri, 22 Apr 2016 19:34:16 +0000 (-0600) Subject: dfu: ram: fix number base of RAM entity parameters X-Git-Tag: v2016.05-rc3~27^2 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=3517de6d26de7baeddb2c9e9bf145456c35885e1;hp=e1b0f6fe3d0a0317486fb879e83dc1440cac3029;p=oweals%2Fu-boot.git dfu: ram: fix number base of RAM entity parameters U-Boot typically interprets unprefixed numbers as base 16, and DFU RAM entity parsing has historically done so. Reverse the change to default to base 10, so that values in previously working command-lines aren't mis-parsed, causing RAM corruption, crashes, hangs, etc. Fixes: 6aeb877afef0 ("drivers: dfu: ram: fix a crash with dfu ram with invalid dfu_alt_info env") Cc: Mugunthan V N Cc: Tom Rini Signed-off-by: Stephen Warren Reviewed-by: Mugunthan V N Tested-by: Mugunthan V N [Test HW: AM335x BBB] --- diff --git a/drivers/dfu/dfu_ram.c b/drivers/dfu/dfu_ram.c index 1391a0d52b..c1b00217c9 100644 --- a/drivers/dfu/dfu_ram.c +++ b/drivers/dfu/dfu_ram.c @@ -72,8 +72,8 @@ int dfu_fill_entity_ram(struct dfu_entity *dfu, char *devstr, char *s) } dfu->layout = DFU_RAM_ADDR; - dfu->data.ram.start = (void *)simple_strtoul(argv[1], NULL, 0); - dfu->data.ram.size = simple_strtoul(argv[2], NULL, 0); + dfu->data.ram.start = (void *)simple_strtoul(argv[1], NULL, 16); + dfu->data.ram.size = simple_strtoul(argv[2], NULL, 16); dfu->write_medium = dfu_write_medium_ram; dfu->get_medium_size = dfu_get_medium_size_ram;