Re: [U-Boot] [EXTERNAL] Re: Need help with verified u-boot on Tegra TX2

2019-10-29 Thread Simon Glass
Hi Rayees,

On Wed, 23 Oct 2019 at 18:51, Rayees Shamsuddin
 wrote:
>
> Hi Simon,
>
> I got the ramdisk loading problem sorted out by modifying values of 
> initrd_high and fdt_high
> setenv initrd_high 82F4EFFF; setenv fdt_high 824F
>
> This resulted in:
>ramdisk load start = 0x82a0, ramdisk load end = 0x82f4eaa2
> ## device tree at 920989cc ... 920ec99e (len=356307 [0x56FD3])
>Loading Device Tree to 824a9000, end 824fffd2 ... OK
>
> Thanks for all your guidance and pointers.

OK that's great! Hopefully vboot is doing the right thing now...

Regards,
SImon
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


Re: [U-Boot] [EXTERNAL] Re: Need help with verified u-boot on Tegra TX2

2019-10-23 Thread Rayees Shamsuddin
Hi Simon,

I got the ramdisk loading problem sorted out by modifying values of initrd_high 
and fdt_high
setenv initrd_high 82F4EFFF; setenv fdt_high 824F

This resulted in:
   ramdisk load start = 0x82a0, ramdisk load end = 0x82f4eaa2
## device tree at 920989cc ... 920ec99e (len=356307 [0x56FD3])
   Loading Device Tree to 824a9000, end 824fffd2 ... OK

Thanks for all your guidance and pointers.

- Rayees

-Original Message-
From: Rayees Shamsuddin 
Sent: Tuesday, October 22, 2019 9:29 PM
To: Simon Glass 
Cc: u-boot@lists.denx.de
Subject: RE: [EXTERNAL] Re: Need help with verified u-boot on Tegra TX2

Hi Simon,

I got some more information by instrumenting the u-boot functions that you 
suggested and made appropriate modifications, but still the kernel logs show 
RAMDISK error.
"RAMDISK: Couldn't find valid RAM disk image starting at 0."

This is with the normal u-boot from Tegra
INFO_RAYEES: *initrd_start is 82a0, initrd_end is 82f4eaa2

I got this with the fit image (setenv initrd_high 8eff; setenv fdt_high 
8eff)
INFO_RAYEES: *initrd_start is 8eab1000, initrd_end is 8efffaa2

Then I adjusted the initrd_high and fdt_high to be 82F4EFFF which yielded:
INFO_RAYEES: *initrd_start is 82a0, initrd_end is 82f4eaa2

This is similar to the normal u-boot, yet has the same RAMDISK error. I am 
surprised that I had to change the initrd_high and fdt_high to achieve this 
load address.
I had specified the load address for ramdisk, wondering why it didn’t take 
effect?

The other difference I can see is in the FDT address:

Normal u-boot
## Flattened Device Tree blob at 8000
   Booting using the fdt blob at 0x8000
   reserving fdt memory region: addr=8000 size=1
   Using Device Tree in place at 8000, end 80058f8e

With FIT image
   Loading Device Tree to 8ea5a000, end 8eab0fd2 ... OK

Can I specify the load address for FDT blob as well in the fit image? Does it 
matter?

- Rayees

-Original Message-
From: Simon Glass 
Sent: Monday, October 21, 2019 3:54 PM
To: Rayees Shamsuddin 
Cc: u-boot@lists.denx.de
Subject: Re: [EXTERNAL] Re: Need help with verified u-boot on Tegra TX2

Hi Rayees,

On Mon, 21 Oct 2019 at 15:55, Rayees Shamsuddin 
 wrote:
>
> Hi Simon,
>
> In the normal u-boot, they used extlinux to specify the ramdisk. I was using 
> bootm to load the ramdisk.
>
> This is the normal boot up terminal logs.
>
> "MMC: no card present
> switch to partitions #0, OK
> mmc0(part 0) is current device
> Scanning mmc 0:1...
> Found /boot/extlinux/extlinux.conf
> Retrieving file: /boot/extlinux/extlinux.conf
> 727 bytes read in 105 ms (5.9 KiB/s)
> L4T boot options
> 1:  primary kernel
> Enter choice: 1:primary kernel
> Retrieving file: /boot/initrd
> 5565090 bytes read in 213 ms (24.9 MiB/s) Retrieving file: /boot/Image
> 34179080 bytes read in 857 ms (38 MiB/s)
> append: root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4
> console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 video=tegrafb 
> no_console_suspend=1 earlycon=uart8250,mmio32,0x310 
> nvdumper_reserved=0x2772e gpt usbcore.old_scheme_first=1 
> tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 
> bl_prof_dataptr=0x1@0x27584 sdhci_tegra.en_boot_part_access=1 ## 
> Flattened Device Tree blob at 8000
>Booting using the fdt blob at 0x8000
>reserving fdt memory region: addr=8000 size=1
>Using Device Tree in place at 8000, end 
> 80058f8e
>
> Starting kernel ..."
>
> My sequence with vboot was to set the bootargs first,then the initrd_high and 
> fdt_high and then load to e-mmc and then call bootm. In the u-boot env, the 
> following values were there. I am attaching the output of printenv here, if 
> that could give some clues on what I am doing differently.
>
> kernel_addr_r=8028
> kernel_addr_r_aliases=loadaddr
> loadaddr=8028
> ramdisk_addr_r=82a0
>
> "U-Boot 2016.07-dirty (Oct 16 2019 - 16:12:24 -0700)
>
> TEGRA186
> Model: NVIDIA P2771--500
> DRAM:  7.8 GiB
> MC:   Tegra SD/MMC: 0, Tegra SD/MMC: 1
> *** Warning - bad CRC, using default environment
>
> In:serial
> Out:   serial
> Err:   serial
> Net:   eth0: ethernet@249
> Hit any key to stop autoboot:  0
> Tegra186 (P2771--500) # setenv bootargs root=/dev/mmcblk0p1 rw 
> rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0
> fbcon=map:0 net.ifnames=0 video=tegrafb no_console_suspend=1
> earlycon=uart8250,mmio32,0x310 nvdumper_reserved=0x2772e gpt
> usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 
> boot.slot_suffix= boot.ratchetvalues=0.2031647.1
> bl_prof_dataptr=0x1@0x27584 sdhci_tegra.en_boot_part_access=1
> Tegra186 (P2771--500) # setenv initrd_high 8eff
> Tegra186 (P2771--500) # setenv fdt_high 8eff
> Tegra186 (P2771--500) # ext2load mmc 0 0x9000 /boot/tegra.fit
> 40090346 bytes read in 1051 ms 

Re: [U-Boot] [EXTERNAL] Re: Need help with verified u-boot on Tegra TX2

2019-10-22 Thread Rayees Shamsuddin
Hi Simon,

I got some more information by instrumenting the u-boot functions that you 
suggested and made appropriate modifications, but still the kernel logs show 
RAMDISK error.
"RAMDISK: Couldn't find valid RAM disk image starting at 0."

This is with the normal u-boot from Tegra
INFO_RAYEES: *initrd_start is 82a0, initrd_end is 82f4eaa2

I got this with the fit image (setenv initrd_high 8eff; setenv fdt_high 
8eff)
INFO_RAYEES: *initrd_start is 8eab1000, initrd_end is 8efffaa2

Then I adjusted the initrd_high and fdt_high to be 82F4EFFF which yielded:
INFO_RAYEES: *initrd_start is 82a0, initrd_end is 82f4eaa2

This is similar to the normal u-boot, yet has the same RAMDISK error. I am 
surprised that I had to change the initrd_high and fdt_high to achieve this 
load address.
I had specified the load address for ramdisk, wondering why it didn’t take 
effect?

The other difference I can see is in the FDT address:

Normal u-boot
## Flattened Device Tree blob at 8000
   Booting using the fdt blob at 0x8000
   reserving fdt memory region: addr=8000 size=1
   Using Device Tree in place at 8000, end 80058f8e

With FIT image
   Loading Device Tree to 8ea5a000, end 8eab0fd2 ... OK

Can I specify the load address for FDT blob as well in the fit image? Does it 
matter?

- Rayees

-Original Message-
From: Simon Glass  
Sent: Monday, October 21, 2019 3:54 PM
To: Rayees Shamsuddin 
Cc: u-boot@lists.denx.de
Subject: Re: [EXTERNAL] Re: Need help with verified u-boot on Tegra TX2

Hi Rayees,

On Mon, 21 Oct 2019 at 15:55, Rayees Shamsuddin 
 wrote:
>
> Hi Simon,
>
> In the normal u-boot, they used extlinux to specify the ramdisk. I was using 
> bootm to load the ramdisk.
>
> This is the normal boot up terminal logs.
>
> "MMC: no card present
> switch to partitions #0, OK
> mmc0(part 0) is current device
> Scanning mmc 0:1...
> Found /boot/extlinux/extlinux.conf
> Retrieving file: /boot/extlinux/extlinux.conf
> 727 bytes read in 105 ms (5.9 KiB/s)
> L4T boot options
> 1:  primary kernel
> Enter choice: 1:primary kernel
> Retrieving file: /boot/initrd
> 5565090 bytes read in 213 ms (24.9 MiB/s) Retrieving file: /boot/Image
> 34179080 bytes read in 857 ms (38 MiB/s)
> append: root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 
> console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 video=tegrafb 
> no_console_suspend=1 earlycon=uart8250,mmio32,0x310 
> nvdumper_reserved=0x2772e gpt usbcore.old_scheme_first=1 
> tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 
> bl_prof_dataptr=0x1@0x27584 sdhci_tegra.en_boot_part_access=1 ## 
> Flattened Device Tree blob at 8000
>Booting using the fdt blob at 0x8000
>reserving fdt memory region: addr=8000 size=1
>Using Device Tree in place at 8000, end 
> 80058f8e
>
> Starting kernel ..."
>
> My sequence with vboot was to set the bootargs first,then the initrd_high and 
> fdt_high and then load to e-mmc and then call bootm. In the u-boot env, the 
> following values were there. I am attaching the output of printenv here, if 
> that could give some clues on what I am doing differently.
>
> kernel_addr_r=8028
> kernel_addr_r_aliases=loadaddr
> loadaddr=8028
> ramdisk_addr_r=82a0
>
> "U-Boot 2016.07-dirty (Oct 16 2019 - 16:12:24 -0700)
>
> TEGRA186
> Model: NVIDIA P2771--500
> DRAM:  7.8 GiB
> MC:   Tegra SD/MMC: 0, Tegra SD/MMC: 1
> *** Warning - bad CRC, using default environment
>
> In:serial
> Out:   serial
> Err:   serial
> Net:   eth0: ethernet@249
> Hit any key to stop autoboot:  0
> Tegra186 (P2771--500) # setenv bootargs root=/dev/mmcblk0p1 rw 
> rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 
> fbcon=map:0 net.ifnames=0 video=tegrafb no_console_suspend=1 
> earlycon=uart8250,mmio32,0x310 nvdumper_reserved=0x2772e gpt 
> usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 
> boot.slot_suffix= boot.ratchetvalues=0.2031647.1 
> bl_prof_dataptr=0x1@0x27584 sdhci_tegra.en_boot_part_access=1
> Tegra186 (P2771--500) # setenv initrd_high 8eff
> Tegra186 (P2771--500) # setenv fdt_high 8eff
> Tegra186 (P2771--500) # ext2load mmc 0 0x9000 /boot/tegra.fit
> 40090346 bytes read in 1051 ms (36.4 MiB/s)
> Tegra186 (P2771--500) # bootm 0x9000 ## Loading kernel from 
> FIT Image at 9000 ...
>Using 'conf@1' configuration
>Verifying Hash Integrity ... sha256,rsa4096:tx2_key+ OK
>Trying 'kernel@1' kernel subimage
>  Description:  Linux kernel
>  Type: Kernel Image
>  Compression:  uncompressed
>  Data Start:   0x90c8
>  Data Size:34179080 Bytes = 32.6 MiB
>  Architecture: AArch64
>  OS:   Linux
>  Load Address: 0x8028
>  Entry Point:  0x8028
>  Hash algo:sha256
>  Hash value:   
> 417be59a15deda06283bdfdc2ef08911c27c0fbb3e4581fdf1f9

Re: [U-Boot] [EXTERNAL] Re: Need help with verified u-boot on Tegra TX2

2019-10-21 Thread Rayees Shamsuddin
Hi Simon,

Thanks again for all your help. The one thing I wasn't sure is regarding the 
compression type for the ramdisk. It is gzip compressed, but some commit 
comments indicated that I should keep compression type as none since the kernel 
should be uncompressing the ramdisk. 
https://gitlab.denx.de/u-boot/u-boot/commit/bddd985734653c366c8da073650930fb2e9b5003
The version of u-boot that I used doesn't support gzip compression. Hence I am 
assuming that u-boot doesn't do any decompression.

I can instrument the code in image_setup_libfdt() and see what address is used 
with the normal u-boot stock version from the Tegra bsp and try to mimic that.

I am not sure if you meant to cc Stephen - didn’t see Stephen cc'ed in the 
previous email.

- Rayees

-Original Message-
From: Simon Glass  
Sent: Monday, October 21, 2019 3:54 PM
To: Rayees Shamsuddin 
Cc: u-boot@lists.denx.de
Subject: Re: [EXTERNAL] Re: Need help with verified u-boot on Tegra TX2

Hi Rayees,

On Mon, 21 Oct 2019 at 15:55, Rayees Shamsuddin 
 wrote:
>
> Hi Simon,
>
> In the normal u-boot, they used extlinux to specify the ramdisk. I was using 
> bootm to load the ramdisk.
>
> This is the normal boot up terminal logs.
>
> "MMC: no card present
> switch to partitions #0, OK
> mmc0(part 0) is current device
> Scanning mmc 0:1...
> Found /boot/extlinux/extlinux.conf
> Retrieving file: /boot/extlinux/extlinux.conf
> 727 bytes read in 105 ms (5.9 KiB/s)
> L4T boot options
> 1:  primary kernel
> Enter choice: 1:primary kernel
> Retrieving file: /boot/initrd
> 5565090 bytes read in 213 ms (24.9 MiB/s) Retrieving file: /boot/Image
> 34179080 bytes read in 857 ms (38 MiB/s)
> append: root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 
> console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 video=tegrafb 
> no_console_suspend=1 earlycon=uart8250,mmio32,0x310 
> nvdumper_reserved=0x2772e gpt usbcore.old_scheme_first=1 
> tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 
> bl_prof_dataptr=0x1@0x27584 sdhci_tegra.en_boot_part_access=1 ## 
> Flattened Device Tree blob at 8000
>Booting using the fdt blob at 0x8000
>reserving fdt memory region: addr=8000 size=1
>Using Device Tree in place at 8000, end 
> 80058f8e
>
> Starting kernel ..."
>
> My sequence with vboot was to set the bootargs first,then the initrd_high and 
> fdt_high and then load to e-mmc and then call bootm. In the u-boot env, the 
> following values were there. I am attaching the output of printenv here, if 
> that could give some clues on what I am doing differently.
>
> kernel_addr_r=8028
> kernel_addr_r_aliases=loadaddr
> loadaddr=8028
> ramdisk_addr_r=82a0
>
> "U-Boot 2016.07-dirty (Oct 16 2019 - 16:12:24 -0700)
>
> TEGRA186
> Model: NVIDIA P2771--500
> DRAM:  7.8 GiB
> MC:   Tegra SD/MMC: 0, Tegra SD/MMC: 1
> *** Warning - bad CRC, using default environment
>
> In:serial
> Out:   serial
> Err:   serial
> Net:   eth0: ethernet@249
> Hit any key to stop autoboot:  0
> Tegra186 (P2771--500) # setenv bootargs root=/dev/mmcblk0p1 rw 
> rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 
> fbcon=map:0 net.ifnames=0 video=tegrafb no_console_suspend=1 
> earlycon=uart8250,mmio32,0x310 nvdumper_reserved=0x2772e gpt 
> usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 
> boot.slot_suffix= boot.ratchetvalues=0.2031647.1 
> bl_prof_dataptr=0x1@0x27584 sdhci_tegra.en_boot_part_access=1
> Tegra186 (P2771--500) # setenv initrd_high 8eff
> Tegra186 (P2771--500) # setenv fdt_high 8eff
> Tegra186 (P2771--500) # ext2load mmc 0 0x9000 /boot/tegra.fit
> 40090346 bytes read in 1051 ms (36.4 MiB/s)
> Tegra186 (P2771--500) # bootm 0x9000 ## Loading kernel from 
> FIT Image at 9000 ...
>Using 'conf@1' configuration
>Verifying Hash Integrity ... sha256,rsa4096:tx2_key+ OK
>Trying 'kernel@1' kernel subimage
>  Description:  Linux kernel
>  Type: Kernel Image
>  Compression:  uncompressed
>  Data Start:   0x90c8
>  Data Size:34179080 Bytes = 32.6 MiB
>  Architecture: AArch64
>  OS:   Linux
>  Load Address: 0x8028
>  Entry Point:  0x8028
>  Hash algo:sha256
>  Hash value:   
> 417be59a15deda06283bdfdc2ef08911c27c0fbb3e4581fdf1f94f8ca7ee6193
>Verifying Hash Integrity ... sha256+ OK ## Loading ramdisk from FIT 
> Image at 9000 ...
>Using 'conf@1' configuration
>Trying 'ramdisk@1' ramdisk subimage
>  Description:  Ramdisk Image for Tegra TX2
>  Type: RAMDisk Image
>  Compression:  gzip compressed
>  Data Start:   0x920eca74
>  Data Size:5565090 Bytes = 5.3 MiB
>  Architecture: AArch64
>  OS:   Linux
>  Load Address: 0x82a0
>  Entry Point:  0x82a0
>  Hash algo:sha256
>  Hash value:   
> b248b753bb8c599756c40fc3f11b9c418e6638872f6

Re: [U-Boot] [EXTERNAL] Re: Need help with verified u-boot on Tegra TX2

2019-10-21 Thread Simon Glass
Hi Rayees,

On Mon, 21 Oct 2019 at 15:55, Rayees Shamsuddin
 wrote:
>
> Hi Simon,
>
> In the normal u-boot, they used extlinux to specify the ramdisk. I was using 
> bootm to load the ramdisk.
>
> This is the normal boot up terminal logs.
>
> "MMC: no card present
> switch to partitions #0, OK
> mmc0(part 0) is current device
> Scanning mmc 0:1...
> Found /boot/extlinux/extlinux.conf
> Retrieving file: /boot/extlinux/extlinux.conf
> 727 bytes read in 105 ms (5.9 KiB/s)
> L4T boot options
> 1:  primary kernel
> Enter choice: 1:primary kernel
> Retrieving file: /boot/initrd
> 5565090 bytes read in 213 ms (24.9 MiB/s)
> Retrieving file: /boot/Image
> 34179080 bytes read in 857 ms (38 MiB/s)
> append: root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 
> console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 video=tegrafb 
> no_console_suspend=1 earlycon=uart8250,mmio32,0x310 
> nvdumper_reserved=0x2772e gpt usbcore.old_scheme_first=1 
> tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 
> bl_prof_dataptr=0x1@0x27584 sdhci_tegra.en_boot_part_access=1
> ## Flattened Device Tree blob at 8000
>Booting using the fdt blob at 0x8000
>reserving fdt memory region: addr=8000 size=1
>Using Device Tree in place at 8000, end 80058f8e
>
> Starting kernel ..."
>
> My sequence with vboot was to set the bootargs first,then the initrd_high and 
> fdt_high and then load to e-mmc and then call bootm. In the u-boot env, the 
> following values were there. I am attaching the output of printenv here, if 
> that could give some clues on what I am doing differently.
>
> kernel_addr_r=8028
> kernel_addr_r_aliases=loadaddr
> loadaddr=8028
> ramdisk_addr_r=82a0
>
> "U-Boot 2016.07-dirty (Oct 16 2019 - 16:12:24 -0700)
>
> TEGRA186
> Model: NVIDIA P2771--500
> DRAM:  7.8 GiB
> MC:   Tegra SD/MMC: 0, Tegra SD/MMC: 1
> *** Warning - bad CRC, using default environment
>
> In:serial
> Out:   serial
> Err:   serial
> Net:   eth0: ethernet@249
> Hit any key to stop autoboot:  0
> Tegra186 (P2771--500) # setenv bootargs root=/dev/mmcblk0p1 rw rootwait 
> rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 
> video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x310 
> nvdumper_reserved=0x2772e gpt usbcore.old_scheme_first=1 
> tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 
> bl_prof_dataptr=0x1@0x27584 sdhci_tegra.en_boot_part_access=1
> Tegra186 (P2771--500) # setenv initrd_high 8eff
> Tegra186 (P2771--500) # setenv fdt_high 8eff
> Tegra186 (P2771--500) # ext2load mmc 0 0x9000 /boot/tegra.fit
> 40090346 bytes read in 1051 ms (36.4 MiB/s)
> Tegra186 (P2771--500) # bootm 0x9000
> ## Loading kernel from FIT Image at 9000 ...
>Using 'conf@1' configuration
>Verifying Hash Integrity ... sha256,rsa4096:tx2_key+ OK
>Trying 'kernel@1' kernel subimage
>  Description:  Linux kernel
>  Type: Kernel Image
>  Compression:  uncompressed
>  Data Start:   0x90c8
>  Data Size:34179080 Bytes = 32.6 MiB
>  Architecture: AArch64
>  OS:   Linux
>  Load Address: 0x8028
>  Entry Point:  0x8028
>  Hash algo:sha256
>  Hash value:   
> 417be59a15deda06283bdfdc2ef08911c27c0fbb3e4581fdf1f94f8ca7ee6193
>Verifying Hash Integrity ... sha256+ OK
> ## Loading ramdisk from FIT Image at 9000 ...
>Using 'conf@1' configuration
>Trying 'ramdisk@1' ramdisk subimage
>  Description:  Ramdisk Image for Tegra TX2
>  Type: RAMDisk Image
>  Compression:  gzip compressed
>  Data Start:   0x920eca74
>  Data Size:5565090 Bytes = 5.3 MiB
>  Architecture: AArch64
>  OS:   Linux
>  Load Address: 0x82a0
>  Entry Point:  0x82a0
>  Hash algo:sha256
>  Hash value:   
> b248b753bb8c599756c40fc3f11b9c418e6638872f6af3ee44243af69a4f0b3f
>Verifying Hash Integrity ... sha256+ OK
>Loading ramdisk from 0x920eca74 to 0x82a0
> ## Loading fdt from FIT Image at 9000 ...
>Using 'conf@1' configuration
>Trying 'fdt@1' fdt subimage
>  Description:  DTB for Tegra TX2
>  Type: Flat Device Tree
>  Compression:  uncompressed
>  Data Start:   0x920989cc
>  Data Size:344019 Bytes = 336 KiB
>  Architecture: AArch64
>  Hash algo:sha256
>  Hash value:   
> f2b4b8ac842eac0acfe25e129e102d9919ad16ce40499b079b4a73eb1f39f059
>Verifying Hash Integrity ... sha256+ OK
>Booting using the fdt blob at 0x920989cc
>Loading Kernel Image ... OK
>reserving fdt memory region: addr=8000 size=1
>Loading Ramdisk to 8eab1000, end 8efffaa2 ... OK
>Loading Device Tree to 8ea5a000, end 8eab0fd2 ... OK
>
> Starting kernel ..."
>
> Thanks again for your time.

+Stephen Warren who may have some ideas.


Re: [U-Boot] [EXTERNAL] Re: Need help with verified u-boot on Tegra TX2

2019-10-21 Thread Rayees Shamsuddin
Hi Simon,

In the normal u-boot, they used extlinux to specify the ramdisk. I was using 
bootm to load the ramdisk.

This is the normal boot up terminal logs.

"MMC: no card present
switch to partitions #0, OK
mmc0(part 0) is current device
Scanning mmc 0:1...
Found /boot/extlinux/extlinux.conf
Retrieving file: /boot/extlinux/extlinux.conf
727 bytes read in 105 ms (5.9 KiB/s)
L4T boot options
1:  primary kernel
Enter choice: 1:primary kernel
Retrieving file: /boot/initrd
5565090 bytes read in 213 ms (24.9 MiB/s)
Retrieving file: /boot/Image
34179080 bytes read in 857 ms (38 MiB/s)
append: root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 
console=tty0 fbcon=map:0 net.ifnames=0 video=tegrafb no_console_suspend=1 
earlycon=uart8250,mmio32,0x310 nvdumper_reserved=0x2772e gpt 
usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= 
boot.ratchetvalues=0.2031647.1 bl_prof_dataptr=0x1@0x27584 
sdhci_tegra.en_boot_part_access=1
## Flattened Device Tree blob at 8000
   Booting using the fdt blob at 0x8000
   reserving fdt memory region: addr=8000 size=1
   Using Device Tree in place at 8000, end 80058f8e

Starting kernel ..."

My sequence with vboot was to set the bootargs first,then the initrd_high and 
fdt_high and then load to e-mmc and then call bootm. In the u-boot env, the 
following values were there. I am attaching the output of printenv here, if 
that could give some clues on what I am doing differently.

kernel_addr_r=8028
kernel_addr_r_aliases=loadaddr
loadaddr=8028
ramdisk_addr_r=82a0

"U-Boot 2016.07-dirty (Oct 16 2019 - 16:12:24 -0700)

TEGRA186
Model: NVIDIA P2771--500
DRAM:  7.8 GiB
MC:   Tegra SD/MMC: 0, Tegra SD/MMC: 1
*** Warning - bad CRC, using default environment

In:serial
Out:   serial
Err:   serial
Net:   eth0: ethernet@249
Hit any key to stop autoboot:  0
Tegra186 (P2771--500) # setenv bootargs root=/dev/mmcblk0p1 rw rootwait 
rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 
video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x310 
nvdumper_reserved=0x2772e gpt usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 
maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 
bl_prof_dataptr=0x1@0x27584 sdhci_tegra.en_boot_part_access=1
Tegra186 (P2771--500) # setenv initrd_high 8eff
Tegra186 (P2771--500) # setenv fdt_high 8eff
Tegra186 (P2771--500) # ext2load mmc 0 0x9000 /boot/tegra.fit
40090346 bytes read in 1051 ms (36.4 MiB/s)
Tegra186 (P2771--500) # bootm 0x9000
## Loading kernel from FIT Image at 9000 ...
   Using 'conf@1' configuration
   Verifying Hash Integrity ... sha256,rsa4096:tx2_key+ OK
   Trying 'kernel@1' kernel subimage
 Description:  Linux kernel
 Type: Kernel Image
 Compression:  uncompressed
 Data Start:   0x90c8
 Data Size:34179080 Bytes = 32.6 MiB
 Architecture: AArch64
 OS:   Linux
 Load Address: 0x8028
 Entry Point:  0x8028
 Hash algo:sha256
 Hash value:   
417be59a15deda06283bdfdc2ef08911c27c0fbb3e4581fdf1f94f8ca7ee6193
   Verifying Hash Integrity ... sha256+ OK
## Loading ramdisk from FIT Image at 9000 ...
   Using 'conf@1' configuration
   Trying 'ramdisk@1' ramdisk subimage
 Description:  Ramdisk Image for Tegra TX2
 Type: RAMDisk Image
 Compression:  gzip compressed
 Data Start:   0x920eca74
 Data Size:5565090 Bytes = 5.3 MiB
 Architecture: AArch64
 OS:   Linux
 Load Address: 0x82a0
 Entry Point:  0x82a0
 Hash algo:sha256
 Hash value:   
b248b753bb8c599756c40fc3f11b9c418e6638872f6af3ee44243af69a4f0b3f
   Verifying Hash Integrity ... sha256+ OK
   Loading ramdisk from 0x920eca74 to 0x82a0
## Loading fdt from FIT Image at 9000 ...
   Using 'conf@1' configuration
   Trying 'fdt@1' fdt subimage
 Description:  DTB for Tegra TX2
 Type: Flat Device Tree
 Compression:  uncompressed
 Data Start:   0x920989cc
 Data Size:344019 Bytes = 336 KiB
 Architecture: AArch64
 Hash algo:sha256
 Hash value:   
f2b4b8ac842eac0acfe25e129e102d9919ad16ce40499b079b4a73eb1f39f059
   Verifying Hash Integrity ... sha256+ OK
   Booting using the fdt blob at 0x920989cc
   Loading Kernel Image ... OK
   reserving fdt memory region: addr=8000 size=1
   Loading Ramdisk to 8eab1000, end 8efffaa2 ... OK
   Loading Device Tree to 8ea5a000, end 8eab0fd2 ... OK

Starting kernel ..."

Thanks again for your time.

- Rayees

-Original Message-
From: Simon Glass  
Sent: Monday, October 21, 2019 2:13 PM
To: Rayees Shamsuddin 
Cc: u-boot@lists.denx.de
Subject: [EXTERNAL] Re: Need help with verified u-boot on Tegra TX2

Hi Rayees,

On Sat, 19 Oct 2019 at 20:14, Rayees Shamsuddin 
 wrote:
>
> Simon,
>
> Thanks for all your great and pioneering effort on v