dev-null Posted March 16 Posted March 16 (edited) Just a warning for everyone, the new kernel update (6.18.xx I think?) absolutely wrecks the system (atleast it does on Ubuntu Noble). It doesn't boot at all anymore I needed to recover an old kernel from an old backup I had and overwrite the current kernel from rescue mode/petitboot. Kernel 6.12.xx seems to work fine(ish) Just a heads up because I don't know enough to pinpoint the exact cause. p.s. for me the kernel means the files in /boot not sure if I used proper terminology Edited March 16 by dev-null 0 Quote
dev-null Posted March 16 Author Posted March 16 (edited) @Werner Which logs would be usefull? I have a full image from the broken state. Kern.log is empty (0 bytes) syslog only has log from the last shutdown and ends there dmesg is from last startup before the system broke Edited March 16 by dev-null 0 Quote
dev-null Posted March 16 Author Posted March 16 I don't have a device for that. Which one would you recommend getting? I might try it out later when I get time (not soon so if anyone else is able to post logs?) 0 Quote
Werner Posted March 16 Posted March 16 FT232R, CH340 or CP2104 are known to work nicely. Search for any usb uart adapter built around one of these. Don't get CP2102 because if you ever get a rockchip board it would be useless. 1 Quote
Werner Posted March 16 Posted March 16 My n2 works fine btw. https://paste.armbian.com/cocivagayi 0 Quote
dev-null Posted 18 hours ago Author Posted 18 hours ago (edited) Finally got an UART device for logs U-Boot 2015.01 (Sep 01 2020 - 18:41:51) DRAM: 3.5 GiB Relocation Offset is: d6eeb000 spi_post_bind(spifc): req_seq = 0 register usb cfg[0][1] = 00000000d7f83da8 MMC: aml_priv->desc_buf = 0x00000000d3edb7c0 aml_priv->desc_buf = 0x00000000d3eddb00 SDIO Port C: 0, SDIO Port B: 1 co-phase 0x3, tx-dly 0, clock 400000 co-phase 0x3, tx-dly 0, clock 400000 co-phase 0x3, tx-dly 0, clock 400000 emmc/sd response timeout, cmd8, status=0x1ff2800 emmc/sd response timeout, cmd55, status=0x1ff2800 co-phase 0x3, tx-dly 0, clock 400000 co-phase 0x1, tx-dly 0, clock 40000000 aml_sd_retry_refix[983]:delay = 0x0,gadjust =0x12000 [mmc_startup] mmc refix success [mmc_init] mmc init success In: serial Out: serial Err: serial vpu: error: vpu: check dts: FDT_ERR_BADMAGIC, load default parameters vpu: driver version: v20190313 vpu: detect chip type: 9 vpu: clk_level default: 7(666667000Hz), max: 7(666667000Hz) vpu: clk_level = 7 vpu: vpu_power_on vpu: set_vpu_clk vpu: set clk: 666667000Hz, readback: 666666667Hz(0x100) vpu: set_vpu_clk finish vpu: vpu_module_init_config vpp: vpp_init vpp: g12a/b osd1 matrix rgb2yuv .............. vpp: g12a/b osd2 matrix rgb2yuv.............. vpp: g12a/b osd3 matrix rgb2yuv.............. cvbs: cpuid:0x29 cvbs_config_hdmipll_g12a cvbs_set_vid2_clk ** File not found boot-logo.bmp.gz ** ** File not found boot-logo.bmp ** movi: not registered partition name, logo movi - Read/write command from/to SD/MMC for ODROID board Usage: movi <read|write> <partition|sector> <offset> <address> [<length>] - <read|write> the command to access the storage - <offset> the offset from the start of given partiton in lba - <address> the memory address to load/store from/to the storage device - [<length>] the size of the block to read/write in bytes - all parameters must be hexa-decimal only [OSD]check dts: FDT_ERR_BADMAGIC, load default fb_addr parameters [OSD]set initrd_high: 0x3d800000 [OSD]fb_addr for logo: 0x3d800000 [OSD]check dts: FDT_ERR_BADMAGIC, load default fb_addr parameters [OSD]fb_addr for logo: 0x3d800000 [OSD]VPP_OFIFO_SIZE:0xfff01fff [CANVAS]canvas init [CANVAS]addr=0x3d800000 width=5760, height=2160 cvbs: outputmode[1080p60hz] is invalid vpp: vpp_matrix_update: 2 set hdmitx VIC = 16 config HPLL = 5940000 frac_rate = 1 HPLL: 0x3b3a04f7 HPLL: 0x1b3a04f7 HPLLv1: 0xdb3a04f7 config HPLL done j = 6 vid_clk_div = 1 hdmitx phy setting done hdmitx: set enc for VIC: 16 enc_vpu_bridge_reset[1319] rx version is 1.4 or below div=10 Net: dwmac.ff3f0000 Hit Enter or space or Ctrl+C key to stop autoboot -- : 0 ## Attempting fetch boot.ini in mmc:0... ** File not found boot.ini ** ## Executing script at 04000000 Wrong image format for "source" command ## Attempting fetch boot.scr in mmc:0... ** File not found boot.scr ** ## Executing script at 04000000 Wrong image format for "source" command ## Attempting fetch /boot/boot.ini in mmc:0... 5578 bytes read in 5 ms (1.1 MiB/s) ## Executing script at 04000000 0 bytes read in 3 ms (0 Bytes/s) Found mainline kernel configuration HDMI cable is NOT connected 178 bytes read in 5 ms (34.2 KiB/s) ** File not found uImage ** 42404352 bytes read in 1187 ms (34.1 MiB/s) ** File not found dtb/amlogic/meson-g12b-odroid-n2-plus.dtb ** 83033 bytes read in 29 ms (2.7 MiB/s) ** File not found uInitrd ** 22881405 bytes read in 642 ms (34 MiB/s) ee_gate_off ... Wrong Image Format for bootm command ERROR: can't get kernel image! [rsvmem] get fdtaddr NULL! rsvmem - reserve memory Usage: rsvmem check - check reserved memory rsvmem dump - dump reserved memory rsvmem check failed ee_gate_on ... ## Attempting fetch /boot/boot.scr in mmc:0... 8133 bytes read in 3 ms (2.6 MiB/s) ## Executing script at 04000000 U-boot default fdtfile: meson-g12b-odroid-n2-plus.dtb Current variant: n2_plus For variant n2_plus, set default fdtfile: amlogic/meson-g12b-odroid-n2-plus.dtb Unknown command 'part' - try 'help' Current fdtfile after armbianEnv: amlogic/meson-g12b-odroid-n2-plus.dtb Mainline bootargs: root=/dev/mmcblk1p1 rootwait rootfstype=ext4 splash=verbose console=ttyAML0,115200 console=tty1 consoleblank=0 coherent_pool=2M loglevel=1 ubootpart= libata.force=noncq usb-storage.quirks=0x2537:0x1066:u,0x2537:0x1068:u cgroup_enable=memory ** File not found uInitrd ** ** File not found Image ** ** File not found dtb/amlogic/meson-g12b-odroid-n2-plus.dtb ** libfdt fdt_check_header(): FDT_ERR_BADMAGIC No FDT memory address configured. Please configure the FDT address via "fdt addr <address>" command. Aborting! ** File not found dtb/amlogic/overlay/-.dtbo ** ** File not found dtb/amlogic/overlay/-fixup.scr ** [rsvmem] get fdtaddr NULL! rsvmem - reserve memory Usage: rsvmem check - check reserved memory rsvmem dump - dump reserved memory rsvmem check failed Bad Linux ARM64 Image magic! ## Attempting fetch boot.ini in mmc:1... card out ** Bad device mmc 1 ** ## Executing script at 04000000 U-boot default fdtfile: amlogic/meson-g12b-odroid-n2-plus.dtb Current variant: n2_plus For variant n2_plus, set default fdtfile: amlogic/meson-g12b-odroid-n2-plus.dtb card out ** Bad device mmc 1 ** Unknown command 'part' - try 'help' Current fdtfile after armbianEnv: amlogic/meson-g12b-odroid-n2-plus.dtb card out ** Bad device mmc 1 ** Mainline bootargs: root=/dev/mmcblk1p1 rootwait rootfstype=ext4 splash=verbose console=ttyAML0,115200 console=tty1 consoleblank=0 coherent_pool=2M loglevel=1 ubootpart= libata.force=noncq usb-storage.quirks=0x2537:0x1066:u,0x2537:0x1068:u cgroup_enable=memory card out ** Bad device mmc 1 ** card out ** Bad device mmc 1 ** card out ** Bad device mmc 1 ** libfdt fdt_check_header(): FDT_ERR_BADMAGIC No FDT memory address configured. Please configure the FDT address via "fdt addr <address>" command. Aborting! card out ** Bad device mmc 1 ** card out ** Bad device mmc 1 ** card out ** Bad device mmc 1 ** [rsvmem] get fdtaddr NULL! rsvmem - reserve memory Usage: rsvmem check - check reserved memory rsvmem dump - dump reserved memory rsvmem check failed Bad Linux ARM64 Image magic! After this it loops it for all mmc/usb devices and breaks. I need to manually copy old kernel files to /boot to get it to work again (through petitboot) Anything after 6.12.58 seems to break for me. Thoughts? Edited 18 hours ago by dev-null 0 Quote
Werner Posted 11 hours ago Posted 11 hours ago Quote U-Boot 2015.01 Where did you get this uboot? I strongly believe this is not from Armbian, hence support is impossible. 0 Quote
eselarm Posted 8 hours ago Posted 8 hours ago 9 hours ago, dev-null said: work again (through petitboot) This is from Hardkernel, I don't have an Amlogic SBC, but I once saw petitboot is sort of boot-selection and/or OS installer (menu driven) thing. Same as for Rockchips where old RK35xx mostly 2017.09 based U-Boot does not work with newer mainline based kernel, you can expect the same here. So wherever that U-Boot is stored (SPI-flash, eMMC), you need to make sure it is not used, so wipe it or bypass it or overwrite it with the U-Boot binary that comes with the Armbian image you try to boot. In your currently running system, so with old kernel but new userspace, you should be able to use armban-config to flash the current and kernel 6.18 matching U-Boot to the specific storage where petitboot is now stored. But means overwriting, I would first save it, done that for some other ARM boards (also smartphones) at least as you never know if you might need the exact old/vendor firmware/bootloader for fixing some problem many years from now. So make sure you know the right sector numbers for that Amlogic SoC where it look for bootloader at power on. Can be found in docs (Hardkernel) or see /usr/lib/u-boot/platform_install.sh 0 Quote
dev-null Posted 4 hours ago Author Posted 4 hours ago @Werner I only installed Armbian (written image through BalenaEtcher to emmc card) I reflashed Petitboot on SPIFlash a few weeks ago since I broke it while testing but the kernel update was broken months before that. Don't think they affect each other. I boot PetitBoot through the physical switch on the board itself (So SPIFlash) so it should have it own separate U-Boot. @eselarm I think on my board you can physically switch if SPI-flash or eMMC is used. If I set the switch the eMMC it should take the bootloader on the eMMC? https://wiki.odroid.com/odroid-n2/software/boot_sequence It feels more like the boot format changed from 6.12.xx to 6.18.xx? If I look at my installed packages I do have the latest available u-boot btw linux-u-boot-odroidn2-current: Installed: 26.5.1 Candidate: 26.5.1 0 Quote
eselarm Posted 3 hours ago Posted 3 hours ago 38 minutes ago, dev-null said: I think on my board you can physically switch if SPI-flash or eMMC is used. If I set the switch the eMMC it should take the bootloader on the eMMC? On my version of the ROCK3A, I need to put a jumper across 2 pins so that the clock of the SPI chip is grounded/disabled. So the SoC has to read the bootloader from SD-card (I have no eMMC module). It is very clear that that works as intended and my only way to temporarily switch between old legacy U-Boot in SPI and some latest/newer mainline based. Anyway, as Werner says, that old dated 2015 U-boot is certainly not Armbian, so unsupported by Armbian and you need to figure out yourself. Also the word 'feels' makes no sense; you need to be sure and show proof, else no-one is gonna do anything for you anymore. Armbian specific Amlogic kernel, as installed on images, also runs directly in a ARM64 KVM if loaded by the generic QEMU u-boot.bin you find on standard Debian systems. It just needs a proper set of commandline args of qemu-system-aarch64. I have done that several times for people having trouble with images (Amlogic, Allwinner) although I have none of these 2 64-bit SoC's, only Broadcom and Rockchip. 1 hour ago, dev-null said: If I look at my installed packages I do have the latest available u-boot btw Yes sure, but the binary u-boot.bin or so is not written automatically to your hardware, it only is in the image (as package you show) and in the first sectors of the image. So not used if SPI-flash have another bootloader and if that has higher prio at power-on and has no chainloading mechanism (for loading the one from the image in eMMC or SD-card). 0 Quote
Werner Posted 1 hour ago Posted 1 hour ago 2 hours ago, dev-null said: Petitboot This may be an issue. I know from the past Armbian and petitboot don't work well together. You need to wipe your spi to get rid of it. Then everything should work just fine. 2 hours ago, dev-null said: linux-u-boot-odroidn2-current: Installed: 26.5.1 Candidate: 26.5.1 Having this package installed means nothing about the actual used boot loader. This package only provides the binaries to rewrite the boot loader if actually necessary. It is updated with package install/upgrade because doing so is rarely necessary. armbian-install can update the boot loader and will use the binaries from the package. 0 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.