[U-Boot] [PATCH][RESEND]: Fix for U-Boot build failure with CONFIG_SYS_NO_FLASH defined for qemu-mips.

Himanshu Chauhan
2009-12-20T06:43:58Z

Shinya Kuribayashi wrote:
> Hi,
>
> On 12/19/09 3:57 PM, Himanshu Chauhan wrote:
>> U-Boot hangs with qemu-system-mips with ##unknown flash error.
>
> Do you have any idea what's the root cause of that unknown flash
> error? Is this U-Boot CFI driver issue, or Qemu-side problem?
>
> Using CONFIG_SYS_NO_FLASH is a quick, enough workaround for your
> trial, but does not fix anything. Could you sort out the issue?
> I don't think I can help regarding debugging Qemu (sorry!), but
> u-boot/doc/README.qemu_mips and U-Boot/Qemu community will help.

May be I really want that CONFIG_SYS_NO_FLASH defined then build should at least not break. Isn't it?

>
>> Disabling flash using CONFIG_SYS_NO_FLASH breaks the build.
>> This patch fixes the issue. Don't know if its okay.
>>
>> Signed-off-by: Himanshu Chauhan<himanshu@symmetricore.com>
>
> Heh, let's use git-format-patch when preparing patches.
>
> $ git format-patch HEAD^..
> $ git format-patch --no-thread HEAD^^..
> $ mkdir foo && git format-patch -o foo/ HEAD~3..
> and so on.
>
Thanks, I will take care of that next time.

>> diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
>> index efd6aec..5bd3af0 100644
>> --- a/common/cmd_bootm.c
>> +++ b/common/cmd_bootm.c
>> @@ -76,7 +76,7 @@ extern void bz_internal_error(int);
>> static int image_info (unsigned long addr);
>> #endif
>>
>> -#if defined(CONFIG_CMD_IMLS)
>> +#if !defined(CONFIG_SYS_NO_FLASH)&& defined(CONFIG_CMD_IMLS)
>> #include<flash.h>
>> extern flash_info_t flash_info[]; /* info for FLASH chips */
>> static int do_imls (cmd_tbl_t *cmdtp, int flag, int argc, char
>> *argv[]);
>> @@ -1153,7 +1153,7 @@ U_BOOT_CMD(
>> /*******************************************************************/
>> /* imls - list all images found in flash */
>> /*******************************************************************/
>> -#if defined(CONFIG_CMD_IMLS)
>> +#if !defined(CONFIG_SYS_NO_FLASH)&& defined(CONFIG_CMD_IMLS)
>> int do_imls (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
>> {
>> flash_info_t *info;
>
> Disabling IMLS command in configs/qemu_mips.h?
This should have been disabled anyways if this patch was applied:
http://www.mail-archive.com/u-boot at lists.denx.de/msg07407.html

>
>> diff --git a/drivers/mtd/cfi_flash.c b/drivers/mtd/cfi_flash.c
>> index 24eb33f..06c7271 100644
>> --- a/drivers/mtd/cfi_flash.c
>> +++ b/drivers/mtd/cfi_flash.c
>> @@ -41,6 +41,7 @@
>> #include<environment.h>
>> #include<mtd/cfi_flash.h>
>>
>> +#ifndef CONFIG_SYS_NO_FLASH
>> /*
>> * This file implements a Common Flash Interface (CFI) driver for
>> * U-Boot.
>> @@ -2020,3 +2021,5 @@ unsigned long flash_init (void)
>>
>> return (size);
>> }
>> +
>> +#endif
>
> Removing CONFIG_CFI_DRIVER from configs/qemu_mips.h?
If CONFIG_SYS_NO_FLASH is defined should it be compiled?

Regards
Himanshu