* [U-Boot] Getting U-Boot running on Toradex Colibri T20 on Iris board
@ 2013-08-07 8:15 Andrzej Telszewski
2013-09-26 20:42 ` Stefan Agner
0 siblings, 1 reply; 5+ messages in thread
From: Andrzej Telszewski @ 2013-08-07 8:15 UTC (permalink / raw)
To: u-boot
Hi,
I'm trying to get the U-Boot running on the Iris board with the Toradex
Colibri T20 module. I was able to flash the U-Boot and it starts but
then immediately stops with the only message being:
U-Boot 2013.07 (Aug 06 2013 - 17:47:43)
TEGRA20
Board: Toradex Colibri T20 on Iris
DRAM:
The Colibri T20 board used is:
256MB RAM
V1.2A
Could you please give me any idea what I might be doing wrong?
--
Best regards,
Andrzej Telszewski
Embedded Systems Developer
Versa Design S.L.
phone: +34 633 535 308
e-mail: atelszewski at versades.com
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] Getting U-Boot running on Toradex Colibri T20 on Iris board
2013-08-07 8:15 [U-Boot] Getting U-Boot running on Toradex Colibri T20 on Iris board Andrzej Telszewski
@ 2013-09-26 20:42 ` Stefan Agner
2013-11-25 10:00 ` Andrzej Telszewski
0 siblings, 1 reply; 5+ messages in thread
From: Stefan Agner @ 2013-09-26 20:42 UTC (permalink / raw)
To: u-boot
Am 2013-08-07 10:15, schrieb Andrzej Telszewski:
> Hi,
>
> I'm trying to get the U-Boot running on the Iris board with the
> Toradex Colibri T20 module. I was able to flash the U-Boot and it
> starts but then immediately stops with the only message being:
>
> U-Boot 2013.07 (Aug 06 2013 - 17:47:43)
>
> TEGRA20
> Board: Toradex Colibri T20 on Iris
> DRAM:
>
>
> The Colibri T20 board used is:
> 256MB RAM
> V1.2A
>
> Could you please give me any idea what I might be doing wrong?
Latest U-Boot worked on my Setup (Colibri T20 on the Evaluation Board).
Although, I use the 512MiB variant:
TEGRA20
Board: Toradex Colibri T20 on Iris
DRAM: 512 MiB
So it must be DRAM related. RAM will be initialized according to ODM
data, see query_sdram_size in ./arch/arm/cpu/tegra-common/board.c. How
do you flash u-boot? Using tegrarcm or nvflash? Can you verify your ODM
data?
--
Stefan
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] Getting U-Boot running on Toradex Colibri T20 on Iris board
2013-09-26 20:42 ` Stefan Agner
@ 2013-11-25 10:00 ` Andrzej Telszewski
2013-11-25 17:40 ` Stephen Warren
2013-11-25 21:14 ` Stefan Agner
0 siblings, 2 replies; 5+ messages in thread
From: Andrzej Telszewski @ 2013-11-25 10:00 UTC (permalink / raw)
To: u-boot
On 09/26/2013 10:42 PM, Stefan Agner wrote:
> Am 2013-08-07 10:15, schrieb Andrzej Telszewski:
>> Hi,
>>
>> I'm trying to get the U-Boot running on the Iris board with the
>> Toradex Colibri T20 module. I was able to flash the U-Boot and it
>> starts but then immediately stops with the only message being:
>>
>> U-Boot 2013.07 (Aug 06 2013 - 17:47:43)
>>
>> TEGRA20
>> Board: Toradex Colibri T20 on Iris
>> DRAM:
>>
>>
>> The Colibri T20 board used is:
>> 256MB RAM
>> V1.2A
>>
>> Could you please give me any idea what I might be doing wrong?
> Latest U-Boot worked on my Setup (Colibri T20 on the Evaluation Board).
> Although, I use the 512MiB variant:
>
> TEGRA20
> Board: Toradex Colibri T20 on Iris
> DRAM: 512 MiB
>
> So it must be DRAM related. RAM will be initialized according to ODM
> data, see query_sdram_size in ./arch/arm/cpu/tegra-common/board.c. How
> do you flash u-boot? Using tegrarcm or nvflash? Can you verify your ODM
> data?
Hi Stefan,
You are correct, the problem with the U-Boot not starting was the value
of the odmdata.
I was flashing the chip with the following:
# nvflash --bct colibri-t20-256-1.2-nand.bct --setbct --configfile
nand.cfg --odmdata 0x1 --create --bl loader.nb0 --go
and when I changed it to:
# nvflash --bct colibri-t20-256-1.2-nand.bct --setbct --configfile
nand.cfg --odmdata 0x10000000 --create --bl loader.nb0 --go
the U-Boot has started correctly.
BTW, can you confirm that the nvflash command line switches I'm using
are correct and also that the new odmdata value (0x10000000) is a
correct one?
My next issue is with booting the kernel, so I appreciate if you can
also help me with it. I noticed that the U-Boot (version 2013.10)
environment for the T20/Iris is quite bare and it looks for the boot
scripts (e.g. boot.scr.uimg or boot.scr), which I presume sets up the
whole environment before the actual booting. Do you know if I can find
the scripts somewhere or do I need to write them myself?
Nonetheless, I have tried to boot the kernel with the bare environment,
but had no bigger luck. I have compiled the kernel version 3.12.1 with
the "tegra_defconfig" and LOADADDR equal to 0x00008000. I used the tftp
to transfer the kernel image to the board and tried to boot it, but the
only thing I get is the "Starting kernel ...". I believe the kernel
might be booting, but does not give any feedback on the console and what
is more, immediately after the boot command, the ethernet seems to be
disabled, because the LEDs on the connector are switched off.
The reason I think the kernel boots to some stage is that, if I change
the odmdata to 0x100C0000, I got the message:
Error: unrecognized/unsupported machine ID (r1 = 0x00000000).
Available machine support:
ID (hex) NAME
ffffffff Generic DT based system
ffffffff NVIDIA Tegra SoC (Flattened Device Tree)
Please check your kernel config and/or bootloader.
So I guess the kernel is actually doing at least some initial tasks.
Any help appreciated!
--
Best regards,
Andrzej Telszewski
Embedded Systems Developer
Versa Design S.L.
phone: +34 633 535 308
e-mail: atelszewski at versades.com
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] Getting U-Boot running on Toradex Colibri T20 on Iris board
2013-11-25 10:00 ` Andrzej Telszewski
@ 2013-11-25 17:40 ` Stephen Warren
2013-11-25 21:14 ` Stefan Agner
1 sibling, 0 replies; 5+ messages in thread
From: Stephen Warren @ 2013-11-25 17:40 UTC (permalink / raw)
To: u-boot
On 11/25/2013 03:00 AM, Andrzej Telszewski wrote:
> On 09/26/2013 10:42 PM, Stefan Agner wrote:
>> Am 2013-08-07 10:15, schrieb Andrzej Telszewski:
>>> Hi,
>>>
>>> I'm trying to get the U-Boot running on the Iris board with the
>>> Toradex Colibri T20 module. I was able to flash the U-Boot and it
>>> starts but then immediately stops with the only message being:
>>>
>>> U-Boot 2013.07 (Aug 06 2013 - 17:47:43)
>>>
>>> TEGRA20
>>> Board: Toradex Colibri T20 on Iris
>>> DRAM:
...
> You are correct, the problem with the U-Boot not starting was the value
> of the odmdata.
>
> I was flashing the chip with the following:
> # nvflash --bct colibri-t20-256-1.2-nand.bct --setbct --configfile
> nand.cfg --odmdata 0x1 --create --bl loader.nb0 --go
>
> and when I changed it to:
> # nvflash --bct colibri-t20-256-1.2-nand.bct --setbct --configfile
> nand.cfg --odmdata 0x10000000 --create --bl loader.nb0 --go
>
> the U-Boot has started correctly.
>
> BTW, can you confirm that the nvflash command line switches I'm using
> are correct and also that the new odmdata value (0x10000000) is a
> correct one?
I would suggest flashing with an OSS flashing utility. See:
https://github.com/NVIDIA/tegra-uboot-flasher-scripts/blob/master/README-developer.txt
> My next issue is with booting the kernel, so I appreciate if you can
> also help me with it. I noticed that the U-Boot (version 2013.10)
> environment for the T20/Iris is quite bare and it looks for the boot
> scripts (e.g. boot.scr.uimg or boot.scr), which I presume sets up the
> whole environment before the actual booting. Do you know if I can find
> the scripts somewhere or do I need to write them myself?
See https://github.com/NVIDIA/tegra-uboot-scripts
> Nonetheless, I have tried to boot the kernel with the bare environment,
> but had no bigger luck. I have compiled the kernel version 3.12.1 with
> the "tegra_defconfig" and LOADADDR equal to 0x00008000. I used the tftp
> to transfer the kernel image to the board and tried to boot it, but the
> only thing I get is the "Starting kernel ...". I believe the kernel
> might be booting, but does not give any feedback on the console and what
> is more, immediately after the boot command, the ethernet seems to be
> disabled, because the LEDs on the connector are switched off.
>
> The reason I think the kernel boots to some stage is that, if I change
> the odmdata to 0x100C0000, I got the message:
> Error: unrecognized/unsupported machine ID (r1 = 0x00000000).
>
> Available machine support:
>
> ID (hex) NAME
> ffffffff Generic DT based system
> ffffffff NVIDIA Tegra SoC (Flattened Device Tree)
>
> Please check your kernel config and/or bootloader.
>
> So I guess the kernel is actually doing at least some initial tasks.
You're probably not passing a device tree to the kernel. A device tree
is now required on all Tegra boards in the upstream kernel.
You may get more information out if you enable DEBUG_LL and add
"earlyprintk" to the kernel command-line. When enabling DEBUG_LL, you'll
need to tell the kernel which UART to use for the DEBUG_LL output. You
can either hard-code this to the correct UART, or select an
"AUTO_ODMATA" option, which will obtain the UART ID at run-time from the
ODMDATA value, in which case you'll need to encode the correct UART ID
into ODMDATA, which I guess value 0x100c0000 must do, since that gets
you the early output you mentioned above.
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] Getting U-Boot running on Toradex Colibri T20 on Iris board
2013-11-25 10:00 ` Andrzej Telszewski
2013-11-25 17:40 ` Stephen Warren
@ 2013-11-25 21:14 ` Stefan Agner
1 sibling, 0 replies; 5+ messages in thread
From: Stefan Agner @ 2013-11-25 21:14 UTC (permalink / raw)
To: u-boot
Hi Andrzej,
Am 2013-11-25 11:00, schrieb Andrzej Telszewski:
> BTW, can you confirm that the nvflash command line switches I'm using
> are correct and also that the new odmdata value (0x10000000) is a
> correct one?
Well, if it works, its not too bad :-).
However, the upstream BCT has the console set to UART too:
http://nv-tegra.nvidia.com/gitweb/?p=tools/tegra-cbootimage-configs.git;a=blob;f=tegra20/toradex/colibri-t20/colibri-t20_256_v12_nand.bct.cfg
> My next issue is with booting the kernel, so I appreciate if you can
> also help me with it. I noticed that the U-Boot (version 2013.10)
> environment for the T20/Iris is quite bare and it looks for the boot
> scripts (e.g. boot.scr.uimg or boot.scr), which I presume sets up the
> whole environment before the actual booting. Do you know if I can find
> the scripts somewhere or do I need to write them myself?
Yes there are not a lot defaults, you need to configure it by yourself.
Especially nvflash uses its own partition layout which is not support by
U-Boot directly. You need to set a matching partition layout using
mtdparts yourself too. The U-Boot environment is at 2 MB, which is in
the BCT configuration table downstream, you might want to alter that too
if you plan to use nvflash.
> Nonetheless, I have tried to boot the kernel with the bare
> environment, but had no bigger luck. I have compiled the kernel
> version 3.12.1 with the "tegra_defconfig" and LOADADDR equal to
> 0x00008000. I used the tftp to transfer the kernel image to the board
> and tried to boot it, but the only thing I get is the "Starting kernel
> ...". I believe the kernel might be booting, but does not give any
> feedback on the console and what is more, immediately after the boot
> command, the ethernet seems to be disabled, because the LEDs on the
> connector are switched off.
>
> The reason I think the kernel boots to some stage is that, if I change
> the odmdata to 0x100C0000, I got the message:
This are the odmdata which are set upstream. It looks like the kernel
correctly uses them, since you get console output.
> Error: unrecognized/unsupported machine ID (r1 = 0x00000000).
>
> Available machine support:
>
> ID (hex) NAME
> ffffffff Generic DT based system
> ffffffff NVIDIA Tegra SoC (Flattened Device Tree)
>
> Please check your kernel config and/or bootloader.
>
> So I guess the kernel is actually doing at least some initial tasks.
The upstream kernel uses device tree, so you need to load the device
tree binary too. Use
$ make dtbs
to compile them, you can find the dtb in the folder
arch/arm/boot/dts/tegra20-iris-512.dtb. You need to load them too (from
the U-Boot command prompt):
usb start
setenv ipaddr 192.168.10.90
setenv serverip 192.168.10.3
setenv bootfile uImage
tftp ${kernel_addr_r}
setenv bootfile tegra20-iris-512.dtb
tftp ${fdt_addr_r}
setenv bootargs "console=ttyS0,115200n8 earlyprintk root=/dev/sda1 rw
rootdelay=5 ${mtdparts}"
bootm ${kernel_addr_r} - ${fdt_addr_r}
Just verified 3.12 on my setup, it works but I had to alter the sm2_reg
microvoltage to 3800000 in the device tree file.
--
Stefan
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-11-25 21:14 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-07 8:15 [U-Boot] Getting U-Boot running on Toradex Colibri T20 on Iris board Andrzej Telszewski
2013-09-26 20:42 ` Stefan Agner
2013-11-25 10:00 ` Andrzej Telszewski
2013-11-25 17:40 ` Stephen Warren
2013-11-25 21:14 ` Stefan Agner
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox