just tried a fresh sd card install with console ui, just works, so not easily reproducible or fixed with 6.6. Well, I usually do a fresh install on every new kernel I try. Do we have different board versions? Well, the clara 2e is really named different. Mine is marked as 37NB-E60K00+4A4. Do you have the ability to look at the serial console?
@akemnade Thanks for having a look!
Its definitely a Clara HD, but I'll check the board label in the morning for you.
I can probably get the serial console hooked up?
I can definitely solder the pins, and I think I have an arduino uno somewhere that I can use as an adapter.
Might just take me a little while to get around to it.
Can you extract the devicetree with
extract-kobohidden clara-sdcard-image.dtb 1286 dtb-orig.dtb ?
I found in the clara2e vendor sources arch/arm/boot/dts/imx6sll-e60k02b00.dts
which might be your device. Also a photo of the board might be interesting and
chip numbers on the photo.
I am preparing a MR for cleanup/updating u-boot. That should be a starting point
for further pmOS development. Then IMHO we should check whether auto-detection of model
is possible.
looking at the chips, I guess they differ in the bootup default configuration of the regulators,
probably different OTP version, so we can detect powerup defaults in u-boot and choose devicetree
accordingly.
so next step:
lets boot the near-mainline u-boot proposed in
!4550 (merged) and dump the registers of the pmic. That does not touch the pmic, so it should be safe.
Boot that one without sd-card, remove it, just boot via usb: uuu u-boot-dtb.imx
and break into u-boot commandline. You need serial console for that.
One question, would there be any issues with me building u-boot with musl instead of gnu tools?
I'm currently running alpine on my system and setting up C/C++ toolchains is not my strong suite
[82706.894248] usb 1-1: USB disconnect, device number 2[82707.188834] usb 1-1: new high-speed USB device number 3 using ehci-platform[82707.349699] usb 1-1: New USB device found, idVendor=18d1, idProduct=0d02, bcdDevice= 2.21[82707.357933] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0[82707.365116] usb 1-1: Product: USB download gadget[82707.369844] usb 1-1: Manufacturer: U-Boot
That are the voltage settings for the main dcdc regulators:
value *12500µV + 600000µV = Voltage setting, 0xd8 = 3.3V, 0x60 = 1.8V, 0x30 = 1.2V, 0x20 = 1V, 0x28 = 1.1V
ok, here is https://github.com/akemnade/u-boot-fslc branch kobo-2023-10
compiles the same way.
It has a detect_clara_rev command
which should set $fdt_file
can you give it a try?
Sorry for the delay on this, looks like it works beautifully
=> detect_clara_revDCDC1 at 1100 mVDCDC2 at 1000 mVDCDC3 at 3300 mVDCDC4 at 1800 mVDCDC5 at 1100 mVrev B detected=> printarch=armbaudrate=115200board=mx6sllclarahdboard_name=mx6sllclarahdboot_a_script=load ${devtype} ${devnum}:${distro_bootpart} ${scriptaddr} ${prefix}${script}; source ${scriptaddr}boot_efi_binary=load ${devtype} ${devnum}:${distro_bootpart} ${kernel_addr_r} efi/boot/bootarm.efi; if fdt addr -q ${fdt_addr_r}; then bootefi ${kernel_addr_r} ${fdt_addr_r};else bootefi ${kernel_addr_r} ${fdtcontroladdr};fiboot_efi_bootmgr=if fdt addr -q ${fdt_addr_r}; then bootefi bootmgr ${fdt_addr_r};else bootefi bootmgr;fiboot_extlinux=sysboot ${devtype} ${devnum}:${distro_bootpart} any ${scriptaddr} ${prefix}${boot_syslinux_conf}boot_prefixes=/ /boot/boot_script_dhcp=boot.scr.uimgboot_scripts=boot.scr.uimg boot.scrboot_syslinux_conf=extlinux/extlinux.confboot_targets=mmc0 mmc1 bootcmd=fastboot 0bootcmd_mmc0=devnum=0; run mmc_bootbootcmd_mmc1=devnum=1; run mmc_bootbootdelay=2console=ttymxc0cpu=armv7distro_bootcmd=for target in ${boot_targets}; do run bootcmd_${target}; doneefi_dtb_prefixes=/ /dtb/ /dtb/current/fdt_addr_r=0x83000000fdt_file=imx6sll-kobo-clarahd-b.dtbfdtcontroladdr=9fb8cc90initrd_high=0xffffffffkernel_addr_r=0x82000000load_efi_dtb=load ${devtype} ${devnum}:${distro_bootpart} ${fdt_addr_r} ${prefix}${efi_fdtfile}loadaddr=0x82000000mmc_boot=if mmc dev ${devnum}; then devtype=mmc; run scan_dev_for_boot_part; firamdisk_addr_r=0x83100000scan_dev_for_boot=echo Scanning ${devtype} ${devnum}:${distro_bootpart}...; for prefix in ${boot_prefixes}; do run scan_dev_for_extlinux; run scan_dev_for_scripts; done;run scan_dev_for_efi;scan_dev_for_boot_part=part list ${devtype} ${devnum} -bootable devplist; env exists devplist || setenv devplist 1; for distro_bootpart in ${devplist}; do if fstype ${devtype} ${devnum}:${distro_bootpart} bootfstype; then part uuid ${devtype} ${devnum}:${distro_bootpart} distro_bootpart_uuid ; run scan_dev_for_boot; fi; done; setenv devplistscan_dev_for_efi=setenv efi_fdtfile ${fdtfile}; if test -z "${fdtfile}" -a -n "${soc}"; then setenv efi_fdtfile ${soc}-${board}${boardver}.dtb; fi; for prefix in ${efi_dtb_prefixes}; do if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${efi_fdtfile}; then run load_efi_dtb; fi;done;run boot_efi_bootmgr;if test -e ${devtype} ${devnum}:${distro_bootpart} efi/boot/bootarm.efi; then echo Found EFI removable media binary efi/boot/bootarm.efi; run boot_efi_binary; echo EFI LOAD FAILED: continuing...; fi; setenv efi_fdtfilescan_dev_for_extlinux=if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${boot_syslinux_conf}; then echo Found ${prefix}${boot_syslinux_conf}; run boot_extlinux; echo EXTLINUX FAILED: continuing...; fiscan_dev_for_scripts=for script in ${boot_scripts}; do if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${script}; then echo Found U-Boot script ${prefix}${script}; run boot_a_script; echo SCRIPT FAILED: continuing...; fi; donescriptaddr=0x87000000soc=mx6stderr=serial@2020000stdin=serial@2020000stdout=serial@2020000vendor=kobo Environment size: 3006/8188 bytes=>
Actually, @akemnade I've just come across one issue but I'm not sure if its related.
But my Claras CPU is locked to the lowest frequency, and when I check dmesg there's hundreds of this log:
[83791.375121] DCDC2: unsupportable voltage range: 1175000-1000000uV[83791.375207] DCDC2: unsupportable voltage range: 1175000-1000000uV[83791.375257] cpu cpu0: failed to scale vddsoc up: -22[83791.375298] cpufreq: __target_index: Failed to change cpu frequency: -22