On Tue, Nov 22, 2011 at 7:05 PM, Peter Maydell <peter.maydell@linaro.org> wrote:
[Jubi, I'm afraid this is the second copy of this you'll see, because
you accidentally sent your reply to linaro-toolchain-request rather
than to the actual mailing list, and so my first reply was misdirected.
This reply is to the correct list address...]

On 22 November 2011 13:28, Jubi Taneja <jubitaneja@gmail.com> wrote:
> Thanks for your reply. Please find the response inline ..
> On Tue, Nov 22, 2011 at 6:44 PM, Peter Maydell <peter.maydell@linaro.org>
> wrote:
>> On 22 November 2011 13:06, Jubi Taneja <jubitaneja@gmail.com> wrote:
>> > But if i enable the LPAE support in the config file, the kernel builds
>> > and
>> > when I boot the kernel image on QEMU, it just prints the output as :
>> >
>> > Uncompressing Linux... done, booting the kernel.
>>
>> Does your kernel boot OK on real hardware?
>>
>> (ie, is a kernel with LPAE support expected to boot on a CPU like the
>> A9 which doesn't have LPAE?)
>
> Yes, it is expected to boot ARM Cortex A15 CPU.

The A9 and the A15 are different CPUs. QEMU currently supports
only the A9. This is why I asked if this kernel boots OK on real
Versatile Express A9 hardware.

I found that QEMU's latest version that I used supports A15.  https://launchpad.net/qemu-linaro/+milestone/2011.10

New in this month's release:
 - Instructions introduced with the Cortex-A15 (ARM mode
   SDIV and UDIV, and the VFPv4 fused multiply-accumulate
   instructions VFMA, VFMS, VFNMA, VFNMS) are now supported
   in linux-user mode
 
Yes, the kernel boots properly for VE A9 hardware.


>> Also if your config/kernel command line don't turn on earlyprintk it's
>> worth enabling this as it usually gets you better diagnostic messages
>> for early kernel boot failures.


EARLY_PRINTK is enabled in the config file. For your reference, I am attaching the working (without LPAE support) and non-working (with LPAE support) .config files.
 
>
> Ok, I will try to check this. But, unfortunately now I again tried enabling
> LPAE in config file and the current status is that when I boot the kernel
> image on Qemu. it simply hangs. It now don't show that message of
> Uncompressing kernel.. I am trying to debug it using gdb, but could not find
> much. Please guide me how shall I proceed ahead.

If you've turned on kernel support for the Versatile Express A15
rather than the Versatile Express A9 then this is expected behaviour:
the VE-A15 has a different memory layout and in particular the serial
ports are in a different place. So if you try to boot the kernel on
a VE-A9 system (which is what QEMU is modelling) then it will display
nothing because the kernel is trying to write to UARTs which aren't
there.

What are you actually trying to achieve here?

The reason you have mentioned is very logical. Thanks for this information. But, still I have a query as I have mentioned above that QEMU release note says that it supports Cortex A15.Though I could not trace A15 support in QEMU source code but I could find the supporting flags for VE-A9. Also, please tell me how to ensure that A15 CPU is anbled in .config file when I build the kernel. Because, the flags enabled are like CPU_V7.

Also, as i told that without LPAE support, Kernel boots properly for VE A9 or VE A15. But, I am not sure how to verify that it worked correctly for A15? I am looking for some cross checking method to ensure that it works for A15.

Looking forward to your guidance.

Thanks and Regards,
Jubi



-- PMM