linux-mips
[Top] [All Lists]

Re: [RFC 11/13] MIPS: JZ4750D: Add Kbuild files

To: Florian Fainelli <florian@openwrt.org>
Subject: Re: [RFC 11/13] MIPS: JZ4750D: Add Kbuild files
From: Maarten ter Huurne <maarten@treewalker.org>
Date: Wed, 24 Oct 2012 20:15:37 +0200
Cc: linux-mips@linux-mips.org, Antony Pavlov <antonynpavlov@gmail.com>, Ralf Baechle <ralf@linux-mips.org>, Lars-Peter Clausen <lars@metafoo.de>
In-reply-to: <6315819.WnqMkxcSqV@bender>
List-archive: <http://www.linux-mips.org/archives/linux-mips/>
List-help: <mailto:ecartis@linux-mips.org?Subject=help>
List-id: linux-mips <linux-mips.eddie.linux-mips.org>
List-owner: <mailto:ralf@linux-mips.org>
List-post: <mailto:linux-mips@linux-mips.org>
List-software: Ecartis version 1.0.0
List-subscribe: <mailto:ecartis@linux-mips.org?subject=subscribe%20linux-mips>
List-unsubscribe: <mailto:ecartis@linux-mips.org?subject=unsubscribe%20linux-mips>
References: <1351014241-3207-1-git-send-email-antonynpavlov@gmail.com> <4796718.WhuB0k6pfC@hyperion> <6315819.WnqMkxcSqV@bender>
Sender: linux-mips-bounce@linux-mips.org
User-agent: KMail/4.9.2 (Linux/3.4.11-2.16-desktop; KDE/4.9.2; x86_64; ; )
On Wednesday 24 October 2012 19:43:25 Florian Fainelli wrote:
> On Wednesday 24 October 2012 18:16:35 Maarten ter Huurne wrote:
> > On Tuesday 23 October 2012 21:43:59 Antony Pavlov wrote:
> > > Add the Kbuild files for the JZ4750D architecture and adds JZ4750D
> > > support to the MIPS Kbuild files.
> > 
> > [snip]
> > 
> > > diff --git a/arch/mips/jz4750d/Platform b/arch/mips/jz4750d/Platform
> > > new file mode 100644
> > > index 0000000..2e4e050
> > > --- /dev/null
> > > +++ b/arch/mips/jz4750d/Platform
> > > @@ -0,0 +1,3 @@
> > > +platform-$(CONFIG_MACH_JZ4750D)  += jz4750d/
> > > +cflags-$(CONFIG_MACH_JZ4750D)    +=
> > > -I$(srctree)/arch/mips/include/asm/mach-jz4750d
> > > +load-$(CONFIG_MACH_JZ4750D)      += 0xffffffff80010000
> > 
> > What is the purpose of padding the load address to 64 bits?
> > 
> > The reason I'm asking is that we encountered a bug with that when
> > creating a u-boot image on a 32-bit host machine: the mkimage tool will
> > only parse the first 8 hex digits and then inserts the wrong load
> > address into the uImage.
>
> AFAIR u-boot's mkimage expects 32-bits quantities as a load address, so I
> would not be surprised that using this line as-is as an input parameter
> to mkimage does not give yout the expected result.

The actual uImage format supports only 32-bit addresses, but mkimage is 
inconsistent in its handling of 64-bit addresses: if the tool is compiled 
for x86_64 it parses all 16 hex digits and uses the lower 32 bits, but if it 
is compiled for x86 it parses only the first 8 hex digits and the resulting 
image won't boot.

There is no "uImage" target for MIPS in the mainline kernel; we added our 
own and it indeed passes $(VMLINUX_LOAD_ADDRESS) to mkimage as-is on the 
command line. Since Ralf indicated that there are good reasons for sign 
extending the address, I think I'll have to change how it is passed to 
mkimage.

Bye,
                Maarten


<Prev in Thread] Current Thread [Next in Thread>