verdin-imx8mp: Ethernet does not load at boot
Hi, On a verdin-imx8mp platform I am now unable to use the ethernet ports. My last build was from December (8f5043ee6d378d7c10d947cf48b047a5954ef5b3) so it was working fine then. Boot log: ``` U-Boot SPL 2024.04-rc2-2-gbef352dd57-dirty (Feb 16 2024 - 10:07:17 +0530) Training FAILED DDR configured as single rank SEC0: RNG instantiated Normal Boot WDT: Started watchdog@3028 with servicing every 1000ms (60s timeout) Trying to boot from BOOTROM Boot Stage: Primary boot Find img info 0x4802ae00, size 1044 Need continue download 1024 NOTICE: Do not release JR0 to NS as it can be used by HAB NOTICE: BL31: v2.10.0 (release):v2.10.0-44-g2e1e1664c NOTICE: BL31: Built : 13:09:20, Dec 1 2023 U-Boot 2024.04-rc2-2-gbef352dd57-dirty (Feb 16 2024 - 10:07:17 +0530) CPU: Freescale i.MX8MP[8] rev1.1 1600 MHz (running at 1200 MHz) CPU: Industrial temperature grade (-40C to 105C) at 36C Reset cause: POR DRAM: 4 GiB Core: 171 devices, 28 uclasses, devicetree: separate WDT: Started watchdog@3028 with servicing every 1000ms (60s timeout) MMC: FSL_SDHC: 1, FSL_SDHC: 2 Loading Environment from MMC... *** Warning - bad CRC, using default environment In:serial@3088 Out: serial@3088 Err: serial@3088 Model: Toradex Verdin iMX8M Plus WB on Verdin Development Board SEC0: RNG instantiated Setting variant to nonwifi Net: Error: ethernet@30bf No valid MAC address found. Can't find FEC0 clk rate: -22 Error: ethernet@30bf No valid MAC address found. Read MDIO failed... Read MDIO failed... Read MDIO failed... Read MDIO failed... Read MDIO failed... Read MDIO failed... Could not get PHY for mdio: addr 7 Read MDIO failed... Read MDIO failed... Read MDIO failed... Read MDIO failed... Read MDIO failed... Read MDIO failed... Could not get PHY for FEC1: addr 7 Error: ethernet@30bf No valid MAC address found. Can't find FEC0 clk rate: -22 Error: ethernet@30bf No valid MAC address found. Read MDIO failed... Read MDIO failed... Read MDIO failed... Read MDIO failed... Read MDIO failed... Read MDIO failed... Could not get PHY for mdio: addr 7 Read MDIO failed... Read MDIO failed... Read MDIO failed... Read MDIO failed... Read MDIO failed... Read MDIO failed... Could not get PHY for FEC1: addr 7 Error: ethernet@30bf No valid MAC address found. Error: ethernet@30bf No valid MAC address found. No ethernet found. Hit any key to stop autoboot: 0 ```
LTO build failure with GCC 13.2.1
Hi all, Since commit f8cebb4f789c9950caf55a0b73e88049e7a1c3a3 enabled LTO by default for imx8m platforms, I have been having issues building u-boot. I am primarily working on imx8mp instead of imx8mm platforms so the bug resolved by that commit doesn't affect me yet. But I guess it's a generic issue with u-boot's LTO requirements and GCC 13. Build log: ``` LTO u-boot /usr/bin/aarch64-linux-gnu-ld: /usr/lib/gcc/aarch64-linux-gnu/13/libgcc.a(lse-init.o): in function `init_have_lse_atomics': /builddir/build/BUILD/gcc-13.2.1-20230728/aarch64-linux-gnu/aarch64-linux-gnu/libgcc/../../../gcc-13.2.1-20230728/libgcc/config/aarch64/lse-init.c:46: undefined reference to `__getauxval' collect2: fatal error: ld terminated with signal 11 [Segmentation fault], core dumped compilation terminated. make: *** [Makefile:1766: u-boot] Error 1 make: *** Deleting file 'u-boot' ``` GCC Version: ``` $ aarch64-linux-gnu-gcc -v Using built-in specs. COLLECT_GCC=/usr/bin/aarch64-linux-gnu-gcc COLLECT_LTO_WRAPPER=/usr/libexec/gcc/aarch64-linux-gnu/13/lto-wrapper Target: aarch64-linux-gnu Configured with: ../gcc-13.2.1-20230728/configure --bindir=/usr/bin --build=x86_64-redhat-linux-gnu --datadir=/usr/share --disable- decimal-float --disable-dependency-tracking --disable-gold --disable-libgcj --disable-libgomp --disable-libmpx --disable-libquadmat h --disable-libssp --disable-libunwind-exceptions --disable-shared --disable-silent-rules --disable-sjlj-exceptions --disable-threa ds --with-ld=/usr/bin/aarch64-linux-gnu-ld --enable-__cxa_atexit --enable-checking=release --enable-gnu-unique-object --enable-init fini-array --enable-languages=c,c++ --enable-linker-build-id --enable-lto --enable-nls --enable-obsolete --enable-plugin --enable-t argets=all --exec-prefix=/usr --host=x86_64-redhat-linux-gnu --includedir=/usr/include --infodir=/usr/share/info --libexecdir=/usr/ libexec --localstatedir=/var --mandir=/usr/share/man --prefix=/usr --program-prefix=aarch64-linux-gnu- --sbindir=/usr/sbin --shared statedir=/var/lib --sysconfdir=/etc --target=aarch64-linux-gnu --with-bugurl=http://bugzilla.redhat.com/bugzilla/ --with-gcc-major- version-only --with-isl --with-newlib --with-plugin-ld=/usr/bin/aarch64-linux-gnu-ld --with-sysroot=/usr/aarch64-linux-gnu/sys-root --with-system-libunwind --with-system-zlib --without-headers --enable-gnu-indirect-function --with-linker-hash-style=gnu Thread model: single Supported LTO compression algorithms: zlib zstd gcc version 13.2.1 20230728 (Red Hat Cross 13.2.1-1) (GCC) ``` Thanks, Sahaj Sarup
Re: imx8mp: issues getting dtb with pcie enabled to boot
Hi Simon, On Sat, Jul 8, 2023, 06:36 Simon Glass wrote: > Hi, > > On Fri, 7 Jul 2023 at 14:34, Fabio Estevam wrote: > > > > Adding Marcel and Francesco. > > > > On Fri, Jul 7, 2023 at 5:30 PM Sahaj Sarup > wrote: > > > > > > Hi, > > > I am working on the imxmp-verdin platform. One of the quirks with > > > this particular som is that it uses an internal pcie_phy clock instead > of > > > an external one like most imx8mp boards do. > > > To get this working on mainline linux, the way clocks are defined for > the > > > pcie_phy is > > > `clocks = <_blk_ctrl>;` > > > However this causes u-boot to completely fail to boot with this > > > error `Device tree error at node '__symbols__'` . > > That looks like a strange error was found when trying to read the > compatible string from the node. It wasn't -FDT_ERR_NOTFOUND. See > lists_bind_fdt(). > > Perhaps we need to ignore the __symbols__ node? > For now the fix seems to be `clocks = <_blk_ctrl 0>;` This let's uboot proceed and pcie is working under linux as well. > > > > > > My end goal is to boot a generic arm image over pcie nvme, I don't > know if > > > this would be possible but atleast a compatible device tree would be a > good > > > starting point. > > > > > > Thanks. > > Regards, > Simon >
Re: imx8mp: issues getting dtb with pcie enabled to boot
On Sat, 8 Jul 2023 at 02:04, Fabio Estevam wrote: > Adding Marcel and Francesco. > > On Fri, Jul 7, 2023 at 5:30 PM Sahaj Sarup wrote: > > > > Hi, > > I am working on the imxmp-verdin platform. One of the quirks with > > this particular som is that it uses an internal pcie_phy clock instead of > > an external one like most imx8mp boards do. > > To get this working on mainline linux, the way clocks are defined for the > > pcie_phy is > > `clocks = <_blk_ctrl>;` > > However this causes u-boot to completely fail to boot with this > > error `Device tree error at node '__symbols__'` . > For now the fix seems to be `clocks = <_blk_ctrl 0>;` this gets pcie working under linux but not under u-boot, i'm guessing pcie for imx8 is not yet implemented? > > My end goal is to boot a generic arm image over pcie nvme, I don't know if > > this would be possible but atleast a compatible device tree would be a > good > > starting point. > > > > Thanks. > -- Best Regards Sahaj Sarup
imx8mp: issues getting dtb with pcie enabled to boot
Hi, I am working on the imxmp-verdin platform. One of the quirks with this particular som is that it uses an internal pcie_phy clock instead of an external one like most imx8mp boards do. To get this working on mainline linux, the way clocks are defined for the pcie_phy is `clocks = <_blk_ctrl>;` However this causes u-boot to completely fail to boot with this error `Device tree error at node '__symbols__'` . My end goal is to boot a generic arm image over pcie nvme, I don't know if this would be possible but atleast a compatible device tree would be a good starting point. Thanks.
Re: [U-Boot] flashing and testing u-boot on chromebook_bob
Hi Simon, Been a couple of weeks. I have obtained a SuzyQable and its working well with bob. I can see RxTx from Cr50, AP and EC. On mainline linux from ArchLinuxArm I can see earlyprintk as well. However I am still stuck on the u-boot end. Just to make sure I didn't miss anything, I'm laying down all the steps that I followed to have u-boot chainloaded from depthcharge on bob. 1. Build U-boot - Build bl31 as in README.rockchip. export bl31.elf as BL31 env - change CONFIG_SYS_TEXT_BASE to 0x2100 - 0x2000 From https://chromium.googlesource.com/chromiumos/platform/depthcharge/+/refs/heads/master/board/bob/defconfig#11 - 0x100 padding for fit image. - make chromebook_bob_defconfig - make 2. Create Fit Image (some hints taken from https://wiki.debian.org/InstallingDebianOn/Asus/C101PA) - Using the following .its ``` /dts-v1/; / { description = "U-Boot + FDT THIS PADDING IS NEEDED SO THE IMAGE STARTS AT THE RIGHT OFFSET"; #address-cells = <1>; images { kernel@1 { description = "kernel"; data = /incbin/("../../u-boot.bin"); type = "kernel_noload"; os = "linux"; arch = "arm64"; compression = "none"; load = <0>; entry = <0>; }; fdt@1 { description = "rk3399-gru-bob.dtb"; data = /incbin/("../../arch/arm/dts/rk3399-gru-bob.dtb"); type = "flat_dt"; arch = "arm64"; compression = "none"; hash@1 { algo = "sha1"; }; }; }; configurations { default = "conf@1"; conf@1 { kernel = "kernel@1"; fdt = "fdt@1"; }; }; }; ``` - mkimage -D "-I dts -O dtb -p 2048" -f doc/chromium/chromebook_bob.its ./u-boot-chromium.fit - Made sure that the offset is 0x100 ``` [sahaj@fedora-work u-boot]$ hexdump u-boot.bin | head 000 000a 1400 201f d503 0100 2000 [sahaj@fedora-work u-boot]$ hexdump u-boot-chromium.fit | head -20 0e0 0300 0700 656b 6e72 0f0 6c65 0300 0b00 842c 1b00 100 000a 1400 201f d503 0100 2000 110 33f8 000a 33f8 000a 120 0a18 000c 003c 1400 76a0 1000 130 4241 d538 303f f100 00a0 5400 203f f100 [sahaj@fedora-work u-boot]$ ``` - Created bootloader offset: dd if=/dev/zero of=bootloader.bin bs=512 count=1 - Build image: vbutil_kernel --pack u-boot.kpart --version 1 --vmlinuz u-boot-chromium.fit --arch aarch64 --keyblock doc/chromium/devkeys/kernel.keyblock --signprivate doc/chromium/devkeys/kernel_data_key.vbprivk --config dummy.txt --bootloader bootloader.bin 3. Flash and boot: - SDCard kernel part: cgpt add -i 1 -t kernel -b 8192 -s 65536 -l Kernel -S 1 -T 5 -P 10 /dev/sda - sudo dd if=u-boot.kpart of=/dev/sdd1 - On the dev mode screen select ctrl+u - ttyUSB1 (AP COnsole) remains blank - power led is solid - keep power button pressed for 10 sec for poweroff On Fri, 22 Nov 2019 at 03:53, Simon Glass wrote: > > +U-Boot Mailing List > Please do copy the mailing list on each message. > > On Wed, 20 Nov 2019 at 17:16, Sahaj Sarup wrote: > > > > > > > > On Tue, Nov 19, 2019, 06:51 Simon Glass wrote: > >> > >> Hi Sahaj, > >> > >> On Mon, 18 Nov 2019 at 00:09, Sahaj Sarup wrote: > >> > > >> > see in-line... > >> > > >> > On Mon, 18 Nov 2019 at 11:16, Simon Glass wrote: > >> > > > >> > > Hi Sahaj, > >> > > > >> > > On Sun, 17 Nov 2019 at 21:33, Sahaj Sarup wrote: > >> > > > > >> > > > Hi All, > >> > > > > >> > > > I was wondering if you could answer a few questions regarding u-boot > >> > > > on Asus CP101 gru/bob ? > >> > > > > >> > > > - To test the u-boot image following README.chromium-chainload, > >> > > > should I expect output on the display or do I need > >> > > > CDD/SuzyQable Cable for serial? > >> > > > >> > > The display should work OK. I don't think that device supports CCD. > >> > > >> > Well since the display is blank and the uboot.bin and uboot.fit have > >> > a correct 0x100 offset, I'll need to wait for my CCD cable to arrive. > >> > Bob in fact supports ccd: > >> > https://www.chromium.org/chromium-os/developer-information-for-chrome-os-devices > >> > Although, i am confused as well since edp is supported, at least in > >> > the dts files. > >> > >> Then I suspect it is broken. > > > > > > Not broken, doesn't exist. The Edp driver is only for rk3288. I'm guessing > > they use the same ip, but soc specific stuff needs to be added for 3399. > > > > I was taking a look at rockchip's u-boot fork, looks like they are using > > drm for display now. > > OK I see, > > Regards, > Simon -- Best Regards Sahaj Sarup ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
[U-Boot] flashing and testing u-boot on chromebook_bob
Hi All, I was wondering if you could answer a few questions regarding u-boot on Asus CP101 gru/bob ? - To test the u-boot image following README.chromium-chainload, should I expect output on the display or do I need CDD/SuzyQable Cable for serial? - The CONFIG_SYS_TEXT_BASE is currently 0x0020 but shouldn't it be CONFIG_SYS_TEXT_BASE=0x2100 since its supposed to match CONFIG_KERNEL_START from /chromiumos/platform/depthcharge/board/gru/defconfig - In order to flash to spi, what's the procedure? -- Best Regards Sahaj Sarup ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot