diff mbox

[U-Boot] common: image: Allow mkimage to build a uImage for extensa

Message ID 1398746935-11855-1-git-send-email-festevam@gmail.com
State Changes Requested
Delegated to: Tom Rini
Headers show

Commit Message

Fabio Estevam April 29, 2014, 4:48 a.m. UTC
From: Fabio Estevam <fabio.estevam@freescale.com>

Currently we get the following failure when trying to build a uImage for 
extensa:

$ ./tools/mkimage -A xtensa

Invalid CPU Type - valid names are: alpha, arm, x86, ia64, m68k, microblaze,
mips, mips64, nios2, powerpc, ppc, s390, sh, sparc, sparc64, blackfin, avr32,
nds32, or1k, sandbox, arm64

Add an entry for extensa so that a uImage can be built.

Reported-by: Geert Uytterhoeven <geert@linux-m68k.org> 
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
---
 common/image.c  | 1 +
 include/image.h | 1 +
 2 files changed, 2 insertions(+)

Comments

Chris Zankel April 29, 2014, 4:55 a.m. UTC | #1
Hi Fabio,

Thanks for the patch, but the name is actually 'xtensa' (without the 
'e'). Would be great if you could change that.

Thanks,
-Chris


On 4/28/14, 9:48 PM, Fabio Estevam wrote:
> From: Fabio Estevam <fabio.estevam@freescale.com>
>
> Currently we get the following failure when trying to build a uImage for
> extensa:
>
> $ ./tools/mkimage -A xtensa
>
> Invalid CPU Type - valid names are: alpha, arm, x86, ia64, m68k, microblaze,
> mips, mips64, nios2, powerpc, ppc, s390, sh, sparc, sparc64, blackfin, avr32,
> nds32, or1k, sandbox, arm64
>
> Add an entry for extensa so that a uImage can be built.
>
> Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
> ---
>   common/image.c  | 1 +
>   include/image.h | 1 +
>   2 files changed, 2 insertions(+)
>
> diff --git a/common/image.c b/common/image.c
> index 9c6bec5..e0bdaf3 100644
> --- a/common/image.c
> +++ b/common/image.c
> @@ -83,6 +83,7 @@ static const table_entry_t uimage_arch[] = {
>   	{	IH_ARCH_SANDBOX,	"sandbox",	"Sandbox",	},
>   	{	IH_ARCH_ARM64,		"arm64",	"AArch64",	},
>   	{	IH_ARCH_ARC,		"arc",		"ARC",		},
> +	{	IH_ARCH_EXTENSA,	"extensa",	"EXTENSA",	},
>   	{	-1,			"",		"",		},
>   };
>   
> diff --git a/include/image.h b/include/image.h
> index 6afd57b..7595745 100644
> --- a/include/image.h
> +++ b/include/image.h
> @@ -158,6 +158,7 @@ struct lmb;
>   #define IH_ARCH_OPENRISC        21	/* OpenRISC 1000  */
>   #define IH_ARCH_ARM64		22	/* ARM64	*/
>   #define IH_ARCH_ARC		23	/* Synopsys DesignWare ARC */
> +#define IH_ARCH_EXTENSA		24	/* Extensa */
>   
>   /*
>    * Image Types
Wolfgang Denk April 29, 2014, 10:24 a.m. UTC | #2
Dear Fabio Estevam,

In message <1398746935-11855-1-git-send-email-festevam@gmail.com> you wrote:
> From: Fabio Estevam <fabio.estevam@freescale.com>
> 
> Currently we get the following failure when trying to build a uImage for 
> extensa:
> 
> $ ./tools/mkimage -A xtensa
...
> +	{	IH_ARCH_EXTENSA,	"extensa",	"EXTENSA",	},

Is this "xtensa" or "extensa"?

And which actual architecture would that be?  I cannot find any
architecture support for xtensa in U-Boot mainline, so why should we
add image support for it?

If you plan to add support for this architecture, then please submit
this patch as part of the series that adds such architecture support.

Best regards,

Wolfgang Denk
Fabio Estevam April 29, 2014, 3:04 p.m. UTC | #3
On Tue, Apr 29, 2014 at 7:24 AM, Wolfgang Denk <wd@denx.de> wrote:
> Dear Fabio Estevam,
>
> In message <1398746935-11855-1-git-send-email-festevam@gmail.com> you wrote:
>> From: Fabio Estevam <fabio.estevam@freescale.com>
>>
>> Currently we get the following failure when trying to build a uImage for
>> extensa:
>>
>> $ ./tools/mkimage -A xtensa
> ...
>> +     {       IH_ARCH_EXTENSA,        "extensa",      "EXTENSA",      },
>
> Is this "xtensa" or "extensa"?

It is xtensa, sorry.

>
> And which actual architecture would that be?  I cannot find any
> architecture support for xtensa in U-Boot mainline, so why should we
> add image support for it?
>
> If you plan to add support for this architecture, then please submit
> this patch as part of the series that adds such architecture support.

Ok, understood.

Looks like the quick fix is for Michael/Geert do not build uImage for
xtensa on their automated build environments.

Regards,

Fabio Estevam
Wolfgang Denk April 29, 2014, 3:48 p.m. UTC | #4
Dear Fabio,

In message <CAOMZO5BozLxi65cknttwu2hA0OGy_N=VZBbwm7_WWMaRBbKK6w@mail.gmail.com> you wrote:
>
> Looks like the quick fix is for Michael/Geert do not build uImage for
> xtensa on their automated build environments.

What would you do with an uImage file when there is no U-Boot to load
it?

Best regards,

Wolfgang Denk
Fabio Estevam April 29, 2014, 3:52 p.m. UTC | #5
On Tue, Apr 29, 2014 at 12:48 PM, Wolfgang Denk <wd@denx.de> wrote:
> Dear Fabio,
>
> In message <CAOMZO5BozLxi65cknttwu2hA0OGy_N=VZBbwm7_WWMaRBbKK6w@mail.gmail.com> you wrote:
>>
>> Looks like the quick fix is for Michael/Geert do not build uImage for
>> xtensa on their automated build environments.
>
> What would you do with an uImage file when there is no U-Boot to load
> it?

Michael's build system builds uImage for xtensa:
http://kisskb.ellerman.id.au/kisskb/buildresult/10665903/

,so it makes more sense simply not to build uImage for such architecture.
Chris Zankel April 29, 2014, 5:11 p.m. UTC | #6
Hi,

I have a port for the Xtensa architecture ready, and it would be great 
if you could include it in the mainline tree. I still have to finish 
another project, but could start sending patches for RFC to this mailing 
list in a week or two.

Thanks,
-Chris

On 4/29/14, 8:48 AM, Wolfgang Denk wrote:
> Dear Fabio,
>
> In message <CAOMZO5BozLxi65cknttwu2hA0OGy_N=VZBbwm7_WWMaRBbKK6w@mail.gmail.com> you wrote:
>> Looks like the quick fix is for Michael/Geert do not build uImage for
>> xtensa on their automated build environments.
> What would you do with an uImage file when there is no U-Boot to load
> it?
>
> Best regards,
>
> Wolfgang Denk
>
Michael Ellerman April 30, 2014, 1:57 a.m. UTC | #7
On Tue, 2014-04-29 at 12:52 -0300, Fabio Estevam wrote:
> On Tue, Apr 29, 2014 at 12:48 PM, Wolfgang Denk <wd@denx.de> wrote:
> > Dear Fabio,
> >
> > In message <CAOMZO5BozLxi65cknttwu2hA0OGy_N=VZBbwm7_WWMaRBbKK6w@mail.gmail.com> you wrote:
> >>
> >> Looks like the quick fix is for Michael/Geert do not build uImage for
> >> xtensa on their automated build environments.
> >
> > What would you do with an uImage file when there is no U-Boot to load
> > it?
> 
> Michael's build system builds uImage for xtensa:
> http://kisskb.ellerman.id.au/kisskb/buildresult/10665903/
> 
> so it makes more sense simply not to build uImage for such architecture.

It just runs "make".

The decision about building a uImage must be in the .config somewhere.

This failure is for allnoconfig, so presumably there is something like a
CONFIG_DONT_BUILD_UIMAGE which is getting set to n by allnoconfig. If you can
tell me what that option is I can force it back on (I think).

cheers
Fabio Estevam April 30, 2014, 6:05 p.m. UTC | #8
On Tue, Apr 29, 2014 at 10:57 PM, Michael Ellerman <mpe@ellerman.id.au> wrote:

> It just runs "make".
>
> The decision about building a uImage must be in the .config somewhere.
>
> This failure is for allnoconfig, so presumably there is something like a
> CONFIG_DONT_BUILD_UIMAGE which is getting set to n by allnoconfig. If you can
> tell me what that option is I can force it back on (I think).

It seems that xtensa uses an out of tree U-boot port then.

Chris mentioned that he plans to upstream xtensa u-boot support.

arch/xtensa/boot/boot-uboot/Makefile does force the uImage to be generated.
diff mbox

Patch

diff --git a/common/image.c b/common/image.c
index 9c6bec5..e0bdaf3 100644
--- a/common/image.c
+++ b/common/image.c
@@ -83,6 +83,7 @@  static const table_entry_t uimage_arch[] = {
 	{	IH_ARCH_SANDBOX,	"sandbox",	"Sandbox",	},
 	{	IH_ARCH_ARM64,		"arm64",	"AArch64",	},
 	{	IH_ARCH_ARC,		"arc",		"ARC",		},
+	{	IH_ARCH_EXTENSA,	"extensa",	"EXTENSA",	},
 	{	-1,			"",		"",		},
 };
 
diff --git a/include/image.h b/include/image.h
index 6afd57b..7595745 100644
--- a/include/image.h
+++ b/include/image.h
@@ -158,6 +158,7 @@  struct lmb;
 #define IH_ARCH_OPENRISC        21	/* OpenRISC 1000  */
 #define IH_ARCH_ARM64		22	/* ARM64	*/
 #define IH_ARCH_ARC		23	/* Synopsys DesignWare ARC */
+#define IH_ARCH_EXTENSA		24	/* Extensa */
 
 /*
  * Image Types