From: Gary Thomas <gary@mlbassoc.com>
To: meta-ti@yoctoproject.org
Subject: Re: pandaboard not booting
Date: Wed, 26 Sep 2012 06:54:24 -0600 [thread overview]
Message-ID: <5062FB00.7080307@mlbassoc.com> (raw)
In-Reply-To: <5062F839.302@intel.com>
On 2012-09-26 06:42, Radu Moisan wrote:
>
> On 09/26/2012 01:49 PM, Gary Thomas wrote:
>> On 2012-09-26 04:44, Radu Moisan wrote:
>>> Hi Enrico,
>>> I'm not sure what are you reffering to when you say bootloader env, but here's what I get on my console:
>>>
>>> U-Boot SPL 2011.12-dirty (Sep 24 2012 - 17:18:42)
>>> Texas Instruments OMAP4430 ES2.3
>>> Bypassing DPLL failed 4a008180
>>> OMAP SD/MMC: 0
>>> reading u-boot.img
>>> reading u-boot.img
>>>
>>>
>>> U-Boot 2011.12-dirty (Sep 24 2012 - 17:18:42)
>>>
>>> CPU : OMAP4430 ES2.3
>>> Board: OMAP4 Panda
>>> I2C: ready
>>> DRAM: 1 GiB
>>> MMC: OMAP SD/MMC: 0
>>> Using default environment
>>>
>>> In: serial
>>> Out: serial
>>> Err: serial
>>> Hit any key to stop autoboot: 0
>>> reading boot.scr
>>>
>>> ** Unable to read "boot.scr" from mmc 0:1 **
>>> reading uImage
>>>
>>> 4176612 bytes read
>>> Booting from mmc0 ...
>>> ## Booting kernel from Legacy Image at 82000000 ...
>>> Image Name: Linux-3.1.0
>>> Image Type: ARM Linux Kernel Image (uncompressed)
>>> Data Size: 4176548 Bytes = 4 MiB
>>> Load Address: 80008000
>>> Entry Point: 80008000
>>> Verifying Checksum ... OK
>>> Loading Kernel Image ... OK
>>> OK
>>>
>>> Starting kernel ...
>>>
>>> Uncompressing Linux... done, booting the kernel.
>>>
>>> All I did to build it, was to add meta-ti to my bblayers.conf and try bitbake with MACHINE=pandaboard. The build was screaming about some QA errors, which I had to disable to get
>>> the build finish. I'm assuming those are the reason for my failure. However, I did not investigate further into these.
>>
>> Break into U-Boot during the boot process and show us what you get from
>> the 'printenv' command. This will show the default value of 'bootargs'
>> which is what is being used since you don't have a 'boot.scr' script
>>
> Panda # printenv
> baudrate=115200
> bootcmd=if mmc rescan ${mmcdev}; then if run loadbootscript; then run bootscript; else if run loaduimage; then run mmcboot; fi; fi; fi
> bootdelay=3
> bootscript=echo Running bootscript from mmc${mmcdev} ...; source ${loadaddr}
> console=ttyO2,115200n8
> loadaddr=0x82000000
> loadbootscript=fatload mmc ${mmcdev} ${loadaddr} boot.scr
> loaduimage=fatload mmc ${mmcdev} ${loadaddr} uImage
> mmcargs=setenv bootargs console=${console} vram=${vram} root=${mmcroot} rootfstype=${mmcrootfstype}
> mmcboot=echo Booting from mmc${mmcdev} ...; run mmcargs; bootm ${loadaddr}
> mmcdev=0
> mmcroot=/dev/mmcblk0p2 ro
> mmcrootfstype=ext4 rootwait
> usbtty=cdc_acm
> vram=16M
>
> Environment size: 686/131068 bytes
This looks correct - the important bit is that console=ttyO2
Diagnosing why this doesn't come up may be a bit trickier. One thing that you
can do is to look at the kernel messages (which are not being printed!). Thankfully,
those are kept buffered in memory and you should be able to print them manually.
Give these steps a go:
* Boot as you have been, letting it hang after starting the kernel
* Press the RESET button on the PandaBoard
* Break into U-Boot
* Dump the kernel messages via:
U-Boot> md LOG_BUF_ADDRESS
This will display 256 bytes at LOG_BUF_ADDRESS. If you just press return, you'll
get to see the next 256 bytes, etc. Keep doing this until the messages stop...
To find the LOG_BUF_ADDRESS, search for __log_buf in the System.map which was created
when you built your kernel. This will be in your Yocto build tree .../tmp/work/pandaboard*/linux*/git
(I think - I don't have a build for this machine handy) You'll see something like this:
$ grep __log_buf tmp/work/panda*/linux*/git/System.map
c06d66e9 b __log_buf
That's a virtual address which corresponds to 0x806d66e9 in physical RAM. Truncate
the address to a longword value, i.e. 0x806d66e8 - that's LOG_BUF_ADDRESS
See what you get, it may provide a clue where the kernel is crashing.
--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
next prev parent reply other threads:[~2012-09-26 12:54 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-25 13:43 pandaboard not booting Radu Moisan
2012-09-26 8:02 ` Radu Moisan
2012-09-26 9:20 ` Enrico
2012-09-26 10:44 ` Radu Moisan
2012-09-26 10:49 ` Gary Thomas
2012-09-26 12:42 ` Radu Moisan
2012-09-26 12:54 ` Gary Thomas [this message]
2012-09-26 13:49 ` Radu Moisan
2012-09-27 7:25 ` Christian.Schulenberg
2012-09-27 8:08 ` Radu Moisan
2012-09-27 8:47 ` Enrico
2012-09-27 11:16 ` Christian.Schulenberg
2012-09-27 12:06 ` Enrico
2012-09-27 13:47 ` Christian.Schulenberg
2012-09-27 13:55 ` Khem Raj
2012-09-27 16:08 ` Gary Thomas
2012-09-27 16:10 ` Khem Raj
2012-09-27 16:22 ` Enrico
2012-09-27 16:24 ` Denys Dmytriyenko
2012-09-27 16:31 ` Gary Thomas
2012-09-27 21:15 ` Nicolas Dechesne
2012-09-27 21:28 ` Denys Dmytriyenko
2012-09-28 8:31 ` Enrico
2012-09-28 9:01 ` Nicolas Dechesne
2012-09-28 11:03 ` Christian.Schulenberg
2012-09-28 11:53 ` Nicolas Dechesne
2012-10-02 8:03 ` Christian.Schulenberg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5062FB00.7080307@mlbassoc.com \
--to=gary@mlbassoc.com \
--cc=meta-ti@yoctoproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.