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

Reply via email to