[U-Boot] [PATCH 0/20] tegra: Expand Nyan-big support

Matthew Gorski
2017-05-01T20:30:52Z

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 at 1{
> > description = "kernel";
> > data = /incbin/("u-boot-dtb.bin");
> > type = "kernel_noload";
> > arch = "arm";
> > os = "linux";
> > compression = "none";
> > load = <0>;
> > entry = <0>;
> > };
> > fdt at 1{
> > description = "tegra124-nyan-big.dtb";
> > data = /incbin/("dts/dt.dtb");
> > type = "flat_dt";
> > arch = "arm";
> > compression = "none";
> > hash at 1{
> > algo = "sha1";
> > };
> > };
> > };
> > configurations {
> > default = "conf at 1";
> > conf at 1{
> > kernel = "kernel at 1";
> > fdt = "fdt at 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?

>
> >>
> >> >
> >> > 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/chromium-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
> >> >>
> >> >>
> >> >
> >> >
> >> >
> >
> >
>