Message ID | 20200824142502.7281-1-pali@kernel.org |
---|---|
State | Superseded |
Delegated to: | Stefan Roese |
Headers | show |
Series | [1/5] arm: mvebu: Espressobin: Move env load addresses | expand |
On 24.08.20 16:24, Pali Rohár wrote: > According to Marvell's U-Boot description [1] current env load addresses > overlaps with ATF RT services region and TEE. Because the ATF RT service > and TEE region is going to be marked as secure and can't be overwritten, > use different different addresses for envs. > > [1] - https://github.com/MarvellEmbeddedProcessors/u-boot-marvell/commit/0a5b159806baa0746b6449920e450498bc269ba7 > > Signed-off-by: Pali Rohár <pali@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de> Thanks, Stefan
Pali, thank you for all these espressobin fixes, much appreciated! This isn't directly related to the patch I'm replying to, but since you seem to be syncing down- with upstream: Upstream u-boot doesn't detect my sata ssd ("SATA link 0 timeout"), nor is it able to run debian's kernel (hangs after "Starting kernel"). Both work with armbian's downstream flash-image.bin. I'm using the espressobin v1 with these patches from the list on top of 2020.07: arm64: a37xx: pci: Depends on DM_GPIO arm: mvebu: Espressobin: Update README.marvell file arm: mvebu: Espressobin: Define console env arm: mvebu: Espressobin: Define fdt_addr and kernel_addr env aliases arm: mvebu: Espressobin: Change default loadaddr arm: mvebu: Espressobin: Move env load addresses arm: mvebu: Espressobin: Setup MTD partitions when booting kernel arm: mvebu: Espressobin: Make SPI env offset compatible with Marvell's U-Boot arm: dts: a37x0: enable sd card support on espressobin mmc: xenon: set signal voltage and max base clock arm64: a37xx: pci: Assert PERST# signal when unloading driver arm64: a37xx: pci: Make PCIe Reset GPIO DT compatible with Linux kernel DT arm64: dts: armada-3720-espressobin: fix COMPHY nodes arm: mvebu: Espressobin: Enable CONFIG_MVNETA arm: mvebu: Espressobin: Disallow forwarding packets between wan and lan ports Bootlog: TIM-1.0 WTMI-devel-18.12.1- WTMI: system early-init CPU VDD voltage default value: 1.108V NOTICE: Booting Trusted Firmware NOTICE: BL1: v2.3(): (Marvell-devel-18.12.0) NOTICE: BL1: Built : 06:12:46, Aug 26 2020 NOTICE: BL1: Booting BL2 NOTICE: BL2: v2.3(): (Marvell-devel-18.12.0) NOTICE: BL2: Built : 06:12:46, Aug 26 2020 NOTICE: BL1: Booting BL31 NOTICE: BL31: v2.3(): (Marvell-devel-18.12.0) NOTICE: BL31: Built : 06:12:46 U-Boot 2020.07 (Aug 26 2020 - 06:12:46 +0000) DRAM: 1 GiB Comphy-0: USB3_HOST0 5 Gbps Comphy-1: PEX0 2.5 Gbps Comphy-2: SATA0 5 Gbps SATA link 0 timeout. AHCI 0001.0300 32 slots 1 ports 6 Gbps 0x1 impl SATA mode flags: ncq led only pmp fbss pio slum part sxs PCIE-0: Link up MMC: sdhci@d0000: 0 Loading Environment from SPI Flash... SF: Detected w25q32dw with page size 256 Bytes, erase size 4 KiB, total 4 MiB OK Model: Marvell Armada 3720 Community Board ESPRESSOBin Net: eth0: neta@30000 Hit any key to stop autoboot: 0 MMC Device 1 not found no mmc device at slot 1 switch to partitions #0, OK mmc0 is current device Scanning mmc 0:1... Found U-Boot script /boot.scr 2250 bytes read in 12 ms (182.6 KiB/s) ## Executing script at 06d00000 22079344 bytes read in 1219 ms (17.3 MiB/s) 10671 bytes read in 24 ms (433.6 KiB/s) 27689238 bytes read in 1555 ms (17 MiB/s) Booting Debian 5.7.0-0.bpo.2-arm64 from mmc 0:1... ## Flattened Device Tree blob at 06f00000 Booting using the fdt blob at 0x6f00000 Loading Ramdisk to 3e0be000, end 3fb26116 ... OK Loading Device Tree to 000000003e0b8000, end 000000003e0bd9ae ... OK Starting kernel ... <hangs here> Bootlog with armbian's flash-image-ddr3-1g-2cs-800_800.bin: TIM-1.0 WTMI-devel-18.12.1-e6bb176 WTMI: system early-init CPU VDD voltage default value: 1.108V NOTICE: Booting Trusted Firmware NOTICE: BL1: v1.5(release):1f8ca7e (Marvell-devel-18.12.2) NOTICE: BL1: Built : 16:22:53, May 21 2019 NOTICE: BL1: Booting BL2 NOTICE: BL2: v1.5(release):1f8ca7e (Marvell-devel-18.12.2) NOTICE: BL2: Built : 16:22:55, May 21 2019 NOTICE: BL1: Booting BL31 NOTICE: BL31: v1.5(release):1f8ca7e (Marvell-devel-18.12.2) NOTICE: BL31: Built : 16:22:58 U-Boot 2018.03-devel-18.12.3-gc9aa92c-armbian (Feb 20 2019 - 09:45:04 +0100) Model: Marvell Armada 3720 Community Board ESPRESSOBin CPU 800 [MHz] L2 800 [MHz] TClock 200 [MHz] DDR 800 [MHz] DRAM: 1 GiB Comphy chip #0: Comphy-0: USB3 5 Gbps Comphy-1: PEX0 2.5 Gbps Comphy-2: SATA0 6 Gbps Target spinup took 0 ms. AHCI 0001.0300 32 slots 1 ports 6 Gbps 0x1 impl SATA mode flags: ncq led only pmp fbss pio slum part sxs PCIE-0: Link up MMC: sdhci@d0000: 0, sdhci@d8000: 1 Loading Environment from SPI Flash... SF: Detected w25q32dw with page size 256 Bytes, erase size 4 KiB, total 4 MiB OK Model: Marvell Armada 3720 Community Board ESPRESSOBin Net: eth0: neta@30000 [PRIME] Hit any key to stop autoboot: 0 / 2250 bytes read in 10 ms (219.7 KiB/s) ## Executing script at 06d00000 22079344 bytes read in 1231 ms (17.1 MiB/s) 10671 bytes read in 20 ms (520.5 KiB/s) 27689238 bytes read in 1570 ms (16.8 MiB/s) Booting Debian 5.7.0-0.bpo.2-arm64 from mmc 0:... ## Flattened Device Tree blob at 06000000 Booting using the fdt blob at 0x6000000 Loading Ramdisk to 3dbc2000, end 3f62a116 ... OK Using Device Tree in place at 0000000006000000, end 00000000060059ae Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034] [ 0.000000] Linux version 5.7.0-0.bpo.2-arm64 (debian-kernel@lists.debian.org) (gcc version 8.3.0 (Debian 8.3.0-6), GNU ld (GNU Binutils for Debian) 2.31.1) #1 SMP Debian 5.7.10-1~bpo10+1 (2020-07-30) [ 0.000000] Machine model: Globalscale Marvell ESPRESSOBin Board Any idea? Thanks in advance! Andre
Hello! On Wednesday 26 August 2020 09:30:11 Andre Heider wrote: > Pali, > > thank you for all these espressobin fixes, much appreciated! > > This isn't directly related to the patch I'm replying to, but since you seem > to be syncing down- with upstream: > > Upstream u-boot doesn't detect my sata ssd ("SATA link 0 timeout"), nor is Could you try following Marvell SATA/AHCI patch? https://github.com/MarvellEmbeddedProcessors/u-boot-marvell/commit/2c1571432e4fd298be0236b53511f415bbdd21ac > it able to run debian's kernel (hangs after "Starting kernel"). Both work > with armbian's downstream flash-image.bin. > > I'm using the espressobin v1 with these patches from the list on top of Do you really have espressobin v1? I saw hw schemas and diagrams only for V3, V4, V5 and V7. And I tested only V5 as I do not have any other revisions. > 2020.07: > arm64: a37xx: pci: Depends on DM_GPIO > arm: mvebu: Espressobin: Update README.marvell file > arm: mvebu: Espressobin: Define console env > arm: mvebu: Espressobin: Define fdt_addr and kernel_addr env aliases > arm: mvebu: Espressobin: Change default loadaddr > arm: mvebu: Espressobin: Move env load addresses > arm: mvebu: Espressobin: Setup MTD partitions when booting kernel > arm: mvebu: Espressobin: Make SPI env offset compatible with Marvell's > U-Boot > arm: dts: a37x0: enable sd card support on espressobin > mmc: xenon: set signal voltage and max base clock > arm64: a37xx: pci: Assert PERST# signal when unloading driver > arm64: a37xx: pci: Make PCIe Reset GPIO DT compatible with Linux kernel DT > arm64: dts: armada-3720-espressobin: fix COMPHY nodes > arm: mvebu: Espressobin: Enable CONFIG_MVNETA > arm: mvebu: Espressobin: Disallow forwarding packets between wan and lan > ports > > Bootlog: > > TIM-1.0 > WTMI-devel-18.12.1- > WTMI: system early-init > CPU VDD voltage default value: 1.108V > NOTICE: Booting Trusted Firmware > NOTICE: BL1: v2.3(): (Marvell-devel-18.12.0) > NOTICE: BL1: Built : 06:12:46, Aug 26 2020 > NOTICE: BL1: Booting BL2 > NOTICE: BL2: v2.3(): (Marvell-devel-18.12.0) > NOTICE: BL2: Built : 06:12:46, Aug 26 2020 > NOTICE: BL1: Booting BL31 > NOTICE: BL31: v2.3(): (Marvell-devel-18.12.0) > NOTICE: BL31: Built : 06:12:46 > > U-Boot 2020.07 (Aug 26 2020 - 06:12:46 +0000) > > DRAM: 1 GiB > Comphy-0: USB3_HOST0 5 Gbps > Comphy-1: PEX0 2.5 Gbps > Comphy-2: SATA0 5 Gbps > SATA link 0 timeout. > AHCI 0001.0300 32 slots 1 ports 6 Gbps 0x1 impl SATA mode > flags: ncq led only pmp fbss pio slum part sxs > PCIE-0: Link up > MMC: sdhci@d0000: 0 > Loading Environment from SPI Flash... SF: Detected w25q32dw with page size > 256 Bytes, erase size 4 KiB, total 4 MiB > OK > Model: Marvell Armada 3720 Community Board ESPRESSOBin > Net: eth0: neta@30000 > Hit any key to stop autoboot: 0 > MMC Device 1 not found > no mmc device at slot 1 > switch to partitions #0, OK > mmc0 is current device > Scanning mmc 0:1... > Found U-Boot script /boot.scr > 2250 bytes read in 12 ms (182.6 KiB/s) > ## Executing script at 06d00000 > 22079344 bytes read in 1219 ms (17.3 MiB/s) > 10671 bytes read in 24 ms (433.6 KiB/s) > 27689238 bytes read in 1555 ms (17 MiB/s) > Booting Debian 5.7.0-0.bpo.2-arm64 from mmc 0:1... > ## Flattened Device Tree blob at 06f00000 > Booting using the fdt blob at 0x6f00000 > Loading Ramdisk to 3e0be000, end 3fb26116 ... OK > Loading Device Tree to 000000003e0b8000, end 000000003e0bd9ae ... OK > > Starting kernel ... > <hangs here> Can you write which commands you have run to load & boot kernel? What are command line arguments for kernel? Also have you reset env variables to default?
Hi, On 26/08/2020 10:31, Pali Rohár wrote: > Hello! > > On Wednesday 26 August 2020 09:30:11 Andre Heider wrote: >> Pali, >> >> thank you for all these espressobin fixes, much appreciated! >> >> This isn't directly related to the patch I'm replying to, but since you seem >> to be syncing down- with upstream: >> >> Upstream u-boot doesn't detect my sata ssd ("SATA link 0 timeout"), nor is > > Could you try following Marvell SATA/AHCI patch? > https://github.com/MarvellEmbeddedProcessors/u-boot-marvell/commit/2c1571432e4fd298be0236b53511f415bbdd21ac will do that later and report my findings, thanks! >> it able to run debian's kernel (hangs after "Starting kernel"). Both work >> with armbian's downstream flash-image.bin. >> >> I'm using the espressobin v1 with these patches from the list on top of > > Do you really have espressobin v1? I saw hw schemas and diagrams only > for V3, V4, V5 and V7. And I tested only V5 as I do not have any other > revisions. Oh sorry, I meant the first public version, the one with ddr3 memory. Which would be the V5 schematics iirc. >> 2020.07: >> arm64: a37xx: pci: Depends on DM_GPIO >> arm: mvebu: Espressobin: Update README.marvell file >> arm: mvebu: Espressobin: Define console env >> arm: mvebu: Espressobin: Define fdt_addr and kernel_addr env aliases >> arm: mvebu: Espressobin: Change default loadaddr >> arm: mvebu: Espressobin: Move env load addresses >> arm: mvebu: Espressobin: Setup MTD partitions when booting kernel >> arm: mvebu: Espressobin: Make SPI env offset compatible with Marvell's >> U-Boot >> arm: dts: a37x0: enable sd card support on espressobin >> mmc: xenon: set signal voltage and max base clock >> arm64: a37xx: pci: Assert PERST# signal when unloading driver >> arm64: a37xx: pci: Make PCIe Reset GPIO DT compatible with Linux kernel DT >> arm64: dts: armada-3720-espressobin: fix COMPHY nodes >> arm: mvebu: Espressobin: Enable CONFIG_MVNETA >> arm: mvebu: Espressobin: Disallow forwarding packets between wan and lan >> ports >> >> Bootlog: >> >> TIM-1.0 >> WTMI-devel-18.12.1- >> WTMI: system early-init >> CPU VDD voltage default value: 1.108V >> NOTICE: Booting Trusted Firmware >> NOTICE: BL1: v2.3(): (Marvell-devel-18.12.0) >> NOTICE: BL1: Built : 06:12:46, Aug 26 2020 >> NOTICE: BL1: Booting BL2 >> NOTICE: BL2: v2.3(): (Marvell-devel-18.12.0) >> NOTICE: BL2: Built : 06:12:46, Aug 26 2020 >> NOTICE: BL1: Booting BL31 >> NOTICE: BL31: v2.3(): (Marvell-devel-18.12.0) >> NOTICE: BL31: Built : 06:12:46 >> >> U-Boot 2020.07 (Aug 26 2020 - 06:12:46 +0000) >> >> DRAM: 1 GiB >> Comphy-0: USB3_HOST0 5 Gbps >> Comphy-1: PEX0 2.5 Gbps >> Comphy-2: SATA0 5 Gbps >> SATA link 0 timeout. >> AHCI 0001.0300 32 slots 1 ports 6 Gbps 0x1 impl SATA mode >> flags: ncq led only pmp fbss pio slum part sxs >> PCIE-0: Link up >> MMC: sdhci@d0000: 0 >> Loading Environment from SPI Flash... SF: Detected w25q32dw with page size >> 256 Bytes, erase size 4 KiB, total 4 MiB >> OK >> Model: Marvell Armada 3720 Community Board ESPRESSOBin >> Net: eth0: neta@30000 >> Hit any key to stop autoboot: 0 >> MMC Device 1 not found >> no mmc device at slot 1 >> switch to partitions #0, OK >> mmc0 is current device >> Scanning mmc 0:1... >> Found U-Boot script /boot.scr >> 2250 bytes read in 12 ms (182.6 KiB/s) >> ## Executing script at 06d00000 >> 22079344 bytes read in 1219 ms (17.3 MiB/s) >> 10671 bytes read in 24 ms (433.6 KiB/s) >> 27689238 bytes read in 1555 ms (17 MiB/s) >> Booting Debian 5.7.0-0.bpo.2-arm64 from mmc 0:1... >> ## Flattened Device Tree blob at 06f00000 >> Booting using the fdt blob at 0x6f00000 >> Loading Ramdisk to 3e0be000, end 3fb26116 ... OK >> Loading Device Tree to 000000003e0b8000, end 000000003e0bd9ae ... OK >> >> Starting kernel ... >> <hangs here> > > Can you write which commands you have run to load & boot kernel? > What are command line arguments for kernel? > > Also have you reset env variables to default? Yeah, I do reset the full env when switching between the flash images. For the upstream version: env default -a setenv ethaddr f0:ad:4e:03:86:cd setenv eth1addr f0:ad:4e:03:86:cd setenv eth2addr f0:ad:4e:03:86:cd setenv serverip 192.168.0.40 setenv ipaddr 192.168.0.2 saveenv For the downstream version: env default -a env delete console setenv fdt_addr_r 0x6000000 setenv kernel_addr_r 0x7000000 setenv ramdisk_addr_r 0x1100000 setenv ethaddr f0:ad:4e:03:86:cd setenv eth1addr f0:ad:4e:03:86:cd setenv eth2addr f0:ad:4e:03:86:cd setenv serverip 192.168.0.40 setenv ipaddr 192.168.0.2 setenv fdt_addr 0x6000000 setenv kernel_addr 0x7000000 setenv loadaddr 0x8000000 setenv initrd_size 0x2000000 setenv initrd_addr 0x1100000 setenv scriptaddr 0x6d00000 setenv initrd_image uInitrd setenv image_name Image setenv boot_targets 'mmc0 usb sata mmc1' setenv boot_prefixes '/ /boot/' setenv bootcmd_mmc0 'setenv devnum 0; setenv devtype mmc; run scan_dev_for_boot;' setenv bootcmd_mmc1 'setenv devnum 1; setenv devtype mmc; run scan_dev_for_boot;' setenv bootcmd_sata 'setenv devnum 0; scsi scan; scsi dev 0; setenv devtype scsi; run scan_dev_for_boot;' setenv bootcmd_usb 'setenv devnum 0; usb start;setenv devtype usb; run scan_dev_for_boot;' setenv bootcmd 'for target in ${boot_targets}; do run bootcmd_${target}; done' setenv scan_dev_for_boot 'for prefix in ${boot_prefixes}; do echo ${prefix};run boot_a_script; done' setenv boot_a_script 'ext4load ${devtype} ${devnum}:1 ${scriptaddr} ${prefix}boot.scr;source ${scriptaddr};' saveenv Debian's boot.scr relies on u-boot's distro boot. Downstream still fails to enable it (even managed to break my patch to enable it...), so most of my env is to make it compatible again so I can use an unmodified userland. Debian's script is rather boring then: $ strings /boot/boot.scr boot script # flash-kernel: bootscr.uboot-generic # Bootscript using the new unified bootcmd handling # Expects to be called with the following environment variables set: # devtype e.g. mmc/scsi etc # devnum The device number of the given type # bootpart The partition containing the boot files # distro_bootpart The partition containing the boot files # (introduced in u-boot mainline 2016.01) # prefix Prefix within the boot partiion to the boot files # kernel_addr_r Address to load the kernel to # fdt_addr_r Address to load the FDT to # ramdisk_addr_r Address to load the initrd to. # The uboot must support the booti and generic filesystem load commands. if test -n "${console}"; then setenv bootargs "${bootargs} console=${console}" setenv bootargs ${bootargs} root=LABEL=espresso-root if test -z "${fk_kvers}"; then setenv fk_kvers '5.7.0-0.bpo.2-arm64' # These two blocks should be the same apart from the use of # ${fk_kvers} in the first, the syntax supported by u-boot does not # lend itself to removing this duplication. if test -n "${fdtfile}"; then setenv fdtpath dtbs/${fk_kvers}/${fdtfile} else setenv fdtpath dtb-${fk_kvers} if test -z "${distro_bootpart}"; then setenv partition ${bootpart} else setenv partition ${distro_bootpart} load ${devtype} ${devnum}:${partition} ${kernel_addr_r} ${prefix}vmlinuz-${fk_kvers} \ && load ${devtype} ${devnum}:${partition} ${fdt_addr_r} ${prefix}${fdtpath} \ && load ${devtype} ${devnum}:${partition} ${ramdisk_addr_r} ${prefix}initrd.img-${fk_kvers} \ && echo "Booting Debian ${fk_kvers} from ${devtype} ${devnum}:${partition}..." \ && booti ${kernel_addr_r} ${ramdisk_addr_r}:${filesize} ${fdt_addr_r} load ${devtype} ${devnum}:${partition} ${kernel_addr_r} ${prefix}vmlinuz \ && load ${devtype} ${devnum}:${partition} ${fdt_addr_r} ${prefix}dtb \ && load ${devtype} ${devnum}:${partition} ${ramdisk_addr_r} ${prefix}initrd.img \ && echo "Booting Debian from ${devtype} ${devnum}:${partition}..." \ && booti ${kernel_addr_r} ${ramdisk_addr_r}:${filesize} ${fdt_addr_r} Regards, Andre
On Wednesday 26 August 2020 11:57:01 Andre Heider wrote: > Hi, > > On 26/08/2020 10:31, Pali Rohár wrote: > > Hello! > > > > On Wednesday 26 August 2020 09:30:11 Andre Heider wrote: > > > Pali, > > > > > > thank you for all these espressobin fixes, much appreciated! > > > > > > This isn't directly related to the patch I'm replying to, but since you seem > > > to be syncing down- with upstream: > > > > > > Upstream u-boot doesn't detect my sata ssd ("SATA link 0 timeout"), nor is > > > > Could you try following Marvell SATA/AHCI patch? > > https://github.com/MarvellEmbeddedProcessors/u-boot-marvell/commit/2c1571432e4fd298be0236b53511f415bbdd21ac > > will do that later and report my findings, thanks! > > > > it able to run debian's kernel (hangs after "Starting kernel"). Both work > > > with armbian's downstream flash-image.bin. > > > > > > I'm using the espressobin v1 with these patches from the list on top of > > > > Do you really have espressobin v1? I saw hw schemas and diagrams only > > for V3, V4, V5 and V7. And I tested only V5 as I do not have any other > > revisions. > > Oh sorry, I meant the first public version, the one with ddr3 memory. Which > would be the V5 schematics iirc. > > > > 2020.07: > > > arm64: a37xx: pci: Depends on DM_GPIO > > > arm: mvebu: Espressobin: Update README.marvell file > > > arm: mvebu: Espressobin: Define console env > > > arm: mvebu: Espressobin: Define fdt_addr and kernel_addr env aliases > > > arm: mvebu: Espressobin: Change default loadaddr > > > arm: mvebu: Espressobin: Move env load addresses > > > arm: mvebu: Espressobin: Setup MTD partitions when booting kernel > > > arm: mvebu: Espressobin: Make SPI env offset compatible with Marvell's > > > U-Boot > > > arm: dts: a37x0: enable sd card support on espressobin > > > mmc: xenon: set signal voltage and max base clock > > > arm64: a37xx: pci: Assert PERST# signal when unloading driver > > > arm64: a37xx: pci: Make PCIe Reset GPIO DT compatible with Linux kernel DT > > > arm64: dts: armada-3720-espressobin: fix COMPHY nodes > > > arm: mvebu: Espressobin: Enable CONFIG_MVNETA > > > arm: mvebu: Espressobin: Disallow forwarding packets between wan and lan > > > ports > > > > > > Bootlog: > > > > > > TIM-1.0 > > > WTMI-devel-18.12.1- > > > WTMI: system early-init > > > CPU VDD voltage default value: 1.108V > > > NOTICE: Booting Trusted Firmware > > > NOTICE: BL1: v2.3(): (Marvell-devel-18.12.0) > > > NOTICE: BL1: Built : 06:12:46, Aug 26 2020 > > > NOTICE: BL1: Booting BL2 > > > NOTICE: BL2: v2.3(): (Marvell-devel-18.12.0) > > > NOTICE: BL2: Built : 06:12:46, Aug 26 2020 > > > NOTICE: BL1: Booting BL31 > > > NOTICE: BL31: v2.3(): (Marvell-devel-18.12.0) > > > NOTICE: BL31: Built : 06:12:46 > > > > > > U-Boot 2020.07 (Aug 26 2020 - 06:12:46 +0000) > > > > > > DRAM: 1 GiB > > > Comphy-0: USB3_HOST0 5 Gbps > > > Comphy-1: PEX0 2.5 Gbps > > > Comphy-2: SATA0 5 Gbps > > > SATA link 0 timeout. > > > AHCI 0001.0300 32 slots 1 ports 6 Gbps 0x1 impl SATA mode > > > flags: ncq led only pmp fbss pio slum part sxs > > > PCIE-0: Link up > > > MMC: sdhci@d0000: 0 > > > Loading Environment from SPI Flash... SF: Detected w25q32dw with page size > > > 256 Bytes, erase size 4 KiB, total 4 MiB > > > OK > > > Model: Marvell Armada 3720 Community Board ESPRESSOBin > > > Net: eth0: neta@30000 > > > Hit any key to stop autoboot: 0 > > > MMC Device 1 not found > > > no mmc device at slot 1 > > > switch to partitions #0, OK > > > mmc0 is current device > > > Scanning mmc 0:1... > > > Found U-Boot script /boot.scr > > > 2250 bytes read in 12 ms (182.6 KiB/s) > > > ## Executing script at 06d00000 > > > 22079344 bytes read in 1219 ms (17.3 MiB/s) > > > 10671 bytes read in 24 ms (433.6 KiB/s) > > > 27689238 bytes read in 1555 ms (17 MiB/s) > > > Booting Debian 5.7.0-0.bpo.2-arm64 from mmc 0:1... > > > ## Flattened Device Tree blob at 06f00000 > > > Booting using the fdt blob at 0x6f00000 > > > Loading Ramdisk to 3e0be000, end 3fb26116 ... OK > > > Loading Device Tree to 000000003e0b8000, end 000000003e0bd9ae ... OK > > > > > > Starting kernel ... > > > <hangs here> > > > > Can you write which commands you have run to load & boot kernel? > > What are command line arguments for kernel? > > > > Also have you reset env variables to default? > > Yeah, I do reset the full env when switching between the flash images. Now I tried to boot openwrt kernel image and it is working fine on tested espressobin v5 unit. I compiled u-boot with all those a37xx patches. DRAM: 512 MiB Comphy-0: USB3_HOST0 5 Gbps Comphy-1: PEX0 2.5 Gbps Comphy-2: SATA0 5 Gbps SATA link 0 timeout. AHCI 0001.0300 32 slots 1 ports 6 Gbps 0x1 impl SATA mode flags: ncq led only pmp fbss pio slum part sxs PCIE-0: Link up MMC: sdhci@d0000: 0 Loading Environment from SPIFlash... SF: Detected w25q32dw with page size 256 Bytes, erase size 4 KiB, total 4 MiB OK Model: Marvell Armada 3720 Community Board ESPRESSOBin Net: eth0: neta@30000 [PRIME] Hit any key to stop autoboot: 0 => env default -a ## Resetting to default environment => setenv bootargs "root=PARTUUID=aefd80c5-02 rw rootwait" => setenv bootargs "${bootargs} ${console}" => mmc dev 0 switch to partitions #0, OK mmc0 is current device => load mmc 0:1 ${fdt_addr} armada-3720-espressobin.dtb 10630 bytes read in 11 ms (943.4 KiB/s) => load mmc 0:1 ${kernel_addr} Image 10197000 bytes read in 436 ms (22.3 MiB/s) => booti ${kernel_addr} - ${fdt_addr} Moving Image from 0x7000000 to 0x7080000, end=7a82000 ## Flattened Device Tree blob at 06f00000 Booting using the fdt blob at 0x6f00000 Loading Device Tree to 000000001fb20000, end 000000001fb25985 ... OK Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034] [ 0.000000] Linux version 5.4.59 (builder@buildhost) (gcc version 8.4.0 (OpenWrt GCC 8.4.0 r14241-ba2ddba56b)) #0 SMP Mon Aug 24 00:09:30 2020 [ 0.000000] Machine model: Globalscale Marvell ESPRESSOBin Board [ 0.000000] earlycon: ar3700_uart0 at MMIO 0x00000000d0012000 (options '') [ 0.000000] printk: bootconsole [ar3700_uart0] enabled [ 0.000000] psci: probing for conduit method from DT. [ 0.000000] psci: PSCIv1.1 detected in firmware. [ 0.000000] psci: Using standard PSCI v0.2 function IDs [ 0.000000] psci: MIGRATE_INFO_TYPE not supported. [ 0.000000] psci: SMC Calling Convention v1.1 [ 0.000000] percpu: Embedded 16 pages/cpu s26520 r8192 d30824 u65536 [ 0.000000] Detected VIPT I-cache on CPU0 [ 0.000000] CPU features: detected: GIC system register CPU interface [ 0.000000] Speculative Store Bypass Disable mitigation not required [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 128512 [ 0.000000] Kernel command line: root=PARTUUID=aefd80c5-02 rw rootwait console=ttyMV0,115200 earlycon=ar3700_uart,0xd0012000 ...
On Wednesday 26 August 2020 12:51:18 Pali Rohár wrote: > On Wednesday 26 August 2020 11:57:01 Andre Heider wrote: > > Hi, > > > > On 26/08/2020 10:31, Pali Rohár wrote: > > > Hello! > > > > > > On Wednesday 26 August 2020 09:30:11 Andre Heider wrote: > > > > Pali, > > > > > > > > thank you for all these espressobin fixes, much appreciated! > > > > > > > > This isn't directly related to the patch I'm replying to, but since you seem > > > > to be syncing down- with upstream: > > > > > > > > Upstream u-boot doesn't detect my sata ssd ("SATA link 0 timeout"), nor is > > > > > > Could you try following Marvell SATA/AHCI patch? > > > https://github.com/MarvellEmbeddedProcessors/u-boot-marvell/commit/2c1571432e4fd298be0236b53511f415bbdd21ac > > > > will do that later and report my findings, thanks! > > > > > > it able to run debian's kernel (hangs after "Starting kernel"). Both work > > > > with armbian's downstream flash-image.bin. > > > > > > > > I'm using the espressobin v1 with these patches from the list on top of > > > > > > Do you really have espressobin v1? I saw hw schemas and diagrams only > > > for V3, V4, V5 and V7. And I tested only V5 as I do not have any other > > > revisions. > > > > Oh sorry, I meant the first public version, the one with ddr3 memory. Which > > would be the V5 schematics iirc. > > > > > > 2020.07: > > > > arm64: a37xx: pci: Depends on DM_GPIO > > > > arm: mvebu: Espressobin: Update README.marvell file > > > > arm: mvebu: Espressobin: Define console env > > > > arm: mvebu: Espressobin: Define fdt_addr and kernel_addr env aliases > > > > arm: mvebu: Espressobin: Change default loadaddr > > > > arm: mvebu: Espressobin: Move env load addresses > > > > arm: mvebu: Espressobin: Setup MTD partitions when booting kernel > > > > arm: mvebu: Espressobin: Make SPI env offset compatible with Marvell's > > > > U-Boot > > > > arm: dts: a37x0: enable sd card support on espressobin > > > > mmc: xenon: set signal voltage and max base clock > > > > arm64: a37xx: pci: Assert PERST# signal when unloading driver > > > > arm64: a37xx: pci: Make PCIe Reset GPIO DT compatible with Linux kernel DT > > > > arm64: dts: armada-3720-espressobin: fix COMPHY nodes > > > > arm: mvebu: Espressobin: Enable CONFIG_MVNETA > > > > arm: mvebu: Espressobin: Disallow forwarding packets between wan and lan > > > > ports > > > > > > > > Bootlog: > > > > > > > > TIM-1.0 > > > > WTMI-devel-18.12.1- > > > > WTMI: system early-init > > > > CPU VDD voltage default value: 1.108V > > > > NOTICE: Booting Trusted Firmware > > > > NOTICE: BL1: v2.3(): (Marvell-devel-18.12.0) > > > > NOTICE: BL1: Built : 06:12:46, Aug 26 2020 > > > > NOTICE: BL1: Booting BL2 > > > > NOTICE: BL2: v2.3(): (Marvell-devel-18.12.0) > > > > NOTICE: BL2: Built : 06:12:46, Aug 26 2020 > > > > NOTICE: BL1: Booting BL31 > > > > NOTICE: BL31: v2.3(): (Marvell-devel-18.12.0) > > > > NOTICE: BL31: Built : 06:12:46 > > > > > > > > U-Boot 2020.07 (Aug 26 2020 - 06:12:46 +0000) > > > > > > > > DRAM: 1 GiB > > > > Comphy-0: USB3_HOST0 5 Gbps > > > > Comphy-1: PEX0 2.5 Gbps > > > > Comphy-2: SATA0 5 Gbps > > > > SATA link 0 timeout. > > > > AHCI 0001.0300 32 slots 1 ports 6 Gbps 0x1 impl SATA mode > > > > flags: ncq led only pmp fbss pio slum part sxs > > > > PCIE-0: Link up > > > > MMC: sdhci@d0000: 0 > > > > Loading Environment from SPI Flash... SF: Detected w25q32dw with page size > > > > 256 Bytes, erase size 4 KiB, total 4 MiB > > > > OK > > > > Model: Marvell Armada 3720 Community Board ESPRESSOBin > > > > Net: eth0: neta@30000 > > > > Hit any key to stop autoboot: 0 > > > > MMC Device 1 not found > > > > no mmc device at slot 1 > > > > switch to partitions #0, OK > > > > mmc0 is current device > > > > Scanning mmc 0:1... > > > > Found U-Boot script /boot.scr > > > > 2250 bytes read in 12 ms (182.6 KiB/s) > > > > ## Executing script at 06d00000 > > > > 22079344 bytes read in 1219 ms (17.3 MiB/s) > > > > 10671 bytes read in 24 ms (433.6 KiB/s) > > > > 27689238 bytes read in 1555 ms (17 MiB/s) > > > > Booting Debian 5.7.0-0.bpo.2-arm64 from mmc 0:1... > > > > ## Flattened Device Tree blob at 06f00000 > > > > Booting using the fdt blob at 0x6f00000 > > > > Loading Ramdisk to 3e0be000, end 3fb26116 ... OK > > > > Loading Device Tree to 000000003e0b8000, end 000000003e0bd9ae ... OK > > > > > > > > Starting kernel ... > > > > <hangs here> > > > > > > Can you write which commands you have run to load & boot kernel? > > > What are command line arguments for kernel? > > > > > > Also have you reset env variables to default? > > > > Yeah, I do reset the full env when switching between the flash images. > > Now I tried to boot openwrt kernel image and it is working fine on > tested espressobin v5 unit. I compiled u-boot with all those a37xx > patches. I looked at Debian and booting Debian kernel with Debian initrd failed: => booti ${kernel_addr_r} ${ramdisk_addr_r}:{filesize} ${fdt_addr_r} Moving Image from 0x7000000 to 0x7080000, end=82f2000 ERROR: RD image overlaps OS image (OS=0x7080000..0x82f2000) Debian's kernel is big, so it is needed to move also ramdisk_addr_r env variable. Following patch helped: diff --git a/include/configs/mvebu_armada-37xx.h b/include/configs/mvebu_armada-37xx.h index 6f72a13301..8929fcf390 100644 --- a/include/configs/mvebu_armada-37xx.h +++ b/include/configs/mvebu_armada-37xx.h @@ -99,7 +99,7 @@ "fdt_addr_r=0x6f00000\0" \ "kernel_addr=0x7000000\0" \ "kernel_addr_r=0x7000000\0" \ - "ramdisk_addr_r=0x8000000\0" \ + "ramdisk_addr_r=0xa000000\0" \ "console=" CONFIG_DEFAULT_CONSOLE "\0" \ BOOTENV And after that Debian kernel with Debian initrd and FDT was booted: DRAM: 512 MiB Comphy-0: USB3_HOST0 5 Gbps Comphy-1: PEX0 2.5 Gbps Comphy-2: SATA0 5 Gbps SATA link 0 timeout. AHCI 0001.0300 32 slots 1 ports 6 Gbps 0x1 impl SATA mode flags: ncq led only pmp fbss pio slum part sxs PCIE-0: Link up MMC: sdhci@d0000: 0 Loading Environment from SPIFlash... SF: Detected w25q32dw with page size 256 Bytes, erase size 4 KiB, total 4 MiB OK Model: Marvell Armada 3720 Community Board ESPRESSOBin Net: eth0: neta@30000 [PRIME] Hit any key to stop autoboot: 0 => env default -a ## Resetting to default environment => mmc dev 0 switch to partitions #0, OK mmc0 is current device => load mmc 0:2 ${fdt_addr_r} debian/armada-3720-espressobin.dtb 10553 bytes read in 17 ms (605.5 KiB/s) => load mmc 0:2 ${kernel_addr_r} debian/vmlinuz-4.19.0-10-arm64 18759536 bytes read in 804 ms (22.3 MiB/s) => load mmc 0:2 ${ramdisk_addr_r} debian/initrd.img-4.19.0-10-arm64 23890636 bytes read in 1013 ms (22.5 MiB/s) => setenv bootargs "$console root=/dev/mmcblk0p2 ro rootwait net.ifnames=0 biosdevname=0" => echo $bootargs console=ttyMV0,115200 earlycon=ar3700_uart,0xd0012000 root=/dev/mmcblk0p2 ro rootwait net.ifnames=0 biosdevname=0 => echo ${filesize} 16c8acc => booti ${kernel_addr_r} ${ramdisk_addr_r}:{filesize} ${fdt_addr_r} Moving Image from 0x7000000 to 0x7080000, end=82f2000 ## Flattened Device Tree blob at 06f00000 Booting using the fdt blob at 0x6f00000 Loading Ramdisk to 20000000, end 20000000 ... OK Loading Device Tree to 000000001f620000, end 000000001f625938 ... OK Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034] [ 0.000000] Linux version 4.19.0-10-arm64 (debian-kernel@lists.debian.org) (gcc version 8.3.0 (Debian 8.3.0-6)) #1 SMP Debian 4.19.132-1 (2020-07-24) [ 0.000000] Machine model: Globalscale Marvell ESPRESSOBin Board [ 0.000000] earlycon: ar3700_uart0 at MMIO 0x00000000d0012000 (options '') [ 0.000000] bootconsole [ar3700_uart0] enabled [ 0.000000] efi: Getting EFI parameters from FDT: [ 0.000000] efi: UEFI not found. [ 0.000000] cma: Reserved 64 MiB at 0x000000001b400000 [ 0.000000] NUMA: No NUMA configuration found [ 0.000000] NUMA: Faking a node at [mem 0x0000000000000000-0x000000001fffffff] [ 0.000000] NUMA: NODE_DATA [mem 0x1ffe6600-0x1ffe7dbf] [ 0.000000] Zone ranges: [ 0.000000] DMA32 [mem 0x0000000000000000-0x000000001fffffff] [ 0.000000] Normal empty [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000000000000-0x0000000003ffffff] [ 0.000000] node 0: [mem 0x0000000004200000-0x000000001fffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000001fffffff] [ 0.000000] psci: probing for conduit method from DT. [ 0.000000] psci: PSCIv1.1 detected in firmware. [ 0.000000] psci: Using standard PSCI v0.2 function IDs [ 0.000000] psci: MIGRATE_INFO_TYPE not supported. [ 0.000000] psci: SMC Calling Convention v1.1 [ 0.000000] random: get_random_bytes called from start_kernel+0x9c/0x4c0 with crng_init=0 [ 0.000000] percpu: Embedded 25 pages/cpu s61976 r8192 d32232 u102400 [ 0.000000] Detected VIPT I-cache on CPU0 [ 0.000000] CPU features: enabling workaround for ARM erratum 845719 [ 0.000000] Speculative Store Bypass Disable mitigation not required [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 128512 [ 0.000000] Policy zone: DMA32 [ 0.000000] Kernel command line: console=ttyMV0,115200 earlycon=ar3700_uart,0xd0012000 root=/dev/mmcblk0p2 ro rootwait net.ifnames=0 biosdevname=0 ...
Hi, On 26/08/2020 13:40, Pali Rohár wrote: > On Wednesday 26 August 2020 12:51:18 Pali Rohár wrote: >> On Wednesday 26 August 2020 11:57:01 Andre Heider wrote: >>> Hi, >>> >>> On 26/08/2020 10:31, Pali Rohár wrote: >>>> Hello! >>>> >>>> On Wednesday 26 August 2020 09:30:11 Andre Heider wrote: >>>>> Pali, >>>>> >>>>> thank you for all these espressobin fixes, much appreciated! >>>>> >>>>> This isn't directly related to the patch I'm replying to, but since you seem >>>>> to be syncing down- with upstream: >>>>> >>>>> Upstream u-boot doesn't detect my sata ssd ("SATA link 0 timeout"), nor is >>>> >>>> Could you try following Marvell SATA/AHCI patch? >>>> https://github.com/MarvellEmbeddedProcessors/u-boot-marvell/commit/2c1571432e4fd298be0236b53511f415bbdd21ac >>> >>> will do that later and report my findings, thanks! That one didn't help unfortunately. u-boot still prints "SATA link 0 timeout". Booting kernel 5.7.0-0.bpo.2-arm64 with that and sata works, but booting 4.19.0-10-arm64 and it doesn't: "ata1: SATA link down (SStatus 131 SControl 300)" is printed all over again. >>> >>>>> it able to run debian's kernel (hangs after "Starting kernel"). Both work >>>>> with armbian's downstream flash-image.bin. >>>>> >>>>> I'm using the espressobin v1 with these patches from the list on top of >>>> >>>> Do you really have espressobin v1? I saw hw schemas and diagrams only >>>> for V3, V4, V5 and V7. And I tested only V5 as I do not have any other >>>> revisions. >>> >>> Oh sorry, I meant the first public version, the one with ddr3 memory. Which >>> would be the V5 schematics iirc. >>> >>>>> 2020.07: >>>>> arm64: a37xx: pci: Depends on DM_GPIO >>>>> arm: mvebu: Espressobin: Update README.marvell file >>>>> arm: mvebu: Espressobin: Define console env >>>>> arm: mvebu: Espressobin: Define fdt_addr and kernel_addr env aliases >>>>> arm: mvebu: Espressobin: Change default loadaddr >>>>> arm: mvebu: Espressobin: Move env load addresses >>>>> arm: mvebu: Espressobin: Setup MTD partitions when booting kernel >>>>> arm: mvebu: Espressobin: Make SPI env offset compatible with Marvell's >>>>> U-Boot >>>>> arm: dts: a37x0: enable sd card support on espressobin >>>>> mmc: xenon: set signal voltage and max base clock >>>>> arm64: a37xx: pci: Assert PERST# signal when unloading driver >>>>> arm64: a37xx: pci: Make PCIe Reset GPIO DT compatible with Linux kernel DT >>>>> arm64: dts: armada-3720-espressobin: fix COMPHY nodes >>>>> arm: mvebu: Espressobin: Enable CONFIG_MVNETA >>>>> arm: mvebu: Espressobin: Disallow forwarding packets between wan and lan >>>>> ports >>>>> >>>>> Bootlog: >>>>> >>>>> TIM-1.0 >>>>> WTMI-devel-18.12.1- >>>>> WTMI: system early-init >>>>> CPU VDD voltage default value: 1.108V >>>>> NOTICE: Booting Trusted Firmware >>>>> NOTICE: BL1: v2.3(): (Marvell-devel-18.12.0) >>>>> NOTICE: BL1: Built : 06:12:46, Aug 26 2020 >>>>> NOTICE: BL1: Booting BL2 >>>>> NOTICE: BL2: v2.3(): (Marvell-devel-18.12.0) >>>>> NOTICE: BL2: Built : 06:12:46, Aug 26 2020 >>>>> NOTICE: BL1: Booting BL31 >>>>> NOTICE: BL31: v2.3(): (Marvell-devel-18.12.0) >>>>> NOTICE: BL31: Built : 06:12:46 >>>>> >>>>> U-Boot 2020.07 (Aug 26 2020 - 06:12:46 +0000) >>>>> >>>>> DRAM: 1 GiB >>>>> Comphy-0: USB3_HOST0 5 Gbps >>>>> Comphy-1: PEX0 2.5 Gbps >>>>> Comphy-2: SATA0 5 Gbps >>>>> SATA link 0 timeout. >>>>> AHCI 0001.0300 32 slots 1 ports 6 Gbps 0x1 impl SATA mode >>>>> flags: ncq led only pmp fbss pio slum part sxs >>>>> PCIE-0: Link up >>>>> MMC: sdhci@d0000: 0 >>>>> Loading Environment from SPI Flash... SF: Detected w25q32dw with page size >>>>> 256 Bytes, erase size 4 KiB, total 4 MiB >>>>> OK >>>>> Model: Marvell Armada 3720 Community Board ESPRESSOBin >>>>> Net: eth0: neta@30000 >>>>> Hit any key to stop autoboot: 0 >>>>> MMC Device 1 not found >>>>> no mmc device at slot 1 >>>>> switch to partitions #0, OK >>>>> mmc0 is current device >>>>> Scanning mmc 0:1... >>>>> Found U-Boot script /boot.scr >>>>> 2250 bytes read in 12 ms (182.6 KiB/s) >>>>> ## Executing script at 06d00000 >>>>> 22079344 bytes read in 1219 ms (17.3 MiB/s) >>>>> 10671 bytes read in 24 ms (433.6 KiB/s) >>>>> 27689238 bytes read in 1555 ms (17 MiB/s) >>>>> Booting Debian 5.7.0-0.bpo.2-arm64 from mmc 0:1... >>>>> ## Flattened Device Tree blob at 06f00000 >>>>> Booting using the fdt blob at 0x6f00000 >>>>> Loading Ramdisk to 3e0be000, end 3fb26116 ... OK >>>>> Loading Device Tree to 000000003e0b8000, end 000000003e0bd9ae ... OK >>>>> >>>>> Starting kernel ... >>>>> <hangs here> >>>> >>>> Can you write which commands you have run to load & boot kernel? >>>> What are command line arguments for kernel? >>>> >>>> Also have you reset env variables to default? >>> >>> Yeah, I do reset the full env when switching between the flash images. >> >> Now I tried to boot openwrt kernel image and it is working fine on >> tested espressobin v5 unit. I compiled u-boot with all those a37xx >> patches. > > I looked at Debian and booting Debian kernel with Debian initrd failed: > > => booti ${kernel_addr_r} ${ramdisk_addr_r}:{filesize} ${fdt_addr_r} > Moving Image from 0x7000000 to 0x7080000, end=82f2000 > ERROR: RD image overlaps OS image (OS=0x7080000..0x82f2000) > > Debian's kernel is big, so it is needed to move also ramdisk_addr_r env > variable. Following patch helped: > > diff --git a/include/configs/mvebu_armada-37xx.h b/include/configs/mvebu_armada-37xx.h > index 6f72a13301..8929fcf390 100644 > --- a/include/configs/mvebu_armada-37xx.h > +++ b/include/configs/mvebu_armada-37xx.h > @@ -99,7 +99,7 @@ > "fdt_addr_r=0x6f00000\0" \ > "kernel_addr=0x7000000\0" \ > "kernel_addr_r=0x7000000\0" \ > - "ramdisk_addr_r=0x8000000\0" \ > + "ramdisk_addr_r=0xa000000\0" \ > "console=" CONFIG_DEFAULT_CONSOLE "\0" \ > BOOTENV > > > And after that Debian kernel with Debian initrd and FDT was booted: Heh, nice. That indeed works! Well minus one thing, see my reply to "arm: mvebu: Espressobin: Define console env". Thanks, Andre
On Wednesday 26 August 2020 15:22:37 Andre Heider wrote: > Hi, > > On 26/08/2020 13:40, Pali Rohár wrote: > > On Wednesday 26 August 2020 12:51:18 Pali Rohár wrote: > > > On Wednesday 26 August 2020 11:57:01 Andre Heider wrote: > > > > Hi, > > > > > > > > On 26/08/2020 10:31, Pali Rohár wrote: > > > > > Hello! > > > > > > > > > > On Wednesday 26 August 2020 09:30:11 Andre Heider wrote: > > > > > > Pali, > > > > > > > > > > > > thank you for all these espressobin fixes, much appreciated! > > > > > > > > > > > > This isn't directly related to the patch I'm replying to, but since you seem > > > > > > to be syncing down- with upstream: > > > > > > > > > > > > Upstream u-boot doesn't detect my sata ssd ("SATA link 0 timeout"), nor is > > > > > > > > > > Could you try following Marvell SATA/AHCI patch? > > > > > https://github.com/MarvellEmbeddedProcessors/u-boot-marvell/commit/2c1571432e4fd298be0236b53511f415bbdd21ac > > > > > > > > will do that later and report my findings, thanks! > > That one didn't help unfortunately. u-boot still prints "SATA link 0 > timeout". Booting kernel 5.7.0-0.bpo.2-arm64 with that and sata works, but > booting 4.19.0-10-arm64 and it doesn't: "ata1: SATA link down (SStatus 131 > SControl 300)" is printed all over again. I guess it was broken also prior applying all those patches. So for now I do not have any fix for this. Somebody else would need to look at it. > > I looked at Debian and booting Debian kernel with Debian initrd failed: > > > > => booti ${kernel_addr_r} ${ramdisk_addr_r}:{filesize} ${fdt_addr_r} > > Moving Image from 0x7000000 to 0x7080000, end=82f2000 > > ERROR: RD image overlaps OS image (OS=0x7080000..0x82f2000) > > > > Debian's kernel is big, so it is needed to move also ramdisk_addr_r env > > variable. Following patch helped: > > > > diff --git a/include/configs/mvebu_armada-37xx.h b/include/configs/mvebu_armada-37xx.h > > index 6f72a13301..8929fcf390 100644 > > --- a/include/configs/mvebu_armada-37xx.h > > +++ b/include/configs/mvebu_armada-37xx.h > > @@ -99,7 +99,7 @@ > > "fdt_addr_r=0x6f00000\0" \ > > "kernel_addr=0x7000000\0" \ > > "kernel_addr_r=0x7000000\0" \ > > - "ramdisk_addr_r=0x8000000\0" \ > > + "ramdisk_addr_r=0xa000000\0" \ > > "console=" CONFIG_DEFAULT_CONSOLE "\0" \ > > BOOTENV > > > > And after that Debian kernel with Debian initrd and FDT was booted: > > Heh, nice. That indeed works! Ok, I have sent a new version V2 of this patch series and updated first patch which fix also ramdisk_addr_r. > Well minus one thing, see my reply to "arm: mvebu: Espressobin: Define > console env". For now I have dropped this patch for V2, until it is solved/fixed in some way.
On Wednesday 26 August 2020 15:22:37 Andre Heider wrote: > Hi, > > On 26/08/2020 13:40, Pali Rohár wrote: > > On Wednesday 26 August 2020 12:51:18 Pali Rohár wrote: > > > On Wednesday 26 August 2020 11:57:01 Andre Heider wrote: > > > > Hi, > > > > > > > > On 26/08/2020 10:31, Pali Rohár wrote: > > > > > Hello! > > > > > > > > > > On Wednesday 26 August 2020 09:30:11 Andre Heider wrote: > > > > > > Pali, > > > > > > > > > > > > thank you for all these espressobin fixes, much appreciated! > > > > > > > > > > > > This isn't directly related to the patch I'm replying to, but since you seem > > > > > > to be syncing down- with upstream: > > > > > > > > > > > > Upstream u-boot doesn't detect my sata ssd ("SATA link 0 timeout"), nor is > > > > > > > > > > Could you try following Marvell SATA/AHCI patch? > > > > > https://github.com/MarvellEmbeddedProcessors/u-boot-marvell/commit/2c1571432e4fd298be0236b53511f415bbdd21ac > > > > > > > > will do that later and report my findings, thanks! > > That one didn't help unfortunately. u-boot still prints "SATA link 0 > timeout". Booting kernel 5.7.0-0.bpo.2-arm64 with that and sata works, but > booting 4.19.0-10-arm64 and it doesn't: "ata1: SATA link down (SStatus 131 > SControl 300)" is printed all over again. I found another patch which could maybe help: https://github.com/MarvellEmbeddedProcessors/u-boot-marvell/commit/6c6b2088f83b992d03e0d56f92c4dda7d44a7dc0 Or maybe with this patch: diff --git a/arch/arm/dts/armada-3720-espressobin.dts b/arch/arm/dts/armada-3720-espressobin.dts index 4534f5ff29..c5eea978f6 100644 --- a/arch/arm/dts/armada-3720-espressobin.dts +++ b/arch/arm/dts/armada-3720-espressobin.dts @@ -95,6 +95,7 @@ phy2 { phy-type = <PHY_TYPE_SATA0>; phy-speed = <PHY_SPEED_5G>; + phy-invert = <COMPHY_POLARITY_NO_INVERT>; }; };
On 28/08/2020 14:39, Pali Rohár wrote: > On Wednesday 26 August 2020 15:22:37 Andre Heider wrote: >> Hi, >> >> On 26/08/2020 13:40, Pali Rohár wrote: >>> On Wednesday 26 August 2020 12:51:18 Pali Rohár wrote: >>>> On Wednesday 26 August 2020 11:57:01 Andre Heider wrote: >>>>> Hi, >>>>> >>>>> On 26/08/2020 10:31, Pali Rohár wrote: >>>>>> Hello! >>>>>> >>>>>> On Wednesday 26 August 2020 09:30:11 Andre Heider wrote: >>>>>>> Pali, >>>>>>> >>>>>>> thank you for all these espressobin fixes, much appreciated! >>>>>>> >>>>>>> This isn't directly related to the patch I'm replying to, but since you seem >>>>>>> to be syncing down- with upstream: >>>>>>> >>>>>>> Upstream u-boot doesn't detect my sata ssd ("SATA link 0 timeout"), nor is >>>>>> >>>>>> Could you try following Marvell SATA/AHCI patch? >>>>>> https://github.com/MarvellEmbeddedProcessors/u-boot-marvell/commit/2c1571432e4fd298be0236b53511f415bbdd21ac >>>>> >>>>> will do that later and report my findings, thanks! >> >> That one didn't help unfortunately. u-boot still prints "SATA link 0 >> timeout". Booting kernel 5.7.0-0.bpo.2-arm64 with that and sata works, but >> booting 4.19.0-10-arm64 and it doesn't: "ata1: SATA link down (SStatus 131 >> SControl 300)" is printed all over again. > > I found another patch which could maybe help: > https://github.com/MarvellEmbeddedProcessors/u-boot-marvell/commit/6c6b2088f83b992d03e0d56f92c4dda7d44a7dc0 I think we have a winner: U-Boot 2020.10-rc3-00020-gbcf6779d94 (Aug 28 2020 - 16:23:44 +0200) DRAM: 1 GiB Comphy-0: USB3_HOST0 5 Gbps Comphy-1: PEX0 2.5 Gbps Comphy-2: SATA0 5 Gbps Target spinup took 0 ms. AHCI 0001.0300 32 slots 1 ports 6 Gbps 0x1 impl SATA mode flags: ncq led only pmp fbss pio slum part sxs PCIE-0: Link up MMC: sdhci@d0000: 0 Loading Environment from SPIFlash... SF: Detected w25q32dw with page size 256 Bytes, erase size 4 KiB, total 4 MiB OK Model: Marvell Armada 3720 Community Board ESPRESSOBin Net: eth0: neta@30000 Hit any key to stop autoboot: 0 => scsi scan scanning bus for devices... Device 0: (0:0) Vendor: ATA Prod.: Crucial_CT250MX2 Rev: MU05 Type: Hard Disk Capacity: 238475.1 MB = 232.8 GB (488397168 x 512) :) Nice, thanks! Will send the patch soon, Andre
On Friday 28 August 2020 16:35:22 Andre Heider wrote: > On 28/08/2020 14:39, Pali Rohár wrote: > > On Wednesday 26 August 2020 15:22:37 Andre Heider wrote: > > > Hi, > > > > > > On 26/08/2020 13:40, Pali Rohár wrote: > > > > On Wednesday 26 August 2020 12:51:18 Pali Rohár wrote: > > > > > On Wednesday 26 August 2020 11:57:01 Andre Heider wrote: > > > > > > Hi, > > > > > > > > > > > > On 26/08/2020 10:31, Pali Rohár wrote: > > > > > > > Hello! > > > > > > > > > > > > > > On Wednesday 26 August 2020 09:30:11 Andre Heider wrote: > > > > > > > > Pali, > > > > > > > > > > > > > > > > thank you for all these espressobin fixes, much appreciated! > > > > > > > > > > > > > > > > This isn't directly related to the patch I'm replying to, but since you seem > > > > > > > > to be syncing down- with upstream: > > > > > > > > > > > > > > > > Upstream u-boot doesn't detect my sata ssd ("SATA link 0 timeout"), nor is > > > > > > > > > > > > > > Could you try following Marvell SATA/AHCI patch? > > > > > > > https://github.com/MarvellEmbeddedProcessors/u-boot-marvell/commit/2c1571432e4fd298be0236b53511f415bbdd21ac > > > > > > > > > > > > will do that later and report my findings, thanks! > > > > > > That one didn't help unfortunately. u-boot still prints "SATA link 0 > > > timeout". Booting kernel 5.7.0-0.bpo.2-arm64 with that and sata works, but > > > booting 4.19.0-10-arm64 and it doesn't: "ata1: SATA link down (SStatus 131 > > > SControl 300)" is printed all over again. > > > > I found another patch which could maybe help: > > https://github.com/MarvellEmbeddedProcessors/u-boot-marvell/commit/6c6b2088f83b992d03e0d56f92c4dda7d44a7dc0 > > I think we have a winner: > > U-Boot 2020.10-rc3-00020-gbcf6779d94 (Aug 28 2020 - 16:23:44 +0200) > > DRAM: 1 GiB > Comphy-0: USB3_HOST0 5 Gbps > Comphy-1: PEX0 2.5 Gbps > Comphy-2: SATA0 5 Gbps > Target spinup took 0 ms. > AHCI 0001.0300 32 slots 1 ports 6 Gbps 0x1 impl SATA mode > flags: ncq led only pmp fbss pio slum part sxs > PCIE-0: Link up > MMC: sdhci@d0000: 0 > Loading Environment from SPIFlash... SF: Detected w25q32dw with page size > 256 Bytes, erase size 4 KiB, total 4 MiB > OK > Model: Marvell Armada 3720 Community Board ESPRESSOBin > Net: eth0: neta@30000 > Hit any key to stop autoboot: 0 > => scsi scan > scanning bus for devices... > Device 0: (0:0) Vendor: ATA Prod.: Crucial_CT250MX2 Rev: MU05 > Type: Hard Disk > Capacity: 238475.1 MB = 232.8 GB (488397168 x 512) > > :) > > Nice, thanks! Will send the patch soon, > Andre Excellent!
diff --git a/include/configs/mvebu_armada-37xx.h b/include/configs/mvebu_armada-37xx.h index ca662b0ce7..ac0998a2d4 100644 --- a/include/configs/mvebu_armada-37xx.h +++ b/include/configs/mvebu_armada-37xx.h @@ -91,10 +91,10 @@ #include <config_distro_bootcmd.h> #define CONFIG_EXTRA_ENV_SETTINGS \ - "scriptaddr=0x4d00000\0" \ - "pxefile_addr_r=0x4e00000\0" \ - "fdt_addr_r=0x4f00000\0" \ - "kernel_addr_r=0x5000000\0" \ + "scriptaddr=0x6d00000\0" \ + "pxefile_addr_r=0x6e00000\0" \ + "fdt_addr_r=0x6f00000\0" \ + "kernel_addr_r=0x7000000\0" \ "ramdisk_addr_r=0x8000000\0" \ BOOTENV
According to Marvell's U-Boot description [1] current env load addresses overlaps with ATF RT services region and TEE. Because the ATF RT service and TEE region is going to be marked as secure and can't be overwritten, use different different addresses for envs. [1] - https://github.com/MarvellEmbeddedProcessors/u-boot-marvell/commit/0a5b159806baa0746b6449920e450498bc269ba7 Signed-off-by: Pali Rohár <pali@kernel.org> --- include/configs/mvebu_armada-37xx.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)