Jump to content

Zibc

Members
  • Posts

    6
  • Joined

  • Last visited

  1. Happy to write that I've got it to work on the SSD! Thanks you for your help @umiddelb. This week-end I formatted the SSD and ran the nand-sata-installer. Then copied the boot folder as you mentioned. but the board would then not boot without the usb plugged into it ... after some time I found out that the u-boot wasn't able to read the boot folder from the SSD. So I made another attempt: made one first partition of 200Mb for the boot, and a second one for the rest of the system: literally the same as compulab's image. then copied the boot folder to the first partition, rebooted, and that worked! and the boot script I used that seems to be compatible with USB and SSD boot: # DO NOT EDIT THIS FILE # # Please edit /boot/armbianEnv.txt to set supported parameters # # default values setenv rootdev "/dev/mmcblk0p1" setenv verbosity "1" setenv console "display" setenv bootlogo "false" setenv rootfstype "ext4" setenv disp_mode "1920x1080m60" setenv earlycon "off" # additional values #setenv satadev 0:2 setenv satadev 0 setenv fdt_file "imx6q-utilite-pro.dtb" setenv load_addr "0x10800000" setenv ramdisk_addr "0x18000000" setenv fdt_addr "0x15000000" setenv bootstoragetype "none" setenv bootstorageprefix "none" echo "***** Trying usb boot *****" for devnum in 0 1 2 3 4 do if test "${bootstoragetype}" = "none" then echo "***** USB ${devnum} *****" if load usb ${devnum} ${load_addr} /boot/armbianEnv.txt then echo "***** Using usb ${devnum} *****" setenv bootstoragetype "usb" setenv bootstoragedev ${devnum} setenv bootstorageprefix "/boot" fi fi done if test "${bootstoragetype}" = "none" then if mmc rescan then echo "***** Trying SDCard boot *****" if load mmc 2 ${load_addr} /boot/armbianEnv.txt; then echo "***** Using sd card *****" setenv bootstoragetype "mmc"; setenv bootstoragedev 2; setenv bootstorageprefix "/boot" fi fi fi if test "${bootstoragetype}" = "none" then if sata init then echo "***** Trying SATA boot *****" if load sata 0 ${load_addr} /armbianEnv.txt then echo "***** Using SATA *****" setenv bootstoragetype "sata"; setenv bootstoragedev 0; setenv bootstorageprefix "" fi fi fi echo "***** Importing environment *****" env import -t ${load_addr} ${filesize}; if test "${console}" = "display" || test "${console}" = "both"; then setenv consoleargs "console=tty1"; fi if test "${console}" = "serial" || test "${console}" = "both"; then setenv consoleargs "${consoleargs} console=ttymxc3,115200 earlyprintk"; fi if test "${earlycon}" = "on"; then setenv consoleargs "earlycon ${consoleargs}"; fi if test "${bootlogo}" = "true"; then setenv consoleargs "bootsplash.bootfile=bootsplash.armbian ${consoleargs}"; fi setenv bootargs "root=${rootdev} rootfstype=${rootfstype} rootwait ${consoleargs} consoleblank=0 video=mxcfb0:dev=hdmi,${disp_mode},if=RGB24,bpp=32 coherent_pool=2M cma=128M rd.dm=0 rd.luks=0 rd.lvm=0 raid=noautodetect pci=nomsi vt.global_cursor_default=0 loglevel=${verbosity} usb-storage.quirks=${usbstoragequirks} ${extraargs}" load ${bootstoragetype} ${bootstoragedev} ${fdt_addr} ${bootstorageprefix}/dtb/${fdt_file} load ${bootstoragetype} ${bootstoragedev} ${ramdisk_addr} ${bootstorageprefix}/uInitrd load ${bootstoragetype} ${bootstoragedev} ${load_addr} ${bootstorageprefix}/zImage bootz ${load_addr} ${ramdisk_addr} ${fdt_addr} # Recompile with: # mkimage -C none -A arm -T script -d /boot/boot.cmd /boot/boot.scr Now I've got to get a few python scripts to run, and I'll call that a success! I'll try to also get the fw_printenv and fw_setenv utilities to run, but I have a feeling that the mtd dive is not read properly, so the system can't access it unfortunately. maybe you have a remedy for that ?
  2. Hi Uli, Impressive work I must say. I was not expecting you to rewrite the whole boot environment and boot script! I'll definitely give it a try when I have a chance to! I attempted a few things on my own: your suggestion to just use the cubox-i image worked for the most part of it. So I am able to boot the armbian image, but from usb only. I tried from the sd-card, but all I get is a black screen, like the u-boot would not work properly. It does not boot on the u-boot of the spi flash. and also, whatever I am doing, the serial port does not output anything. I am using a usb to serial adapter for this purpose, and read fro, ttyUSB0 of some name of that sort: it remains silent. so definitely not easy to understand what is going on! For that reason, I am also a bit relunctant at overwriting the original boot environment, because I am afraid I'll brick the board if something wrong happens ... Regarding your boot environment, I believe the device for mmc boot is device 2, not 0. at least that is what I have in my environment. From my side, I am facing interesting issues, now that I can boot the image: Once booted, I get greeted with "waiting for the setup to finish" (or something like this). It went into the first boot options once. Not really sure why. do you have any ideas about this ? At some point I'll have to transfer the image to the sata ssd. Now it is partitioned with a first fat partition with the uImage and zImage, and a second partition with the rest of the system. Do I need to re-format to ext4 with only one partition (like the sd card essentially) ? Also, will the installer overwrite the spi u-boot ? (afraid to brick the board) I am very hopeful I can get un functional board ! Thanks a lot for your contribution!
  3. Hi Uli, here is what the current environment looks like: (unmodified, so should be the original one from compulab ?) autoload=no baudrate=115200 bootcmd=run setupmmcboot;mmc dev ${storagedev};if mmc rescan; then run trybootsmz;fi;run setupusbboot;if usb start; then if run loadscript; then run bootscript;fi;fi;run setupsataboot;if sata init; then run trybootsmz;fi;run setupnandboot;run nandboot; bootm_low=18000000 bootscript=echo Running bootscript from ${storagetype} ...;source ${loadaddr}; console=ttymxc3,115200 doboot=bootm ${loadaddr} doloadfdt=false dtb=cm-fx6.dtb ethprime=FEC0 fdtaddr=0x11000000 kernel=uImage-cm-fx6 loadaddr=0x10800000 loadfdt=load ${storagetype} ${storagedev} ${fdtaddr} ${dtb}; loadkernel=load ${storagetype} ${storagedev} ${loadaddr} ${kernel}; loadscript=load ${storagetype} ${storagedev} ${loadaddr} ${script}; mmcargs=setenv bootargs console=${console} root=${mmcroot} ${video} mmcroot=/dev/mmcblk0p2 rw rootwait nandargs=setenv bootargs console=${console} root=${nandroot} rootfstype=${nandrootfstype} ${video} nandboot=if run nandloadkernel; then run nandloadfdt;run setboottypem;run storagebootcmd;run setboottypez;run storagebootcmd;fi; nandloadfdt=nand read ${fdtaddr} 780000 80000; nandloadkernel=nand read ${loadaddr} 0 780000; nandroot=/dev/mtdblock4 rw nandrootfstype=ubifs panel=HDMI preboot=usb start run_eboot=echo Starting EBOOT ...; mmc dev 2 && mmc rescan && mmc read 10042000 a 400 && go 10042000 sataargs=setenv bootargs console=${console} root=${sataroot} ${video} sataroot=/dev/sda2 rw rootwait script=boot.scr setboottypem=setenv kernel uImage-cm-fx6;setenv doboot bootm ${loadaddr};setenv doloadfdt false; setboottypez=setenv kernel zImage-cm-fx6;setenv doboot bootz ${loadaddr} - ${fdtaddr};setenv doloadfdt true; setupmmcboot=setenv storagetype mmc; setenv storagedev 2; setupnandboot=setenv storagetype nand; setupsataboot=setenv storagetype sata; setenv storagedev 0; setupusbboot=setenv storagetype usb; setenv storagedev 0; stderr=serial,vga stdin=serial,usbkbd stdout=serial,vga storagebootcmd=echo Booting from ${storagetype} ...;run ${storagetype}args; run doboot; trybootk=if run loadkernel; then if ${doloadfdt}; then run loadfdt;fi;run storagebootcmd;fi; trybootsmz=if run loadscript; then run bootscript;fi;run setboottypem;run trybootk;run setboottypez;run trybootk; video_dvi=mxcfb0:dev=dvi,1280x800M-32@50,if=RGB32 video_hdmi=mxcfb0:dev=hdmi,1920x1080M-32@50,if=RGB32 bootdelay=5 I've modified a little bit the setup script to load from usb instead of mmc (to try) # DO NOT EDIT THIS FILE # # Please edit /boot/armbianEnv.txt to set supported parameters # # default values setenv rootdev "/dev/mmcblk0p1" setenv verbosity "1" setenv console "display" setenv bootlogo "false" setenv rootfstype "ext4" setenv disp_mode "1920x1080m60" setenv earlycon "off" # additional values setenv satadev 0:2 setenv fdt_file "imx6q-utilite-pro.dtb" setenv load_addr "0x10800000" setenv ramdisk_addr "0x18000000" setenv fdt_addr "0x15000000" #if load sata ${satadev} ${load_addr} /boot/armbianEnv.txt ; then if load usb 0 ${load_addr} /boot/armbianEnv.txt ; then env import -t ${load_addr} ${filesize} fi if test "${console}" = "display" || test "${console}" = "both"; then setenv consoleargs "console=tty1"; fi if test "${console}" = "serial" || test "${console}" = "both"; then setenv consoleargs "${consoleargs} console=ttymxc3,115200 earlyprintk"; fi if test "${earlycon}" = "on"; then setenv consoleargs "earlycon ${consoleargs}"; fi if test "${bootlogo}" = "true"; then setenv consoleargs "bootsplash.bootfile=bootsplash.armbian ${consoleargs}"; fi setenv bootargs "root=${rootdev} rootfstype=${rootfstype} rootwait ${consoleargs} consoleblank=0 video=mxcfb0:dev=hdmi,${disp_mode},if=RGB24,bpp=32 coherent_pool=2M cma=128M rd.dm=0 rd.luks=0 rd.lvm=0 raid=noautodetect pci=nomsi vt.global_cursor_default=0 loglevel=${verbosity} usb-storage.quirks=${usbstoragequirks} ${extraargs}" #load sata ${satadev} ${fdt_addr} /boot/dtb/${fdt_file} #load sata ${satadev} ${ramdisk_addr} /boot/uInitrd #load sata ${satadev} ${load_addr} /boot/zImage load usb 0 ${fdt_addr} /boot/dtb/${fdt_file} load usb 0 ${ramdisk_addr} /boot/uInitrd load usb 0 ${load_addr} /boot/zImage bootz ${load_addr} ${ramdisk_addr} ${fdt_addr} # Recompile with: # mkimage -C none -A arm -T script -d /boot/boot.cmd /boot/boot.scr and made a symlink boot.scr to /boot/boot.scr since that's the script u-boot tries to read. unfortunately, no success with that either until now. But, that was with a config different from the cubox-i, so this week-end, I'll built the cubox-i image and try again with this. Thanks for your help!
  4. Hi Uli, Thanks a lot for taking the time to post this info. I'll try that in the next few days for sure. It gives my back some hope that I can do something with this device. I understood indeed how the boot process goes. I was able to update the firm to compulab's latest u-boot. see the picture: I am however not sure whether loading directly from the sd-card works. I see that your boot script loads from sata. I guess I need to adapt it to make it boot from the sd-card instead ? I also saw that the u-boot expects to see a boot script at the root of the partition, or the uImage/zImage. I am seeing this correctly ? Thanks in advance for your further help.
  5. Hello everyone, I've been playing with the docker build script for about two weeks now. I am now able to build images. At least I had a few successful builds. (buster, with desktop) It seems like I can't build kernel above v5.10 because "gmp.h" is missing. I have no clue how to fix that. I thought it would be built-in the cross-compilation tools, but maybe I am wrong. I could compile kernel v5.4, so I am working with that at the moment. I also figured out that my board does not seem to load u-boot from the sd-card. So I am questioning whether or not u-boot was included in the image built, or if I had to dump it myself onto the sd card ? I also understood how the u-boot now present on my utilite works, and was able to make a boot script that loads the zImage abd dtb file. When this goes, I see u-boot loading the dtb and kernel into memory, but then, only a black screen unfortunately. All I get from, u-boot is: Kernel image @ 0x10800000 [ 0x000000 - 0x959598 ] ## Flattened DEvice Tree Blob at 11000000 Booting using the fdt blob at 0x11000000 Loading device tree to 187f3000, end 187ffebd ... OK I am not sure where I should look into from this on. If anybody could give a hint, that would be very much appreciated. I saw a few post from @umiddelb mentioning the utilite pro board dating from a few years back, but I could not use any of his hints to get something to work. Maybe a hint from him could make it work ? Thanks in advance.
  6. Hello everyone, Over the past year or so, I've been getting back to my utilite pro board that bought quite a while back. After asking a few things to Compulab, and figuring out some of the bad download links to get their latest resources, I could finally upgrade to their latest Ubuntu build, that was based on 12.04. So not so recent. I am not the most aware user when it comes to arm devices, but a page on the Debian wiki pointed out to running buster on the board. Then, I came across the armbian ecosystem, and thought, well, I'll give it a try. Kudos to the work done. This looks impressive. The past days I've been trying to compile an image, just to see if it would succeed. That is without luck so far. What I've done is pulling the armbian:build docker image, started it and ran the compile.sh script. I go through the wizard, and things start, but at some point, I get greeted with a chroot error and the process then stops. I am not sure what is causing this, so I thought I would ask. Some other questions: my goal would be to try making a config that boot on the Utilite Pro. from the Linux kernel source, I see stuff related to the utilite-pro, so I have good hope that something is possible, and same story for the u-boot. I understood that easiest way to get to this is to start from an existing board, and adapting the configuration. Ok, that sounds like something i could do and potentially succeed at. What I do not understand until know is what I should change in the config file to specifically point at the utilite setup from u-boot and the linux kernel (like the right dts/dtb files). I also face some interesting challenges: it seems like I can't get the serial connection to work for some reasons, so it is not very straightforward to get very meaningful hints from u-boot. I could get the u-boot output from HDMI and type commands in it via a hdmi capture card. so I can record what's going on on boot, but more than this is ... complicated if not impossible. So I am hoping somebody could point me in the right directions since I am willing to spend a bit of time trying this out. Thanks for reading! I hope I can get something useful from that device.
×
×
  • Create New...