
On 2 May 2017 at 08:40, Tomeu Vizoso tomeu@tomeuvizoso.net wrote:
On 2 May 2017 at 03:19, Matthew Gorski matt.gorski@gmail.com wrote:
Seems if you change the FIT description from anything but
"description = "Chrome OS kernel image with one or more FDT blobs";"
the kernel wont load. So this issue has to be in the kernel-big.its https://git.collabora.com/cgit/user/tomeu/u-boot.git/tree/kernel-big.its?h=nyan-big&id=35bcb399c0d78ba6a050cc775d467ee75ed06923
https://git.collabora.com/cgit/user/tomeu/u-boot.git/tree/kernel-big.its?h=n...
We may just need a proper working .its for nyan
Hi Matthew,
it has been quite a while, but I remember that if we only tried chainloading U-Boot was because the goal was to integrate these machines in our LAVA lab, which to date doesn't support Depthcharge (though I hope this will change once I get back some time).
I cannot remember how the correct position of the kernel within the FIT image was calculated, but it definitely involved looking at the depthcharge sources.
Actually, I have grepped my IRC logs and turns out that we need for the start of U-Boot's code to be aligned to 64kB.
Thus the padding.
Regards,
Tomeu
But I do think to remember that it was only an issue once U-Boot tried to relocate itself.
I don't see any reason why my old branch wouldn't work today on your machine, other than maybe your hw is a different revision with a memory chip that wasn't supported back then? I also don't see why mainline wouldn't work, provided you have that hack in the ITS.
I'm adding Sjoerd to CC in case he remembers.
Good luck,
Tomeu
On Mon, May 1, 2017 at 7:45 PM, Matthew Gorski matt.gorski@gmail.com wrote:
On Mon, May 1, 2017 at 7:34 PM, Simon Glass sjg@chromium.org wrote:
Hi Matthew,
On 1 May 2017 at 17:27, Matthew Gorski matt.gorski@gmail.com wrote:
On Mon, May 1, 2017 at 6:02 PM, Simon Glass sjg@chromium.org wrote:
Hi Matthew,
On 1 May 2017 at 14:30, Matthew Gorski matt.gorski@gmail.com wrote: > > > On Mon, May 1, 2017 at 2:36 PM, Simon Glass sjg@chromium.org
wrote:
>> >> Hi Matthew, >> >> On 1 May 2017 at 11:26, Matthew Gorski matt.gorski@gmail.com
wrote:
>> > >> > >> > >> > On Mon, May 1, 2017 at 1:03 PM, Simon Glass sjg@chromium.org
wrote:
>> >> >> >> Hi Matthew, >> >> >> >> On 1 May 2017 at 10:40, Matthew Gorski matt.gorski@gmail.com >> >> wrote: >> >> > Let me repost this to the bottom. New to the mailing list ;) >> >> > >> >> > I am using chained boot to test uboot as a FIT image so I I
don't
>> >> > have to >> >> > flash to spl flash. Does CONFIG_SPL_TEXT_BASE need to be
adjusted
>> >> > for >> >> > chained boot? >> >> > >> >> > I am using instructions to boot Linux for Tegra from
sdcard/USB in
>> >> > developer >> >> > mode. I can boot L4T fine with kernel v3.10. >> >> > >> >> > What mainline branch should I try? >> >> >> >> There's only one mainline, here: >> >> http://git.denx.de/?p=u-boot.git;a=summary >> >> >> >> There are various custodian branches but I don't believe the
tegra
>> >> one >> >> has anything different from mainline at present. >> >> >> >> - Simon >> >> >> > I will give mainline a try with: >> > >> > CONFIG_SYS_TEXT_BASE 0x8010E000 >> > and >> > >> > CONFIG_SPL_TEXT_BASE 0x80108000 >> > >> > >> > I know I will also need: >> > >> > >> > CONFIG_DISPLAY_PORT=y >> >> Do you mean CONFIG_DISPLAY? If so, it is already defined. >> >> > CONFIG_VIDEO_TEGRA124=y >> >> That is defined in mainline >> >> > >> > >> > for the console to display command prompt. >> > >> > >> > The FIT config I am using is from >> > >> > here:https://git.collabora.com/cgit/user/tomeu/u-boot.git/
commit/?h=nyan-big
>> > >> > >> > Do I need to adjust: >> > >> > >> > load = <0>; >> > entry = <0>; >> > >> > >> > /dts-v1/; >> > >> > / { >> > description = "U-Boot + FDT --------- THIS PADDING IS NEEDED
SO
>> > THE >> > IMAGE STARTS AT THE RIGHT OFFSET"; >> >> Perhaps you need to adjust this? How was the length of it
calcualted?
> > > I am really not sure how the padding was calculated. I just assumed > this > kernel-big.its FIT config was correct for nyan_big. I will try
using my
> working linux kernel fit config. >> >> >> > #address-cells = <1>; >> > images { >> > kernel@1{ >> > description = "kernel"; >> > data = /incbin/("u-boot-dtb.bin"); >> > type = "kernel_noload"; >> > arch = "arm"; >> > os = "linux"; >> > compression = "none"; >> > load = <0>; >> > entry = <0>; >> > }; >> > fdt@1{ >> > description = "tegra124-nyan-big.dtb"; >> > data = /incbin/("dts/dt.dtb"); >> > type = "flat_dt"; >> > arch = "arm"; >> > compression = "none"; >> > hash@1{ >> > algo = "sha1"; >> > }; >> > }; >> > }; >> > configurations { >> > default = "conf@1"; >> > conf@1{ >> > kernel = "kernel@1"; >> > fdt = "fdt@1"; >> > }; >> > }; >> > }; >> > >> > >> > please let me know if I should also adjust the SPL CONFIG even
though
>> > I >> > am chainbooting uboot: >> > >> > >> > >> > https://www.chromium.org/chromium-os/firmware-porting-guide/
using-nv-u-boot-on-the-samsung-arm-chromebook#TOC-Installing -nv-U-Boot-chained-U-Boot-method-
>> >> This is exynos, where we booted directly into U-Boot. Actually I'm >> wondering we should boot directly into U-Boot (instead of SPL) on
nyan
>> also. Perhaps someone at collabora would know? Did you search the >> mailing list? >> >> Regards, >> Simon > > > I have not searched the mailing list. What should I search for? > Booting > nyan to u-boot directly bypassing SPL?
Here are two subjects to search for:
Veyron-speedy u-boot [PATCH 0/20] tegra: Expand Nyan-big support
Regards, Simon
Very odd if I do not use "#address-cells = <1>;" the display flashes and reboots into recovery but if I do use #address-cells = <1>; in my FIT
config
I get a blank screen so something is working when not using the padding.
If you figure out where u-boot-dtb.bin needs to start by looking at depthcharge or where the kernel starts, then you can figure out how long the padding needs to be at the start of the FIT. Rather than guessing...!
- Simon
Okay so depthcharge starts at 0x81000000 from here:
https://chromium.googlesource.com/chromiumos/platform/ depthcharge/+/master/board/nyan_big/defconfig#11
In my System.map for u-boot after building says the start is: 81000100 T __image_copy_start 81000100 T _start
Hence the define CONFIG_SYS_TEXT_BASE 0x81000100
So you say use 0x81000000 as the CONFIG_SYS_TEXT_BASE and not 0x81000100 correct?
/dts-v1/;
/ { description = "Chrome OS nyan u-boot chain boot method"; #address-cells = <1>; images { kernel@1{
>> >> >> >> >> >> >
>> >> > On May 1, 2017 12:11 PM, "Matthew Gorski" <
matt.gorski@gmail.com>
>> >> > wrote: >> >> > >> >> > On May 1, 2017 11:45 AM, "Simon Glass" sjg@chromium.org
wrote:
>> >> > >> >> > Hi Matthew, >> >> > >> >> > On 1 May 2017 at 09:37, Matthew Gorski matt.gorski@gmail.com >> >> > wrote: >> >> >> Thanks for the reply Simon. >> >> >> >> >> >> I have been trying to find the System.map for depthcharge to
see
>> >> >> the >> >> >> kernel >> >> >> load address but I am unable to find anything. I have tried >> >> >> multiple >> >> >> CONFIG_SYS_TEXT_BASE settings with no luck. >> >> > >> >> > How did you choose what to use? Also note that Tegra uses SPL
to
>> >> > start, so you may need to adjust CONFIG_SPL_TEXT_BASE instead. >> >> > >> >> >> >> >> >> I am creating my sdcard with a standard linux (Linux for
Tegra)
>> >> >> rootfs: >> >> > >> >> > Did these instructions come from a web site somewhere? >> >> > >> >> >> >> >> >> Partition an SD card >> >> >> >> >> >> sudo cgpt create <MMC BLOCK DEVICE> >> >> >> sudo cgpt add -b 34 -s 32768 -P 1 -S 1 -t kernel <MMC BLOCK >> >> >> DEVICE> >> >> >> # 16 >> >> >> MB >> >> >> kernel image partition >> >> >> sudo cgpt add -b 32802 -s <ROOT PARTITION SIZE in 512B
sectors>
>> >> >> -t >> >> >> rootfs >> >> >> <MMC BLOCK DEVICE> >> >> >> >> >> >> cgpt doesn't seem to create a protective MBR. If one is not >> >> >> already >> >> >> in >> >> >> place, it can be created with: >> >> >> >> >> >> sudo gdisk <MMC BLOCK DEVICE> # and enter command w >> >> >> >> >> >> Copy data to the SD card >> >> >> >> >> >> sudo dd if=./kernelpart.bin of=<MMC BLOCK DEVICE>p1 >> >> >> sudo mkfs.ext4 <MMC BLOCK DEVICE>p2 >> >> >> sudo mount <MMC BLOCK DEVICE>p2 /mnt/ >> >> >> >> >> > >> >> > How are you actually making it boot? Is this in dev mode with
USB
>> >> > boot >> >> > enabled and pressing Ctrl-U? >> >> > >> >> > Also, as this is a mailing list, please avoid top-posting. >> >> > >> >> > - Simon >> >> > >> >> > I am using chained boot to test uboot as a FIT image so I I
don't
>> >> > have to >> >> > flash to spl flash. Does CONFIG_SPL_TEXT_BASE need to be
adjusted
>> >> > for >> >> > chained boot? >> >> > >> >> > I am using instructions to boot Linux for Tegra from
sdcard/USB in
>> >> > developer >> >> > mode. I can boot L4T fine with kernel v3.10. >> >> > >> >> > What mainline branch should I try? >> >> > >> >> > >> >> >> >> >> >> On Mon, May 1, 2017 at 11:14 AM, Simon Glass <
sjg@chromium.org>
>> >> >> wrote: >> >> >>> >> >> >>> Hi Matthew, >> >> >>> >> >> >>> On 1 May 2017 at 08:43, Matthew Gorski <
matt.gorski@gmail.com>
>> >> >>> wrote: >> >> >>> > I am porting u-boot to nyan_big and need some input. I
have
>> >> >>> > been >> >> >>> > searching >> >> >>> > high and low and found this thread here: [U-Boot] [PATCH
0/20]
>> >> >>> > tegra: >> >> >>> > Expand >> >> >>> > Nyan-big support >> >> >>> > >> >> >>> > https://lists.denx.de/pipermail/u-boot/2015-March/209530.
html
>> >> >>> > >> >> >>> > I have tried to build u-boot with the branch here: >> >> >>> > >> >> >>> > >> >> >>> > >> >> >>> > https://git.collabora.com/cgit
/user/tomeu/u-boot.git/commit/?h=nyan-big
>> >> >>> > >> >> >>> > and also the official chromium next branch >> >> >>> >> >> >>> Have you tried mainline U-Boot? It already supports nyan-big. >> >> >>> I'm >> >> >>> not >> >> >>> sure about the situation with the downstream trees. >> >> >>> >> >> >>> > >> >> >>> > I followed building instructions here: >> >> >>> > >> >> >>> > >> >> >>> > >> >> >>> > >> >> >>> > https://www.chromium.org/chrom
ium-os/firmware-porting-guide/using-nv-u-boot-on-the-samsung -arm-chromebook
>> >> >>> > >> >> >>> > I build with these commands: >> >> >>> > >> >> >>> > mkimage -e 0x81000100 -a 0x81000100 -f kernel-big.its >> >> >>> > kernel-u-boot >> >> >>> > >> >> >>> > (with and without the load address setting) >> >> >>> > >> >> >>> > vbutil_kernel --arch arm --pack kernel.bin --keyblock >> >> >>> > /usr/share/vboot/devkeys/kernel.keyblock --signprivate >> >> >>> > /usr/share/vboot/devkeys/kernel_data_key.vbprivk
--version 1
>> >> >>> > --config >> >> >>> > dummy.txt --vmlinuz kernel-u-boot --bootloader dummy.txt >> >> >>> > >> >> >>> > I have had numerous failed attempts to boot uboot from
sdcard
>> >> >>> > mmcblk1p1 >> >> >>> > >> >> >>> > Any help is appreciated I have only gotten a blank screen >> >> >>> > after >> >> >>> > weeks >> >> >>> > of >> >> >>> > flashing. I can boot custom v3.10 kernels so I assume I am >> >> >>> > using >> >> >>> > the >> >> >>> > correct building procedure. Thanks in advance for help
from
>> >> >>> > the >> >> >>> > u-boot >> >> >>> > community. >> >> >>> >> >> >>> It is possible that it needs a particular address due to >> >> >>> limitations >> >> >>> in the FIT support on Nyan. I'm not sure what it is but
might be
>> >> >>> able >> >> >>> to take a look at some point. >> >> >>> >> >> >>> How are you building your SD card? Are you following some >> >> >>> instructions >> >> >>> from somewhere? >> >> >>> >> >> >>> Regards, >> >> >>> Simon >> >> >> >> >> >> >> >> > >> >> > >> >> > >> > >> > > >
U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot