[U-Boot] [PATCH v3 3/3] spl: dfu: reduce spl-dfu MLO size
B, Ravi
ravibabu at ti.com
Fri May 12 08:44:31 UTC 2017
Hi Tom
Sorry for late response, some how missed this mail.
>>
>> obj-$(CONFIG_USB_FUNCTION_DFU) += dfu.o
>> +ifndef CONFIG_SPL_BUILD
>> obj-$(CONFIG_DFU_MMC) += dfu_mmc.o
>> +endif
>> +obj-$(CONFIG_SPL_DFU_MMC) += dfu_mmc.o
>This becomes obj-$(CONFIG_$(SPL_)DFU_MMC) += dfu_mmc.o
>> diff --git a/drivers/dfu/dfu_mmc.c b/drivers/dfu/dfu_mmc.c index
>> 926ccbd..ba509db 100644
>> --- a/drivers/dfu/dfu_mmc.c
>> +++ b/drivers/dfu/dfu_mmc.c
> [snip]
>> @@ -154,7 +155,11 @@ static int mmc_file_op(enum dfu_op op, struct
>> dfu_entity *dfu,
>>
>> debug("%s: %s 0x%p\n", __func__, cmd_buf, cmd_buf);
>>
>> +#if CONFIG_IS_ENABLED(DFU_MMC)
>> + ret = cli_simple_run_command(cmd_buf, 0); #else
>> ret = run_command(cmd_buf, 0);
>> +#endif
>This doesn't make sense. CONFIG_IS_ENABLED(DFU_MMC) is true for CONFIG_DFU_MMC or CONFIG_SPL_DFU_MMC. Thanks!
True, My bad, I realized it lately after posting the patch.
I will use run_command() only, which abstrace use of both simple_cli_xx() and hush_parser.
Since cli_hush.c is compile out for SPL to reduce the size. SPL must use simple_cli_xx().
Since by default CONFIG_HUSH_PARSER is defined for both SPL/U-BOOT, this leads to compile error. I need to fix this way.
diff --git a/common/cli.c b/common/cli.c
index a433ef2..5053f8a 100644
--- a/common/cli.c
+++ b/common/cli.c
@@ -28,7 +28,7 @@ DECLARE_GLOBAL_DATA_PTR;
*/
int run_command(const char *cmd, int flag)
{
-#ifndef CONFIG_HUSH_PARSER
+#if !defined(CONFIG_HUSH_PARSER) || defined(CONFIG_SPL_BUILD)
/*
* cli_run_command can return 0 or 1 for success, so clean up
* its result.
Is it ok, any other option ?
Regards
Ravi
More information about the U-Boot
mailing list