]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
global: Convert simple_strtoul() with hex to hextoul()
authorSimon Glass <sjg@chromium.org>
Sat, 24 Jul 2021 15:03:29 +0000 (09:03 -0600)
committerTom Rini <trini@konsulko.com>
Mon, 2 Aug 2021 17:32:14 +0000 (13:32 -0400)
It is a pain to have to specify the value 16 in each call. Add a new
hextoul() function and update the code to use it.

Add a proper comment to simple_strtoul() while we are here.

Signed-off-by: Simon Glass <sjg@chromium.org>
183 files changed:
arch/arm/cpu/armv8/fsl-layerscape/fdt.c
arch/arm/lib/semihosting.c
arch/arm/mach-imx/cmd_dek.c
arch/arm/mach-imx/cmd_mfgprot.c
arch/arm/mach-imx/cmd_nandbcb.c
arch/arm/mach-imx/hab.c
arch/arm/mach-imx/imx8/ahab.c
arch/arm/mach-imx/imx8/snvs_security_sc.c
arch/arm/mach-imx/imx_bootaux.c
arch/arm/mach-imx/mx6/mp.c
arch/arm/mach-keystone/cmd_mon.c
arch/arm/mach-snapdragon/misc.c
arch/arm/mach-socfpga/misc.c
arch/arm/mach-socfpga/vab.c
arch/arm/mach-stm32mp/cmd_stm32key.c
arch/arm/mach-stm32mp/cmd_stm32prog/cmd_stm32prog.c
arch/arm/mach-uniphier/board_late_init.c
arch/arm/mach-zynqmp/mp.c
arch/mips/mach-octeon/bootoctlinux.c
arch/nds32/lib/bootm.c
arch/nios2/lib/bootm.c
arch/powerpc/cpu/mpc83xx/ecc.c
arch/powerpc/cpu/mpc85xx/mp.c
arch/sh/lib/zimageboot.c
arch/x86/lib/zimage.c
board/BuS/eb_cpu5282/eb_cpu5282.c
board/Marvell/octeontx2/board.c
board/amlogic/beelink-s922x/beelink-s922x.c
board/amlogic/odroid-n2/odroid-n2.c
board/amlogic/vim3/vim3.c
board/bluewater/gurnard/gurnard.c
board/cavium/thunderx/atf.c
board/esd/meesc/meesc.c
board/freescale/common/cmd_esbc_validate.c
board/freescale/common/fsl_validate.c
board/freescale/common/sys_eeprom.c
board/freescale/lx2160a/eth_lx2160aqds.c
board/freescale/lx2160a/eth_lx2162aqds.c
board/freescale/p1_p2_rdb_pc/p1_p2_rdb_pc.c
board/freescale/p2041rdb/cpld.c
board/gateworks/gw_ventana/common.c
board/gateworks/gw_ventana/gw_ventana.c
board/gdsys/common/osd.c
board/gdsys/common/osd_cmd.c
board/keymile/common/common.c
board/kontron/sl28/cmds.c
board/menlo/m53menlo/m53menlo.c
board/renesas/stout/cpld.c
board/renesas/ulcb/cpld.c
board/siemens/common/factoryset.c
board/sifive/unmatched/hifive-platform-i2c-eeprom.c
board/synopsys/hsdk/env-lib.c
board/ti/am64x/evm.c
board/ti/j721e/evm.c
board/varisys/common/sys_eeprom.c
board/xilinx/common/fru.c
board/xilinx/versal/cmds.c
board/xilinx/zynq/cmds.c
board/xilinx/zynqmp/cmds.c
cmd/abootimg.c
cmd/adtimg.c
cmd/aes.c
cmd/armflash.c
cmd/avb.c
cmd/axi.c
cmd/bedbug.c
cmd/binop.c
cmd/blk_common.c
cmd/blob.c
cmd/bmp.c
cmd/boot.c
cmd/bootefi.c
cmd/booti.c
cmd/bootm.c
cmd/bootstage.c
cmd/bootz.c
cmd/broadcom/nitro_image_load.c
cmd/cbfs.c
cmd/cramfs.c
cmd/cros_ec.c
cmd/demo.c
cmd/disk.c
cmd/efidebug.c
cmd/elf.c
cmd/fastboot.c
cmd/fdt.c
cmd/flash.c
cmd/fpga.c
cmd/fpgad.c
cmd/host.c
cmd/i2c.c
cmd/ini.c
cmd/io.c
cmd/iotrace.c
cmd/itest.c
cmd/jffs2.c
cmd/load.c
cmd/lzmadec.c
cmd/md5sum.c
cmd/mdio.c
cmd/mem.c
cmd/mfsl.c
cmd/mii.c
cmd/misc.c
cmd/mmc.c
cmd/mtd.c
cmd/mvebu/bubt.c
cmd/mvebu/comphy_rx_training.c
cmd/nand.c
cmd/net.c
cmd/nvedit.c
cmd/nvedit_efi.c
cmd/onenand.c
cmd/osd.c
cmd/pcap.c
cmd/pci.c
cmd/pstore.c
cmd/pxe_utils.c
cmd/qfw.c
cmd/read.c
cmd/reiser.c
cmd/remoteproc.c
cmd/rng.c
cmd/rtc.c
cmd/setexpr.c
cmd/sf.c
cmd/smccc.c
cmd/source.c
cmd/strings.c
cmd/ti/ddr3.c
cmd/tlv_eeprom.c
cmd/tpm-common.c
cmd/trace.c
cmd/tsi148.c
cmd/ubi.c
cmd/ubifs.c
cmd/universe.c
cmd/unlz4.c
cmd/unzip.c
cmd/x86/mtrr.c
cmd/ximg.c
cmd/yaffs2.c
cmd/zfs.c
cmd/zip.c
common/bedbug.c
common/bootm_os.c
common/fdt_support.c
common/hash.c
common/image-fdt.c
common/image-fit.c
common/image.c
common/kallsyms.c
common/lcd.c
common/splash.c
common/splash_source.c
common/update.c
disk/part.c
drivers/dfu/dfu_mtd.c
drivers/dfu/dfu_nand.c
drivers/dfu/dfu_ram.c
drivers/dfu/dfu_sf.c
drivers/fastboot/fb_command.c
drivers/gpio/pca953x.c
drivers/misc/ds4510.c
drivers/net/e1000_spi.c
drivers/net/fm/fdt.c
drivers/net/fsl-mc/mc.c
drivers/net/pfe_eth/pfe_cmd.c
drivers/net/phy/b53.c
drivers/net/phy/mv88e6352.c
drivers/power/power_core.c
drivers/qe/qe.c
drivers/rtc/m41t60.c
drivers/video/ati_radeon_fb.c
drivers/video/cfb_console.c
drivers/video/mx3fb.c
fs/fs.c
include/vsprintf.h
lib/net_utils.c
lib/strto.c
lib/uuid.c
lib/vsprintf.c
test/str_ut.c

index f1624ff30ae8858850c45d31cd377f7dcc525468..6eb7f9c2148f3083d28b14f20a33462e20364ba4 100644 (file)
@@ -565,28 +565,28 @@ void fdt_fixup_pfe_firmware(void *blob)
        if (!p)
                return;
 
-       pclassfw = (void *)simple_strtoul(p, NULL, 16);
+       pclassfw = (void *)hextoul(p, NULL);
        if (!pclassfw)
                return;
 
        p = env_get("class_elf_size");
        if (!p)
                return;
-       len_class = simple_strtoul(p, NULL, 16);
+       len_class = hextoul(p, NULL);
 
        /* If the environment variable is not set, then exit silently */
        p = env_get("tmu_elf_firmware");
        if (!p)
                return;
 
-       ptmufw = (void *)simple_strtoul(p, NULL, 16);
+       ptmufw = (void *)hextoul(p, NULL);
        if (!ptmufw)
                return;
 
        p = env_get("tmu_elf_size");
        if (!p)
                return;
-       len_tmu = simple_strtoul(p, NULL, 16);
+       len_tmu = hextoul(p, NULL);
 
        if (len_class == 0 || len_tmu == 0) {
                printf("PFE FW corrupted. CLASS FW size %d, TMU FW size %d\n",
@@ -605,14 +605,14 @@ void fdt_fixup_pfe_firmware(void *blob)
        if (!p)
                return;
 
-       putilfw = (void *)simple_strtoul(p, NULL, 16);
+       putilfw = (void *)hextoul(p, NULL);
        if (!putilfw)
                return;
 
        p = env_get("util_elf_size");
        if (!p)
                return;
-       len_util = simple_strtoul(p, NULL, 16);
+       len_util = hextoul(p, NULL);
 
        if (len_util) {
                printf("PFE Util PE firmware is not added to FDT.\n");
index 904fddd6c04e0dcc279b588e3c3b642a2a215bb2..9fd82459b24a4598a8afa994ecec6eb2b24294f5 100644 (file)
@@ -191,7 +191,7 @@ static int do_smhload(struct cmd_tbl *cmdtp, int flag, int argc,
                int ret;
                char end_str[64];
 
-               load_addr = simple_strtoul(argv[2], NULL, 16);
+               load_addr = hextoul(argv[2], NULL);
                if (!load_addr)
                        return -1;
 
index b10ead19426199902b486bea66f54f0fbd70bda0..40df10dd7396ccbfa6b41a2a3b61efaf0da75f27 100644 (file)
@@ -300,8 +300,8 @@ static int do_dek_blob(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc != 4)
                return CMD_RET_USAGE;
 
-       src_addr = simple_strtoul(argv[1], NULL, 16);
-       dst_addr = simple_strtoul(argv[2], NULL, 16);
+       src_addr = hextoul(argv[1], NULL);
+       dst_addr = hextoul(argv[2], NULL);
        len = simple_strtoul(argv[3], NULL, 10);
 
        return blob_encap_dek(src_addr, dst_addr, len);
index 1430f61909817fb2b2c7366fa73ca62daa44967e..29074fc2980ab96bcb263211efd868902b6abe49 100644 (file)
@@ -71,7 +71,7 @@ static int do_mfgprot(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[])
                if (argc != 4)
                        return CMD_RET_USAGE;
 
-               m_addr = simple_strtoul(argv[2], NULL, 16);
+               m_addr = hextoul(argv[2], NULL);
                m_size = simple_strtoul(argv[3], NULL, 10);
                m_ptr = map_physmem(m_addr, m_size, MAP_NOCACHE);
                if (!m_ptr)
index 7157c9e97999d8c84568bd4d9cea7b0a3f6e9b49..cd513445978740de31663daef6567f9617be54d2 100644 (file)
@@ -1083,13 +1083,13 @@ static int do_nandbcb_bcbonly(int argc, char *const argv[])
 
        mtd = cfg.mtd;
 
-       cfg.boot_stream1_address = simple_strtoul(argv[2], NULL, 16);
-       cfg.boot_stream1_size = simple_strtoul(argv[3], NULL, 16);
+       cfg.boot_stream1_address = hextoul(argv[2], NULL);
+       cfg.boot_stream1_size = hextoul(argv[3], NULL);
        cfg.boot_stream1_size = ALIGN(cfg.boot_stream1_size, mtd->writesize);
 
        if (argc > 5) {
-               cfg.boot_stream2_address = simple_strtoul(argv[4], NULL, 16);
-               cfg.boot_stream2_size = simple_strtoul(argv[5], NULL, 16);
+               cfg.boot_stream2_address = hextoul(argv[4], NULL);
+               cfg.boot_stream2_size = hextoul(argv[5], NULL);
                cfg.boot_stream2_size = ALIGN(cfg.boot_stream2_size,
                                              mtd->writesize);
        }
@@ -1450,7 +1450,7 @@ static int do_nandbcb_init(int argc, char * const argv[])
        if (nandbcb_set_boot_config(argc, argv, &cfg))
                return CMD_RET_FAILURE;
 
-       addr = simple_strtoul(argv[1], &endp, 16);
+       addr = hextoul(argv[1], &endp);
        if (*argv[1] == 0 || *endp != 0)
                return CMD_RET_FAILURE;
 
index 00bd157d0e0965384c65289093888879e181f0c9..cc39e6bf5699d314836509be177e714c9f577801 100644 (file)
@@ -609,12 +609,12 @@ static int do_authenticate_image(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 3)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[1], NULL, 16);
-       length = simple_strtoul(argv[2], NULL, 16);
+       addr = hextoul(argv[1], NULL);
+       length = hextoul(argv[2], NULL);
        if (argc == 3)
                ivt_offset = get_image_ivt_offset(addr);
        else
-               ivt_offset = simple_strtoul(argv[3], NULL, 16);
+               ivt_offset = hextoul(argv[3], NULL);
 
        rcode = imx_hab_authenticate_image(addr, length, ivt_offset);
        if (rcode == 0)
index 6392fe267a01026dafa3fdb29ece80f0378eb1f7..015267c8b2d0b3e9fe35a0d72c47d39084e361da 100644 (file)
@@ -161,7 +161,7 @@ static int do_authenticate(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 2)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[1], NULL, 16);
+       addr = hextoul(argv[1], NULL);
 
        printf("Authenticate OS container at 0x%lx\n", addr);
 
index 6f9b1c99fcd211605ca458c5069a54718fed2352..7c34ce6d5f8ca66c8b75b6e5480013463f2d5da6 100644 (file)
@@ -638,24 +638,24 @@ static int do_snvs_cfg(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc != (NB_REGISTERS + 1))
                return CMD_RET_USAGE;
 
-       conf.hp.lock = simple_strtoul(argv[++idx], NULL, 16);
-       conf.hp.secvio_ctl = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.lock = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.secvio_ctl = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.tamper_filt_cfg = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.tamper_det_cfg = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.tamper_det_cfg2 = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.tamper_filt1_cfg = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.tamper_filt2_cfg = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.act_tamper1_cfg = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.act_tamper2_cfg = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.act_tamper3_cfg = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.act_tamper4_cfg = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.act_tamper5_cfg = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.act_tamper_ctl = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.act_tamper_clk_ctl = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.act_tamper_routing_ctl1 = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.act_tamper_routing_ctl2 = simple_strtoul(argv[++idx], NULL, 16);
+       conf.hp.lock = hextoul(argv[++idx], NULL);
+       conf.hp.secvio_ctl = hextoul(argv[++idx], NULL);
+       conf.lp.lock = hextoul(argv[++idx], NULL);
+       conf.lp.secvio_ctl = hextoul(argv[++idx], NULL);
+       conf.lp.tamper_filt_cfg = hextoul(argv[++idx], NULL);
+       conf.lp.tamper_det_cfg = hextoul(argv[++idx], NULL);
+       conf.lp.tamper_det_cfg2 = hextoul(argv[++idx], NULL);
+       conf.lp.tamper_filt1_cfg = hextoul(argv[++idx], NULL);
+       conf.lp.tamper_filt2_cfg = hextoul(argv[++idx], NULL);
+       conf.lp.act_tamper1_cfg = hextoul(argv[++idx], NULL);
+       conf.lp.act_tamper2_cfg = hextoul(argv[++idx], NULL);
+       conf.lp.act_tamper3_cfg = hextoul(argv[++idx], NULL);
+       conf.lp.act_tamper4_cfg = hextoul(argv[++idx], NULL);
+       conf.lp.act_tamper5_cfg = hextoul(argv[++idx], NULL);
+       conf.lp.act_tamper_ctl = hextoul(argv[++idx], NULL);
+       conf.lp.act_tamper_clk_ctl = hextoul(argv[++idx], NULL);
+       conf.lp.act_tamper_routing_ctl1 = hextoul(argv[++idx], NULL);
+       conf.lp.act_tamper_routing_ctl2 = hextoul(argv[++idx], NULL);
 
        err = apply_snvs_config(&conf);
 
@@ -690,12 +690,12 @@ static int do_snvs_dgo_cfg(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc != (6 + 1))
                return CMD_RET_USAGE;
 
-       conf.tamper_offset_ctl = simple_strtoul(argv[++idx], NULL, 16);
-       conf.tamper_pull_ctl = simple_strtoul(argv[++idx], NULL, 16);
-       conf.tamper_ana_test_ctl = simple_strtoul(argv[++idx], NULL, 16);
-       conf.tamper_sensor_trim_ctl = simple_strtoul(argv[++idx], NULL, 16);
-       conf.tamper_misc_ctl = simple_strtoul(argv[++idx], NULL, 16);
-       conf.tamper_core_volt_mon_ctl = simple_strtoul(argv[++idx], NULL, 16);
+       conf.tamper_offset_ctl = hextoul(argv[++idx], NULL);
+       conf.tamper_pull_ctl = hextoul(argv[++idx], NULL);
+       conf.tamper_ana_test_ctl = hextoul(argv[++idx], NULL);
+       conf.tamper_sensor_trim_ctl = hextoul(argv[++idx], NULL);
+       conf.tamper_misc_ctl = hextoul(argv[++idx], NULL);
+       conf.tamper_core_volt_mon_ctl = hextoul(argv[++idx], NULL);
 
        err = apply_snvs_dgo_config(&conf);
 
@@ -727,7 +727,7 @@ static int do_tamper_pin_cfg(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_USAGE;
 
        conf.pad = simple_strtoul(argv[++idx], NULL, 10);
-       conf.mux_conf = simple_strtoul(argv[++idx], NULL, 16);
+       conf.mux_conf = hextoul(argv[++idx], NULL);
 
        err = apply_tamper_pin_list_config(&conf, 1);
 
@@ -761,8 +761,8 @@ static int do_snvs_clear_status(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc != (2 + 1))
                return CMD_RET_USAGE;
 
-       conf.lp.status = simple_strtoul(argv[++idx], NULL, 16);
-       conf.lp.tamper_det_status = simple_strtoul(argv[++idx], NULL, 16);
+       conf.lp.status = hextoul(argv[++idx], NULL);
+       conf.lp.tamper_det_status = hextoul(argv[++idx], NULL);
 
        scierr = check_write_secvio_config(SC_CONF_OFFSET_OF(lp.status),
                                           &conf.lp.status, NULL, NULL, NULL,
index 30fb45d48c2704cefabc4879e05ff44be96dad31..9ffe5ac6e34887ad95d7c3b3c31e8eeb6302e349 100644 (file)
@@ -180,7 +180,7 @@ static int do_bootaux(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_SUCCESS;
        }
 
-       addr = simple_strtoul(argv[1], NULL, 16);
+       addr = hextoul(argv[1], NULL);
 
        if (!addr)
                return CMD_RET_FAILURE;
index 2fdf070a08b4f04f2d364bb3011329ff3bdffc1f..de9ace083ce8e7d26f6de40e5f68f22de8b339bb 100644 (file)
@@ -47,7 +47,7 @@ int cpu_release(u32 nr, int argc, char *const argv[])
 {
        uint32_t boot_addr;
 
-       boot_addr = simple_strtoul(argv[0], NULL, 16);
+       boot_addr = hextoul(argv[0], NULL);
 
        switch (nr) {
        case 1:
index 049d573473498647022f2135421f2dbe2bb6d14b..e26296b6da6492e496fcbb9cf6b5c6ff3efb23b7 100644 (file)
@@ -25,7 +25,7 @@ static int do_mon_install(struct cmd_tbl *cmdtp, int flag, int argc,
 
        freq = CONFIG_SYS_HZ_CLOCK;
 
-       addr = simple_strtoul(argv[1], NULL, 16);
+       addr = hextoul(argv[1], NULL);
 
        header = (struct image_header *)addr;
 
@@ -40,7 +40,7 @@ static int do_mon_install(struct cmd_tbl *cmdtp, int flag, int argc,
               size);
 
        if (argc >=  3)
-               ecrypt_bm_addr = simple_strtoul(argv[2], NULL, 16);
+               ecrypt_bm_addr = hextoul(argv[2], NULL);
 
        rcode = mon_install(load_addr, dpsc_base, freq, ecrypt_bm_addr);
        printf("## installed monitor @ 0x%x, freq [%d], status %d\n",
@@ -76,8 +76,8 @@ int do_mon_power(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 3)
                return CMD_RET_USAGE;
 
-       core_id = simple_strtoul(argv[1], NULL, 16);
-       on = simple_strtoul(argv[2], NULL, 16);
+       core_id = hextoul(argv[1], NULL);
+       on = hextoul(argv[2], NULL);
 
        if (on)
                rcode = mon_power_on(core_id, fn);
index aaa561c2c68e9a8e3e7b0f1379a1ada49bc4a949..985625a548e78ed4916e544bc2b551503f32c5ef 100644 (file)
@@ -47,7 +47,7 @@ void msm_generate_mac_addr(u8 *mac)
        mac[0] = 0x02;
        mac[1] = 00;
        for (i = 3; i >= 0; i--) {
-               mac[i + 2] = simple_strtoul(&sn[2 * i], NULL, 16);
+               mac[i + 2] = hextoul(&sn[2 * i], NULL);
                sn[2 * i] = 0;
        }
 }
index 64a7c9d652c77895a18b436a2f235216e56a7beb..f8d3d48ee8968bd67dd6bbbf18f87a73175db84c 100644 (file)
@@ -191,7 +191,7 @@ static int do_bridge(struct cmd_tbl *cmdtp, int flag, int argc,
        argv++;
 
        if (argc == 3)
-               mask = simple_strtoul(argv[1], NULL, 16);
+               mask = hextoul(argv[1], NULL);
 
        switch (*argv[0]) {
        case 'e':       /* Enable */
index 85b3f302111bdbad9d9cb3419b21a53f04f83612..e146f2c52901671d009631f237b7d9c98d8dd25a 100644 (file)
@@ -17,8 +17,8 @@ static int do_vab(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 3)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[1], NULL, 16);
-       len = simple_strtoul(argv[2], NULL, 16);
+       addr = hextoul(argv[1], NULL);
+       len = hextoul(argv[2], NULL);
 
        if (socfpga_vendor_authentication((void *)&addr, (size_t *)&len) != 0)
                return CMD_RET_FAILURE;
index 50840b0f38b8e1f3c3bbf78fa36f91b7d3154acc..68f28922d1e7a9005feb1cf505dbbaa0bf6c0e33 100644 (file)
@@ -162,7 +162,7 @@ static int do_stm32key_read(struct cmd_tbl *cmdtp, int flag, int argc, char *con
                return CMD_RET_SUCCESS;
        }
 
-       addr = simple_strtoul(argv[1], NULL, 16);
+       addr = hextoul(argv[1], NULL);
        if (!addr)
                return CMD_RET_USAGE;
 
@@ -185,7 +185,7 @@ static int do_stm32key_fuse(struct cmd_tbl *cmdtp, int flag, int argc, char *con
                yes = true;
        }
 
-       addr = simple_strtoul(argv[argc - 1], NULL, 16);
+       addr = hextoul(argv[argc - 1], NULL);
        if (!addr)
                return CMD_RET_USAGE;
 
index 064f51b2c7f35f4e017f13e5903e858b495d3702..bf9a686e96e5e3e00746e235bd599b6799bbd54b 100644 (file)
@@ -64,12 +64,12 @@ static int do_stm32prog(struct cmd_tbl *cmdtp, int flag, int argc,
        addr = STM32_DDR_BASE;
        size = 0;
        if (argc > 3) {
-               addr = simple_strtoul(argv[3], NULL, 16);
+               addr = hextoul(argv[3], NULL);
                if (!addr)
                        return CMD_RET_FAILURE;
        }
        if (argc > 4)
-               size = simple_strtoul(argv[4], NULL, 16);
+               size = hextoul(argv[4], NULL);
 
        /* check STM32IMAGE presence */
        if (size == 0) {
index b33c4b19389b5876df0a883d842df89dd589a069..b5356ed87e70a485ec4696807b8e03941685f7ee 100644 (file)
@@ -66,7 +66,7 @@ static void uniphier_set_env_addr(const char *env, const char *offset_env)
                if (!str)
                        goto fail;
 
-               offset = simple_strtoul(str, &end, 16);
+               offset = hextoul(str, &end);
                if (*end)
                        goto fail;
        }
index 74783ae5a78aeaded990b4499aff59d312089b2b..704520e7a3c9eb797c2d76e3cca665c216157597 100644 (file)
@@ -252,7 +252,7 @@ int cpu_release(u32 nr, int argc, char *const argv[])
                        return 1;
                }
 
-               u32 boot_addr = simple_strtoul(argv[0], NULL, 16);
+               u32 boot_addr = hextoul(argv[0], NULL);
                u32 boot_addr_uniq = 0;
                if (!(boot_addr == ZYNQMP_R5_LOVEC_ADDR ||
                      boot_addr == ZYNQMP_R5_HIVEC_ADDR)) {
index c195dc28ad70497fcd800c7296681dff68672417..349da08da6d776fc6c3d1152e80afb67ac03717b 100644 (file)
@@ -281,8 +281,7 @@ int octeon_parse_bootopts(int argc, char *const argv[],
                } else if (!strncmp(argv[arg], "forceboot", 9)) {
                        boot_args->forceboot = true;
                } else if (!strncmp(argv[arg], "nodemask=", 9)) {
-                       boot_args->node_mask = simple_strtoul(argv[arg] + 9,
-                                                             NULL, 16);
+                       boot_args->node_mask = hextoul(argv[arg] + 9, NULL);
                } else if (!strncmp(argv[arg], "numcores=", 9)) {
                        memset(node_values, 0, sizeof(node_values));
                        num_values = octeon_parse_nodes(node_values,
@@ -383,7 +382,7 @@ int do_bootoctlinux(struct cmd_tbl *cmdtp, int flag, int argc,
                                                   argv[1][1] == 'x' ||
                                                   argv[1][1] == 'X' ||
                                                   argv[1][1] == '\0'))) {
-               addr = simple_strtoul(argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
                if (!addr)
                        addr = CONFIG_SYS_LOAD_ADDR;
                arg_start++;
index b3b8bc290378d4629e71dc9cead41d43803bfc78..4cb0f530ae1a2178c47e83aaa5907031be377720 100644 (file)
@@ -64,7 +64,7 @@ int do_bootm_linux(int flag, int argc, char *argv[], bootm_headers_t *images)
 
        s = env_get("machid");
        if (s) {
-               machid = simple_strtoul(s, NULL, 16);
+               machid = hextoul(s, NULL);
                printf("Using machid 0x%x from environment\n", machid);
        }
 
index 2c8f9731c747f9a2a2ff6ff7c2da9a724f52dea3..503746715155ed1aa868d57a67c3fadc43a594f7 100644 (file)
@@ -27,7 +27,7 @@ int do_bootm_linux(int flag, int argc, char *const argv[],
                of_flat_tree = images->ft_addr;
 #endif
        if (!of_flat_tree && argc > 1)
-               of_flat_tree = (char *)simple_strtoul(argv[1], NULL, 16);
+               of_flat_tree = (char *)hextoul(argv[1], NULL);
        if (of_flat_tree)
                initrd_end = (ulong)of_flat_tree;
 
index 1343dd3d3a3694bea6cd333255ac6d3e75c04fc1..68a7a780d231f2a6d101af3ba2b19f42b0d89a0e 100644 (file)
@@ -219,17 +219,17 @@ int do_ecc(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                        ddr->err_detect = val;
                        return 0;
                } else if (strcmp(argv[1], "injectdatahi") == 0) {
-                       val = simple_strtoul(argv[2], NULL, 16);
+                       val = hextoul(argv[2], NULL);
 
                        ddr->data_err_inject_hi = val;
                        return 0;
                } else if (strcmp(argv[1], "injectdatalo") == 0) {
-                       val = simple_strtoul(argv[2], NULL, 16);
+                       val = hextoul(argv[2], NULL);
 
                        ddr->data_err_inject_lo = val;
                        return 0;
                } else if (strcmp(argv[1], "injectecc") == 0) {
-                       val = simple_strtoul(argv[2], NULL, 16);
+                       val = hextoul(argv[2], NULL);
                        if (val > 0xff) {
                                printf("Incorrect ECC inject mask, "
                                       "should be 0x00..0xff\n");
@@ -269,8 +269,8 @@ int do_ecc(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        }
        if (argc == 4) {
                if (strcmp(argv[1], "testdw") == 0) {
-                       addr = (u64 *) simple_strtoul(argv[2], NULL, 16);
-                       count = simple_strtoul(argv[3], NULL, 16);
+                       addr = (u64 *)hextoul(argv[2], NULL);
+                       count = hextoul(argv[3], NULL);
 
                        if ((u32) addr % 8) {
                                printf("Address not aligned on "
@@ -308,8 +308,8 @@ int do_ecc(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                        return 0;
                }
                if (strcmp(argv[1], "testword") == 0) {
-                       addr = (u64 *) simple_strtoul(argv[2], NULL, 16);
-                       count = simple_strtoul(argv[3], NULL, 16);
+                       addr = (u64 *)hextoul(argv[2], NULL);
+                       count = hextoul(argv[3], NULL);
 
                        if ((u32) addr % 8) {
                                printf("Address not aligned on "
index 653efe09f93558de454be2e7471fcb0062f119cf..b1b002c900218ae84620297ebce01034324c02c4 100644 (file)
@@ -167,7 +167,7 @@ int cpu_release(u32 nr, int argc, char *const argv[])
        for (i = 1; i < 3; i++) {
                if (argv[i][0] != '-') {
                        u8 entry = boot_entry_map[i];
-                       val = simple_strtoul(argv[i], NULL, 16);
+                       val = hextoul(argv[i], NULL);
                        table[entry] = val;
                }
        }
index c38f0933f894d56b47b9f69d69804380e1b4e755..c2e285ff0f62c38e5acb33b05345c233b47d7359 100644 (file)
@@ -37,11 +37,12 @@ int do_sh_zimageboot(struct cmd_tbl *cmdtp, int flag, int argc,
        }
 
        if (s0)
-               zboot_entry = (ulong (*)(int, char * const []))simple_strtoul(s0, NULL, 16);
+               zboot_entry = (ulong (*)(int, char * const []))hextoul(s0,
+                                                                       NULL);
 
        /* empty_zero_page */
        if (s1)
-               param = (unsigned char*)simple_strtoul(s1, NULL, 16);
+               param = (unsigned char *)hextoul(s1, NULL);
 
        /* Linux kernel command line */
        cmdline = (char *)param + COMMAND_LINE;
index cf4210cd4bab02b253f0a634851d80feb7c2aeb7..9938c80a42b327b2e3d5a4fd3aba88de4d3aeffd 100644 (file)
@@ -405,17 +405,17 @@ static int do_zboot_start(struct cmd_tbl *cmdtp, int flag, int argc,
        }
 
        if (s)
-               state.bzimage_addr = simple_strtoul(s, NULL, 16);
+               state.bzimage_addr = hextoul(s, NULL);
 
        if (argc >= 3) {
                /* argv[2] holds the size of the bzImage */
-               state.bzimage_size = simple_strtoul(argv[2], NULL, 16);
+               state.bzimage_size = hextoul(argv[2], NULL);
        }
 
        if (argc >= 4)
-               state.initrd_addr = simple_strtoul(argv[3], NULL, 16);
+               state.initrd_addr = hextoul(argv[3], NULL);
        if (argc >= 5)
-               state.initrd_size = simple_strtoul(argv[4], NULL, 16);
+               state.initrd_size = hextoul(argv[4], NULL);
        if (argc >= 6) {
                /*
                 * When the base_ptr is passed in, we assume that the image is
@@ -428,7 +428,7 @@ static int do_zboot_start(struct cmd_tbl *cmdtp, int flag, int argc,
                 * load address and set bzimage_addr to 0 so we know that it
                 * cannot be proceesed (or processed again).
                 */
-               state.base_ptr = (void *)simple_strtoul(argv[5], NULL, 16);
+               state.base_ptr = (void *)hextoul(argv[5], NULL);
                state.load_address = state.bzimage_addr;
                state.bzimage_addr = 0;
        }
@@ -702,7 +702,7 @@ static int do_zboot_dump(struct cmd_tbl *cmdtp, int flag, int argc,
        struct boot_params *base_ptr = state.base_ptr;
 
        if (argc > 1)
-               base_ptr = (void *)simple_strtoul(argv[1], NULL, 16);
+               base_ptr = (void *)hextoul(argv[1], NULL);
        if (!base_ptr) {
                printf("No zboot setup_base\n");
                return CMD_RET_FAILURE;
@@ -749,7 +749,7 @@ int do_zboot_parent(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc > 1) {
                char *endp;
 
-               simple_strtoul(argv[1], &endp, 16);
+               hextoul(argv[1], &endp);
                /*
                 * endp pointing to nul means that argv[1] was just a valid
                 * number, so pass it along to the normal processing
index 144a08922b103df9d39070cb84eb774fac4eaf91..5829299663db170d3306c33fed3c714eeeff8f5b 100644 (file)
@@ -214,7 +214,7 @@ int drv_video_init(void)
 #ifdef CONFIG_SPLASH_SCREEN
        s = env_get("splashimage");
        if (s != NULL) {
-               splash = simple_strtoul(s, NULL, 16);
+               splash = hextoul(s, NULL);
                vcxk_acknowledge_wait();
                video_display_bitmap(splash, 0, 0);
        }
index 9b973a4acebb3a7eefee5b27121e450d10615175..4e8cb839f5ee521a04ec60f0bab04df65f75714e 100644 (file)
@@ -230,7 +230,7 @@ static int do_go_uboot(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 2)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[1], NULL, 16);
+       addr = hextoul(argv[1], NULL);
        fdt = board_fdt_blob_setup();
        entry = (uboot_entry_t)addr;
        flush_cache((ulong)addr, 1 << 20);      /* 1MiB should be enough */
index bb7442626611aaa2cdb71a47a7ec6d4d63dbfc5d..adae27fc7e75afd76f86e7db221c3a4e06b84342 100644 (file)
@@ -39,7 +39,7 @@ int misc_init_r(void)
                        tmp[0] = efuse_mac_addr[i * 2];
                        tmp[1] = efuse_mac_addr[i * 2 + 1];
                        tmp[2] = '\0';
-                       mac_addr[i] = simple_strtoul(tmp, NULL, 16);
+                       mac_addr[i] = hextoul(tmp, NULL);
                }
 
                if (is_valid_ethaddr(mac_addr))
index 88a60f34fe8c70a8b78c1e54eaa92a66a0dcc8df..c37ea65417feebdb5118a2db5a9d73a0a18130ae 100644 (file)
@@ -126,7 +126,7 @@ int misc_init_r(void)
                        tmp[0] = efuse_mac_addr[i * 2];
                        tmp[1] = efuse_mac_addr[i * 2 + 1];
                        tmp[2] = '\0';
-                       mac_addr[i] = simple_strtoul(tmp, NULL, 16);
+                       mac_addr[i] = hextoul(tmp, NULL);
                }
 
                if (is_valid_ethaddr(mac_addr))
index 18ef146218f916e5d1efe6163e460aada31da263..5d9ac6458d68bc144bfdb6797197218bd77c5101 100644 (file)
@@ -166,7 +166,7 @@ int misc_init_r(void)
                        tmp[0] = efuse_mac_addr[i * 2];
                        tmp[1] = efuse_mac_addr[i * 2 + 1];
                        tmp[2] = '\0';
-                       mac_addr[i] = simple_strtoul(tmp, NULL, 16);
+                       mac_addr[i] = hextoul(tmp, NULL);
                }
 
                if (is_valid_ethaddr(mac_addr))
index e217b95b4f2f393e0b535756ada82e4f6f7b84d7..35c89850bef407740852a316ff0f8777a759b520 100644 (file)
@@ -376,7 +376,7 @@ int board_late_init(void)
                /* Parse MAC address */
                for (i = 0; i < 6; i++) {
                        env_enetaddr[i] = env_str ?
-                               simple_strtoul(env_str, &end, 16) : 0;
+                               hextoul(env_str, &end) : 0;
                        if (env_str)
                                env_str = (*end) ? end+1 : end;
                }
index 64aa198765fecd0eb7faa20a9d4086996d27a3de..582af6f1f1a1ca237642faaf3baf8a696c908608 100644 (file)
@@ -235,25 +235,25 @@ int do_atf(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        char str[4 * sizeof(uint64_t)];
 
        if ((argc == 5) && !strcmp(argv[1], "readmmc")) {
-               buffer = (void *)simple_strtoul(argv[2], NULL, 16);
+               buffer = (void *)hextoul(argv[2], NULL);
                offset = simple_strtoul(argv[3], NULL, 10);
                size = simple_strtoul(argv[4], NULL, 10);
 
                ret = atf_read_mmc(offset, buffer, size);
        } else if ((argc == 5) && !strcmp(argv[1], "readnor")) {
-               buffer = (void *)simple_strtoul(argv[2], NULL, 16);
+               buffer = (void *)hextoul(argv[2], NULL);
                offset = simple_strtoul(argv[3], NULL, 10);
                size = simple_strtoul(argv[4], NULL, 10);
 
                ret = atf_read_nor(offset, buffer, size);
        } else if ((argc == 5) && !strcmp(argv[1], "writemmc")) {
-               buffer = (void *)simple_strtoul(argv[2], NULL, 16);
+               buffer = (void *)hextoul(argv[2], NULL);
                offset = simple_strtoul(argv[3], NULL, 10);
                size = simple_strtoul(argv[4], NULL, 10);
 
                ret = atf_write_mmc(offset, buffer, size);
        } else if ((argc == 5) && !strcmp(argv[1], "writenor")) {
-               buffer = (void *)simple_strtoul(argv[2], NULL, 16);
+               buffer = (void *)hextoul(argv[2], NULL);
                offset = simple_strtoul(argv[3], NULL, 10);
                size = simple_strtoul(argv[4], NULL, 10);
 
index eaa525eb004986cba2defeed59d0c0cb9dd0c5df..a3eee63e3758814b456dd639df7b5896484af1e9 100644 (file)
@@ -208,7 +208,7 @@ void get_board_serial(struct tag_serialnr *serialnr)
                str = strchr(serial, '_');
                if (str && (strlen(str) >= 4)) {
                        serialnr->high = (*(str + 1) << 8) | *(str + 2);
-                       serialnr->low = simple_strtoul(str + 3, NULL, 16);
+                       serialnr->low = hextoul(str + 3, NULL);
                }
        } else {
                serialnr->high = 0;
index 638aa3c19a4d3a0ece85068fbfa62635cb5ff57f..6c096266b4840eb9a0450260fd8e84116ce705cc 100644 (file)
@@ -40,7 +40,7 @@ static int do_esbc_validate(struct cmd_tbl *cmdtp, int flag, int argc,
                hash_str = argv[2];
 
        /* First argument - header address -32/64bit */
-       haddr = (uintptr_t)simple_strtoul(argv[1], NULL, 16);
+       haddr = (uintptr_t)hextoul(argv[1], NULL);
 
        /* With esbc_validate command, Image address must be
         * part of header. So, the function is called
index 564a8b3b54ff4b7c258986295f3ac10a1139a7f7..066aa9a7c37fe5f9296fd98ddd27fa8337255e61 100644 (file)
@@ -767,7 +767,7 @@ static inline int str2longbe(const char *p, ulong *num)
        if (!p) {
                return 0;
        } else {
-               tmp = simple_strtoul(p, &endptr, 16);
+               tmp = hextoul(p, &endptr);
                if (sizeof(ulong) == 4)
                        *num = cpu_to_be32(tmp);
                else
index be0fda06381e34233b146a882b5c681fdb12359b..9e73056a298ad28fb5019811bff23e7ab079c1a6 100644 (file)
@@ -378,7 +378,7 @@ static void set_mac_address(unsigned int index, const char *string)
        }
 
        for (i = 0; *p && (i < 6); i++) {
-               e.mac[index][i] = simple_strtoul(p, &p, 16);
+               e.mac[index][i] = hextoul(p, &p);
                if (*p == ':')
                        p++;
        }
@@ -452,7 +452,7 @@ int do_mac(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                set_date(argv[2]);
                break;
        case 'p':       /* MAC table size */
-               e.mac_count = simple_strtoul(argv[2], NULL, 16);
+               e.mac_count = hextoul(argv[2], NULL);
                update_crc();
                break;
        case '0' ... '9':       /* "mac 0" through "mac 22" */
index 437f0bc4cf683d3066a0b6a18c849549061ebe20..a2b6442b542a9ba781ea6813405a5179cc94c422 100644 (file)
@@ -416,7 +416,7 @@ static inline void do_dpmac_config(int dpmac, const char *arg_dpmacid,
                               env_dpmac, phy_num + 1, arg_dpmacid);
                else
                        wriop_set_phy_address(dpmac, phy_num,
-                                             simple_strtoul(ret, NULL, 16));
+                                             hextoul(ret, NULL));
        }
 
        /*search mdio in dpmac arg*/
index b742c1ff528829fdec78949dcf08d26e3859b7be..3b04dea39cd391e7acaf0717543d8172f47c06c8 100644 (file)
@@ -437,7 +437,7 @@ static inline void do_dpmac_config(int dpmac, const char *arg_dpmacid,
                               env_dpmac, phy_num + 1, arg_dpmacid);
                else
                        wriop_set_phy_address(dpmac, phy_num,
-                                             simple_strtoul(ret, NULL, 16));
+                                             hextoul(ret, NULL));
        }
 
        /*search mdio in dpmac arg*/
index 8273384f2d534549f43851a69a0ccd089889ebe4..cf4d9c11b89915fc8fa2f46ed253d6cb7182abd8 100644 (file)
@@ -281,7 +281,7 @@ int board_early_init_r(void)
        /* If a VSC7385 microcode image is present, then upload it. */
        tmp = env_get("vscfw_addr");
        if (tmp) {
-               vscfw_addr = simple_strtoul(tmp, NULL, 16);
+               vscfw_addr = hextoul(tmp, NULL);
                printf("uploading VSC7385 microcode from %x\n", vscfw_addr);
                if (vsc7385_upload_firmware((void *)vscfw_addr,
                                            CONFIG_VSC7385_IMAGE_SIZE))
index b042fe3bcbc06d11db421dc0f41f31657a70b96e..a1908b8a57125c12806a38e5e9fcfd7f686ef472 100644 (file)
@@ -100,8 +100,8 @@ int cpld_cmd(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                else
                        cpld_set_defbank();
        } else if (strcmp(argv[1], "lane_mux") == 0) {
-               u32 lane = simple_strtoul(argv[2], NULL, 16);
-               u8 val = (u8)simple_strtoul(argv[3], NULL, 16);
+               u32 lane = hextoul(argv[2], NULL);
+               u8 val = (u8)hextoul(argv[3], NULL);
                u8 reg = CPLD_READ(serdes_mux);
 
                switch (lane) {
index c07eb627a21adc032b1b49424360e4c60508833b..4a15837473bfb774be99076b1a8000a6e288b822 100644 (file)
@@ -1502,7 +1502,7 @@ void setup_board_gpio(int board, struct ventana_board_info *info)
                        continue;
                s = hwconfig_subarg(arg, "padctrl", &len);
                if (s) {
-                       ctrl = MUX_PAD_CTRL(simple_strtoul(s, NULL, 16)
+                       ctrl = MUX_PAD_CTRL(hextoul(s, NULL)
                                            & 0x1ffff) | MUX_MODE_SION;
                }
                if (hwconfig_subarg_cmp(arg, "mode", "gpio")) {
index 468fb093b7bb27fc3ec7c3d2ff011a72b794887f..6a0382dee39fd0cda7a80881bf99c91e6ca6d40b 100644 (file)
@@ -915,7 +915,7 @@ int fdt_fixup_sky2(void *blob, int np, struct pci_dev *dev)
        if (tmp) {
                for (j = 0; j < 6; j++) {
                        mac_addr[j] = tmp ?
-                                     simple_strtoul(tmp, &end,16) : 0;
+                                     hextoul(tmp, &end) : 0;
                        if (tmp)
                                tmp = (*end) ? end+1 : end;
                }
index 679f8f30191b9fad7c29a31285b700e0b7d4648b..dc548efbc7a43afda789cbcdecd6c3b890bc87bf 100644 (file)
@@ -284,9 +284,9 @@ static int osd_print(struct cmd_tbl *cmdtp, int flag, int argc,
                if (!(osd_screen_mask & (1 << screen)))
                        continue;
 
-               x = simple_strtoul(argv[1], NULL, 16);
-               y = simple_strtoul(argv[2], NULL, 16);
-               color = simple_strtoul(argv[3], NULL, 16);
+               x = hextoul(argv[1], NULL);
+               y = hextoul(argv[2], NULL);
+               color = hextoul(argv[3], NULL);
                text = argv[4];
                charcount = strlen(text);
                len = (charcount > bufsize) ? bufsize : charcount;
@@ -416,13 +416,13 @@ int osd_write(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                char *rp;
                u16 *wp = buffer;
                unsigned count = (argc > 4) ?
-                       simple_strtoul(argv[4], NULL, 16) : 1;
+                       hextoul(argv[4], NULL) : 1;
 
                if (!(osd_screen_mask & (1 << screen)))
                        continue;
 
-               x = simple_strtoul(argv[1], NULL, 16);
-               y = simple_strtoul(argv[2], NULL, 16);
+               x = hextoul(argv[1], NULL);
+               y = hextoul(argv[2], NULL);
                rp = argv[3];
 
 
@@ -431,7 +431,7 @@ int osd_write(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
 
                        memcpy(substr, rp, 4);
                        substr[4] = 0;
-                       *wp = simple_strtoul(substr, NULL, 16);
+                       *wp = hextoul(substr, NULL);
 
                        rp += 4;
                        wp++;
@@ -463,8 +463,8 @@ int osd_size(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                return 1;
        }
 
-       x = simple_strtoul(argv[1], NULL, 16);
-       y = simple_strtoul(argv[2], NULL, 16);
+       x = hextoul(argv[1], NULL);
+       y = hextoul(argv[2], NULL);
 
        if (!x || (x > 64) || (x > MAX_X_CHARS) ||
            !y || (y > 32) || (y > MAX_Y_CHARS)) {
index fe6249794e760e83151580828eff0955e5b29d1a..6a9c0b4c24f0dad5ab8438a451b11d9ced346af0 100644 (file)
@@ -30,10 +30,10 @@ static int do_osd_write(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 4 || (strlen(argv[3])) % 2)
                return CMD_RET_USAGE;
 
-       x = simple_strtoul(argv[1], NULL, 16);
-       y = simple_strtoul(argv[2], NULL, 16);
+       x = hextoul(argv[1], NULL);
+       y = hextoul(argv[2], NULL);
        hexstr = argv[3];
-       count = (argc > 4) ? simple_strtoul(argv[4], NULL, 16) : 1;
+       count = (argc > 4) ? hextoul(argv[4], NULL) : 1;
 
        buflen = strlen(hexstr) / 2;
 
@@ -80,9 +80,9 @@ static int do_osd_print(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 5)
                return CMD_RET_USAGE;
 
-       x = simple_strtoul(argv[1], NULL, 16);
-       y = simple_strtoul(argv[2], NULL, 16);
-       color = simple_strtoul(argv[3], NULL, 16);
+       x = hextoul(argv[1], NULL);
+       y = hextoul(argv[2], NULL);
+       color = hextoul(argv[3], NULL);
        text = argv[4];
 
        for (uclass_first_device(UCLASS_VIDEO_OSD, &dev);
@@ -109,8 +109,8 @@ static int do_osd_size(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 3)
                return CMD_RET_USAGE;
 
-       x = simple_strtoul(argv[1], NULL, 16);
-       y = simple_strtoul(argv[2], NULL, 16);
+       x = hextoul(argv[1], NULL);
+       y = hextoul(argv[2], NULL);
 
        for (uclass_first_device(UCLASS_VIDEO_OSD, &dev);
             dev;
index 016806a2a6c249073f1e21fad4cf09f7b0585f64..ff07260194c554c68378dc0b42d9202ea6cde49a 100644 (file)
@@ -278,7 +278,7 @@ static int do_checkboardidhwk(struct cmd_tbl *cmdtp, int flag, int argc,
                                 * use simple_strtoul because we need &end and
                                 * we know we got non numeric char at the end
                                 */
-                               bid = simple_strtoul(rest, &endp, 16);
+                               bid = hextoul(rest, &endp);
                                /* BoardId and HWkey are separated with a "_" */
                                if (*endp == '_') {
                                        rest  = endp + 1;
@@ -286,7 +286,7 @@ static int do_checkboardidhwk(struct cmd_tbl *cmdtp, int flag, int argc,
                                         * use simple_strtoul because we need
                                         * &end
                                         */
-                                       hwkey = simple_strtoul(rest, &endp, 16);
+                                       hwkey = hextoul(rest, &endp);
                                        rest  = endp;
                                        while (*rest && !isxdigit(*rest))
                                                rest++;
index 046d3b4903f08a7896b3f19b558da5394fc75ec5..08a22b5d01e0b7d9702b205b41cfc1b3020592bd 100644 (file)
@@ -138,7 +138,7 @@ static int do_sl28_nvm(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_FAILURE;
 
        if (argc > 1) {
-               nvm = simple_strtoul(argv[1], &endp, 16);
+               nvm = hextoul(argv[1], &endp);
                if (*endp != '\0') {
                        printf("ERROR: argument is not a valid number\n");
                        ret = -EINVAL;
index c34baca602cd9daeb9fffc9f0a191c904ffc7cb5..2b331b32df5bfd4cf3ba7b38c16acef2dd933d87 100644 (file)
@@ -347,7 +347,7 @@ int board_late_init(void)
        if (!s)
                return 0;
 
-       addr = simple_strtoul(s, NULL, 16);
+       addr = hextoul(s, NULL);
        dst = malloc(CONFIG_SYS_VIDEO_LOGO_MAX_SIZE);
        if (!dst)
                return -ENOMEM;
index ac8048c81c50713f850da24edcf5bb1829790476..b7c75f5aa65ebc000a08d610fa2b0b32eac81082 100644 (file)
@@ -133,7 +133,7 @@ static int do_cpld(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 3)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[2], NULL, 16);
+       addr = hextoul(argv[2], NULL);
        if (!(addr == CPLD_ADDR_VERSION || addr == CPLD_ADDR_MODE ||
              addr == CPLD_ADDR_MUX || addr == CPLD_ADDR_HDMI ||
              addr == CPLD_ADDR_DIPSW || addr == CPLD_ADDR_RESET)) {
@@ -144,7 +144,7 @@ static int do_cpld(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc == 3 && strcmp(argv[1], "read") == 0) {
                printf("0x%x\n", cpld_read(addr));
        } else if (argc == 4 && strcmp(argv[1], "write") == 0) {
-               val = simple_strtoul(argv[3], NULL, 16);
+               val = hextoul(argv[3], NULL);
                if (addr == CPLD_ADDR_MUX) {
                        /* never mask SCIFA0 console */
                        val &= ~MUX_MSK_SCIFA0_USB;
index ebb2d6f7420f01053cc725960f33bb8d3c5f8779..0c060a5323d8b92dbf0ead3b8db3549345188191 100644 (file)
@@ -111,7 +111,7 @@ static int do_cpld(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 3)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[2], NULL, 16);
+       addr = hextoul(argv[2], NULL);
        if (!(addr == CPLD_ADDR_VERSION || addr == CPLD_ADDR_MODE ||
              addr == CPLD_ADDR_MUX || addr == CPLD_ADDR_DIPSW6 ||
              addr == CPLD_ADDR_RESET)) {
@@ -122,7 +122,7 @@ static int do_cpld(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc == 3 && strcmp(argv[1], "read") == 0) {
                printf("0x%x\n", cpld_read(dev, addr));
        } else if (argc == 4 && strcmp(argv[1], "write") == 0) {
-               val = simple_strtoul(argv[3], NULL, 16);
+               val = hextoul(argv[3], NULL);
                cpld_write(dev, addr, val);
        }
 
index 2e3ae1a54da66af24430f99ffe841525bdcc7d38..fba678b4260a6c1fa4e429e186472a779ace1689 100644 (file)
@@ -243,7 +243,7 @@ int factoryset_read_eeprom(int i2c_addr)
                               buf, MAX_STRING_LENGTH);
        cp1 = buf;
        for (i = 0; i < 6; i++) {
-               factory_dat.mac[i] = simple_strtoul((char *)cp1, NULL, 16);
+               factory_dat.mac[i] = hextoul((char *)cp1, NULL);
                cp1 += 3;
        }
 
@@ -254,8 +254,7 @@ int factoryset_read_eeprom(int i2c_addr)
        if (ret > 0) {
                cp1 = buf;
                for (i = 0; i < 6; i++) {
-                       factory_dat.mac_wlan[i] = simple_strtoul((char *)cp1,
-                                                                NULL, 16);
+                       factory_dat.mac_wlan[i] = hextoul((char *)cp1, NULL);
                        cp1 += 3;
                }
        }
@@ -266,15 +265,13 @@ int factoryset_read_eeprom(int i2c_addr)
        if (0 <= get_factory_record_val(cp, size, (uchar *)"USBD1",
                                        (uchar *)"vid", buf,
                                        MAX_STRING_LENGTH)) {
-               factory_dat.usb_vendor_id = simple_strtoul((char *)buf,
-                                                          NULL, 16);
+               factory_dat.usb_vendor_id = hextoul((char *)buf, NULL);
        }
 
        if (0 <= get_factory_record_val(cp, size, (uchar *)"USBD1",
                                        (uchar *)"pid", buf,
                                        MAX_STRING_LENGTH)) {
-               factory_dat.usb_product_id = simple_strtoul((char *)buf,
-                                                           NULL, 16);
+               factory_dat.usb_product_id = hextoul((char *)buf, NULL);
        }
        printf("DFU USB: VID = 0x%4x, PID = 0x%4x\n", factory_dat.usb_vendor_id,
               factory_dat.usb_product_id);
@@ -294,8 +291,7 @@ int factoryset_read_eeprom(int i2c_addr)
        if (0 <= get_factory_record_val(cp, size, (uchar *)"DEV",
                                        (uchar *)"ver", buf,
                                        MAX_STRING_LENGTH)) {
-               factory_dat.version = simple_strtoul((char *)buf,
-                                                           NULL, 16);
+               factory_dat.version = hextoul((char *)buf, NULL);
                debug("version number: %d\n", factory_dat.version);
        }
        /* Get ASN from factory set if available */
index ad2f3155d07ad5061a25dbc2482a5f4d68470251..b230a71b3a697a6fb5d47c1d655129d0d92b01bd 100644 (file)
@@ -281,7 +281,7 @@ static void set_mac_address(char *string)
        }
 
        for (i = 0; *string && (i < MAC_ADDR_BYTES); i++) {
-               e.mac_addr[i] = simple_strtoul(string, &string, 16);
+               e.mac_addr[i] = hextoul(string, &string);
                if (*string == ':')
                        string++;
        }
index 235f29565f9e1d3354ebb9c9b67aa8097fc58f8b..e2258385ceb024783f800888303b365a4dfdd536 100644 (file)
@@ -252,7 +252,7 @@ static int arg_read_set(const struct env_map_common *map, u32 i, int argc,
        char *endp = argv[1];
 
        if (map[i].type == ENV_HEX)
-               map[i].val->val = simple_strtoul(argv[1], &endp, 16);
+               map[i].val->val = hextoul(argv[1], &endp);
        else
                map[i].val->val = simple_strtoul(argv[1], &endp, 10);
 
index cdbb9a87bc44bc3845bdf371c9864df902a3633d..21c58c76d67aeb9069aff4cbc2743462691551e3 100644 (file)
@@ -120,7 +120,7 @@ static void setup_serial(void)
        if (env_get("serial#"))
                return;
 
-       board_serial = simple_strtoul(ep->serial, &endp, 16);
+       board_serial = hextoul(ep->serial, &endp);
        if (*endp != '\0') {
                pr_err("Error: Can't set serial# to %s\n", ep->serial);
                return;
index 580f13c3ab1ac09f2fd75b36c218834f4ec036fc..077d83420c9c790cbb1a5720d989deee65fe728b 100644 (file)
@@ -201,7 +201,7 @@ static void setup_serial(void)
        if (env_get("serial#"))
                return;
 
-       board_serial = simple_strtoul(ep->serial, &endp, 16);
+       board_serial = hextoul(ep->serial, &endp);
        if (*endp != '\0') {
                pr_err("Error: Can't set serial# to %s\n", ep->serial);
                return;
index 251d9fd73e56b679b21350efb20beb8b76897c48..1bf543619b89fc0e1b741ac34aae48e231231443 100644 (file)
@@ -299,7 +299,7 @@ static void set_mac_address(unsigned int index, const char *string)
        }
 
        for (i = 0; *p && (i < 6); i++) {
-               e.mac[index][i] = simple_strtoul(p, &p, 16);
+               e.mac[index][i] = hextoul(p, &p);
                if (*p == ':')
                        p++;
        }
@@ -364,7 +364,7 @@ int do_mac(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                set_date(argv[2]);
                break;
        case 'p':       /* MAC table size */
-               e.mac_count = simple_strtoul(argv[2], NULL, 16);
+               e.mac_count = hextoul(argv[2], NULL);
                update_crc();
                break;
        case '0' ... '9':       /* "mac 0" through "mac 22" */
index ccf48723ff89d9c745d6ceaf10539245d6e87ad6..f6ca46c3cecce38028298ed28cfaaa748d51527b 100644 (file)
@@ -19,7 +19,7 @@ static int do_fru_capture(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < cmdtp->maxargs)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[2], &endp, 16);
+       addr = hextoul(argv[2], &endp);
        if (*argv[1] == 0 || *endp != 0)
                return -1;
 
@@ -41,7 +41,7 @@ static int do_fru_generate(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < cmdtp->maxargs)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[2], NULL, 16);
+       addr = hextoul(argv[2], NULL);
 
        return fru_generate(addr, argv[3], argv[4], argv[5], argv[6], argv[7]);
 }
index f5735d0c62c092be02e7d6ca99fa44dab14e4b54..04d4cdb14115f0a22ac17654c3b80b482ae04a40 100644 (file)
@@ -32,7 +32,7 @@ static int do_versal_load_pdi(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_USAGE;
        }
 
-       len = simple_strtoul(argv[3], NULL, 16);
+       len = hextoul(argv[3], NULL);
        if (!len) {
                debug("pdi_load: zero size\n");
                return CMD_RET_USAGE;
index 6c697caa625b48d375137bfb0c056824e02e4dc1..024fac65f304a8f72e26b2a1760df2f5776c647b 100644 (file)
@@ -422,7 +422,7 @@ static int do_zynq_rsa(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc != cmdtp->maxargs)
                return CMD_RET_FAILURE;
 
-       src_ptr = simple_strtoul(argv[2], &endp, 16);
+       src_ptr = hextoul(argv[2], &endp);
        if (*argv[2] == 0 || *endp != 0)
                return CMD_RET_USAGE;
 
@@ -453,26 +453,26 @@ static int zynq_decrypt_image(struct cmd_tbl *cmdtp, int flag, int argc,
                else
                        return CMD_RET_USAGE;
 
-               srcaddr = simple_strtoul(argv[3], &endp, 16);
+               srcaddr = hextoul(argv[3], &endp);
                if (*argv[3] == 0 || *endp != 0)
                        return CMD_RET_USAGE;
-               srclen = simple_strtoul(argv[4], &endp, 16);
+               srclen = hextoul(argv[4], &endp);
                if (*argv[4] == 0 || *endp != 0)
                        return CMD_RET_USAGE;
 
                dstaddr = 0xFFFFFFFF;
                dstlen = srclen;
        } else {
-               srcaddr = simple_strtoul(argv[2], &endp, 16);
+               srcaddr = hextoul(argv[2], &endp);
                if (*argv[2] == 0 || *endp != 0)
                        return CMD_RET_USAGE;
-               srclen = simple_strtoul(argv[3], &endp, 16);
+               srclen = hextoul(argv[3], &endp);
                if (*argv[3] == 0 || *endp != 0)
                        return CMD_RET_USAGE;
-               dstaddr = simple_strtoul(argv[4], &endp, 16);
+               dstaddr = hextoul(argv[4], &endp);
                if (*argv[4] == 0 || *endp != 0)
                        return CMD_RET_USAGE;
-               dstlen = simple_strtoul(argv[5], &endp, 16);
+               dstlen = hextoul(argv[5], &endp);
                if (*argv[5] == 0 || *endp != 0)
                        return CMD_RET_USAGE;
        }
index cf63ad97fab79c72500f07fd0257d75a9a569359..b15c0f599bda6d5e19680c34f57ad262d1911d8d 100644 (file)
@@ -40,7 +40,7 @@ static int do_zynqmp_verify_secure(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_USAGE;
 
        src_addr = simple_strtoull(argv[2], NULL, 16);
-       len = simple_strtoul(argv[3], NULL, 16);
+       len = hextoul(argv[3], NULL);
 
        if (argc == 5)
                key_ptr = (uint8_t *)(uintptr_t)simple_strtoull(argv[4],
@@ -86,7 +86,7 @@ static int do_zynqmp_mmio_read(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc != cmdtp->maxargs)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[2], NULL, 16);
+       addr = hextoul(argv[2], NULL);
 
        ret = zynqmp_mmio_read(addr, &read_val);
        if (!ret)
@@ -107,9 +107,9 @@ static int do_zynqmp_mmio_write(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc != cmdtp->maxargs)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[2], NULL, 16);
-       mask = simple_strtoul(argv[3], NULL, 16);
-       val = simple_strtoul(argv[4], NULL, 16);
+       addr = hextoul(argv[2], NULL);
+       mask = hextoul(argv[3], NULL);
+       val = hextoul(argv[4], NULL);
 
        ret = zynqmp_mmio_write(addr, mask, val);
        if (ret != 0)
@@ -135,12 +135,12 @@ static int do_zynqmp_aes(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < cmdtp->maxargs - 1)
                return CMD_RET_USAGE;
 
-       aes->srcaddr = simple_strtoul(argv[2], NULL, 16);
-       aes->ivaddr = simple_strtoul(argv[3], NULL, 16);
-       aes->len = simple_strtoul(argv[4], NULL, 16);
-       aes->op = simple_strtoul(argv[5], NULL, 16);
-       aes->keysrc = simple_strtoul(argv[6], NULL, 16);
-       aes->dstaddr = simple_strtoul(argv[7], NULL, 16);
+       aes->srcaddr = hextoul(argv[2], NULL);
+       aes->ivaddr = hextoul(argv[3], NULL);
+       aes->len = hextoul(argv[4], NULL);
+       aes->op = hextoul(argv[5], NULL);
+       aes->keysrc = hextoul(argv[6], NULL);
+       aes->dstaddr = hextoul(argv[7], NULL);
 
        flush_dcache_range((ulong)aes, (ulong)(aes) +
                           roundup(sizeof(struct aes), ARCH_DMA_MINALIGN));
@@ -161,7 +161,7 @@ static int do_zynqmp_aes(struct cmd_tbl *cmdtp, int flag, int argc,
                if (argc < cmdtp->maxargs)
                        return CMD_RET_USAGE;
 
-               aes->keyaddr = simple_strtoul(argv[8], NULL, 16);
+               aes->keyaddr = hextoul(argv[8], NULL);
                if (aes->keyaddr)
                        flush_dcache_range(aes->keyaddr,
                                           (aes->keyaddr +
@@ -187,7 +187,7 @@ static int do_zynqmp_tcm_init(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc != cmdtp->maxargs)
                return CMD_RET_USAGE;
 
-       mode = simple_strtoul(argv[2], NULL, 16);
+       mode = hextoul(argv[2], NULL);
        if (mode != TCM_LOCK && mode != TCM_SPLIT) {
                printf("Mode should be either 0(lock)/1(split)\n");
                return CMD_RET_FAILURE;
@@ -209,8 +209,8 @@ static int do_zynqmp_pmufw(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc != cmdtp->maxargs)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[2], NULL, 16);
-       size = simple_strtoul(argv[3], NULL, 16);
+       addr = hextoul(argv[2], NULL);
+       size = hextoul(argv[3], NULL);
        flush_dcache_range((ulong)addr, (ulong)(addr + size));
 
        zynqmp_pmufw_load_config_object((const void *)(uintptr_t)addr,
@@ -236,16 +236,16 @@ static int do_zynqmp_rsa(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_FAILURE;
        }
 
-       srcaddr = simple_strtoul(argv[2], NULL, 16);
-       srclen = simple_strtoul(argv[3], NULL, 16);
+       srcaddr = hextoul(argv[2], NULL);
+       srclen = hextoul(argv[3], NULL);
        if (srclen != RSA_KEY_SIZE) {
                puts("ERR: srclen should be equal to 0x200(512 bytes)\n");
                return CMD_RET_USAGE;
        }
 
-       mod = simple_strtoul(argv[4], NULL, 16);
-       exp = simple_strtoul(argv[5], NULL, 16);
-       rsaop = simple_strtoul(argv[6], NULL, 16);
+       mod = hextoul(argv[4], NULL);
+       exp = hextoul(argv[5], NULL);
+       rsaop = hextoul(argv[6], NULL);
        if (!(rsaop == 0 || rsaop == 1)) {
                puts("ERR: rsaop should be either 0 or 1\n");
                return CMD_RET_USAGE;
@@ -299,11 +299,11 @@ static int do_zynqmp_sha3(struct cmd_tbl *cmdtp, int flag,
                return CMD_RET_FAILURE;
        }
 
-       srcaddr = simple_strtoul(argv[2], NULL, 16);
-       srclen = simple_strtoul(argv[3], NULL, 16);
+       srcaddr = hextoul(argv[2], NULL);
+       srclen = hextoul(argv[3], NULL);
 
        if (argc == 5) {
-               hashaddr = simple_strtoul(argv[4], NULL, 16);
+               hashaddr = hextoul(argv[4], NULL);
                flush_dcache_range(hashaddr,
                                   hashaddr + roundup(ZYNQMP_SHA3_SIZE,
                                                      ARCH_DMA_MINALIGN));
index 40e8978f152ea8c6962a5e09c4be4d9a4d06447c..f48a9dcb021d4fc05b0988e9fd2bc1d798716faa 100644 (file)
@@ -161,7 +161,7 @@ static int do_abootimg_addr(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc != 2)
                return CMD_RET_USAGE;
 
-       img_addr = simple_strtoul(argv[1], &endp, 16);
+       img_addr = hextoul(argv[1], &endp);
        if (*endp != '\0') {
                printf("Error: Wrong image address\n");
                return CMD_RET_FAILURE;
index aa943007f350f7eb3c4dc4bb261ba7355943a851..f4b5cbf35b97e64b252f31b8e74588179292d371 100644 (file)
@@ -27,7 +27,7 @@ static int do_adtimg_addr(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc != 2)
                return CMD_RET_USAGE;
 
-       hdr_addr = simple_strtoul(argv[1], &endp, 16);
+       hdr_addr = hextoul(argv[1], &endp);
        if (*endp != '\0') {
                printf("Error: Wrong image address '%s'\n", argv[1]);
                return CMD_RET_FAILURE;
index 4c0dad99326abd9160360e22d8c79d1d7f240456..1936518824a1045e2ea1bf6fd8f417b7c8c83d4c 100644 (file)
--- a/cmd/aes.c
+++ b/cmd/aes.c
@@ -55,11 +55,11 @@ static int do_aes(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        else
                return CMD_RET_USAGE;
 
-       key_addr = simple_strtoul(argv[2], NULL, 16);
-       iv_addr = simple_strtoul(argv[3], NULL, 16);
-       src_addr = simple_strtoul(argv[4], NULL, 16);
-       dst_addr = simple_strtoul(argv[5], NULL, 16);
-       len = simple_strtoul(argv[6], NULL, 16);
+       key_addr = hextoul(argv[2], NULL);
+       iv_addr = hextoul(argv[3], NULL);
+       src_addr = hextoul(argv[4], NULL);
+       dst_addr = hextoul(argv[5], NULL);
+       len = hextoul(argv[6], NULL);
 
        key_ptr = (uint8_t *)map_sysmem(key_addr, key_len);
        iv_ptr = (uint8_t *)map_sysmem(iv_addr, 128 / 8);
index 5e7315eb7cde7644eaa9086bea977898956e8aa5..d1466f73aa41defe0052c6bf2c27389525b82529 100644 (file)
@@ -280,7 +280,7 @@ static int do_afs(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        } else if (argc == 4 && !strcmp(argv[1], "load")) {
                ulong load_addr;
 
-               load_addr = simple_strtoul(argv[3], NULL, 16);
+               load_addr = hextoul(argv[3], NULL);
                ret = load_image(argv[2], load_addr);
        } else {
                return CMD_RET_USAGE;
index 88172a9ee67502bca36afd3bf355818909d47eac..02b4b1f022c2ec5abf24575fa3fa7340e692db48 100644 (file)
--- a/cmd/avb.c
+++ b/cmd/avb.c
@@ -22,7 +22,7 @@ int do_avb_init(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        if (argc != 2)
                return CMD_RET_USAGE;
 
-       mmc_dev = simple_strtoul(argv[1], NULL, 16);
+       mmc_dev = hextoul(argv[1], NULL);
 
        if (avb_ops)
                avb_ops_free(avb_ops);
@@ -53,9 +53,9 @@ int do_avb_read_part(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_USAGE;
 
        part = argv[1];
-       offset = simple_strtoul(argv[2], NULL, 16);
-       bytes = simple_strtoul(argv[3], NULL, 16);
-       buffer = (void *)simple_strtoul(argv[4], NULL, 16);
+       offset = hextoul(argv[2], NULL);
+       bytes = hextoul(argv[3], NULL);
+       buffer = (void *)hextoul(argv[4], NULL);
 
        if (avb_ops->read_from_partition(avb_ops, part, offset, bytes,
                                         buffer, &bytes_read) ==
@@ -86,8 +86,8 @@ int do_avb_read_part_hex(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_USAGE;
 
        part = argv[1];
-       offset = simple_strtoul(argv[2], NULL, 16);
-       bytes = simple_strtoul(argv[3], NULL, 16);
+       offset = hextoul(argv[2], NULL);
+       bytes = hextoul(argv[3], NULL);
 
        buffer = malloc(bytes);
        if (!buffer) {
@@ -132,9 +132,9 @@ int do_avb_write_part(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_USAGE;
 
        part = argv[1];
-       offset = simple_strtoul(argv[2], NULL, 16);
-       bytes = simple_strtoul(argv[3], NULL, 16);
-       buffer = (void *)simple_strtoul(argv[4], NULL, 16);
+       offset = hextoul(argv[2], NULL);
+       bytes = hextoul(argv[3], NULL);
+       buffer = (void *)hextoul(argv[4], NULL);
 
        if (avb_ops->write_to_partition(avb_ops, part, offset, bytes, buffer) ==
            AVB_IO_RESULT_OK) {
@@ -161,7 +161,7 @@ int do_avb_read_rb(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc != 2)
                return CMD_RET_USAGE;
 
-       index = (size_t)simple_strtoul(argv[1], NULL, 16);
+       index = (size_t)hextoul(argv[1], NULL);
 
        if (avb_ops->read_rollback_index(avb_ops, index, &rb_idx) ==
            AVB_IO_RESULT_OK) {
@@ -188,8 +188,8 @@ int do_avb_write_rb(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc != 3)
                return CMD_RET_USAGE;
 
-       index = (size_t)simple_strtoul(argv[1], NULL, 16);
-       rb_idx = simple_strtoul(argv[2], NULL, 16);
+       index = (size_t)hextoul(argv[1], NULL);
+       rb_idx = hextoul(argv[2], NULL);
 
        if (avb_ops->write_rollback_index(avb_ops, index, rb_idx) ==
            AVB_IO_RESULT_OK)
index c72197ee82b2ab97b85008ac365f2cafd667d986..c676819b8119e2879380821a2014684ef3129c72 100644 (file)
--- a/cmd/axi.c
+++ b/cmd/axi.c
@@ -198,14 +198,14 @@ static int do_axi_md(struct cmd_tbl *cmdtp, int flag, int argc,
                /*
                 * Address is specified since argc >= 3
                 */
-               addr = simple_strtoul(argv[2], NULL, 16);
+               addr = hextoul(argv[2], NULL);
 
                /*
                 * If there's another parameter, it is the length to display;
                 * length is the number of objects, not number of bytes
                 */
                if (argc > 3)
-                       length = simple_strtoul(argv[3], NULL, 16);
+                       length = hextoul(argv[3], NULL);
        }
 
        switch (size) {
@@ -291,14 +291,14 @@ static int do_axi_mw(struct cmd_tbl *cmdtp, int flag, int argc,
        };
 
        /* Address is specified since argc > 4 */
-       addr = simple_strtoul(argv[2], NULL, 16);
+       addr = hextoul(argv[2], NULL);
 
        /* Get the value to write */
-       writeval = simple_strtoul(argv[3], NULL, 16);
+       writeval = hextoul(argv[3], NULL);
 
        /* Count ? */
        if (argc == 5)
-               count = simple_strtoul(argv[4], NULL, 16);
+               count = hextoul(argv[4], NULL);
        else
                count = 1;
 
index bef617b6a4f8fd8919e808f3311c1f660ac64b36..549c9056ddcae2e4672466ab2ff90d0a56531cf6 100644 (file)
@@ -75,11 +75,11 @@ int do_bedbug_dis(struct cmd_tbl *cmdtp, int flag, int argc,
 
        if ((flag & CMD_FLAG_REPEAT) == 0) {
                /* New command */
-               addr = simple_strtoul (argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
 
                /* If an extra param is given then it is the length */
                if (argc > 2)
-                       len = simple_strtoul (argv[2], NULL, 16);
+                       len = hextoul(argv[2], NULL);
        }
 
        /* Run the disassembler */
@@ -114,7 +114,7 @@ int do_bedbug_asm(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_USAGE;
 
        printf ("\nEnter '.' when done\n");
-       mem_addr = simple_strtoul (argv[1], NULL, 16);
+       mem_addr = hextoul(argv[1], NULL);
 
        while (1) {
                putc ('\n');
index c85cb51568da803f04ccfd4923b55873242c5ebd..bb5adc3e05f24f050ed78aac0b22abe91064aeb9 100644 (file)
@@ -58,7 +58,7 @@ void write_to_mem(char *varname, u8 *result, ulong len)
        ulong addr;
        u8 *buf;
 
-       addr = simple_strtoul(varname, NULL, 16);
+       addr = hextoul(varname, NULL);
        buf = map_sysmem(addr, len);
        memcpy(buf, result, len);
        unmap_sysmem(buf);
@@ -95,12 +95,12 @@ static int do_binop(struct cmd_tbl *cmdtp, int flag, int argc,
        src2 = malloc(len);
 
        if (*src1arg == '*')
-               read_from_mem(simple_strtoul(src1arg + 1, NULL, 16), src1, len);
+               read_from_mem(hextoul(src1arg + 1, NULL), src1, len);
        else
                read_from_env_var(src1arg, src1);
 
        if (*src2arg == '*')
-               read_from_mem(simple_strtoul(src2arg + 1, NULL, 16), src2, len);
+               read_from_mem(hextoul(src2arg + 1, NULL), src2, len);
        else
                read_from_env_var(src2arg, src2);
 
index 87f94b5abbfce8c032f8f21b2053738d91be9155..0898798dec36470528feb45507214bd792cf27b6 100644 (file)
@@ -63,9 +63,9 @@ int blk_common_cmd(int argc, char *const argv[], enum if_type if_type,
 
        default: /* at least 4 args */
                if (strcmp(argv[1], "read") == 0) {
-                       ulong addr = simple_strtoul(argv[2], NULL, 16);
-                       lbaint_t blk = simple_strtoul(argv[3], NULL, 16);
-                       ulong cnt = simple_strtoul(argv[4], NULL, 16);
+                       ulong addr = hextoul(argv[2], NULL);
+                       lbaint_t blk = hextoul(argv[3], NULL);
+                       ulong cnt = hextoul(argv[4], NULL);
                        ulong n;
 
                        printf("\n%s read: device %d block # "LBAFU", count %lu ... ",
@@ -78,9 +78,9 @@ int blk_common_cmd(int argc, char *const argv[], enum if_type if_type,
                               n == cnt ? "OK" : "ERROR");
                        return n == cnt ? 0 : 1;
                } else if (strcmp(argv[1], "write") == 0) {
-                       ulong addr = simple_strtoul(argv[2], NULL, 16);
-                       lbaint_t blk = simple_strtoul(argv[3], NULL, 16);
-                       ulong cnt = simple_strtoul(argv[4], NULL, 16);
+                       ulong addr = hextoul(argv[2], NULL);
+                       lbaint_t blk = hextoul(argv[3], NULL);
+                       ulong cnt = hextoul(argv[4], NULL);
                        ulong n;
 
                        printf("\n%s write: device %d block # "LBAFU", count %lu ... ",
index 887219cc079235b7136e35abcd7161152da7d6d3..e2efae7a11597142376c063e2d04599cd2223295 100644 (file)
@@ -70,10 +70,10 @@ static int do_blob(struct cmd_tbl *cmdtp, int flag, int argc,
        else
                return CMD_RET_USAGE;
 
-       src_addr = simple_strtoul(argv[2], NULL, 16);
-       dst_addr = simple_strtoul(argv[3], NULL, 16);
-       len = simple_strtoul(argv[4], NULL, 16);
-       key_addr = simple_strtoul(argv[5], NULL, 16);
+       src_addr = hextoul(argv[2], NULL);
+       dst_addr = hextoul(argv[3], NULL);
+       len = hextoul(argv[4], NULL);
+       key_addr = hextoul(argv[5], NULL);
 
        km_ptr = (uint8_t *)(uintptr_t)key_addr;
        src_ptr = (uint8_t *)(uintptr_t)src_addr;
index 6040fa5d95d62f0dcb0f32a66eadb07328ad84f2..f4fe97d89d4073f87c9657258a486543162be40c 100644 (file)
--- a/cmd/bmp.c
+++ b/cmd/bmp.c
@@ -102,7 +102,7 @@ static int do_bmp_info(struct cmd_tbl *cmdtp, int flag, int argc,
                addr = image_load_addr;
                break;
        case 2:         /* use argument */
-               addr = simple_strtoul(argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
                break;
        default:
                return CMD_RET_USAGE;
@@ -124,10 +124,10 @@ static int do_bmp_display(struct cmd_tbl *cmdtp, int flag, int argc,
                addr = image_load_addr;
                break;
        case 2:         /* use argument */
-               addr = simple_strtoul(argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
                break;
        case 4:
-               addr = simple_strtoul(argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
                if (!strcmp(argv[2], "m"))
                        x = BMP_ALIGN_CENTER;
                else
index b84c0ed89ec23843ec3f282bdc3a206370853387..fab294e622be04919ef6c2e3ff4969e28ea36375 100644 (file)
@@ -29,7 +29,7 @@ static int do_go(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        if (argc < 2)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[1], NULL, 16);
+       addr = hextoul(argv[1], NULL);
 
        printf ("## Starting application at 0x%08lX ...\n", addr);
 
index cba81ffe75e4df3ab87a73f1b7367ec67483818e..83eab0bd7f180a5dd93ba0ae2ecb974e91f692a7 100644 (file)
@@ -281,7 +281,7 @@ efi_status_t efi_install_fdt(void *fdt)
                                return EFI_NOT_FOUND;
                        }
                }
-               fdt_addr = simple_strtoul(fdt_opt, NULL, 16);
+               fdt_addr = hextoul(fdt_opt, NULL);
                if (!fdt_addr) {
                        log_err("ERROR: invalid $fdt_addr or $fdtcontroladdr\n");
                        return EFI_LOAD_ERROR;
@@ -628,7 +628,7 @@ static int do_bootefi(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc > 2) {
                uintptr_t fdt_addr;
 
-               fdt_addr = simple_strtoul(argv[2], NULL, 16);
+               fdt_addr = hextoul(argv[2], NULL);
                fdt = map_sysmem(fdt_addr, 0);
        } else {
                fdt = EFI_FDT_USE_INTERNAL;
index 3df70ea9caaf6c9a882faba78841a1ed64a1e10d..397d4b832366241ef79425ae5fbb9d16783ece6b 100644 (file)
@@ -43,7 +43,7 @@ static int booti_start(struct cmd_tbl *cmdtp, int flag, int argc,
                debug("*  kernel: default image load address = 0x%08lx\n",
                                image_load_addr);
        } else {
-               ld = simple_strtoul(argv[0], NULL, 16);
+               ld = hextoul(argv[0], NULL);
                debug("*  kernel: cmdline image address = 0x%08lx\n", ld);
        }
 
index 81c6b939781ac0ac0956e0f9564dc6be622f66e7..92468d09a1f9ff75461f58f6815f6ce3fa672432 100644 (file)
@@ -112,7 +112,7 @@ int do_bootm(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        if (argc > 0) {
                char *endp;
 
-               simple_strtoul(argv[0], &endp, 16);
+               hextoul(argv[0], &endp);
                /* endp pointing to NULL means that argv[0] was just a
                 * valid number, pass it along to the normal bootm processing
                 *
@@ -240,7 +240,7 @@ static int do_iminfo(struct cmd_tbl *cmdtp, int flag, int argc,
        }
 
        for (arg = 1; arg < argc; ++arg) {
-               addr = simple_strtoul(argv[arg], NULL, 16);
+               addr = hextoul(argv[arg], NULL);
                if (image_info(addr) != 0)
                        rcode = 1;
        }
index 0e623f216b198fec273155a2ce9ef4aeb64d22dd..77a4bc66ff43fd6e43c95545210d634b9f109034 100644 (file)
@@ -24,12 +24,12 @@ static int get_base_size(int argc, char *const argv[], ulong *basep,
        *sizep = CONFIG_BOOTSTAGE_STASH_SIZE;
        if (argc < 2)
                return 0;
-       *basep = simple_strtoul(argv[1], &endp, 16);
+       *basep = hextoul(argv[1], &endp);
        if (*argv[1] == 0 || *endp != 0)
                return -1;
        if (argc == 2)
                return 0;
-       *sizep = simple_strtoul(argv[2], &endp, 16);
+       *sizep = hextoul(argv[2], &endp);
        if (*argv[2] == 0 || *endp != 0)
                return -1;
 
index 7556cd2752a8ec30779feef7db00c884e8363618..4f024bde5fe366bf0f3c3e31da428b24ef2b5dbd 100644 (file)
@@ -39,7 +39,7 @@ static int bootz_start(struct cmd_tbl *cmdtp, int flag, int argc,
                debug("*  kernel: default image load address = 0x%08lx\n",
                                image_load_addr);
        } else {
-               images->ep = simple_strtoul(argv[0], NULL, 16);
+               images->ep = hextoul(argv[0], NULL);
                debug("*  kernel: cmdline image address = 0x%08lx\n",
                        images->ep);
        }
index 4a36b300c43c18087b43d8d269429a9177cccafe..93b5cb4cebe6547d606f80e2fcd051e0def6a155 100644 (file)
@@ -53,13 +53,13 @@ static int do_spi_images_addr(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_USAGE;
 
        /* convert command parameter to fastboot address (base 16), i.e. hex */
-       images_load_addr = simple_strtoul(argv[1], NULL, 16);
+       images_load_addr = hextoul(argv[1], NULL);
        if (!images_load_addr) {
                pr_err("Invalid load address\n");
                return CMD_RET_USAGE;
        }
 
-       spi_load_addr = simple_strtoul(argv[2], NULL, 16);
+       spi_load_addr = hextoul(argv[2], NULL);
        if (!spi_load_addr) {
                pr_err("Invalid spi load address\n");
                return CMD_RET_USAGE;
index 10c2c929c37489d493ba6602eefd56f6172a5b3d..8a61f2c26f9eaf99dd29e5a7a14ca4d59b7afe7d 100644 (file)
@@ -22,7 +22,7 @@ static int do_cbfs_init(struct cmd_tbl *cmdtp, int flag, int argc,
                return 0;
        }
        if (argc == 2) {
-               end_of_rom = simple_strtoul(argv[1], &ep, 16);
+               end_of_rom = hextoul(argv[1], &ep);
                if (*ep) {
                        puts("\n** Invalid end of ROM **\n");
                        return 1;
@@ -58,9 +58,9 @@ static int do_cbfs_fsload(struct cmd_tbl *cmdtp, int flag, int argc,
        }
 
        /* parse offset and count */
-       offset = simple_strtoul(argv[1], NULL, 16);
+       offset = hextoul(argv[1], NULL);
        if (argc == 4)
-               count = simple_strtoul(argv[3], NULL, 16);
+               count = hextoul(argv[3], NULL);
        else
                count = 0;
 
index 1aeb56702cad3c9ad9b7f64a693cffab62df8a5c..44c0818d5d42ed703d42f55203e7609fc7bdc51f 100644 (file)
@@ -107,7 +107,7 @@ int do_cramfs_load(struct cmd_tbl *cmdtp, int flag, int argc,
        struct mtdids id;
 
        ulong addr;
-       addr = simple_strtoul(env_get("cramfsaddr"), NULL, 16);
+       addr = hextoul(env_get("cramfsaddr"), NULL);
 
        /* hack! */
        /* cramfs_* only supports NOR flash chips */
@@ -172,7 +172,7 @@ int do_cramfs_ls(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        struct mtdids id;
 
        ulong addr;
-       addr = simple_strtoul(env_get("cramfsaddr"), NULL, 16);
+       addr = hextoul(env_get("cramfsaddr"), NULL);
 
        /* hack! */
        /* cramfs_* only supports NOR flash chips */
index eb5053d6424ebf110ed6811f5e9d8358e4d31fea..abda5d6cd23cf262a005355362ceb1c403ca5efd 100644 (file)
@@ -65,11 +65,11 @@ static int do_read_write(struct udevice *dev, int is_write, int argc,
                return 1;
        if (argc < 4)
                return 1;
-       addr = simple_strtoul(argv[3], &endp, 16);
+       addr = hextoul(argv[3], &endp);
        if (*argv[3] == 0 || *endp != 0)
                return 1;
        if (argc > 4) {
-               size = simple_strtoul(argv[4], &endp, 16);
+               size = hextoul(argv[4], &endp);
                if (*argv[4] == 0 || *endp != 0)
                        return 1;
        }
index 78a55f72b604352409d26b140dbbd0ba4e77f670..a2957f770d03dee756a6bbdb54acaf68eb73abb5 100644 (file)
@@ -48,7 +48,7 @@ static int do_demo_light(struct cmd_tbl *cmdtp, int flag, int argc,
        int ret;
 
        if (argc) {
-               light = simple_strtoul(argv[0], NULL, 16);
+               light = hextoul(argv[0], NULL);
                ret = demo_set_light(demo_dev, light);
        } else {
                ret = demo_get_light(demo_dev);
index 2726115e8558f09e1b842eb4c9410ac5d194e9ad..cb3b990ba3a567f0efa2b034ea2bf719400e0c4b 100644 (file)
@@ -36,7 +36,7 @@ int common_diskboot(struct cmd_tbl *cmdtp, const char *intf, int argc,
        bootstage_mark(BOOTSTAGE_ID_IDE_ADDR);
 
        if (argc > 1)
-               addr = simple_strtoul(argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
 
        bootstage_mark(BOOTSTAGE_ID_IDE_BOOT_DEVICE);
 
index 8211a589acf592b0a77fc6b40ede17fb06a71ce8..67ab06aefc1b38e131e77a882b84d60272323a95 100644 (file)
@@ -61,7 +61,7 @@ static int do_efi_capsule_update(struct cmd_tbl *cmdtp, int flag,
                argv++;
        }
 
-       capsule = (typeof(capsule))simple_strtoul(argv[1], &endp, 16);
+       capsule = (typeof(capsule))hextoul(argv[1], &endp);
        if (endp == argv[1]) {
                printf("Invalid address: %s", argv[1]);
                return CMD_RET_FAILURE;
@@ -117,7 +117,7 @@ static int do_efi_capsule_show(struct cmd_tbl *cmdtp, int flag,
        if (argc != 2)
                return CMD_RET_USAGE;
 
-       capsule = (typeof(capsule))simple_strtoul(argv[1], &endp, 16);
+       capsule = (typeof(capsule))hextoul(argv[1], &endp);
        if (endp == argv[1]) {
                printf("Invalid address: %s", argv[1]);
                return CMD_RET_FAILURE;
@@ -256,7 +256,7 @@ static int do_efi_capsule_res(struct cmd_tbl *cmdtp, int flag,
                argc--;
                argv++;
 
-               capsule_id = simple_strtoul(argv[0], &endp, 16);
+               capsule_id = hextoul(argv[0], &endp);
                if (capsule_id < 0 || capsule_id > 0xffff)
                        return CMD_RET_USAGE;
 
@@ -983,7 +983,7 @@ static int do_efi_boot_add(struct cmd_tbl *cmdtp, int flag,
                                r = CMD_RET_USAGE;
                                goto out;
                        }
-                       id = (int)simple_strtoul(argv[1], &endp, 16);
+                       id = (int)hextoul(argv[1], &endp);
                        if (*endp != '\0' || id > 0xffff)
                                return CMD_RET_USAGE;
 
@@ -1113,7 +1113,7 @@ static int do_efi_boot_rm(struct cmd_tbl *cmdtp, int flag,
 
        guid = efi_global_variable_guid;
        for (i = 1; i < argc; i++, argv++) {
-               id = (int)simple_strtoul(argv[1], &endp, 16);
+               id = (int)hextoul(argv[1], &endp);
                if (*endp != '\0' || id > 0xffff)
                        return CMD_RET_FAILURE;
 
@@ -1410,7 +1410,7 @@ static int do_efi_boot_next(struct cmd_tbl *cmdtp, int flag,
        if (argc != 2)
                return CMD_RET_USAGE;
 
-       bootnext = (u16)simple_strtoul(argv[1], &endp, 16);
+       bootnext = (u16)hextoul(argv[1], &endp);
        if (*endp) {
                printf("invalid value: %s\n", argv[1]);
                r = CMD_RET_FAILURE;
@@ -1469,7 +1469,7 @@ static int do_efi_boot_order(struct cmd_tbl *cmdtp, int flag,
                return CMD_RET_FAILURE;
 
        for (i = 0; i < argc; i++) {
-               id = (int)simple_strtoul(argv[i], &endp, 16);
+               id = (int)hextoul(argv[i], &endp);
                if (*endp != '\0' || id > 0xffff) {
                        printf("invalid value: %s\n", argv[i]);
                        r = CMD_RET_FAILURE;
index d44b95d90339e7d9c6b54a16a557c50db36d2b15..d75b21461c2096f5b4deb1d9211d4c485947ed22 100644 (file)
--- a/cmd/elf.c
+++ b/cmd/elf.c
@@ -115,7 +115,7 @@ int do_bootvx(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        if (argc < 2)
                addr = image_load_addr;
        else
-               addr = simple_strtoul(argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
 
 #if defined(CONFIG_CMD_NET)
        /*
@@ -200,7 +200,7 @@ int do_bootvx(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        }
 
        if (!bootaddr)
-               bootaddr = simple_strtoul(tmp, NULL, 16);
+               bootaddr = hextoul(tmp, NULL);
 
        /*
         * Check to see if the bootline is defined in the 'bootargs' parameter.
index ad5c06491183a4ac30a5b4bc4a49bca8384651ec..033a2c95e8f0b64524204d207874569ca0ccb6be 100644 (file)
@@ -112,13 +112,13 @@ static int do_fastboot(struct cmd_tbl *cmdtp, int flag, int argc,
                        case 'l':
                                if (--argc <= 0)
                                        return CMD_RET_USAGE;
-                               buf_addr = simple_strtoul(*++argv, NULL, 16);
+                               buf_addr = hextoul(*++argv, NULL);
                                goto NXTARG;
 
                        case 's':
                                if (--argc <= 0)
                                        return CMD_RET_USAGE;
-                               buf_size = simple_strtoul(*++argv, NULL, 16);
+                               buf_size = hextoul(*++argv, NULL);
                                goto NXTARG;
 
                        default:
index baec05529adaefd1056aafc5ca9b0a4feff52bfd..c42f1c79d499c1903de5cd926434bb4d1a0468af 100644 (file)
--- a/cmd/fdt.c
+++ b/cmd/fdt.c
@@ -143,7 +143,7 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                        return 0;
                }
 
-               addr = simple_strtoul(argv[0], NULL, 16);
+               addr = hextoul(argv[0], NULL);
                blob = map_sysmem(addr, 0);
                if (!fdt_valid(&blob))
                        return 1;
@@ -157,7 +157,7 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                        int  err;
 
                        /* Optional new length */
-                       len = simple_strtoul(argv[1], NULL, 16);
+                       len = hextoul(argv[1], NULL);
                        if (len < fdt_totalsize(blob)) {
                                printf("New length %d < existing length %d, ignoring\n",
                                       len, fdt_totalsize(blob));
@@ -195,11 +195,11 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                /*
                 * Set the address and length of the fdt.
                 */
-               working_fdt = (struct fdt_header *)simple_strtoul(argv[2], NULL, 16);
+               working_fdt = (struct fdt_header *)hextoul(argv[2], NULL);
                if (!fdt_valid(&working_fdt))
                        return 1;
 
-               newaddr = (struct fdt_header *)simple_strtoul(argv[3],NULL,16);
+               newaddr = (struct fdt_header *)hextoul(argv[3], NULL);
 
                /*
                 * If the user specifies a length, use that.  Otherwise use the
@@ -208,7 +208,7 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                if (argc <= 4) {
                        len = fdt_totalsize(working_fdt);
                } else {
-                       len = simple_strtoul(argv[4], NULL, 16);
+                       len = hextoul(argv[4], NULL);
                        if (len < fdt_totalsize(working_fdt)) {
                                printf ("New length 0x%X < existing length "
                                        "0x%X, aborting.\n",
@@ -364,21 +364,22 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                }
 
                if (subcmd[0] == 'n' || (subcmd[0] == 's' && argc == 5)) {
-                       int reqIndex = -1;
+                       int req_index = -1;
                        int startDepth = fdt_node_depth(
                                working_fdt, nodeoffset);
                        int curDepth = startDepth;
-                       int curIndex = -1;
+                       int cur_index = -1;
                        int nextNodeOffset = fdt_next_node(
                                working_fdt, nodeoffset, &curDepth);
 
                        if (subcmd[0] == 'n')
-                               reqIndex = simple_strtoul(argv[5], NULL, 16);
+                               req_index = hextoul(argv[5], NULL);
 
                        while (curDepth > startDepth) {
                                if (curDepth == startDepth + 1)
-                                       curIndex++;
-                               if (subcmd[0] == 'n' && curIndex == reqIndex) {
+                                       cur_index++;
+                               if (subcmd[0] == 'n' &&
+                                   cur_index == req_index) {
                                        const char *node_name;
 
                                        node_name = fdt_get_name(working_fdt,
@@ -394,7 +395,7 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                        }
                        if (subcmd[0] == 's') {
                                /* get the num nodes at this level */
-                               env_set_ulong(var, curIndex + 1);
+                               env_set_ulong(var, cur_index + 1);
                        } else {
                                /* node index not found */
                                printf("libfdt node not found\n");
@@ -548,7 +549,7 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
         * Set boot cpu id
         */
        } else if (strncmp(argv[1], "boo", 3) == 0) {
-               unsigned long tmp = simple_strtoul(argv[2], NULL, 16);
+               unsigned long tmp = hextoul(argv[2], NULL);
                fdt_set_boot_cpuid_phys(working_fdt, tmp);
 
        /*
@@ -600,7 +601,7 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                                return err;
                        }
                } else if (argv[2][0] == 'd') {
-                       unsigned long idx = simple_strtoul(argv[3], NULL, 16);
+                       unsigned long idx = hextoul(argv[3], NULL);
                        int err = fdt_del_mem_rsv(working_fdt, idx);
 
                        if (err < 0) {
@@ -636,8 +637,8 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                        return CMD_RET_USAGE;
 
                if (argc == 4) {
-                       initrd_start = simple_strtoul(argv[2], NULL, 16);
-                       initrd_end = simple_strtoul(argv[3], NULL, 16);
+                       initrd_start = hextoul(argv[2], NULL);
+                       initrd_end = hextoul(argv[3], NULL);
                }
 
                fdt_chosen(working_fdt);
@@ -654,7 +655,7 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                        return CMD_RET_FAILURE;
 
                if (argc > 2) {
-                       addr = simple_strtoul(argv[2], NULL, 16);
+                       addr = hextoul(argv[2], NULL);
                        blob = map_sysmem(addr, 0);
                } else {
                        blob = (struct fdt_header *)gd->fdt_blob;
@@ -691,7 +692,7 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                if (!working_fdt)
                        return CMD_RET_FAILURE;
 
-               addr = simple_strtoul(argv[2], NULL, 16);
+               addr = hextoul(argv[2], NULL);
                blob = map_sysmem(addr, 0);
                if (!fdt_valid(&blob))
                        return CMD_RET_FAILURE;
@@ -706,7 +707,7 @@ static int do_fdt(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        else if (strncmp(argv[1], "re", 2) == 0) {
                uint extrasize;
                if (argc > 2)
-                       extrasize = simple_strtoul(argv[2], NULL, 16);
+                       extrasize = hextoul(argv[2], NULL);
                else
                        extrasize = 0;
                fdt_shrink_to_minimum(working_fdt, extrasize);
@@ -797,7 +798,7 @@ static int fdt_parse_prop(char * const *newval, int count, char *data, int *len)
                        }
                        if (!isxdigit(*newp))
                                break;
-                       tmp = simple_strtoul(newp, &newp, 16);
+                       tmp = hextoul(newp, &newp);
                        *data++ = tmp & 0xFF;
                        *len    = *len + 1;
                }
@@ -883,7 +884,7 @@ static void print_data(const void *data, int len)
 
        env_max_dump = env_get("fdt_max_dump");
        if (env_max_dump)
-               max_dump = simple_strtoul(env_max_dump, NULL, 16);
+               max_dump = hextoul(env_max_dump, NULL);
 
        /*
         * It is a string, but it may have multiple strings (embedded '\0's).
index 240871e8089a34e841888a8e05178c514bc70737..bc93e984bca6e9f3eca0c6a0e6a05243f5f13e20 100644 (file)
@@ -151,7 +151,7 @@ addr_spec(char *arg1, char *arg2, ulong *addr_first, ulong *addr_last)
        char *ep;
        char len_used; /* indicates if the "start +length" form used */
 
-       *addr_first = simple_strtoul(arg1, &ep, 16);
+       *addr_first = hextoul(arg1, &ep);
        if (ep == arg1 || *ep != '\0')
                return -1;
 
@@ -161,7 +161,7 @@ addr_spec(char *arg1, char *arg2, ulong *addr_first, ulong *addr_last)
                ++arg2;
        }
 
-       *addr_last = simple_strtoul(arg2, &ep, 16);
+       *addr_last = hextoul(arg2, &ep);
        if (ep == arg2 || *ep != '\0')
                return -1;
 
@@ -287,7 +287,7 @@ static int do_flinfo(struct cmd_tbl *cmdtp, int flag, int argc,
                return 0;
        }
 
-       bank = simple_strtoul(argv[1], NULL, 16);
+       bank = hextoul(argv[1], NULL);
        if ((bank < 1) || (bank > CONFIG_SYS_MAX_FLASH_BANKS)) {
                printf ("Only FLASH Banks # 1 ... # %d supported\n",
                        CONFIG_SYS_MAX_FLASH_BANKS);
@@ -366,7 +366,7 @@ static int do_flerase(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_USAGE;
 
        if (strcmp(argv[1], "bank") == 0) {
-               bank = simple_strtoul(argv[2], NULL, 16);
+               bank = hextoul(argv[2], NULL);
                if ((bank < 1) || (bank > CONFIG_SYS_MAX_FLASH_BANKS)) {
                        printf ("Only FLASH Banks # 1 ... # %d supported\n",
                                CONFIG_SYS_MAX_FLASH_BANKS);
@@ -547,7 +547,7 @@ static int do_protect(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_USAGE;
 
        if (strcmp(argv[2], "bank") == 0) {
-               bank = simple_strtoul(argv[3], NULL, 16);
+               bank = hextoul(argv[3], NULL);
                if ((bank < 1) || (bank > CONFIG_SYS_MAX_FLASH_BANKS)) {
                        printf ("Only FLASH Banks # 1 ... # %d supported\n",
                                CONFIG_SYS_MAX_FLASH_BANKS);
index 51410a8e424cf3a9689e4adb3b2d920eadd3a665..3fdd0b35e80f3cb00328dc5aa5e269a2b54a5e7f 100644 (file)
@@ -57,7 +57,7 @@ static int do_fpga_check_params(long *dev, long *fpga_data, size_t *data_size,
        }
        *fpga_data = local_fpga_data;
 
-       local_data_size = simple_strtoul(argv[2], NULL, 16);
+       local_data_size = hextoul(argv[2], NULL);
        if (!local_data_size) {
                debug("fpga: zero size\n");
                return CMD_RET_USAGE;
@@ -95,8 +95,8 @@ int do_fpga_loads(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                 */
                argc++;
 
-       fpga_sec_info.encflag = (u8)simple_strtoul(argv[4], NULL, 16);
-       fpga_sec_info.authflag = (u8)simple_strtoul(argv[3], NULL, 16);
+       fpga_sec_info.encflag = (u8)hextoul(argv[4], NULL);
+       fpga_sec_info.authflag = (u8)hextoul(argv[3], NULL);
 
        if (fpga_sec_info.authflag >= FPGA_NO_ENC_OR_NO_AUTH &&
            fpga_sec_info.encflag >= FPGA_NO_ENC_OR_NO_AUTH) {
@@ -134,7 +134,7 @@ static int do_fpga_loadfs(struct cmd_tbl *cmdtp, int flag, int argc,
                return ret;
 
        fpga_fsinfo.fstype = FS_TYPE_ANY;
-       fpga_fsinfo.blocksize = (unsigned int)simple_strtoul(argv[3], NULL, 16);
+       fpga_fsinfo.blocksize = (unsigned int)hextoul(argv[3], NULL);
        fpga_fsinfo.interface = argv[4];
        fpga_fsinfo.dev_part = argv[5];
        fpga_fsinfo.filename = argv[6];
@@ -274,7 +274,7 @@ static int do_fpga_loadmk(struct cmd_tbl *cmdtp, int flag, int argc,
        } else
 #endif
        {
-               fpga_data = (void *)simple_strtoul(datastr, NULL, 16);
+               fpga_data = (void *)hextoul(datastr, NULL);
                debug("*  fpga: cmdline image address = 0x%08lx\n",
                      (ulong)fpga_data);
        }
index fb2fe63e78abda7fe7a2da2e953248902a9157d9..e65441bb76a0777130de4b54f2389d17f20d44cb 100644 (file)
@@ -49,19 +49,19 @@ int do_fpga_md(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                /*
                 * FPGA is specified since argc > 2
                 */
-               fpga = simple_strtoul(argv[1], NULL, 16);
+               fpga = hextoul(argv[1], NULL);
 
                /*
                 * Address is specified since argc > 2
                 */
-               addr = simple_strtoul(argv[2], NULL, 16);
+               addr = hextoul(argv[2], NULL);
 
                /*
                 * If another parameter, it is the length to display.
                 * Length is the number of objects, not number of bytes.
                 */
                if (argc > 3)
-                       length = simple_strtoul(argv[3], NULL, 16);
+                       length = hextoul(argv[3], NULL);
        }
 
        nbytes = length * sizeof(u16);
index 6aa3d9167a49a73528d3e1dddc963170bc718058..2e998abbcdca35371f765b6ee4e825bdf8f0d675 100644 (file)
@@ -62,7 +62,7 @@ static int do_host_bind(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc > 2)
                return CMD_RET_USAGE;
        dev_str = argv[0];
-       dev = simple_strtoul(dev_str, &ep, 16);
+       dev = hextoul(dev_str, &ep);
        if (*ep) {
                printf("** Bad device specification %s **\n", dev_str);
                return CMD_RET_USAGE;
@@ -82,7 +82,7 @@ static int do_host_info(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc >= 2) {
                char *ep;
                char *dev_str = argv[1];
-               int dev = simple_strtoul(dev_str, &ep, 16);
+               int dev = hextoul(dev_str, &ep);
                if (*ep) {
                        printf("** Bad device specification %s **\n", dev_str);
                        return CMD_RET_USAGE;
@@ -139,7 +139,7 @@ static int do_host_dev(struct cmd_tbl *cmdtp, int flag, int argc,
                return 0;
        }
 
-       dev = simple_strtoul(argv[1], &ep, 16);
+       dev = hextoul(argv[1], &ep);
        if (*ep) {
                printf("** Bad device specification %s **\n", argv[2]);
                return CMD_RET_USAGE;
index 0e1895ad65d491c08a17311a85b0d199b079684a..631222c28fc18cd8233eef157a2a34e8d19329fa 100644 (file)
--- a/cmd/i2c.c
+++ b/cmd/i2c.c
@@ -308,13 +308,13 @@ static int do_i2c_read(struct cmd_tbl *cmdtp, int flag, int argc,
        /*
         * I2C chip address
         */
-       chip = simple_strtoul(argv[1], NULL, 16);
+       chip = hextoul(argv[1], NULL);
 
        /*
         * I2C data address within the chip.  This can be 1 or
         * 2 bytes long.  Some day it might be 3 bytes long :-).
         */
-       devaddr = simple_strtoul(argv[2], NULL, 16);
+       devaddr = hextoul(argv[2], NULL);
        alen = get_alen(argv[2], DEFAULT_ADDR_LEN);
        if (alen > 3)
                return CMD_RET_USAGE;
@@ -322,12 +322,12 @@ static int do_i2c_read(struct cmd_tbl *cmdtp, int flag, int argc,
        /*
         * Length is the number of objects, not number of bytes.
         */
-       length = simple_strtoul(argv[3], NULL, 16);
+       length = hextoul(argv[3], NULL);
 
        /*
         * memaddr is the address where to store things in memory
         */
-       memaddr = (u_char *)simple_strtoul(argv[4], NULL, 16);
+       memaddr = (u_char *)hextoul(argv[4], NULL);
 
 #if CONFIG_IS_ENABLED(DM_I2C)
        ret = i2c_get_cur_bus_chip(chip, &dev);
@@ -363,18 +363,18 @@ static int do_i2c_write(struct cmd_tbl *cmdtp, int flag, int argc,
        /*
         * memaddr is the address where to store things in memory
         */
-       memaddr = (u_char *)simple_strtoul(argv[1], NULL, 16);
+       memaddr = (u_char *)hextoul(argv[1], NULL);
 
        /*
         * I2C chip address
         */
-       chip = simple_strtoul(argv[2], NULL, 16);
+       chip = hextoul(argv[2], NULL);
 
        /*
         * I2C data address within the chip.  This can be 1 or
         * 2 bytes long.  Some day it might be 3 bytes long :-).
         */
-       devaddr = simple_strtoul(argv[3], NULL, 16);
+       devaddr = hextoul(argv[3], NULL);
        alen = get_alen(argv[3], DEFAULT_ADDR_LEN);
        if (alen > 3)
                return cmd_usage(cmdtp);
@@ -382,7 +382,7 @@ static int do_i2c_write(struct cmd_tbl *cmdtp, int flag, int argc,
        /*
         * Length is the number of bytes.
         */
-       length = simple_strtoul(argv[4], NULL, 16);
+       length = hextoul(argv[4], NULL);
 
 #if CONFIG_IS_ENABLED(DM_I2C)
        ret = i2c_get_cur_bus_chip(chip, &dev);
@@ -447,13 +447,13 @@ static int do_i2c_flags(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 2)
                return CMD_RET_USAGE;
 
-       chip = simple_strtoul(argv[1], NULL, 16);
+       chip = hextoul(argv[1], NULL);
        ret = i2c_get_cur_bus_chip(chip, &dev);
        if (ret)
                return i2c_report_err(ret, I2C_ERR_READ);
 
        if (argc > 2) {
-               flags = simple_strtoul(argv[2], NULL, 16);
+               flags = hextoul(argv[2], NULL);
                ret = i2c_set_chip_flags(dev, flags);
        } else  {
                ret = i2c_get_chip_flags(dev, &flags);
@@ -477,13 +477,13 @@ static int do_i2c_olen(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 2)
                return CMD_RET_USAGE;
 
-       chip = simple_strtoul(argv[1], NULL, 16);
+       chip = hextoul(argv[1], NULL);
        ret = i2c_get_cur_bus_chip(chip, &dev);
        if (ret)
                return i2c_report_err(ret, I2C_ERR_READ);
 
        if (argc > 2) {
-               olen = simple_strtoul(argv[2], NULL, 16);
+               olen = hextoul(argv[2], NULL);
                ret = i2c_set_chip_offset_len(dev, olen);
        } else  {
                ret = i2c_get_chip_offset_len(dev);
@@ -543,13 +543,13 @@ static int do_i2c_md(struct cmd_tbl *cmdtp, int flag, int argc,
                /*
                 * I2C chip address
                 */
-               chip = simple_strtoul(argv[1], NULL, 16);
+               chip = hextoul(argv[1], NULL);
 
                /*
                 * I2C data address within the chip.  This can be 1 or
                 * 2 bytes long.  Some day it might be 3 bytes long :-).
                 */
-               addr = simple_strtoul(argv[2], NULL, 16);
+               addr = hextoul(argv[2], NULL);
                alen = get_alen(argv[2], DEFAULT_ADDR_LEN);
                if (alen > 3)
                        return CMD_RET_USAGE;
@@ -559,7 +559,7 @@ static int do_i2c_md(struct cmd_tbl *cmdtp, int flag, int argc,
                 * Length is the number of objects, not number of bytes.
                 */
                if (argc > 3)
-                       length = simple_strtoul(argv[3], NULL, 16);
+                       length = hextoul(argv[3], NULL);
        }
 
 #if CONFIG_IS_ENABLED(DM_I2C)
@@ -651,12 +651,12 @@ static int do_i2c_mw(struct cmd_tbl *cmdtp, int flag, int argc,
        /*
         * Chip is always specified.
         */
-       chip = simple_strtoul(argv[1], NULL, 16);
+       chip = hextoul(argv[1], NULL);
 
        /*
         * Address is always specified.
         */
-       addr = simple_strtoul(argv[2], NULL, 16);
+       addr = hextoul(argv[2], NULL);
        alen = get_alen(argv[2], DEFAULT_ADDR_LEN);
        if (alen > 3)
                return CMD_RET_USAGE;
@@ -671,13 +671,13 @@ static int do_i2c_mw(struct cmd_tbl *cmdtp, int flag, int argc,
        /*
         * Value to write is always specified.
         */
-       byte = simple_strtoul(argv[3], NULL, 16);
+       byte = hextoul(argv[3], NULL);
 
        /*
         * Optional count
         */
        if (argc == 5)
-               count = simple_strtoul(argv[4], NULL, 16);
+               count = hextoul(argv[4], NULL);
        else
                count = 1;
 
@@ -740,12 +740,12 @@ static int do_i2c_crc(struct cmd_tbl *cmdtp, int flag, int argc,
        /*
         * Chip is always specified.
         */
-       chip = simple_strtoul(argv[1], NULL, 16);
+       chip = hextoul(argv[1], NULL);
 
        /*
         * Address is always specified.
         */
-       addr = simple_strtoul(argv[2], NULL, 16);
+       addr = hextoul(argv[2], NULL);
        alen = get_alen(argv[2], DEFAULT_ADDR_LEN);
        if (alen > 3)
                return CMD_RET_USAGE;
@@ -760,7 +760,7 @@ static int do_i2c_crc(struct cmd_tbl *cmdtp, int flag, int argc,
        /*
         * Count is always specified
         */
-       count = simple_strtoul(argv[3], NULL, 16);
+       count = hextoul(argv[3], NULL);
 
        printf ("CRC32 for %08lx ... %08lx ==> ", addr, addr + count - 1);
        /*
@@ -840,12 +840,12 @@ static int mod_i2c_mem(struct cmd_tbl *cmdtp, int incrflag, int flag, int argc,
                /*
                 * Chip is always specified.
                 */
-               chip = simple_strtoul(argv[1], NULL, 16);
+               chip = hextoul(argv[1], NULL);
 
                /*
                 * Address is always specified.
                 */
-               addr = simple_strtoul(argv[2], NULL, 16);
+               addr = hextoul(argv[2], NULL);
                alen = get_alen(argv[2], DEFAULT_ADDR_LEN);
                if (alen > 3)
                        return CMD_RET_USAGE;
@@ -900,7 +900,7 @@ static int mod_i2c_mem(struct cmd_tbl *cmdtp, int incrflag, int flag, int argc,
                else {
                        char *endp;
 
-                       data = simple_strtoul(console_buffer, &endp, 16);
+                       data = hextoul(console_buffer, &endp);
                        if (size == 1)
                                data = data << 24;
                        else if (size == 2)
@@ -1049,12 +1049,12 @@ static int do_i2c_loop(struct cmd_tbl *cmdtp, int flag, int argc,
        /*
         * Chip is always specified.
         */
-       chip = simple_strtoul(argv[1], NULL, 16);
+       chip = hextoul(argv[1], NULL);
 
        /*
         * Address is always specified.
         */
-       addr = simple_strtoul(argv[2], NULL, 16);
+       addr = hextoul(argv[2], NULL);
        alen = get_alen(argv[2], DEFAULT_ADDR_LEN);
        if (alen > 3)
                return CMD_RET_USAGE;
@@ -1070,7 +1070,7 @@ static int do_i2c_loop(struct cmd_tbl *cmdtp, int flag, int argc,
         * Length is the number of objects, not number of bytes.
         */
        length = 1;
-       length = simple_strtoul(argv[3], NULL, 16);
+       length = hextoul(argv[3], NULL);
        if (length > sizeof(bytes))
                length = sizeof(bytes);
 
@@ -1219,7 +1219,7 @@ static int do_sdram(struct cmd_tbl *cmdtp, int flag, int argc,
        /*
         * Chip is always specified.
         */
-       chip = simple_strtoul (argv[1], NULL, 16);
+       chip = hextoul(argv[1], NULL);
 
 #if CONFIG_IS_ENABLED(DM_I2C)
        ret = i2c_get_cur_bus_chip(chip, &dev);
@@ -1673,7 +1673,7 @@ int do_edid(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                return 1;
        }
 
-       chip = simple_strtoul(argv[1], NULL, 16);
+       chip = hextoul(argv[1], NULL);
 #if CONFIG_IS_ENABLED(DM_I2C)
        ret = i2c_get_cur_bus_chip(chip, &dev);
        if (!ret)
index c075be623cce04e5938cf7d9e24290f24efb59d2..81dfc4c4e83d19934ac6b7ac4630f396b75d28dc 100644 (file)
--- a/cmd/ini.c
+++ b/cmd/ini.c
@@ -236,10 +236,10 @@ static int do_ini(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                return CMD_RET_USAGE;
 
        section = argv[1];
-       file_address = (char *)simple_strtoul(
-               argc < 3 ? env_get("loadaddr") : argv[2], NULL, 16);
-       file_size = (size_t)simple_strtoul(
-               argc < 4 ? env_get("filesize") : argv[3], NULL, 16);
+       file_address = (char *)hextoul(argc < 3 ? env_get("loadaddr") : argv[2],
+                                       NULL);
+       file_size = (size_t)hextoul(argc < 4 ? env_get("filesize") : argv[3],
+                                    NULL);
 
        return ini_parse(file_address, file_size, ini_handler, (void *)section);
 }
index c7e964153b89a3dabca727e9707975418ea4e72a..e23ea627006f6529e4dd14909ee8f95996aef72e 100644 (file)
--- a/cmd/io.c
+++ b/cmd/io.c
@@ -51,7 +51,7 @@ int do_io_iod(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                        return 1;
 
                /* Address is specified since argc > 1 */
-               addr = simple_strtoul(argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
                addr += base_address;
 
                /*
@@ -59,7 +59,7 @@ int do_io_iod(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                 * Length is the number of objects, not number of bytes.
                 */
                if (argc > 2)
-                       length = simple_strtoul(argv[2], NULL, 16);
+                       length = hextoul(argv[2], NULL);
        }
 
        bytes = size * length;
@@ -102,8 +102,8 @@ int do_io_iow(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        if (size < 0)
                return 1;
 
-       addr = simple_strtoul(argv[1], NULL, 16);
-       val = simple_strtoul(argv[2], NULL, 16);
+       addr = hextoul(argv[1], NULL);
+       val = hextoul(argv[2], NULL);
 
        if (size == 4)
                outl((u32) val, addr);
index 652ebefb89eed10bb76f1f0189972eb63bb92e79..f28359e2875d68b761c443c38cf136511f2c99e7 100644 (file)
@@ -60,8 +60,8 @@ static int do_set_buffer(int argc, char *const argv[])
        ulong addr = 0, size = 0;
 
        if (argc == 2) {
-               addr = simple_strtoul(*argv++, NULL, 16);
-               size = simple_strtoul(*argv++, NULL, 16);
+               addr = hextoul(*argv++, NULL);
+               size = hextoul(*argv++, NULL);
        } else if (argc != 0) {
                return CMD_RET_USAGE;
        }
@@ -76,8 +76,8 @@ static int do_set_region(int argc, char *const argv[])
        ulong addr = 0, size = 0;
 
        if (argc == 2) {
-               addr = simple_strtoul(*argv++, NULL, 16);
-               size = simple_strtoul(*argv++, NULL, 16);
+               addr = hextoul(*argv++, NULL);
+               size = hextoul(*argv++, NULL);
        } else if (argc != 0) {
                return CMD_RET_USAGE;
        }
index 9a441ce9b8aba1c8d2fed07ab92713186fff142b..74414cbdc4c67e8dba32b533b1c563d5e182e542 100644 (file)
@@ -57,7 +57,7 @@ static long evalexp(char *s, int w)
 
        /* if the parameter starts with a * then assume is a pointer to the value we want */
        if (s[0] == '*') {
-               addr = simple_strtoul(&s[1], NULL, 16);
+               addr = hextoul(&s[1], NULL);
                buf = map_physmem(addr, w, MAP_WRBACK);
                if (!buf && addr) {
                        puts("Failed to map physical memory\n");
@@ -82,7 +82,7 @@ static long evalexp(char *s, int w)
                unmap_physmem(buf, w);
                return l;
        } else {
-               l = simple_strtoul(s, NULL, 16);
+               l = hextoul(s, NULL);
        }
 
        /* avoid overflow on mask calculus */
@@ -93,7 +93,7 @@ static char * evalstr(char *s)
 {
        /* if the parameter starts with a * then assume a string pointer else its a literal */
        if (s[0] == '*') {
-               return (char *)simple_strtoul(&s[1], NULL, 16);
+               return (char *)hextoul(&s[1], NULL);
        } else if (s[0] == '$') {
                int i = 2;
 
index 9540988e33e5f06ca242b2f51bf9d572e160a921..63bd55263a29611037bf75395bc5622d0a2e2d9b 100644 (file)
@@ -491,7 +491,7 @@ int do_jffs2_fsload(struct cmd_tbl *cmdtp, int flag, int argc,
                filename = argv[1];
        }
        if (argc == 3) {
-               offset = simple_strtoul(argv[1], NULL, 16);
+               offset = hextoul(argv[1], NULL);
                image_load_addr = offset;
                filename = argv[2];
        }
index b7894d7db02a73bbbbf7b7719f626e44cc9f8e20..ec3eed18b14be9e27cfc5751ff6d8b7b1a003136 100644 (file)
@@ -257,11 +257,11 @@ int do_save_serial(struct cmd_tbl *cmdtp, int flag, int argc,
 #endif
 
        if (argc >= 2) {
-               offset = simple_strtoul(argv[1], NULL, 16);
+               offset = hextoul(argv[1], NULL);
        }
 #ifdef CONFIG_SYS_LOADS_BAUD_CHANGE
        if (argc >= 3) {
-               size = simple_strtoul(argv[2], NULL, 16);
+               size = hextoul(argv[2], NULL);
        }
        if (argc == 4) {
                save_baudrate = (int)simple_strtoul(argv[3], NULL, 10);
@@ -284,7 +284,7 @@ int do_save_serial(struct cmd_tbl *cmdtp, int flag, int argc,
        }
 #else  /* ! CONFIG_SYS_LOADS_BAUD_CHANGE */
        if (argc == 3) {
-               size = simple_strtoul(argv[2], NULL, 16);
+               size = hextoul(argv[2], NULL);
        }
 #endif /* CONFIG_SYS_LOADS_BAUD_CHANGE */
 
@@ -438,12 +438,12 @@ static int do_load_serial_bin(struct cmd_tbl *cmdtp, int flag, int argc,
        /* pre-set offset from $loadaddr */
        s = env_get("loadaddr");
        if (s)
-               offset = simple_strtoul(s, NULL, 16);
+               offset = hextoul(s, NULL);
 
        load_baudrate = current_baudrate = gd->baudrate;
 
        if (argc >= 2) {
-               offset = simple_strtoul(argv[1], NULL, 16);
+               offset = hextoul(argv[1], NULL);
        }
        if (argc == 3) {
                load_baudrate = (int)simple_strtoul(argv[2], NULL, 10);
index 3b8db0a8538584f7520392e600f85d9af8809e97..81924da461802425ebefff0f7173c48008cfbe96 100644 (file)
@@ -26,11 +26,11 @@ static int do_lzmadec(struct cmd_tbl *cmdtp, int flag, int argc,
 
        switch (argc) {
        case 4:
-               dst_len = simple_strtoul(argv[3], NULL, 16);
+               dst_len = hextoul(argv[3], NULL);
                /* fall through */
        case 3:
-               src = simple_strtoul(argv[1], NULL, 16);
-               dst = simple_strtoul(argv[2], NULL, 16);
+               src = hextoul(argv[1], NULL);
+               dst = hextoul(argv[2], NULL);
                break;
        default:
                return CMD_RET_USAGE;
index 5ae3ddf85f82074960b7bdfbef83f9df5242da7a..0f0e1d3dd68e4f19a94505125bfb9fa2fa0bd225 100644 (file)
@@ -25,7 +25,7 @@ static void store_result(const u8 *sum, const char *dest)
        if (*dest == '*') {
                u8 *ptr;
 
-               ptr = (u8 *)simple_strtoul(dest + 1, NULL, 16);
+               ptr = (u8 *)hextoul(dest + 1, NULL);
                for (i = 0; i < 16; i++)
                        *ptr++ = sum[i];
        } else {
@@ -46,7 +46,7 @@ static int parse_verify_sum(char *verify_str, u8 *vsum)
        if (*verify_str == '*') {
                u8 *ptr;
 
-               ptr = (u8 *)simple_strtoul(verify_str + 1, NULL, 16);
+               ptr = (u8 *)hextoul(verify_str + 1, NULL);
                memcpy(vsum, ptr, 16);
        } else {
                unsigned int i;
@@ -66,7 +66,7 @@ static int parse_verify_sum(char *verify_str, u8 *vsum)
 
                        *nullp = '\0';
                        *(u8 *)(vsum + i) =
-                               simple_strtoul(vsum_str + (i * 2), NULL, 16);
+                               hextoul(vsum_str + (i * 2), NULL);
                        *nullp = end;
                }
        }
@@ -97,8 +97,8 @@ int do_md5sum(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                        return CMD_RET_USAGE;
        }
 
-       addr = simple_strtoul(*av++, NULL, 16);
-       len = simple_strtoul(*av++, NULL, 16);
+       addr = hextoul(*av++, NULL);
+       len = hextoul(*av++, NULL);
 
        buf = map_sysmem(addr, len);
        md5_wd(buf, len, output, CHUNKSZ_MD5);
@@ -147,8 +147,8 @@ static int do_md5sum(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 3)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[1], NULL, 16);
-       len = simple_strtoul(argv[2], NULL, 16);
+       addr = hextoul(argv[1], NULL);
+       len = hextoul(argv[2], NULL);
 
        buf = map_sysmem(addr, len);
        md5_wd(buf, len, output, CHUNKSZ_MD5);
index cfa45ad12a0a7cdb6703b771bf3728c0101dd38a..3c74326161efc2b36da82bf765a93a7cc47e4dd6 100644 (file)
@@ -254,7 +254,7 @@ static int do_mdio(struct cmd_tbl *cmdtp, int flag, int argc,
        switch (op[0]) {
        case 'w':
                if (pos > 1)
-                       data = simple_strtoul(argv[pos--], NULL, 16);
+                       data = hextoul(argv[pos--], NULL);
                /* Intentional fall-through - Get reg for read and write */
        case 'r':
                if (pos > 1)
index 1eb83b757030526487df1477910e4ef0bcc078d7..0978df5d10653faa42061784bf01cafb975678e6 100644 (file)
--- a/cmd/mem.c
+++ b/cmd/mem.c
@@ -89,14 +89,14 @@ static int do_mem_md(struct cmd_tbl *cmdtp, int flag, int argc,
 
                /* Address is specified since argc > 1
                */
-               addr = simple_strtoul(argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
                addr += base_address;
 
                /* If another parameter, it is the length to display.
                 * Length is the number of objects, not number of bytes.
                 */
                if (argc > 2)
-                       length = simple_strtoul(argv[2], NULL, 16);
+                       length = hextoul(argv[2], NULL);
        }
 
        bytes = size * length;
@@ -144,7 +144,7 @@ static int do_mem_mw(struct cmd_tbl *cmdtp, int flag, int argc,
 
        /* Address is specified since argc > 1
        */
-       addr = simple_strtoul(argv[1], NULL, 16);
+       addr = hextoul(argv[1], NULL);
        addr += base_address;
 
        /* Get the value to write.
@@ -152,11 +152,11 @@ static int do_mem_mw(struct cmd_tbl *cmdtp, int flag, int argc,
        if (SUPPORT_64BIT_DATA)
                writeval = simple_strtoull(argv[2], NULL, 16);
        else
-               writeval = simple_strtoul(argv[2], NULL, 16);
+               writeval = hextoul(argv[2], NULL);
 
        /* Count ? */
        if (argc == 4) {
-               count = simple_strtoul(argv[3], NULL, 16);
+               count = hextoul(argv[3], NULL);
        } else {
                count = 1;
        }
@@ -258,13 +258,13 @@ static int do_mem_cmp(struct cmd_tbl *cmdtp, int flag, int argc,
               size == 4 ? "word" :
               size == 2 ? "halfword" : "byte";
 
-       addr1 = simple_strtoul(argv[1], NULL, 16);
+       addr1 = hextoul(argv[1], NULL);
        addr1 += base_address;
 
-       addr2 = simple_strtoul(argv[2], NULL, 16);
+       addr2 = hextoul(argv[2], NULL);
        addr2 += base_address;
 
-       count = simple_strtoul(argv[3], NULL, 16);
+       count = hextoul(argv[3], NULL);
 
        bytes = size * count;
        base = buf1 = map_sysmem(addr1, bytes);
@@ -321,13 +321,13 @@ static int do_mem_cp(struct cmd_tbl *cmdtp, int flag, int argc,
        if ((size = cmd_get_data_size(argv[0], 4)) < 0)
                return 1;
 
-       addr = simple_strtoul(argv[1], NULL, 16);
+       addr = hextoul(argv[1], NULL);
        addr += base_address;
 
-       dest = simple_strtoul(argv[2], NULL, 16);
+       dest = hextoul(argv[2], NULL);
        dest += base_address;
 
-       count = simple_strtoul(argv[3], NULL, 16);
+       count = hextoul(argv[3], NULL);
 
        if (count == 0) {
                puts ("Zero length ???\n");
@@ -405,7 +405,7 @@ static int do_mem_search(struct cmd_tbl *cmdtp, int flag, int argc,
                        if (ch == 'q')
                                quiet = true;
                        else if (ch == 'l' && isxdigit(argv[0][2]))
-                               limit = simple_strtoul(argv[0] + 2, NULL, 16);
+                               limit = hextoul(argv[0] + 2, NULL);
                        else
                                return CMD_RET_USAGE;
                        argc--;
@@ -413,11 +413,11 @@ static int do_mem_search(struct cmd_tbl *cmdtp, int flag, int argc,
                }
 
                /* Address is specified since argc > 1 */
-               addr = simple_strtoul(argv[0], NULL, 16);
+               addr = hextoul(argv[0], NULL);
                addr += base_address;
 
                /* Length is the number of objects, not number of bytes */
-               length = simple_strtoul(argv[1], NULL, 16);
+               length = hextoul(argv[1], NULL);
 
                /* Read the bytes to search for */
                end = search_buf + sizeof(search_buf);
@@ -434,7 +434,7 @@ static int do_mem_search(struct cmd_tbl *cmdtp, int flag, int argc,
                                ptr += len;
                                continue;
                        } else {
-                               u32 val = simple_strtoul(argv[i], NULL, 16);
+                               u32 val = hextoul(argv[i], NULL);
 
                                switch (size) {
                                case 1:
@@ -512,7 +512,7 @@ static int do_mem_base(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc > 1) {
                /* Set new base address.
                */
-               base_address = simple_strtoul(argv[1], NULL, 16);
+               base_address = hextoul(argv[1], NULL);
        }
        /* Print the current base address.
        */
@@ -543,11 +543,11 @@ static int do_mem_loop(struct cmd_tbl *cmdtp, int flag, int argc,
 
        /* Address is always specified.
        */
-       addr = simple_strtoul(argv[1], NULL, 16);
+       addr = hextoul(argv[1], NULL);
 
        /* Length is the number of objects, not number of bytes.
        */
-       length = simple_strtoul(argv[2], NULL, 16);
+       length = hextoul(argv[2], NULL);
 
        bytes = size * length;
        buf = map_sysmem(addr, bytes);
@@ -636,17 +636,17 @@ static int do_mem_loopw(struct cmd_tbl *cmdtp, int flag, int argc,
 
        /* Address is always specified.
        */
-       addr = simple_strtoul(argv[1], NULL, 16);
+       addr = hextoul(argv[1], NULL);
 
        /* Length is the number of objects, not number of bytes.
        */
-       length = simple_strtoul(argv[2], NULL, 16);
+       length = hextoul(argv[2], NULL);
 
        /* data to write */
        if (SUPPORT_64BIT_DATA)
                data = simple_strtoull(argv[3], NULL, 16);
        else
-               data = simple_strtoul(argv[3], NULL, 16);
+               data = hextoul(argv[3], NULL);
 
        bytes = size * length;
        buf = map_sysmem(addr, bytes);
@@ -1175,7 +1175,7 @@ mod_mem(struct cmd_tbl *cmdtp, int incrflag, int flag, int argc,
 
                /* Address is specified since argc > 1
                */
-               addr = simple_strtoul(argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
                addr += base_address;
        }
 
@@ -1215,7 +1215,7 @@ mod_mem(struct cmd_tbl *cmdtp, int incrflag, int flag, int argc,
                        if (SUPPORT_64BIT_DATA)
                                i = simple_strtoull(console_buffer, &endp, 16);
                        else
-                               i = simple_strtoul(console_buffer, &endp, 16);
+                               i = hextoul(console_buffer, &endp);
                        nbytes = endp - console_buffer;
                        if (nbytes) {
                                /* good enough to not time out
@@ -1282,11 +1282,11 @@ static int do_random(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 3 || argc > 4)
                return CMD_RET_USAGE;
 
-       len = simple_strtoul(argv[2], NULL, 16);
-       addr = simple_strtoul(argv[1], NULL, 16);
+       len = hextoul(argv[2], NULL);
+       addr = hextoul(argv[1], NULL);
 
        if (argc == 4) {
-               seed = simple_strtoul(argv[3], NULL, 16);
+               seed = hextoul(argv[3], NULL);
                if (seed == 0) {
                        printf("The seed cannot be 0. Using 0xDEADBEEF.\n");
                        seed = 0xDEADBEEF;
index 31f5b36ade0acca5c428b17051c76a8c93ae2119..0c78720ec46ef92759847cbd5041cf32bbd8894e 100644 (file)
@@ -23,8 +23,8 @@ int do_frd(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        if (argc < 2)
                return CMD_RET_USAGE;
 
-       fslnum = (unsigned int)simple_strtoul (argv[1], NULL, 16);
-       blocking = (unsigned int)simple_strtoul (argv[2], NULL, 16);
+       fslnum = (unsigned int)hextoul(argv[1], NULL);
+       blocking = (unsigned int)hextoul(argv[2], NULL);
        if (fslnum < 0 || fslnum >= XILINX_FSL_NUMBER) {
                puts ("Bad number of FSL\n");
                return CMD_RET_USAGE;
@@ -178,9 +178,9 @@ int do_fwr(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        if (argc < 3)
                return CMD_RET_USAGE;
 
-       fslnum = (unsigned int)simple_strtoul (argv[1], NULL, 16);
-       num = (unsigned int)simple_strtoul (argv[2], NULL, 16);
-       blocking = (unsigned int)simple_strtoul (argv[3], NULL, 16);
+       fslnum = (unsigned int)hextoul(argv[1], NULL);
+       num = (unsigned int)hextoul(argv[2], NULL);
+       blocking = (unsigned int)hextoul(argv[3], NULL);
        if (fslnum < 0 || fslnum >= XILINX_FSL_NUMBER)
                return CMD_RET_USAGE;
 
@@ -332,8 +332,8 @@ int do_rspr(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        if (argc < 2)
                return CMD_RET_USAGE;
 
-       reg = (unsigned int)simple_strtoul (argv[1], NULL, 16);
-       val = (unsigned int)simple_strtoul (argv[2], NULL, 16);
+       reg = (unsigned int)hextoul(argv[1], NULL);
+       val = (unsigned int)hextoul(argv[2], NULL);
        switch (reg) {
        case 0x1:
                if (argc > 2) {
index fe8602eb7c87148d5bfeb6479c2f90d38a5f63aa..fab420ee29e20c539fc04d00bb102d384fc7bf55 100644 (file)
--- a/cmd/mii.c
+++ b/cmd/mii.c
@@ -267,10 +267,10 @@ static void extract_range(
        unsigned char * phi)
 {
        char * end;
-       *plo = simple_strtoul(input, &end, 16);
+       *plo = hextoul(input, &end);
        if (*end == '-') {
                end++;
-               *phi = simple_strtoul(end, NULL, 16);
+               *phi = hextoul(end, NULL);
        }
        else {
                *phi = *plo;
@@ -319,9 +319,9 @@ static int do_mii(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                if (argc >= 4)
                        extract_range(argv[3], &reglo, &reghi);
                if (argc >= 5)
-                       data = simple_strtoul(argv[4], NULL, 16);
+                       data = hextoul(argv[4], NULL);
                if (argc >= 6)
-                       mask = simple_strtoul(argv[5], NULL, 16);
+                       mask = hextoul(argv[5], NULL);
        }
 
        if (addrhi > 31 && strncmp(op, "de", 2)) {
index ef540e836f2deb2918aeda8bdf51bc4110e142e5..bcd8d960ee06141447ccd2ed9291dabf2cb64f08 100644 (file)
@@ -57,9 +57,9 @@ static int do_misc_op(struct cmd_tbl *cmdtp, int flag,
                return ret;
        }
 
-       offset = simple_strtoul(argv[1], NULL, 16);
-       buf = (void *)simple_strtoul(argv[2], NULL, 16);
-       size = simple_strtoul(argv[3], NULL, 16);
+       offset = hextoul(argv[1], NULL);
+       buf = (void *)hextoul(argv[2], NULL);
+       size = hextoul(argv[3], NULL);
 
        if (op == MISC_OP_READ)
                misc_op = misc_read;
index b942576b58aca45e1cfb06ecdea0b08f5fbeacda..f72277800a02a5766d936bc3d6ed2079dffc19c9 100644 (file)
--- a/cmd/mmc.c
+++ b/cmd/mmc.c
@@ -189,7 +189,7 @@ static int do_mmcrpmb_key(struct cmd_tbl *cmdtp, int flag,
        if (argc != 2)
                return CMD_RET_USAGE;
 
-       key_addr = (void *)simple_strtoul(argv[1], NULL, 16);
+       key_addr = (void *)hextoul(argv[1], NULL);
        if (!confirm_key_prog())
                return CMD_RET_FAILURE;
        if (mmc_rpmb_set_key(mmc, key_addr)) {
@@ -211,12 +211,12 @@ static int do_mmcrpmb_read(struct cmd_tbl *cmdtp, int flag,
        if (argc < 4)
                return CMD_RET_USAGE;
 
-       addr = (void *)simple_strtoul(argv[1], NULL, 16);
-       blk = simple_strtoul(argv[2], NULL, 16);
-       cnt = simple_strtoul(argv[3], NULL, 16);
+       addr = (void *)hextoul(argv[1], NULL);
+       blk = hextoul(argv[2], NULL);
+       cnt = hextoul(argv[3], NULL);
 
        if (argc == 5)
-               key_addr = (void *)simple_strtoul(argv[4], NULL, 16);
+               key_addr = (void *)hextoul(argv[4], NULL);
 
        printf("\nMMC RPMB read: dev # %d, block # %d, count %d ... ",
               curr_device, blk, cnt);
@@ -240,10 +240,10 @@ static int do_mmcrpmb_write(struct cmd_tbl *cmdtp, int flag,
        if (argc != 5)
                return CMD_RET_USAGE;
 
-       addr = (void *)simple_strtoul(argv[1], NULL, 16);
-       blk = simple_strtoul(argv[2], NULL, 16);
-       cnt = simple_strtoul(argv[3], NULL, 16);
-       key_addr = (void *)simple_strtoul(argv[4], NULL, 16);
+       addr = (void *)hextoul(argv[1], NULL);
+       blk = hextoul(argv[2], NULL);
+       cnt = hextoul(argv[3], NULL);
+       key_addr = (void *)hextoul(argv[4], NULL);
 
        printf("\nMMC RPMB write: dev # %d, block # %d, count %d ... ",
               curr_device, blk, cnt);
@@ -334,9 +334,9 @@ static int do_mmc_read(struct cmd_tbl *cmdtp, int flag,
        if (argc != 4)
                return CMD_RET_USAGE;
 
-       addr = (void *)simple_strtoul(argv[1], NULL, 16);
-       blk = simple_strtoul(argv[2], NULL, 16);
-       cnt = simple_strtoul(argv[3], NULL, 16);
+       addr = (void *)hextoul(argv[1], NULL);
+       blk = hextoul(argv[2], NULL);
+       cnt = hextoul(argv[3], NULL);
 
        mmc = init_mmc_device(curr_device, false);
        if (!mmc)
@@ -379,8 +379,8 @@ static int do_mmc_sparse_write(struct cmd_tbl *cmdtp, int flag,
        if (argc != 3)
                return CMD_RET_USAGE;
 
-       addr = (void *)simple_strtoul(argv[1], NULL, 16);
-       blk = simple_strtoul(argv[2], NULL, 16);
+       addr = (void *)hextoul(argv[1], NULL);
+       blk = hextoul(argv[2], NULL);
 
        if (!is_sparse_image(addr)) {
                printf("Not a sparse image\n");
@@ -427,9 +427,9 @@ static int do_mmc_write(struct cmd_tbl *cmdtp, int flag,
        if (argc != 4)
                return CMD_RET_USAGE;
 
-       addr = (void *)simple_strtoul(argv[1], NULL, 16);
-       blk = simple_strtoul(argv[2], NULL, 16);
-       cnt = simple_strtoul(argv[3], NULL, 16);
+       addr = (void *)hextoul(argv[1], NULL);
+       blk = hextoul(argv[2], NULL);
+       cnt = hextoul(argv[3], NULL);
 
        mmc = init_mmc_device(curr_device, false);
        if (!mmc)
@@ -457,8 +457,8 @@ static int do_mmc_erase(struct cmd_tbl *cmdtp, int flag,
        if (argc != 3)
                return CMD_RET_USAGE;
 
-       blk = simple_strtoul(argv[1], NULL, 16);
-       cnt = simple_strtoul(argv[2], NULL, 16);
+       blk = hextoul(argv[1], NULL);
+       cnt = hextoul(argv[2], NULL);
 
        mmc = init_mmc_device(curr_device, false);
        if (!mmc)
@@ -908,7 +908,7 @@ static int do_mmc_setdsr(struct cmd_tbl *cmdtp, int flag,
 
        if (argc != 2)
                return CMD_RET_USAGE;
-       val = simple_strtoul(argv[1], NULL, 16);
+       val = hextoul(argv[1], NULL);
 
        mmc = find_mmc_device(curr_device);
        if (!mmc) {
index c22478c1527830eb4c2c4bad010d864bf5775055..ad5cc9827d5540d495dd3dd827c94b33f5f707b0 100644 (file)
--- a/cmd/mtd.c
+++ b/cmd/mtd.c
@@ -285,12 +285,12 @@ static int do_mtd_io(struct cmd_tbl *cmdtp, int flag, int argc,
                        goto out_put_mtd;
                }
 
-               user_addr = simple_strtoul(argv[0], NULL, 16);
+               user_addr = hextoul(argv[0], NULL);
                argc--;
                argv++;
        }
 
-       start_off = argc > 0 ? simple_strtoul(argv[0], NULL, 16) : 0;
+       start_off = argc > 0 ? hextoul(argv[0], NULL) : 0;
        if (!mtd_is_aligned_with_min_io_size(mtd, start_off)) {
                printf("Offset not aligned with a page (0x%x)\n",
                       mtd->writesize);
@@ -299,7 +299,7 @@ static int do_mtd_io(struct cmd_tbl *cmdtp, int flag, int argc,
        }
 
        default_len = dump ? mtd->writesize : mtd->size;
-       len = argc > 1 ? simple_strtoul(argv[1], NULL, 16) : default_len;
+       len = argc > 1 ? hextoul(argv[1], NULL) : default_len;
        if (!mtd_is_aligned_with_min_io_size(mtd, len)) {
                len = round_up(len, mtd->writesize);
                printf("Size not on a page boundary (0x%x), rounding to 0x%llx\n",
@@ -411,8 +411,8 @@ static int do_mtd_erase(struct cmd_tbl *cmdtp, int flag, int argc,
        argc -= 2;
        argv += 2;
 
-       off = argc > 0 ? simple_strtoul(argv[0], NULL, 16) : 0;
-       len = argc > 1 ? simple_strtoul(argv[1], NULL, 16) : mtd->size;
+       off = argc > 0 ? hextoul(argv[0], NULL) : 0;
+       len = argc > 1 ? hextoul(argv[1], NULL) : mtd->size;
 
        if (!mtd_is_aligned_with_block_size(mtd, off)) {
                printf("Offset not aligned with a block (0x%x)\n",
index 5cd520e46bb9c574a5b103b57019a30d51d239c6..d4f381b6ad92948dee258d43ab546495077cb07e 100644 (file)
@@ -137,7 +137,7 @@ static ulong get_load_addr(void)
 
        addr_str = env_get("loadaddr");
        if (addr_str)
-               addr = simple_strtoul(addr_str, NULL, 16);
+               addr = hextoul(addr_str, NULL);
        else
                addr = CONFIG_SYS_LOAD_ADDR;
 
index 0798decfae13b3280ebb212b65fea8a291650942..25a9e153de8de721622652893eaec3cdfd7395ec 100644 (file)
@@ -25,8 +25,8 @@ int mvebu_comphy_rx_training_cmd(struct cmd_tbl *cmdtp, int flag, int argc,
                return -1;
        }
 
-       cp_index = simple_strtoul(argv[1], NULL, 16);
-       comphy_index = simple_strtoul(argv[2], NULL, 16);
+       cp_index = hextoul(argv[1], NULL);
+       comphy_index = hextoul(argv[2], NULL);
 
        ret = uclass_get(UCLASS_MISC, &uc);
        if (ret) {
index 97e117a979a0da97b43d3076bfba20746cf43a77..34371b983a395ccca9ad6735a0593349b7bfdace 100644 (file)
@@ -543,7 +543,7 @@ static int do_nand(struct cmd_tbl *cmdtp, int flag, int argc,
                if (argc < 3)
                        goto usage;
 
-               off = (int)simple_strtoul(argv[2], NULL, 16);
+               off = (int)hextoul(argv[2], NULL);
                ret = nand_dump(mtd, off, !strcmp(&cmd[4], ".oob"), repeat);
 
                return ret == 0 ? 1 : 0;
@@ -559,7 +559,7 @@ static int do_nand(struct cmd_tbl *cmdtp, int flag, int argc,
                if (argc < 4)
                        goto usage;
 
-               addr = (ulong)simple_strtoul(argv[2], NULL, 16);
+               addr = (ulong)hextoul(argv[2], NULL);
 
                read = strncmp(cmd, "read", 4) == 0; /* 1 = read, 0 = write */
                printf("\nNAND %s: ", read ? "read" : "write");
@@ -713,7 +713,7 @@ static int do_nand(struct cmd_tbl *cmdtp, int flag, int argc,
                        goto usage;
 
                while (argc > 0) {
-                       addr = simple_strtoul(*argv, NULL, 16);
+                       addr = hextoul(*argv, NULL);
 
                        if (mtd_block_markbad(mtd, addr)) {
                                printf("block 0x%08lx NOT marked "
@@ -957,7 +957,7 @@ static int do_nandboot(struct cmd_tbl *cmdtp, int flag, int argc,
                        if (argc > 3)
                                goto usage;
                        if (argc == 3)
-                               addr = simple_strtoul(argv[1], NULL, 16);
+                               addr = hextoul(argv[1], NULL);
                        else
                                addr = CONFIG_SYS_LOAD_ADDR;
 
@@ -975,17 +975,17 @@ static int do_nandboot(struct cmd_tbl *cmdtp, int flag, int argc,
                boot_device = env_get("bootdevice");
                break;
        case 2:
-               addr = simple_strtoul(argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
                boot_device = env_get("bootdevice");
                break;
        case 3:
-               addr = simple_strtoul(argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
                boot_device = argv[2];
                break;
        case 4:
-               addr = simple_strtoul(argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
                boot_device = argv[2];
-               offset = simple_strtoul(argv[3], NULL, 16);
+               offset = hextoul(argv[3], NULL);
                break;
        default:
 #if defined(CONFIG_CMD_MTDPARTS)
@@ -1003,7 +1003,7 @@ usage:
        }
        bootstage_mark(BOOTSTAGE_ID_NAND_BOOT_DEVICE);
 
-       idx = simple_strtoul(boot_device, NULL, 16);
+       idx = hextoul(boot_device, NULL);
 
        mtd = get_nand_dev_by_index(idx);
        if (!mtd) {
index 76c7e75125009cee008b4ee99768d9a2bbec09f9..651c1411f4d78ffd6f6acf938a6dbe910bc35789 100644 (file)
--- a/cmd/net.c
+++ b/cmd/net.c
@@ -205,7 +205,7 @@ static int netboot_common(enum proto_t proto, struct cmd_tbl *cmdtp, int argc,
        /* pre-set image_load_addr */
        s = env_get("loadaddr");
        if (s != NULL)
-               image_load_addr = simple_strtoul(s, NULL, 16);
+               image_load_addr = hextoul(s, NULL);
 
        switch (argc) {
        case 1:
@@ -220,7 +220,7 @@ static int netboot_common(enum proto_t proto, struct cmd_tbl *cmdtp, int argc,
                 * form must be written in a format which can not be
                 * mis-interpreted as a valid number.
                 */
-               addr = simple_strtoul(argv[1], &end, 16);
+               addr = hextoul(argv[1], &end);
                if (end == (argv[1] + strlen(argv[1]))) {
                        image_load_addr = addr;
                        /* refresh bootfile name from env */
@@ -234,7 +234,7 @@ static int netboot_common(enum proto_t proto, struct cmd_tbl *cmdtp, int argc,
                break;
 
        case 3:
-               image_load_addr = simple_strtoul(argv[1], NULL, 16);
+               image_load_addr = hextoul(argv[1], NULL);
                net_boot_file_name_explicit = true;
                copy_filename(net_boot_file_name, argv[2],
                              sizeof(net_boot_file_name));
index d14ba10cefaa4d18e7d37aa23c2e37e981746acd..02a99b4a77a4d01b7931251a61e5450ae0d1fcbf 100644 (file)
@@ -358,7 +358,7 @@ ulong env_get_hex(const char *varname, ulong default_val)
 
        s = env_get(varname);
        if (s)
-               value = simple_strtoul(s, &endp, 16);
+               value = hextoul(s, &endp);
        if (!s || endp == s)
                return default_val;
 
@@ -984,7 +984,7 @@ static int do_env_export(struct cmd_tbl *cmdtp, int flag,
                        case 's':               /* size given */
                                if (--argc <= 0)
                                        return cmd_usage(cmdtp);
-                               size = simple_strtoul(*++argv, NULL, 16);
+                               size = hextoul(*++argv, NULL);
                                goto NXTARG;
                        case 't':               /* text format */
                                if (fmt++)
@@ -1001,7 +1001,7 @@ NXTARG:           ;
        if (argc < 1)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[0], NULL, 16);
+       addr = hextoul(argv[0], NULL);
        ptr = map_sysmem(addr, size);
 
        if (size)
@@ -1140,11 +1140,11 @@ static int do_env_import(struct cmd_tbl *cmdtp, int flag,
        if (sep != '\n' && crlf_is_lf )
                crlf_is_lf = 0;
 
-       addr = simple_strtoul(argv[0], NULL, 16);
+       addr = hextoul(argv[0], NULL);
        ptr = map_sysmem(addr, 0);
 
        if (argc >= 2 && strcmp(argv[1], "-")) {
-               size = simple_strtoul(argv[1], NULL, 16);
+               size = hextoul(argv[1], NULL);
        } else if (chk) {
                puts("## Error: external checksum format must pass size\n");
                return CMD_RET_FAILURE;
index d5e93827e45c98fbe9b28643c7fa3c0d87bff899..676bbda950d4b178cd7ab49b855d32fb2e605dfe 100644 (file)
@@ -471,12 +471,12 @@ int do_env_set_efi(struct cmd_tbl *cmdtp, int flag, int argc,
 
                        argc--;
                        argv++;
-                       addr = simple_strtoul(argv[0], &ep, 16);
+                       addr = hextoul(argv[0], &ep);
                        if (*ep != ':')
                                return CMD_RET_USAGE;
 
                        /* 0 should be allowed for delete */
-                       size = simple_strtoul(++ep, NULL, 16);
+                       size = hextoul(++ep, NULL);
 
                        value_on_memory = true;
                } else if (!strcmp(argv[0], "-v")) {
index 216458bb474bd13c9005a7f9b4241853a94d2b65..852ed5c7b21ced632c0a62850556ff6d75f1147f 100644 (file)
@@ -398,7 +398,7 @@ static int do_onenand_read(struct cmd_tbl *cmdtp, int flag, int argc,
        if ((s != NULL) && (!strcmp(s, ".oob")))
                oob = 1;
 
-       addr = (ulong)simple_strtoul(argv[1], NULL, 16);
+       addr = (ulong)hextoul(argv[1], NULL);
 
        printf("\nOneNAND read: ");
        if (arg_off_size_onenand(argc - 2, argv + 2, &ofs, &len) != 0)
@@ -425,7 +425,7 @@ static int do_onenand_write(struct cmd_tbl *cmdtp, int flag, int argc,
        if (strncmp(argv[0] + 6, "yaffs", 5) == 0)
                withoob = 1;
 
-       addr = (ulong)simple_strtoul(argv[1], NULL, 16);
+       addr = (ulong)hextoul(argv[1], NULL);
 
        printf("\nOneNAND write: ");
        if (arg_off_size_onenand(argc - 2, argv + 2, &ofs, &len) != 0)
@@ -512,7 +512,7 @@ static int do_onenand_dump(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_USAGE;
 
        s = strchr(argv[0], '.');
-       ofs = (int)simple_strtoul(argv[1], NULL, 16);
+       ofs = (int)hextoul(argv[1], NULL);
 
        if (s != NULL && strcmp(s, ".oob") == 0)
                ret = onenand_dump(mtd, ofs, 1);
@@ -535,7 +535,7 @@ static int do_onenand_markbad(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_USAGE;
 
        while (argc > 0) {
-               addr = simple_strtoul(*argv, NULL, 16);
+               addr = hextoul(*argv, NULL);
 
                if (mtd_block_markbad(mtd, addr)) {
                        printf("block 0x%08lx NOT marked "
index 703d640b04e6fda93bceb43c9a0ea6c95a07724e..8557894a5def5e5a1e322a43aeac47ea6cbdd06f 100644 (file)
--- a/cmd/osd.c
+++ b/cmd/osd.c
@@ -99,10 +99,10 @@ static int do_osd_write(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_FAILURE;
        }
 
-       x = simple_strtoul(argv[1], NULL, 16);
-       y = simple_strtoul(argv[2], NULL, 16);
+       x = hextoul(argv[1], NULL);
+       y = hextoul(argv[2], NULL);
        hexstr = argv[3];
-       count = (argc > 4) ? simple_strtoul(argv[4], NULL, 16) : 1;
+       count = (argc > 4) ? hextoul(argv[4], NULL) : 1;
 
        buflen = strlen(hexstr) / 2;
 
@@ -148,9 +148,9 @@ static int do_osd_print(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_FAILURE;
        }
 
-       x = simple_strtoul(argv[1], NULL, 16);
-       y = simple_strtoul(argv[2], NULL, 16);
-       color = simple_strtoul(argv[3], NULL, 16);
+       x = hextoul(argv[1], NULL);
+       y = hextoul(argv[2], NULL);
+       color = hextoul(argv[3], NULL);
        text = argv[4];
 
        res = video_osd_print(osd_cur, x, y, color, text);
@@ -176,8 +176,8 @@ static int do_osd_size(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_FAILURE;
        }
 
-       x = simple_strtoul(argv[1], NULL, 16);
-       y = simple_strtoul(argv[2], NULL, 16);
+       x = hextoul(argv[1], NULL);
+       y = hextoul(argv[2], NULL);
 
        res = video_osd_set_size(osd_cur, x, y);
        if (res) {
index d0172f3fffc45c9501cad29e0fbb83a9d864b1a1..c751980c554fa0aaf970bcae385891cb3d5997c0 100644 (file)
@@ -18,7 +18,7 @@ static int do_pcap_init(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc != 3)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[1], NULL, 16);
+       addr = hextoul(argv[1], NULL);
        size = simple_strtoul(argv[2], NULL, 10);
 
        return pcap_init(addr, size) ? CMD_RET_FAILURE : CMD_RET_SUCCESS;
index e53b7c858c6ed09d9d875ea4b887619d7f653f4d..22de9426c9be593768d461084b716f22daeb77c2 100644 (file)
--- a/cmd/pci.c
+++ b/cmd/pci.c
@@ -470,14 +470,14 @@ static pci_dev_t get_pci_dev(char *name)
                if (name[i] == '.') {
                        memcpy(cnum, &name[iold], i - iold);
                        cnum[i - iold] = '\0';
-                       bdfs[n++] = simple_strtoul(cnum, NULL, 16);
+                       bdfs[n++] = hextoul(cnum, NULL);
                        iold = i + 1;
                }
        }
        strcpy(cnum, &name[iold]);
        if (n == 0)
                n = 1;
-       bdfs[n] = simple_strtoul(cnum, NULL, 16);
+       bdfs[n] = hextoul(cnum, NULL);
 
        return PCI_BDF(bdfs[0], bdfs[1], bdfs[2]);
 }
@@ -588,7 +588,7 @@ static int pci_cfg_modify(pci_dev_t bdf, ulong addr, ulong size, ulong value,
 #endif
                else {
                        char *endp;
-                       i = simple_strtoul(console_buffer, &endp, 16);
+                       i = hextoul(console_buffer, &endp);
                        nbytes = endp - console_buffer;
                        if (nbytes) {
                                /* good enough to not time out
@@ -683,9 +683,9 @@ static int do_pci(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                cmd_size = cmd_get_data_size(argv[1], 4);
                size = (cmd_size == 4) ? PCI_SIZE_32 : cmd_size - 1;
                if (argc > 3)
-                       addr = simple_strtoul(argv[3], NULL, 16);
+                       addr = hextoul(argv[3], NULL);
                if (argc > 4)
-                       value = simple_strtoul(argv[4], NULL, 16);
+                       value = hextoul(argv[4], NULL);
        case 'h':               /* header */
 #ifdef CONFIG_DM_PCI
        case 'b':               /* bars */
@@ -709,7 +709,7 @@ static int do_pci(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                                argc--;
                        }
                        if (argc > 1)
-                               busnum = simple_strtoul(argv[1], NULL, 16);
+                               busnum = hextoul(argv[1], NULL);
                }
 #ifdef CONFIG_DM_PCI
                ret = uclass_get_device_by_seq(UCLASS_PCI, busnum, &bus);
index 5656bae6d3efece18fd85cc01890b2ab3e7b6f6b..c6973aeb28f397d587044c8d7984ecafd750cf93 100644 (file)
@@ -172,26 +172,26 @@ static int pstore_set(struct cmd_tbl *cmdtp, int flag,  int argc,
 
        /* Address is specified since argc > 2
         */
-       pstore_addr = simple_strtoul(argv[1], NULL, 16);
+       pstore_addr = hextoul(argv[1], NULL);
 
        /* Length is specified since argc > 2
         */
-       pstore_length = simple_strtoul(argv[2], NULL, 16);
+       pstore_length = hextoul(argv[2], NULL);
 
        if (argc > 3)
-               pstore_record_size = simple_strtoul(argv[3], NULL, 16);
+               pstore_record_size = hextoul(argv[3], NULL);
 
        if (argc > 4)
-               pstore_console_size = simple_strtoul(argv[4], NULL, 16);
+               pstore_console_size = hextoul(argv[4], NULL);
 
        if (argc > 5)
-               pstore_ftrace_size = simple_strtoul(argv[5], NULL, 16);
+               pstore_ftrace_size = hextoul(argv[5], NULL);
 
        if (argc > 6)
-               pstore_pmsg_size = simple_strtoul(argv[6], NULL, 16);
+               pstore_pmsg_size = hextoul(argv[6], NULL);
 
        if (argc > 7)
-               pstore_ecc_size = simple_strtoul(argv[7], NULL, 16);
+               pstore_ecc_size = hextoul(argv[7], NULL);
 
        if (pstore_length < (pstore_record_size + pstore_console_size
                             + pstore_ftrace_size + pstore_pmsg_size)) {
index 9a30629e26e1ac9f39ae832cb3087d23bec30704..067c24e5ff4b8cbf79d54fa0461cc29783bf76f4 100644 (file)
@@ -351,7 +351,7 @@ static void label_boot_fdtoverlay(struct cmd_tbl *cmdtp, struct pxe_label *label
        int err;
 
        /* Get the main fdt and map it */
-       fdt_addr = simple_strtoul(env_get("fdt_addr_r"), NULL, 16);
+       fdt_addr = hextoul(env_get("fdt_addr_r"), NULL);
        working_fdt = map_sysmem(fdt_addr, 0);
        err = fdt_check_header(working_fdt);
        if (err)
@@ -364,7 +364,7 @@ static void label_boot_fdtoverlay(struct cmd_tbl *cmdtp, struct pxe_label *label
                return;
        }
 
-       fdtoverlay_addr = simple_strtoul(fdtoverlay_addr_env, NULL, 16);
+       fdtoverlay_addr = hextoul(fdtoverlay_addr_env, NULL);
 
        /* Cycle over the overlay files and apply them in order */
        do {
index e6a9fdb2af10c2bf968433b23dd61ca3e158f772..eb6a552f6fad745b1591d5f44044fbd744b73821 100644 (file)
--- a/cmd/qfw.c
+++ b/cmd/qfw.c
@@ -120,7 +120,7 @@ static int qemu_fwcfg_do_load(struct cmd_tbl *cmdtp, int flag,
 
        env = env_get("loadaddr");
        load_addr = env ?
-               (void *)simple_strtoul(env, NULL, 16) :
+               (void *)hextoul(env, NULL) :
 #ifdef CONFIG_LOADADDR
                (void *)CONFIG_LOADADDR;
 #else
@@ -129,7 +129,7 @@ static int qemu_fwcfg_do_load(struct cmd_tbl *cmdtp, int flag,
 
        env = env_get("ramdiskaddr");
        initrd_addr = env ?
-               (void *)simple_strtoul(env, NULL, 16) :
+               (void *)hextoul(env, NULL) :
 #ifdef CONFIG_RAMDISK_ADDR
                (void *)CONFIG_RAMDISK_ADDR;
 #else
@@ -137,10 +137,10 @@ static int qemu_fwcfg_do_load(struct cmd_tbl *cmdtp, int flag,
 #endif
 
        if (argc == 2) {
-               load_addr = (void *)simple_strtoul(argv[0], NULL, 16);
-               initrd_addr = (void *)simple_strtoul(argv[1], NULL, 16);
+               load_addr = (void *)hextoul(argv[0], NULL);
+               initrd_addr = (void *)hextoul(argv[1], NULL);
        } else if (argc == 1) {
-               load_addr = (void *)simple_strtoul(argv[0], NULL, 16);
+               load_addr = (void *)hextoul(argv[0], NULL);
        }
 
        if (!load_addr || !initrd_addr) {
index 34f53f9a292e58571cdd0efe3b2d9c93bdf5826e..99c7e3854e1ad9eb5211d9f788bae8c544ff3557 100644 (file)
@@ -30,13 +30,13 @@ int do_read(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                return 1;
        }
 
-       dev = (int)simple_strtoul(argv[2], &ep, 16);
+       dev = (int)hextoul(argv[2], &ep);
        if (*ep) {
                if (*ep != ':') {
                        printf("Invalid block device %s\n", argv[2]);
                        return 1;
                }
-               part = (int)simple_strtoul(++ep, NULL, 16);
+               part = (int)hextoul(++ep, NULL);
        }
 
        dev_desc = blk_get_dev(argv[1], dev);
@@ -45,9 +45,9 @@ int do_read(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                return 1;
        }
 
-       addr = (void *)simple_strtoul(argv[3], NULL, 16);
-       blk = simple_strtoul(argv[4], NULL, 16);
-       cnt = simple_strtoul(argv[5], NULL, 16);
+       addr = (void *)hextoul(argv[3], NULL);
+       blk = hextoul(argv[4], NULL);
+       cnt = hextoul(argv[5], NULL);
 
        if (part != 0) {
                if (part_get_info(dev_desc, part, &part_info)) {
index 3db926f806487114ad5c499e94a87009dadfc5ee..707167fcd59b55ee9699be01b473056d7cf85d36 100644 (file)
@@ -90,7 +90,7 @@ int do_reiserload(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        case 3:
                addr_str = env_get("loadaddr");
                if (addr_str != NULL) {
-                       addr = simple_strtoul (addr_str, NULL, 16);
+                       addr = hextoul(addr_str, NULL);
                } else {
                        addr = CONFIG_SYS_LOAD_ADDR;
                }
@@ -98,19 +98,19 @@ int do_reiserload(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                count = 0;
                break;
        case 4:
-               addr = simple_strtoul (argv[3], NULL, 16);
+               addr = hextoul(argv[3], NULL);
                filename = env_get("bootfile");
                count = 0;
                break;
        case 5:
-               addr = simple_strtoul (argv[3], NULL, 16);
+               addr = hextoul(argv[3], NULL);
                filename = argv[4];
                count = 0;
                break;
        case 6:
-               addr = simple_strtoul (argv[3], NULL, 16);
+               addr = hextoul(argv[3], NULL);
                filename = argv[4];
-               count = simple_strtoul (argv[5], NULL, 16);
+               count = hextoul(argv[5], NULL);
                break;
 
        default:
index b3ddcebe314268ed601ae1667d7867ec1b2344cc..2a0e575971651e6b474b3397e81ec3d6ecfe0794 100644 (file)
@@ -130,9 +130,9 @@ static int do_remoteproc_load(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_USAGE;
 
        id = (int)simple_strtoul(argv[1], NULL, 10);
-       addr = simple_strtoul(argv[2], NULL, 16);
+       addr = hextoul(argv[2], NULL);
 
-       size = simple_strtoul(argv[3], NULL, 16);
+       size = hextoul(argv[3], NULL);
 
        if (!size) {
                printf("\t Expect some size??\n");
index 9747c11be460a84f2b3ae57b1ed4d3bebe729a88..1ad5a096c0b5f43ca60afa2240c86f8abf2f66d0 100644 (file)
--- a/cmd/rng.c
+++ b/cmd/rng.c
@@ -24,7 +24,7 @@ static int do_rng(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        }
 
        if (argc >= 2)
-               n = simple_strtoul(argv[1], NULL, 16);
+               n = hextoul(argv[1], NULL);
 
        buf = malloc(n);
        if (!buf) {
index b4f61b2e835c6bc78a41a32bb354d56220d709c9..784879ec1a0c6b5d473aaa969be840cd8f6f6203 100644 (file)
--- a/cmd/rtc.c
+++ b/cmd/rtc.c
@@ -18,13 +18,13 @@ static int do_rtc_read(struct udevice *dev, int argc, char * const argv[])
        if (argc < 2 || argc > 3)
                return CMD_RET_USAGE;
 
-       reg = simple_strtoul(argv[0], NULL, 16);
-       len = simple_strtoul(argv[1], NULL, 16);
+       reg = hextoul(argv[0], NULL);
+       len = hextoul(argv[1], NULL);
 
        if (argc == 3) {
                u8 *addr;
 
-               addr = map_sysmem(simple_strtoul(argv[2], NULL, 16), len);
+               addr = map_sysmem(hextoul(argv[2], NULL), len);
                ret = dm_rtc_read(dev, reg, addr, len);
                unmap_sysmem(addr);
                if (ret) {
@@ -59,13 +59,13 @@ static int do_rtc_write(struct udevice *dev, int argc, char * const argv[])
        if (argc < 2 || argc > 3)
                return CMD_RET_USAGE;
 
-       reg = simple_strtoul(argv[0], NULL, 16);
+       reg = hextoul(argv[0], NULL);
 
        if (argc == 3) {
                u8 *addr;
 
-               len = simple_strtoul(argv[1], NULL, 16);
-               addr = map_sysmem(simple_strtoul(argv[2], NULL, 16), len);
+               len = hextoul(argv[1], NULL);
+               addr = map_sysmem(hextoul(argv[2], NULL), len);
                ret = dm_rtc_write(dev, reg, addr, len);
                unmap_sysmem(addr);
                if (ret) {
index 1eb67e2effbcd6b0c848cd80dadeee564f620b94..05d655809b0be1c09cc925f1fad77ffdb446a250 100644 (file)
@@ -49,7 +49,7 @@ static int get_arg(char *s, int w, struct expr_arg *argp)
                int len;
                char *str;
 
-               addr = simple_strtoul(&s[1], NULL, 16);
+               addr = hextoul(&s[1], NULL);
                switch (w) {
                case 1:
                        p = map_sysmem(addr, sizeof(uchar));
@@ -94,7 +94,7 @@ static int get_arg(char *s, int w, struct expr_arg *argp)
        } else {
                if (w == CMD_DATA_SIZE_STR)
                        return -EINVAL;
-               arg.ival = simple_strtoul(s, NULL, 16);
+               arg.ival = hextoul(s, NULL);
        }
        *argp = arg;
 
index 46346fb9d432fbc8eeaf05f5feaddd823bb79528..eac27ed2d77d2bd2e702c73cab82c0f040751d0d 100644 (file)
--- a/cmd/sf.c
+++ b/cmd/sf.c
@@ -54,7 +54,7 @@ static int sf_parse_len_arg(char *arg, ulong *len)
                ++arg;
        }
 
-       len_arg = simple_strtoul(arg, &ep, 16);
+       len_arg = hextoul(arg, &ep);
        if (ep == arg || *ep != '\0')
                return -1;
 
@@ -119,7 +119,7 @@ static int do_spi_flash_probe(int argc, char *const argv[])
                        return -1;
        }
        if (argc >= 4) {
-               mode = simple_strtoul(argv[3], &endp, 16);
+               mode = hextoul(argv[3], &endp);
                if (*argv[3] == 0 || *endp != 0)
                        return -1;
        }
@@ -272,7 +272,7 @@ static int do_spi_flash_read_write(int argc, char *const argv[])
        if (argc < 3)
                return -1;
 
-       addr = simple_strtoul(argv[1], &endp, 16);
+       addr = hextoul(argv[1], &endp);
        if (*argv[1] == 0 || *endp != 0)
                return -1;
 
@@ -517,10 +517,10 @@ static int do_spi_flash_test(int argc, char *const argv[])
 
        if (argc < 3)
                return -1;
-       offset = simple_strtoul(argv[1], &endp, 16);
+       offset = hextoul(argv[1], &endp);
        if (*argv[1] == 0 || *endp != 0)
                return -1;
-       len = simple_strtoul(argv[2], &endp, 16);
+       len = hextoul(argv[2], &endp);
        if (*argv[2] == 0 || *endp != 0)
                return -1;
 
index 0ff9a08021732fd68bfe48b700b3a0e637334e42..f5271817729ab9cb76773fcb3f51878ca6c7dc3a 100644 (file)
@@ -28,15 +28,15 @@ static int do_call(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 2)
                return CMD_RET_USAGE;
 
-       fid = simple_strtoul(argv[1], NULL, 16);
+       fid = hextoul(argv[1], NULL);
 
-       a1 = argc > 2 ? simple_strtoul(argv[2], NULL, 16) : 0;
-       a2 = argc > 3 ? simple_strtoul(argv[3], NULL, 16) : 0;
-       a3 = argc > 4 ? simple_strtoul(argv[4], NULL, 16) : 0;
-       a4 = argc > 5 ? simple_strtoul(argv[5], NULL, 16) : 0;
-       a5 = argc > 6 ? simple_strtoul(argv[6], NULL, 16) : 0;
-       a6 = argc > 7 ? simple_strtoul(argv[7], NULL, 16) : 0;
-       a7 = argc > 8 ? simple_strtoul(argv[8], NULL, 16) : 0;
+       a1 = argc > 2 ? hextoul(argv[2], NULL) : 0;
+       a2 = argc > 3 ? hextoul(argv[3], NULL) : 0;
+       a3 = argc > 4 ? hextoul(argv[4], NULL) : 0;
+       a4 = argc > 5 ? hextoul(argv[5], NULL) : 0;
+       a5 = argc > 6 ? hextoul(argv[6], NULL) : 0;
+       a6 = argc > 7 ? hextoul(argv[7], NULL) : 0;
+       a7 = argc > 8 ? hextoul(argv[8], NULL) : 0;
 
        if (!strcmp(argv[0], "smc"))
                arm_smccc_smc(fid, a1, a2, a3, a4, a5, a6, a7, &res);
index 71f71528ad2a218a8cf53613522692ed584e4a28..81e015b64efc50328e4c08eb660325537f0db096 100644 (file)
@@ -179,7 +179,7 @@ static int do_source(struct cmd_tbl *cmdtp, int flag, int argc,
                      fit_uname, addr);
 #endif
        } else {
-               addr = simple_strtoul(argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
                debug("*  source: cmdline image address = 0x%08lx\n", addr);
        }
 
index 85fdc34f08fe893109e4fe26a28e7a532755721a..bf348afce8141256c61e50a0f143e323c1f98a43 100644 (file)
@@ -18,9 +18,9 @@ int do_strings(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                return CMD_RET_USAGE;
 
        if ((flag & CMD_FLAG_REPEAT) == 0) {
-               start_addr = (char *)simple_strtoul(argv[1], NULL, 16);
+               start_addr = (char *)hextoul(argv[1], NULL);
                if (argc > 2)
-                       last_addr = (char *)simple_strtoul(argv[2], NULL, 16);
+                       last_addr = (char *)hextoul(argv[2], NULL);
                else
                        last_addr = (char *)-1;
        }
index 6b43a7386832a72f2a52ebd6777e4b0dedc79d57..be937a7531d04ae64a1fdb716de8d2164c7fb36b 100644 (file)
@@ -290,8 +290,8 @@ static int do_ddr_test(struct cmd_tbl *cmdtp,
                        return CMD_RET_FAILURE;
                }
 
-               start_addr = simple_strtoul(argv[2], NULL, 16);
-               ecc_err = simple_strtoul(argv[3], NULL, 16);
+               start_addr = hextoul(argv[2], NULL);
+               ecc_err = hextoul(argv[3], NULL);
 
                if (!is_addr_valid(start_addr)) {
                        puts("Invalid address. Please enter ECC supported address!\n");
@@ -306,8 +306,8 @@ static int do_ddr_test(struct cmd_tbl *cmdtp,
              ((argc == 5) && (strncmp(argv[1], "compare", 8) == 0))))
                return cmd_usage(cmdtp);
 
-       start_addr = simple_strtoul(argv[2], NULL, 16);
-       end_addr = simple_strtoul(argv[3], NULL, 16);
+       start_addr = hextoul(argv[2], NULL);
+       end_addr = hextoul(argv[3], NULL);
 
        if ((start_addr < CONFIG_SYS_SDRAM_BASE) ||
            (start_addr > (CONFIG_SYS_SDRAM_BASE +
@@ -321,7 +321,7 @@ static int do_ddr_test(struct cmd_tbl *cmdtp,
 
        puts("Please wait ...\n");
        if (argc == 5) {
-               size = simple_strtoul(argv[4], NULL, 16);
+               size = hextoul(argv[4], NULL);
                ddr_memory_compare(start_addr, end_addr, size);
        } else {
                ddr_memory_test(start_addr, end_addr, 0);
index 5099cbdd95ee62071eb48a7f63da8c51aa84908d..2b643f9587c4ea80787732245751c9bb213b5afd 100644 (file)
@@ -751,7 +751,7 @@ static int set_mac(char *buf, const char *string)
 
        /* Convert string to binary */
        for (i = 0, p = (char *)string; i < 6; i++) {
-               buf[i] = p ? simple_strtoul(p, &end, 16) : 0;
+               buf[i] = p ? hextoul(p, &end) : 0;
                if (p)
                        p = (*end) ? end + 1 : end;
        }
index 88c9e08e318d129316dd2d206d4049fd0060b1e8..a48c060273a6b6abf2654f41ab5a3e5797acbc0d 100644 (file)
@@ -68,7 +68,7 @@ void *parse_byte_string(char *bytes, u8 *data, size_t *count_ptr)
        for (i = 0; i < length; i += 2) {
                byte[0] = bytes[i];
                byte[1] = bytes[i + 1];
-               data[i / 2] = (u8)simple_strtoul(byte, NULL, 16);
+               data[i / 2] = (u8)hextoul(byte, NULL);
        }
 
        if (count_ptr)
index 4ce47c7627607a9721baed61e9c45fb9b160c13f..2e3ee1d3ba23cc2ac8d73a924bb925c5dbb06666 100644 (file)
@@ -21,8 +21,8 @@ static int get_args(int argc, char *const argv[], char **buff,
                                   *buff_size);
                *buff_ptr = env_get_ulong("profoffset", 16, 0);
        } else {
-               *buff_size = simple_strtoul(argv[3], NULL, 16);
-               *buff = map_sysmem(simple_strtoul(argv[2], NULL, 16),
+               *buff_size = hextoul(argv[3], NULL);
+               *buff = map_sysmem(hextoul(argv[2], NULL),
                                   *buff_size);
                *buff_ptr = 0;
        };
index 2eae14f87f1de40e136d9258b76856bdc5307a8b..0d849d9979e46ed10535cc58295cef375d946532 100644 (file)
@@ -392,15 +392,15 @@ int do_tsi148(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        if (argc > 1)
                cmd = argv[1][0];
        if (argc > 2)
-               addr1 = simple_strtoul(argv[2], NULL, 16);
+               addr1 = hextoul(argv[2], NULL);
        if (argc > 3)
-               addr2 = simple_strtoul(argv[3], NULL, 16);
+               addr2 = hextoul(argv[3], NULL);
        if (argc > 4)
-               size = simple_strtoul(argv[4], NULL, 16);
+               size = hextoul(argv[4], NULL);
        if (argc > 5)
-               vam = simple_strtoul(argv[5], NULL, 16);
+               vam = hextoul(argv[5], NULL);
        if (argc > 6)
-               vdw = simple_strtoul(argv[6], NULL, 16);
+               vdw = hextoul(argv[6], NULL);
 
        switch (cmd) {
        case 'c':
index cb14e3e1e793d2a855489071a60a1b277e6a9d16..fe8ac58bac085115b08a05ddb859bb2828b72bd1 100644 (file)
--- a/cmd/ubi.c
+++ b/cmd/ubi.c
@@ -661,8 +661,8 @@ static int do_ubi(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                        return 1;
                }
 
-               addr = simple_strtoul(argv[2], NULL, 16);
-               size = simple_strtoul(argv[4], NULL, 16);
+               addr = hextoul(argv[2], NULL);
+               size = hextoul(argv[4], NULL);
 
                if (strlen(argv[1]) == 10 &&
                    strncmp(argv[1] + 5, ".part", 5) == 0) {
@@ -671,7 +671,7 @@ static int do_ubi(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                                                (void *)addr, size);
                        } else {
                                size_t full_size;
-                               full_size = simple_strtoul(argv[5], NULL, 16);
+                               full_size = hextoul(argv[5], NULL);
                                ret = ubi_volume_begin_write(argv[3],
                                                (void *)addr, size, full_size);
                        }
@@ -691,13 +691,13 @@ static int do_ubi(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
 
                /* E.g., read volume size */
                if (argc == 5) {
-                       size = simple_strtoul(argv[4], NULL, 16);
+                       size = hextoul(argv[4], NULL);
                        argc--;
                }
 
                /* E.g., read volume */
                if (argc == 4) {
-                       addr = simple_strtoul(argv[2], NULL, 16);
+                       addr = hextoul(argv[2], NULL);
                        argc--;
                }
 
index a26b653d61e95036c58e0e080e2bae7587bc41c8..7a620c5e21da6947d67c5f2df79678fdc9bfd8be 100644 (file)
@@ -122,14 +122,14 @@ static int do_ubifs_load(struct cmd_tbl *cmdtp, int flag, int argc,
        if (argc < 3)
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(argv[1], &endp, 16);
+       addr = hextoul(argv[1], &endp);
        if (endp == argv[1])
                return CMD_RET_USAGE;
 
        filename = argv[2];
 
        if (argc == 4) {
-               size = simple_strtoul(argv[3], &endp, 16);
+               size = hextoul(argv[3], &endp);
                if (endp == argv[3])
                        return CMD_RET_USAGE;
        }
index 5ff47dde4fbed9686c90e24b18a9eb9eec145e29..fb3a32d4d5a722ff646d7081e5c8ef680fc9b4fc 100644 (file)
@@ -307,17 +307,17 @@ int do_universe(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        if (argc > 1)
                cmd = argv[1][0];
        if (argc > 2)
-               addr1 = simple_strtoul(argv[2], NULL, 16);
+               addr1 = hextoul(argv[2], NULL);
        if (argc > 3)
-               addr2 = simple_strtoul(argv[3], NULL, 16);
+               addr2 = hextoul(argv[3], NULL);
        if (argc > 4)
-               size = simple_strtoul(argv[4], NULL, 16);
+               size = hextoul(argv[4], NULL);
        if (argc > 5)
-               vam = simple_strtoul(argv[5], NULL, 16);
+               vam = hextoul(argv[5], NULL);
        if (argc > 6)
-               pms = simple_strtoul(argv[6], NULL, 16);
+               pms = hextoul(argv[6], NULL);
        if (argc > 7)
-               vdw = simple_strtoul(argv[7], NULL, 16);
+               vdw = hextoul(argv[7], NULL);
 
        switch (cmd) {
        case 'i':               /* init */
index 4ae7f34d36e7e023710b8d1c18dc71a1678e6da2..323ab467173c8354e552910ff516178143c3f18e 100644 (file)
@@ -18,9 +18,9 @@ static int do_unlz4(struct cmd_tbl *cmdtp, int flag, int argc,
 
        switch (argc) {
        case 4:
-               src = simple_strtoul(argv[1], NULL, 16);
-               dst = simple_strtoul(argv[2], NULL, 16);
-               dst_len = simple_strtoul(argv[3], NULL, 16);
+               src = hextoul(argv[1], NULL);
+               dst = hextoul(argv[2], NULL);
+               dst_len = hextoul(argv[3], NULL);
                break;
        default:
                return CMD_RET_USAGE;
index 9b28328a1d76c72574045a1b3bbefa457995beff..3d1f5f3ac1066e06dde8f54ca04e6c47125f206f 100644 (file)
@@ -18,11 +18,11 @@ static int do_unzip(struct cmd_tbl *cmdtp, int flag, int argc,
 
        switch (argc) {
                case 4:
-                       dst_len = simple_strtoul(argv[3], NULL, 16);
+                       dst_len = hextoul(argv[3], NULL);
                        /* fall through */
                case 3:
-                       src = simple_strtoul(argv[1], NULL, 16);
-                       dst = simple_strtoul(argv[2], NULL, 16);
+                       src = hextoul(argv[1], NULL);
+                       dst = hextoul(argv[2], NULL);
                        break;
                default:
                        return CMD_RET_USAGE;
@@ -60,11 +60,11 @@ static int do_gzwrite(struct cmd_tbl *cmdtp, int flag,
        if (ret < 0)
                return CMD_RET_FAILURE;
 
-       addr = (unsigned char *)simple_strtoul(argv[3], NULL, 16);
-       length = simple_strtoul(argv[4], NULL, 16);
+       addr = (unsigned char *)hextoul(argv[3], NULL);
+       length = hextoul(argv[4], NULL);
 
        if (5 < argc) {
-               writebuf = simple_strtoul(argv[5], NULL, 16);
+               writebuf = hextoul(argv[5], NULL);
                if (6 < argc) {
                        startoffs = simple_strtoull(argv[6], NULL, 16);
                        if (7 < argc)
index fc61a549b029e5641283e1d3bf743c17e45ea72f..b213a942fde40062c6b8cc58ed4372de80c03f9a 100644 (file)
@@ -78,8 +78,8 @@ static int do_mtrr_set(int cpu_select, uint reg, int argc, char *const argv[])
                printf("Invalid type name %s\n", typename);
                return CMD_RET_USAGE;
        }
-       start = simple_strtoul(argv[1], NULL, 16);
-       size = simple_strtoul(argv[2], NULL, 16);
+       start = hextoul(argv[1], NULL);
+       size = hextoul(argv[2], NULL);
 
        base = start | type;
        valid = native_read_msr(MTRR_PHYS_MASK_MSR(reg)) & MTRR_PHYS_MASK_VALID;
@@ -126,7 +126,7 @@ static int do_mtrr(struct cmd_tbl *cmdtp, int flag, int argc,
        if (cmd != 'l') {
                if (argc < 2)
                        return CMD_RET_USAGE;
-               reg = simple_strtoul(argv[1], NULL, 16);
+               reg = hextoul(argv[1], NULL);
                if (reg >= reg_count) {
                        printf("Invalid register number\n");
                        return CMD_RET_USAGE;
index ef738ebfa2f34424ac57e65f4d9ff8e41afe31e1..65ba41320a02350234e96b1f0769ea2a9e128c48 100644 (file)
@@ -59,16 +59,16 @@ do_imgextract(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        verify = env_get_yesno("verify");
 
        if (argc > 1) {
-               addr = simple_strtoul(argv[1], NULL, 16);
+               addr = hextoul(argv[1], NULL);
        }
        if (argc > 2) {
-               part = simple_strtoul(argv[2], NULL, 16);
+               part = hextoul(argv[2], NULL);
 #if defined(CONFIG_FIT)
                uname = argv[2];
 #endif
        }
        if (argc > 3) {
-               dest = simple_strtoul(argv[3], NULL, 16);
+               dest = hextoul(argv[3], NULL);
        }
 
        switch (genimg_get_format((void *)addr)) {
index f29ebcc026e5a46dcacf079dc39deb5c5fa10f06..27fbd1be8f750a6285a5dc0ef485f71bf848e6a9 100644 (file)
@@ -165,8 +165,8 @@ int do_ywr(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        }
 
        filename = argv[1];
-       value = simple_strtoul(argv[2], NULL, 16);
-       numValues = simple_strtoul(argv[3], NULL, 16);
+       value = hextoul(argv[2], NULL);
+       numValues = hextoul(argv[3], NULL);
 
        printf("Writing value (%lx) %lx times to %s... ", value, numValues,
               filename);
@@ -188,7 +188,7 @@ int do_yrdm(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        }
 
        filename = argv[1];
-       addr = simple_strtoul(argv[2], NULL, 16);
+       addr = hextoul(argv[2], NULL);
 
        cmd_yaffs_mread_file(filename, (char *)addr);
 
@@ -207,8 +207,8 @@ int do_ywrm(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        }
 
        filename = argv[1];
-       addr = simple_strtoul(argv[2], NULL, 16);
-       size = simple_strtoul(argv[3], NULL, 16);
+       addr = hextoul(argv[2], NULL);
+       size = hextoul(argv[3], NULL);
 
        cmd_yaffs_mwrite_file(filename, (char *)addr, size);
 
index e429ac88d73c107eb4b6bef68b160d37f4ad92cd..6ef1b56ab10b582a1c158f665719c4aa1b493e1b 100644 (file)
--- a/cmd/zfs.c
+++ b/cmd/zfs.c
@@ -50,13 +50,13 @@ static int do_zfs_load(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_USAGE;
 
        count = 0;
-       addr = simple_strtoul(argv[3], NULL, 16);
+       addr = hextoul(argv[3], NULL);
        filename = env_get("bootfile");
        switch (argc) {
        case 3:
                addr_str = env_get("loadaddr");
                if (addr_str != NULL)
-                       addr = simple_strtoul(addr_str, NULL, 16);
+                       addr = hextoul(addr_str, NULL);
                else
                        addr = CONFIG_SYS_LOAD_ADDR;
 
@@ -68,7 +68,7 @@ static int do_zfs_load(struct cmd_tbl *cmdtp, int flag, int argc,
                break;
        case 6:
                filename = argv[4];
-               count = simple_strtoul(argv[5], NULL, 16);
+               count = hextoul(argv[5], NULL);
                break;
 
        default:
index 8ad3768464764d35f174a6d0489b6301dd7c969f..08afd62b973d88b505035e8fd8bcd02e9b1e593e 100644 (file)
--- a/cmd/zip.c
+++ b/cmd/zip.c
@@ -16,12 +16,12 @@ static int do_zip(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
 
        switch (argc) {
                case 5:
-                       dst_len = simple_strtoul(argv[4], NULL, 16);
+                       dst_len = hextoul(argv[4], NULL);
                        /* fall through */
                case 4:
-                       src = simple_strtoul(argv[1], NULL, 16);
-                       src_len = simple_strtoul(argv[2], NULL, 16);
-                       dst = simple_strtoul(argv[3], NULL, 16);
+                       src = hextoul(argv[1], NULL);
+                       src_len = hextoul(argv[2], NULL);
+                       dst = hextoul(argv[3], NULL);
                        break;
                default:
                        return cmd_usage(cmdtp);
index 18a35ca23efea3a02564c3e4867af479439b9b33..6e1fb58080fa41ab22affb3ade43898a0df72f78 100644 (file)
@@ -1005,7 +1005,7 @@ long read_number (char *txt)
        }
 
        if (txt[0] == '0' && (txt[1] == 'x' || txt[1] == 'X'))  /* hex */
-               val = simple_strtoul (&txt[2], NULL, 16);
+               val = hextoul(&txt[2], NULL);
        else                                            /* decimal */
                val = simple_strtoul (txt, NULL, 10);
 
index 0b6325db6605de5233bc2a97a2fddd76cb59030e..d635037064adcbbc93a89fc935c50ebe00ad6f4b 100644 (file)
@@ -238,7 +238,7 @@ static int do_bootm_plan9(int flag, int argc, char *const argv[],
        /* See README.plan9 */
        s = env_get("confaddr");
        if (s != NULL) {
-               char *confaddr = (char *)simple_strtoul(s, NULL, 16);
+               char *confaddr = (char *)hextoul(s, NULL);
 
                if (argc > 0) {
                        copy_args(confaddr, argc, argv, '\n');
@@ -360,8 +360,7 @@ int do_bootm_vxworks(int flag, int argc, char *const argv[],
                        /* find f=0xnumber flag */
                        if ((bootargs[pos] == '=') && (pos >= 1) &&
                            (bootargs[pos - 1] == 'f')) {
-                               vxflags = simple_strtoul(&bootargs[pos + 1],
-                                                        NULL, 16);
+                               vxflags = hextoul(&bootargs[pos + 1], NULL);
                                if (vxflags & VXWORKS_SYSFLG_STD_DTB)
                                        std_dtb = true;
                        }
index 240f1e57d1355f1820fce202c6181dc280915b7f..4341d84bd5ec1ddd8e2764b2bbbd9a812b534cbf 100644 (file)
@@ -579,7 +579,7 @@ void fdt_fixup_ethernet(void *fdt)
 
                        for (j = 0; j < 6; j++) {
                                mac_addr[j] = tmp ?
-                                             simple_strtoul(tmp, &end, 16) : 0;
+                                             hextoul(tmp, &end) : 0;
                                if (tmp)
                                        tmp = (*end) ? end + 1 : end;
                        }
index 059d381e23166d549e2644c2affacbf5afe32a3a..dca23635abe7a8ac8d1097a6f9ccbb9406fd077f 100644 (file)
@@ -397,7 +397,7 @@ int hash_parse_string(const char *algo_name, const char *str, uint8_t *result)
                char chr[3];
 
                strlcpy(chr, &str[i * 2], 3);
-               result[i] = simple_strtoul(chr, NULL, 16);
+               result[i] = hextoul(chr, NULL);
        }
 
        return 0;
@@ -470,7 +470,7 @@ static void store_result(struct hash_algo *algo, const uint8_t *sum,
                ulong addr;
                void *buf;
 
-               addr = simple_strtoul(dest, NULL, 16);
+               addr = hextoul(dest, NULL);
                buf = map_sysmem(addr, algo->digest_size);
                memcpy(buf, sum, algo->digest_size);
                unmap_sysmem(buf);
@@ -510,7 +510,7 @@ static int parse_verify_sum(struct hash_algo *algo, char *verify_str,
                ulong addr;
                void *buf;
 
-               addr = simple_strtoul(verify_str, NULL, 16);
+               addr = hextoul(verify_str, NULL);
                buf = map_sysmem(addr, algo->digest_size);
                memcpy(vsum, buf, algo->digest_size);
        } else {
@@ -555,8 +555,8 @@ int hash_command(const char *algo_name, int flags, struct cmd_tbl *cmdtp,
        if ((argc < 2) || ((flags & HASH_FLAG_VERIFY) && (argc < 3)))
                return CMD_RET_USAGE;
 
-       addr = simple_strtoul(*argv++, NULL, 16);
-       len = simple_strtoul(*argv++, NULL, 16);
+       addr = hextoul(*argv++, NULL);
+       len = hextoul(*argv++, NULL);
 
        if (multi_hash()) {
                struct hash_algo *algo;
@@ -628,7 +628,7 @@ int hash_command(const char *algo_name, int flags, struct cmd_tbl *cmdtp,
                                addr, addr + len - 1, crc);
 
                if (argc >= 3) {
-                       ptr = (ulong *)simple_strtoul(argv[0], NULL, 16);
+                       ptr = (ulong *)hextoul(argv[0], NULL);
                        *ptr = crc;
                }
        }
index 06dce92a28a03b29d873f35b42e263865d940470..9441e63a3d4fd717dc6f6bf62068312a43601e2e 100644 (file)
@@ -186,7 +186,7 @@ int boot_relocate_fdt(struct lmb *lmb, char **of_flat_tree, ulong *of_size)
        /* If fdt_high is set use it to select the relocation address */
        fdt_high = env_get("fdt_high");
        if (fdt_high) {
-               void *desired_addr = (void *)simple_strtoul(fdt_high, NULL, 16);
+               void *desired_addr = (void *)hextoul(fdt_high, NULL);
 
                if (((ulong) desired_addr) == ~0UL) {
                        /* All ones means use fdt in place */
@@ -297,7 +297,7 @@ int boot_get_fdt(int flag, int argc, char *const argv[], uint8_t arch,
        *of_size = 0;
 
        img_addr = (argc == 0) ? image_load_addr :
-                       simple_strtoul(argv[0], NULL, 16);
+                       hextoul(argv[0], NULL);
        buf = map_sysmem(img_addr, 0);
 
        if (argc > 2)
@@ -329,7 +329,7 @@ int boot_get_fdt(int flag, int argc, char *const argv[], uint8_t arch,
                        } else
 #endif
                        {
-                               fdt_addr = simple_strtoul(select, NULL, 16);
+                               fdt_addr = hextoul(select, NULL);
                                debug("*  fdt: cmdline image address = 0x%08lx\n",
                                      fdt_addr);
                        }
index d6b2c3c7ecab57dba2bdd871e549db92b60d9c3a..aff4670be35e4ab118d652ca69ae7ec74dcba616 100644 (file)
@@ -53,7 +53,7 @@ static int fit_parse_spec(const char *spec, char sepc, ulong addr_curr,
        sep = strchr(spec, sepc);
        if (sep) {
                if (sep - spec > 0)
-                       *addr = simple_strtoul(spec, NULL, 16);
+                       *addr = hextoul(spec, NULL);
 
                *name = sep + 1;
                return 1;
index 51854aae5dd9e0bf8e81403a7393223dd1ba1ef6..59c52a1f9ad36c14af287933f5507ce9be25ffe4 100644 (file)
@@ -662,7 +662,7 @@ static int on_loadaddr(const char *name, const char *value, enum env_op op,
        switch (op) {
        case env_op_create:
        case env_op_overwrite:
-               image_load_addr = simple_strtoul(value, NULL, 16);
+               image_load_addr = hextoul(value, NULL);
                break;
        default:
                break;
@@ -676,7 +676,7 @@ ulong env_get_bootm_low(void)
 {
        char *s = env_get("bootm_low");
        if (s) {
-               ulong tmp = simple_strtoul(s, NULL, 16);
+               ulong tmp = hextoul(s, NULL);
                return tmp;
        }
 
@@ -1060,7 +1060,7 @@ ulong genimg_get_kernel_addr_fit(char * const img_addr,
                      *fit_uname_kernel, kernel_addr);
 #endif
        } else {
-               kernel_addr = simple_strtoul(img_addr, NULL, 16);
+               kernel_addr = hextoul(img_addr, NULL);
                debug("*  kernel: cmdline image address = 0x%08lx\n",
                      kernel_addr);
        }
@@ -1227,7 +1227,7 @@ int boot_get_ramdisk(int argc, char *const argv[], bootm_headers_t *images,
                        } else
 #endif
                        {
-                               rd_addr = simple_strtoul(select, NULL, 16);
+                               rd_addr = hextoul(select, NULL);
                                debug("*  ramdisk: cmdline image address = "
                                                "0x%08lx\n",
                                                rd_addr);
@@ -1301,7 +1301,7 @@ int boot_get_ramdisk(int argc, char *const argv[], bootm_headers_t *images,
                        if (select)
                                end = strchr(select, ':');
                        if (end) {
-                               rd_len = simple_strtoul(++end, NULL, 16);
+                               rd_len = hextoul(++end, NULL);
                                rd_data = rd_addr;
                        } else
 #endif
@@ -1379,7 +1379,7 @@ int boot_ramdisk_high(struct lmb *lmb, ulong rd_data, ulong rd_len,
                /* a value of "no" or a similar string will act like 0,
                 * turning the "load high" feature off. This is intentional.
                 */
-               initrd_high = simple_strtoul(s, NULL, 16);
+               initrd_high = hextoul(s, NULL);
                if (initrd_high == ~0)
                        initrd_copy_to_ram = 0;
        } else {
index ce42a932bb85972394ab32e3048828753ab49107..13344e634b9910d5a6267492496db16e2dae0bb2 100644 (file)
@@ -31,7 +31,7 @@ const char *symbol_lookup(unsigned long addr, unsigned long *caddr)
        *caddr = 0;
 
        while (*sym) {
-               sym_addr = simple_strtoul(sym, &esym, 16);
+               sym_addr = hextoul(sym, &esym);
                sym = esym;
                if (sym_addr > addr)
                        break;
index ab5614ad0e3dbfc10bc673c23e7828383a1efa16..16a0a7cea8fc95a153da45d6cdc8c24bce3e6771 100644 (file)
@@ -747,7 +747,7 @@ static int on_splashimage(const char *name, const char *value, enum env_op op,
        if (op == env_op_delete)
                return 0;
 
-       addr = simple_strtoul(value, NULL, 16);
+       addr = hextoul(value, NULL);
        /* See README.displaying-bmps */
        aligned = (addr % 4 == 2);
        if (!aligned) {
index 2b9313e03f1e270c5acbb191bf23f0fc8586b7f7..de720df9f58394c87a5c162d0f55c4e7c0384693 100644 (file)
@@ -65,7 +65,7 @@ static int splash_video_logo_load(void)
        if (!splashimage)
                return -ENOENT;
 
-       bmp_load_addr = simple_strtoul(splashimage, 0, 16);
+       bmp_load_addr = hextoul(splashimage, 0);
        if (!bmp_load_addr) {
                printf("Error: bad 'splashimage' address\n");
                return -EFAULT;
@@ -162,7 +162,7 @@ int splash_display(void)
        if (!s)
                return -EINVAL;
 
-       addr = simple_strtoul(s, NULL, 16);
+       addr = hextoul(s, NULL);
        ret = splash_screen_prepare();
        if (ret)
                return ret;
index 3cf926d91a00beafb06f15a13fcbd867128cab37..d05670f5ee8768f1a04ce18a1502e18e41265b7e 100644 (file)
@@ -414,7 +414,7 @@ int splash_source_load(struct splash_location *locations, uint size)
        if (env_splashimage_value == NULL)
                return -ENOENT;
 
-       bmp_load_addr = simple_strtoul(env_splashimage_value, 0, 16);
+       bmp_load_addr = hextoul(env_splashimage_value, 0);
        if (bmp_load_addr == 0) {
                printf("Error: bad splashimage address specified\n");
                return -EFAULT;
index f0848954e5dfb0ae3083ca4238e9bc54644ca035..f5c8684f1b26e2e633cd66c9e08d308e2a3bcf0f 100644 (file)
@@ -272,7 +272,7 @@ int update_tftp(ulong addr, char *interface, char *devstring)
        /* get load address of downloaded update file */
        env_addr = env_get("loadaddr");
        if (env_addr)
-               addr = simple_strtoul(env_addr, NULL, 16);
+               addr = hextoul(env_addr, NULL);
        else
                addr = CONFIG_UPDATE_LOAD_ADDR;
 
index 086da84b7f05da00e5190487781a14e69d422053..a6a8f7052bd377501205e0c3ca2ddf9bc6201346 100644 (file)
@@ -396,7 +396,7 @@ int blk_get_device_by_str(const char *ifname, const char *dev_hwpart_str,
                hwpart = 0;
        }
 
-       dev = simple_strtoul(dev_str, &ep, 16);
+       dev = hextoul(dev_str, &ep);
        if (*ep) {
                printf("** Bad device specification %s %s **\n",
                       ifname, dev_str);
@@ -405,7 +405,7 @@ int blk_get_device_by_str(const char *ifname, const char *dev_hwpart_str,
        }
 
        if (hwpart_str) {
-               hwpart = simple_strtoul(hwpart_str, &ep, 16);
+               hwpart = hextoul(hwpart_str, &ep);
                if (*ep) {
                        printf("** Bad HW partition specification %s %s **\n",
                            ifname, hwpart_str);
@@ -534,7 +534,7 @@ int blk_get_device_part_str(const char *ifname, const char *dev_part_str,
                part = PART_AUTO;
        } else {
                /* Something specified -> use exactly that */
-               part = (int)simple_strtoul(part_str, &ep, 16);
+               part = (int)hextoul(part_str, &ep);
                /*
                 * Less than whole string converted,
                 * or request for whole device, but caller requires partition.
index 894b57087538a8e0815416ab6fe3e375262aeba9..a31d4804beb8318b50b3c0863435b93ada1d41c5 100644 (file)
@@ -268,9 +268,9 @@ int dfu_fill_entity_mtd(struct dfu_entity *dfu, char *devstr, char *s)
        st = strsep(&s, " ");
        if (!strcmp(st, "raw")) {
                dfu->layout = DFU_RAW_ADDR;
-               dfu->data.mtd.start = simple_strtoul(s, &s, 16);
+               dfu->data.mtd.start = hextoul(s, &s);
                s++;
-               dfu->data.mtd.size = simple_strtoul(s, &s, 16);
+               dfu->data.mtd.size = hextoul(s, &s);
        } else if ((!strcmp(st, "part")) || (!strcmp(st, "partubi"))) {
                char mtd_id[32];
                struct mtd_device *mtd_dev;
index b8d24d203beb097b52bbb97f45a90528691be903..6ddf80b78a5c00c95c3fec34688c96e05cfabdad 100644 (file)
@@ -204,9 +204,9 @@ int dfu_fill_entity_nand(struct dfu_entity *dfu, char *devstr, char *s)
        st = strsep(&s, " ");
        if (!strcmp(st, "raw")) {
                dfu->layout = DFU_RAW_ADDR;
-               dfu->data.nand.start = simple_strtoul(s, &s, 16);
+               dfu->data.nand.start = hextoul(s, &s);
                s++;
-               dfu->data.nand.size = simple_strtoul(s, &s, 16);
+               dfu->data.nand.size = hextoul(s, &s);
        } else if ((!strcmp(st, "part")) || (!strcmp(st, "partubi"))) {
                char mtd_id[32];
                struct mtd_device *mtd_dev;
index ab0ce9e6fa91e6de4317cbf02d5585573cf453f3..cc7e45ba335d510eedd0e3bd769bd9884a7c6e30 100644 (file)
@@ -74,8 +74,8 @@ int dfu_fill_entity_ram(struct dfu_entity *dfu, char *devstr, char *s)
        }
 
        dfu->layout = DFU_RAM_ADDR;
-       dfu->data.ram.start = simple_strtoul(argv[1], NULL, 16);
-       dfu->data.ram.size = simple_strtoul(argv[2], NULL, 16);
+       dfu->data.ram.start = hextoul(argv[1], NULL);
+       dfu->data.ram.size = hextoul(argv[2], NULL);
 
        dfu->write_medium = dfu_write_medium_ram;
        dfu->get_medium_size = dfu_get_medium_size_ram;
index 8f8c4259772139094f6a2eb0d1e031446a8c4b53..ef5231980e693323eb21c0a0154c2e8d331023bd 100644 (file)
@@ -171,9 +171,9 @@ int dfu_fill_entity_sf(struct dfu_entity *dfu, char *devstr, char *s)
        st = strsep(&s, " ");
        if (!strcmp(st, "raw")) {
                dfu->layout = DFU_RAW_ADDR;
-               dfu->data.sf.start = simple_strtoul(s, &s, 16);
+               dfu->data.sf.start = hextoul(s, &s);
                s++;
-               dfu->data.sf.size = simple_strtoul(s, &s, 16);
+               dfu->data.sf.size = hextoul(s, &s);
        } else if (CONFIG_IS_ENABLED(DFU_SF_PART) &&
                   (!strcmp(st, "part") || !strcmp(st, "partubi"))) {
                char mtd_id[32];
index 3a5db5b08fc82308a88981192ae21ce51febd867..98eccc34556b3ad510b0a15c1c798ea5d73af663 100644 (file)
@@ -208,7 +208,7 @@ static void download(char *cmd_parameter, char *response)
                return;
        }
        fastboot_bytes_received = 0;
-       fastboot_bytes_expected = simple_strtoul(cmd_parameter, &tmp, 16);
+       fastboot_bytes_expected = hextoul(cmd_parameter, &tmp);
        if (fastboot_bytes_expected == 0) {
                fastboot_fail("Expected nonzero image size", response);
                return;
index 4ab8cee2d18c54b4fb50496b1facf59ffeba1219..2fd2996798ceb7dccc699d4c72ad2552046b81c9 100644 (file)
@@ -221,11 +221,11 @@ static int do_pca953x(struct cmd_tbl *cmdtp, int flag, int argc,
 
        /* arg2 used as chip number or pin number */
        if (argc > 2)
-               ul_arg2 = simple_strtoul(argv[2], NULL, 16);
+               ul_arg2 = hextoul(argv[2], NULL);
 
        /* arg3 used as pin or invert value */
        if (argc > 3)
-               ul_arg3 = simple_strtoul(argv[3], NULL, 16) & 0x1;
+               ul_arg3 = hextoul(argv[3], NULL) & 0x1;
 
        switch ((long)c->cmd) {
        case PCA953X_CMD_INFO:
index a2a5291565465421876e51ceb32c16ff6aa5dd30..9340596f2c6392f9d69f2c37ac445e798d0f1777 100644 (file)
@@ -271,11 +271,11 @@ int do_ds4510(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
 
        /* arg2 used as chip addr and pin number */
        if (argc > 2)
-               ul_arg2 = simple_strtoul(argv[2], NULL, 16);
+               ul_arg2 = hextoul(argv[2], NULL);
 
        /* arg3 used as output/pullup value */
        if (argc > 3)
-               ul_arg3 = simple_strtoul(argv[3], NULL, 16);
+               ul_arg3 = hextoul(argv[3], NULL);
 
        switch ((int)c->cmd) {
        case DS4510_CMD_DEVICE:
@@ -337,9 +337,9 @@ int do_ds4510(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
        else
                return cmd_usage(cmdtp);
 
-       addr = simple_strtoul(argv[3], NULL, 16);
-       off += simple_strtoul(argv[4], NULL, 16);
-       cnt = simple_strtoul(argv[5], NULL, 16);
+       addr = hextoul(argv[3], NULL);
+       off += hextoul(argv[4], NULL);
+       cnt = hextoul(argv[5], NULL);
 
        if ((off + cnt) > end) {
                printf("ERROR: invalid len\n");
index 4fcc65d9782c010ec141991b9dd691381bbd7a4c..69adf282c7394b2ee50b152c0f973619dca1282b 100644 (file)
@@ -399,7 +399,7 @@ static int do_e1000_spi_dump(struct cmd_tbl *cmdtp, struct e1000_hw *hw,
        }
 
        /* Parse the arguments */
-       dest = (void *)simple_strtoul(argv[0], NULL, 16);
+       dest = (void *)hextoul(argv[0], NULL);
        offset = simple_strtoul(argv[1], NULL, 0);
        length = simple_strtoul(argv[2], NULL, 0);
 
@@ -444,7 +444,7 @@ static int do_e1000_spi_program(struct cmd_tbl *cmdtp, struct e1000_hw *hw,
        }
 
        /* Parse the arguments */
-       source = (const void *)simple_strtoul(argv[0], NULL, 16);
+       source = (const void *)hextoul(argv[0], NULL);
        offset = simple_strtoul(argv[1], NULL, 0);
        length = simple_strtoul(argv[2], NULL, 0);
 
index 242d27a34eab986404a0a2383a98ffb71ab1d15e..3855d7d58fa19ab311710cfd2434381975b49828 100644 (file)
@@ -42,7 +42,7 @@ void fdt_fixup_fman_firmware(void *blob)
        if (!p)
                return;
 
-       fmanfw = (struct qe_firmware *)simple_strtoul(p, NULL, 16);
+       fmanfw = (struct qe_firmware *)hextoul(p, NULL);
        if (!fmanfw)
                return;
 
index 914ec001ec691937b33c9f89e858b036916b750c..3712221eba88ec695be8e2dd4b96211744dce7f5 100644 (file)
@@ -956,8 +956,7 @@ unsigned long mc_get_dram_block_size(void)
        char *dram_block_size_env_var = env_get(MC_MEM_SIZE_ENV_VAR);
 
        if (dram_block_size_env_var) {
-               dram_block_size = simple_strtoul(dram_block_size_env_var, NULL,
-                                                16);
+               dram_block_size = hextoul(dram_block_size_env_var, NULL);
 
                if (dram_block_size < CONFIG_SYS_LS_MC_DRAM_BLOCK_MIN_SIZE) {
                        printf("fsl-mc: WARNING: Invalid value for \'"
index 364750f65c75f184b33e81e641a84167ede61958..2fe0db0fe7171db962b1edda0e6d26764e2ace35 100644 (file)
@@ -41,7 +41,7 @@ static void pfe_command_pe(int argc, char *const argv[])
                        }
 
                        id = simple_strtoul(argv[4], NULL, 0);
-                       addr = simple_strtoul(argv[5], NULL, 16);
+                       addr = hextoul(argv[5], NULL);
                        size = 4;
 
                        for (i = 0; i < num; i++, addr += 4) {
@@ -75,7 +75,7 @@ static void pfe_command_pe(int argc, char *const argv[])
                        }
 
                        id = simple_strtoul(argv[4], NULL, 0);
-                       addr = simple_strtoul(argv[5], NULL, 16);
+                       addr = hextoul(argv[5], NULL);
                        size = 4;
 
                        for (i = 0; i < num; i++, addr += 4) {
@@ -99,9 +99,9 @@ static void pfe_command_pe(int argc, char *const argv[])
                        }
 
                        id = simple_strtoul(argv[4], NULL, 0);
-                       val = simple_strtoul(argv[5], NULL, 16);
+                       val = hextoul(argv[5], NULL);
                        val = cpu_to_be32(val);
-                       addr = simple_strtoul(argv[6], NULL, 16);
+                       addr = hextoul(argv[6], NULL);
                        size = 4;
                        pe_dmem_write(id, val, addr, size);
                } else {
@@ -123,7 +123,7 @@ static void pfe_command_pe(int argc, char *const argv[])
                                return;
                        }
 
-                       offset = simple_strtoul(argv[4], NULL, 16);
+                       offset = hextoul(argv[4], NULL);
 
                        for (i = 0; i < num; i++, offset += 4) {
                                pe_lmem_read(&val, 4, offset);
@@ -141,9 +141,9 @@ static void pfe_command_pe(int argc, char *const argv[])
                                return;
                        }
 
-                       val = simple_strtoul(argv[4], NULL, 16);
+                       val = hextoul(argv[4], NULL);
                        val = cpu_to_be32(val);
-                       offset = simple_strtoul(argv[5], NULL, 16);
+                       offset = hextoul(argv[5], NULL);
                        pe_lmem_write(&val, 4, offset);
                } else {
                        printf("Usage: pfe pe lmem [read | write] <parameters>\n");
index 21da53c7e5b3c3c6e918c3f76ceb0e56127fff0b..695fac47b6cd7b67e06b7fdff5eb89a5bbe3548a 100644 (file)
@@ -646,8 +646,8 @@ int do_b53_reg_read(const char *name, int argc, char *const argv[])
                return ret;
        }
 
-       page = simple_strtoul(argv[1], NULL, 16);
-       offset = simple_strtoul(argv[2], NULL, 16);
+       page = hextoul(argv[1], NULL);
+       offset = hextoul(argv[2], NULL);
        width = simple_strtoul(argv[3], NULL, 10);
 
        switch (width) {
@@ -698,13 +698,13 @@ int do_b53_reg_write(const char *name, int argc, char *const argv[])
                return ret;
        }
 
-       page = simple_strtoul(argv[1], NULL, 16);
-       offset = simple_strtoul(argv[2], NULL, 16);
+       page = hextoul(argv[1], NULL);
+       offset = hextoul(argv[2], NULL);
        width = simple_strtoul(argv[3], NULL, 10);
        if (width == 48 || width == 64)
                value64 = simple_strtoull(argv[4], NULL, 16);
        else
-               value = simple_strtoul(argv[4], NULL, 16);
+               value = hextoul(argv[4], NULL);
 
        switch (width) {
        case 8:
index 62a7f192149315046d2e821ab8ebf5fa5f69ca34..07a8e50b4805caca88e6911b0cb9d4121d86e336 100644 (file)
@@ -256,7 +256,7 @@ int do_mvsw_reg_write(const char *name, int argc, char *const argv[])
        phyaddr = simple_strtoul(argv[1], NULL, 10);
        port = simple_strtoul(argv[2], NULL, 10);
        reg = simple_strtoul(argv[3], NULL, 10);
-       value = simple_strtoul(argv[4], NULL, 16);
+       value = hextoul(argv[4], NULL);
 
        ret = sw_reg_write(name, phyaddr, port, reg, value);
 
index eeed8e24a90b24c84c9125822b14b9ae739d4bfd..4f7ba099cd917baf8c2bb4a4846f6e15c7eb3c6c 100644 (file)
@@ -159,7 +159,7 @@ static int do_pmic(struct cmd_tbl *cmdtp, int flag, int argc,
                if (argc < 4)
                        return CMD_RET_USAGE;
 
-               reg = simple_strtoul(argv[3], NULL, 16);
+               reg = hextoul(argv[3], NULL);
                ret = pmic_reg_read(p, reg, &val);
 
                if (ret)
@@ -174,8 +174,8 @@ static int do_pmic(struct cmd_tbl *cmdtp, int flag, int argc,
                if (argc < 5)
                        return CMD_RET_USAGE;
 
-               reg = simple_strtoul(argv[3], NULL, 16);
-               val = simple_strtoul(argv[4], NULL, 16);
+               reg = hextoul(argv[3], NULL);
+               val = hextoul(argv[4], NULL);
                pmic_reg_write(p, reg, val);
 
                return CMD_RET_SUCCESS;
index 97883ffc8792f634e69669d5da19d1ba84a7bfc0..bd0a10c9d213021999e56244d31969bfb403af9d 100644 (file)
@@ -794,7 +794,7 @@ static int qe_cmd(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                return cmd_usage(cmdtp);
 
        if (strcmp(argv[1], "fw") == 0) {
-               addr = simple_strtoul(argv[2], NULL, 16);
+               addr = hextoul(argv[2], NULL);
 
                if (!addr) {
                        printf("Invalid address\n");
@@ -807,7 +807,7 @@ static int qe_cmd(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                 */
 
                if (argc > 3) {
-                       ulong length = simple_strtoul(argv[3], NULL, 16);
+                       ulong length = hextoul(argv[3], NULL);
                        struct qe_firmware *firmware = (void *)addr;
 
                        if (length != be32_to_cpu(firmware->header.length)) {
index 692042b93519ee4e6b07141b4f01c7654357deb7..b8ad33e012565903cbb98cf1dc749752023c6da8 100644 (file)
@@ -214,7 +214,7 @@ void rtc_reset(void)
         * the M41T60 documentation for further details.
         */
        if (s) {
-               unsigned long const l = simple_strtoul(s, 0, 16);
+               unsigned long const l = hextoul(s, 0);
 
                if (l <= 0x3F) {
                        if ((data[RTC_CTRL] & 0x3F) != l) {
index c4da2e3ae7f2772549bcc2a14f1a244fb731a693..383666781ccef580c9eca22dfa5dae4459805830 100644 (file)
@@ -642,7 +642,7 @@ void *video_hw_init(void)
        if (penv) {
                /* deceide if it is a string */
                if (penv[0] <= '9') {
-                       videomode = (int) simple_strtoul (penv, NULL, 16);
+                       videomode = (int)hextoul(penv, NULL);
                        tmp = 1;
                }
        } else {
index 1f491a48d6a7bfec769c6c7ffeb19aaf1155ca77..5e1ee061e8e81af2ceef6b3f9373ae282b49eb58 100644 (file)
@@ -1857,7 +1857,7 @@ static void *video_logo(void)
                ret = splash_screen_prepare();
                if (ret < 0)
                        return video_fb_address;
-               addr = simple_strtoul(s, NULL, 16);
+               addr = hextoul(s, NULL);
 
                if (video_display_bitmap(addr,
                                        video_logo_xpos,
index 9b42ca8d03f0560e186a5a47144d54fc7e9851b4..e6dd2b83c6f08c758315aefea7067730d1bf06ed 100644 (file)
@@ -820,7 +820,7 @@ void *video_hw_init(void)
        if (penv) {
                /* decide if it is a string */
                if (penv[0] <= '9') {
-                       videomode = (int) simple_strtoul(penv, NULL, 16);
+                       videomode = (int)hextoul(penv, NULL);
                        tmp = 1;
                }
        } else {
diff --git a/fs/fs.c b/fs/fs.c
index b7936fd4cfba2c7a7c43cbd40bee7170a1fd90b9..7c682582c808e065ba38a3cb971be791601463ad 100644 (file)
--- a/fs/fs.c
+++ b/fs/fs.c
@@ -717,13 +717,13 @@ int do_load(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[],
        }
 
        if (argc >= 4) {
-               addr = simple_strtoul(argv[3], &ep, 16);
+               addr = hextoul(argv[3], &ep);
                if (ep == argv[3] || *ep != '\0')
                        return CMD_RET_USAGE;
        } else {
                addr_str = env_get("loadaddr");
                if (addr_str != NULL)
-                       addr = simple_strtoul(addr_str, NULL, 16);
+                       addr = hextoul(addr_str, NULL);
                else
                        addr = CONFIG_SYS_LOAD_ADDR;
        }
@@ -737,11 +737,11 @@ int do_load(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[],
                }
        }
        if (argc >= 6)
-               bytes = simple_strtoul(argv[5], NULL, 16);
+               bytes = hextoul(argv[5], NULL);
        else
                bytes = 0;
        if (argc >= 7)
-               pos = simple_strtoul(argv[6], NULL, 16);
+               pos = hextoul(argv[6], NULL);
        else
                pos = 0;
 
@@ -815,11 +815,11 @@ int do_save(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[],
        if (fs_set_blk_dev(argv[1], argv[2], fstype))
                return 1;
 
-       addr = simple_strtoul(argv[3], NULL, 16);
+       addr = hextoul(argv[3], NULL);
        filename = argv[4];
-       bytes = simple_strtoul(argv[5], NULL, 16);
+       bytes = hextoul(argv[5], NULL);
        if (argc >= 7)
-               pos = simple_strtoul(argv[6], NULL, 16);
+               pos = hextoul(argv[6], NULL);
        else
                pos = 0;
 
index 4016de6677a0352350584320a339dbfbeb735239..5a268ab5cb3e37e636a52edbde63158faa35224f 100644 (file)
 #include <stdarg.h>
 #include <linux/types.h>
 
+/**
+ * simple_strtoul - convert a string to an unsigned long
+ *
+ * @param cp   The string to be converted
+ * @param endp Updated to point to the first character not converted
+ * @param base The number base to use
+ * @return value decoded from string (0 if invalid)
+ *
+ * Converts a string to an unsigned long. If there are invalid characters at
+ * the end these are ignored. In the worst case, if all characters are invalid,
+ * 0 is returned
+ */
 ulong simple_strtoul(const char *cp, char **endp, unsigned int base);
 
+/**
+ * hex_strtoul - convert a string in hex to an unsigned long
+ *
+ * @param cp   The string to be converted
+ * @param endp Updated to point to the first character not converted
+ * @return value decoded from string (0 if invalid)
+ *
+ * Converts a hex string to an unsigned long. If there are invalid characters at
+ * the end these are ignored. In the worst case, if all characters are invalid,
+ * 0 is returned
+ */
+unsigned long hextoul(const char *cp, char **endp);
+
 /**
  * strict_strtoul - convert a string to an unsigned long strictly
  * @param cp   The string to be converted
@@ -30,9 +55,6 @@ ulong simple_strtoul(const char *cp, char **endp, unsigned int base);
  *
  * echo will append a newline to the tail.
  *
- * simple_strtoul just ignores the successive invalid characters and
- * return the converted value of prefix part of the string.
- *
  * Copied this function from Linux 2.6.38 commit ID:
  * 521cb40b0c44418a4fd36dc633f575813d59a43d
  *
index 0a8a557319cf69aa096518e6fdab9a7e18011bf6..f596c8f280c6714e2075b98db547d9b1ab170b90 100644 (file)
@@ -52,7 +52,7 @@ void string_to_enetaddr(const char *addr, uint8_t *enetaddr)
                return;
 
        for (i = 0; i < 6; ++i) {
-               enetaddr[i] = addr ? simple_strtoul(addr, &end, 16) : 0;
+               enetaddr[i] = addr ? hextoul(addr, &end) : 0;
                if (addr)
                        addr = (*end) ? end + 1 : end;
        }
index f8b53d846b3520728bc31f0ee53c73a8217a8b35..57d62163da486f7957c97d9038fb92aadab65050 100644 (file)
@@ -30,11 +30,10 @@ static const char *_parse_integer_fixup_radix(const char *s, unsigned int *base)
        return s;
 }
 
-unsigned long simple_strtoul(const char *cp, char **endp,
-                               unsigned int base)
+ulong simple_strtoul(const char *cp, char **endp, uint base)
 {
-       unsigned long result = 0;
-       unsigned long value;
+       ulong result = 0;
+       ulong value;
 
        cp = _parse_integer_fixup_radix(cp, &base);
 
@@ -50,6 +49,11 @@ unsigned long simple_strtoul(const char *cp, char **endp,
        return result;
 }
 
+ulong hextoul(const char *cp, char **endp)
+{
+       return simple_strtoul(cp, endp, 16);
+}
+
 int strict_strtoul(const char *cp, unsigned int base, unsigned long *res)
 {
        char *tail;
index 5bc68674d02a49d50a75d38f2d19f05044fcdbe9..67267c66a3c30473abf050cd06f27e7f755bc704 100644 (file)
@@ -164,26 +164,26 @@ int uuid_str_to_bin(const char *uuid_str, unsigned char *uuid_bin,
        }
 
        if (str_format == UUID_STR_FORMAT_STD) {
-               tmp32 = cpu_to_be32(simple_strtoul(uuid_str, NULL, 16));
+               tmp32 = cpu_to_be32(hextoul(uuid_str, NULL));
                memcpy(uuid_bin, &tmp32, 4);
 
-               tmp16 = cpu_to_be16(simple_strtoul(uuid_str + 9, NULL, 16));
+               tmp16 = cpu_to_be16(hextoul(uuid_str + 9, NULL));
                memcpy(uuid_bin + 4, &tmp16, 2);
 
-               tmp16 = cpu_to_be16(simple_strtoul(uuid_str + 14, NULL, 16));
+               tmp16 = cpu_to_be16(hextoul(uuid_str + 14, NULL));
                memcpy(uuid_bin + 6, &tmp16, 2);
        } else {
-               tmp32 = cpu_to_le32(simple_strtoul(uuid_str, NULL, 16));
+               tmp32 = cpu_to_le32(hextoul(uuid_str, NULL));
                memcpy(uuid_bin, &tmp32, 4);
 
-               tmp16 = cpu_to_le16(simple_strtoul(uuid_str + 9, NULL, 16));
+               tmp16 = cpu_to_le16(hextoul(uuid_str + 9, NULL));
                memcpy(uuid_bin + 4, &tmp16, 2);
 
-               tmp16 = cpu_to_le16(simple_strtoul(uuid_str + 14, NULL, 16));
+               tmp16 = cpu_to_le16(hextoul(uuid_str + 14, NULL));
                memcpy(uuid_bin + 6, &tmp16, 2);
        }
 
-       tmp16 = cpu_to_be16(simple_strtoul(uuid_str + 19, NULL, 16));
+       tmp16 = cpu_to_be16(hextoul(uuid_str + 19, NULL));
        memcpy(uuid_bin + 8, &tmp16, 2);
 
        tmp64 = cpu_to_be64(simple_strtoull(uuid_str + 24, NULL, 16));
index c14176dd393aa7b408cd24e3727ed9a12b704a6c..d7ee35b4773828ed6f2b0285feaecefd6eb9390b 100644 (file)
@@ -858,7 +858,7 @@ bool str2long(const char *p, ulong *num)
 {
        char *endptr;
 
-       *num = simple_strtoul(p, &endptr, 16);
+       *num = hextoul(p, &endptr);
        return *p != '\0' && *endptr == '\0';
 }
 
index 359d7d4ea1f596a7d564f9d3999a92378c7f4b05..4c3b566d2c18f5341a715836e8d33cb8ae256184 100644 (file)
@@ -105,6 +105,18 @@ static int str_simple_strtoul(struct unit_test_state *uts)
 }
 STR_TEST(str_simple_strtoul, 0);
 
+static int str_hextoul(struct unit_test_state *uts)
+{
+       char *endp;
+
+       /* Just a simple test, since we know this uses simple_strtoul() */
+       ut_asserteq(0x1099ab, hextoul(str2, &endp));
+       ut_asserteq(6, endp - str2);
+
+       return 0;
+}
+STR_TEST(str_hextoul, 0);
+
 int do_ut_str(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
 {
        struct unit_test *tests = UNIT_TEST_SUITE_START(str_test);