Google Fuchsia OS on Khadas VIM2

Hi butter,

Have you tried this u-boot and zircon kernel ?

I’m using the self built image .
I just tried use tftp to load zedboot.zbi to 1080000 and bootm to boot from zedboot , then successfully flash with fx serve zedboot: version: 0.7.11
but meet error like this

[00295.801] 01301.01389> netsvc: Running FVM Paver
[00297.807] 01301.04421> paver:[Initialize] Successfully initialized FixedDevicePartitioner Device Partitioner
[00297.807] 01301.04421> paver:[PartitionPave] Paving partition.
[00301.083] 01301.01389> netsvc: tftp write of file <<image>>sparse.fvm completed
[00302.807] 01301.04421> paver:[PartitionPave] Failure creating partition: ZX_ERR_NOT_SUPPORTED

@numbqq tried the uboot you post , also meet the error

at ../drivers/usb/gadget/f_fastboot.c:471/cb_getvar()
cmd is download:004e5f48
Starting download of 5136200 bytes
.......................................
downloading of 5136200 bytes finished
cmd is flash:boot
_find_partition_by_name()-188: do not find match in table boot
find_virtual_partition_by_name()-1176: can't find boot
ERROR: cannot find partition: 'boot'

at ../common/fb_mmc.c:150/fb_mmc_flash_write()

I tried burn-tools to flash a Android update image then update uboot , the fastboot run OK to flash zedboot but will fail in the u-boot loading zedboot

normal power on
boot wol: enable
Hit Enter or space or Ctrl+C key to stop autoboot -- :  0 
Err imgread(L252):Fmt unsupported!genFmt 0x0 != 0x3
InUsbBurn
[MSG]sof
Set Addr 69
Get DT cfg
Get DT cfg
set CFG

I tried with tftp loading zedboot to memory to boot then the paving is OK, but the error log in this post seems that uboot could not read the zedboot bin from fastboot pave

Hi butter,

What’s the version of VIM2? It’s VIM2 Basic (2G) ? It seems that VIM2 Basic is not supported. I have the same issue with you, but VIM2 MAX works.

Thanks.

vim2 max with 3GB ddr, it has successed run fuchsia before,

Yes, VIM2 MAX works well.

I just tried./script/flash-vim2 -m command ,but meet like this.
Flashing sysconfig partition
< waiting for any device >

Hello Freeman811130,

My development environment for Fuchsia is not setup ready since my computer is broken, I’ll setup the environment and feedback here.

Thanks.

Looking forward for your reply, thanks.

It’s OK now.
It needs sudo in the command.

3 Likes

@numbqq do you get any idea how aml-sd-emmc lib is loaded ? I want to look into the emmc initial but could not find a entry for the block device from the boot flow

What’s aml-sd-emmc lib ?

I see in /boot/driver there is a aml-sd-emmc.so and a sdmmc.so, the boot log shows log like below
there is aml_sd_emmc_irq_thread init work before the mmc is selfchecking, but I’m not sure the call routing that how it bring up the bus then the emmc device

[00002.866] 01044.01047> devmgr: svc init
[00002.866] 01044.01047> devmgr: launch /boot/bin/svchost (svchost) OK
[00002.867] 01044.01047> devmgr: vfs init
[00002.867] 01044.01047> devmgr: launch /boot/bin/fshost (fshost) OK
[00002.868] 01044.01165> devmgr: shell startup
[00002.868] 01044.01047> devmgr: coordinator()
[00002.871] 01128.01142> fshost: started.
[00002.875] 01044.01157> devmgr: launch /boot/bin/pwrbtn-monitor (pwrbtn-monitor) OK
[00002.875] 01044.01175> devmgr: launch /boot/bin/crashsvc (crashsvc) OK
[00002.877] 01044.01175> devmgr: launch /boot/bin/netsvc (netsvc) OK
[00002.878] 01044.01175> devmgr: launch /boot/bin/virtual-console (virtual-console) OK
[00002.891] 01044.01047> devcoord: launch devhost 'devhost:sys': pid=1904
[00002.892] 01044.01047> devcoord: launch devhost 'devhost:test': pid=1937
[00002.892] 01044.01047> devcoord: full system required, ignoring fallback drivers until /system is loaded
[00002.893] 01044.01047> devcoord: launch devhost 'devhost:root': pid=1976
[00002.895] 01044.01047> devcoord: launch devhost 'devhost:misc': pid=2028
[00002.901] 01044.01047> devcoord: launch devhost 'devhost:pdev:00:00:8': pid=2255
[00002.906] 01904.01928> GPIO Interrupt index 0 allocated
[00002.906] 02255.02495> Waiting for GPIO Test Input Interrupt
[00002.906] 02255.02495> Received GPIO Test Input Interrupt
[00002.916] 01044.01047> devcoord: launch devhost 'devhost:pdev:05:00:3': pid=2511
[00002.917] 01044.01047> devcoord: launch devhost 'devhost:pdev:05:00:3': pid=2548
[00002.918] 01044.01047> devcoord: launch devhost 'devhost:pdev:05:00:6': pid=2607
[00002.920] 01044.01047> devcoord: launch devhost 'devhost:pdev:05:00:6': pid=2674
[00002.922] 01044.01047> devcoord: launch devhost 'devhost:pdev:04:02:7': pid=2753
[00002.925] 01044.01047> devcoord: launch devhost 'devhost:pdev:00:00:2': pid=2846
[00002.928] 01044.01047> devcoord: launch devhost 'devhost:pdev:05:03:d': pid=2944
[00002.931] 02511.03082> IrqThread start
[00002.931] 01044.01047> devcoord: launch devhost 'devhost:pdev:04:02:9': pid=3040
[00002.934] 01044.01047> devcoord: launch devhost 'devhost:pdev:04:02:1': pid=3173
[00002.936] 01044.01047> devcoord: launch devhost 'devhost:pdev:05:03:c': pid=3264
[00002.937] 02944.02993> [aml_gpu_set_initial_clk_freq_source 74]Setting initial clock source to 2: 5
[00002.939] 01044.01047> devcoord: launch devhost 'devhost:pdev:00:00:b': pid=3362
[00002.940] 02753.02789> aml-ethernet driver added
[00002.941] 01044.01047> devcoord: launch devhost 'devhost:pdev:00:00:e': pid=3460
[00002.942] 01044.01047> devcoord: rpc: bind-driver '04:02:1' status -2
[00002.944] 01044.01047> devcoord: launch devhost 'devhost:pdev:09:00:5': pid=3557
[00002.945] 01044.01047> devcoord: rpc: bind-driver '05:03:c' status -2
[00002.949] 02846.03442> * found USB device (0x18d1:0xa002, USB 2.0) config 1
[00002.949] 01904.02321> i2c: error on bus
[00002.949] 03040.03138> aml_thermal: driver begin...
[00002.950] 03362.03748> led2472g i2c_write_read error: -21
[00002.950] 03362.03748>   Exiting led2472g_thread
[00002.950] 02846.03442> * found USB device (0x18d1:0xa003, USB 3.0) config 1
[00002.951] 03460.03508> optee: Unable to get secure monitor handle
[00002.951] 03460.03508> devhost[tee] bind driver '/boot/driver/optee.so' failed: -14
[00002.951] 01044.01047> devcoord: rpc: bind-driver '00:00:e' status -14
[00002.951] 03173.03237> BOARD INFO: 4 2 vim2 1234
[00002.952] 01904.01928> GPIO Interrupt index 1 allocated
[00002.953] 03173.03237> [init_hdmi_hardware 152]done!!
[00002.955] 01437.01500> vc: new display device /dev/class/display-controller/000/virtcon
[00002.968] 02607.03029> aml_sd_emmc_irq_thread: No response reived before time limit, cmd52, status=0xa3ff2800
[00002.968] 02607.03651> sdio: SDIO_IO_RW_DIRECT failed, retcode = -21
[00002.968] 02674.03053> aml_sd_emmc_irq_thread: No response reived before time limit, cmd52, status=0xa3ff2800
[00002.968] 02674.03658> sdio: SDIO_IO_RW_DIRECT failed, retcode = -21
[00002.969] 02607.03029> aml_sd_emmc_irq_thread: No response reived before time limit, cmd52, status=0xa3ff2800
[00002.969] 02607.03651> sdio: SDIO_IO_RW_DIRECT failed, retcode = -21
[00002.969] 02674.03053> aml_sd_emmc_irq_thread: No response reived before time limit, cmd52, status=0xa3ff2800
[00002.969] 02674.03658> sdio: SDIO_IO_RW_DIRECT failed, retcode = -21
[00002.970] 02607.03029> aml_sd_emmc_irq_thread: No response reived before time limit, cmd5, status=0xa3ff2800
[00002.981] 02607.03029> aml_sd_emmc_irq_thread: No response reived before time limit, cmd5, status=0xa3ff2800
[00002.992] 02607.03029> aml_sd_emmc_irq_thread: No response reived before time limit, cmd5, status=0xa3ff2800
[00002.999] 01044.01165> devmgr: launch /boot/bin/sh (sh:console) OK
[00003.003] 02607.03029> aml_sd_emmc_irq_thread: No response reived before time limit, cmd5, status=0xa3ff2800
[00003.003] 02607.03651> sdmmc_probe_sdio: SDIO_SEND_OP_COND failed, retcode = -21
[00003.025] 02607.03651> mmc: product name=R3DBWC
[00003.025] 02607.03651>        revision=0.0
[00003.025] 02607.03651>        serial=2957635630
[00003.044] 02607.03651> mmc: initialized mmc @ 200 MHz, bus width 2, timing 4
[00003.045] 01044.01047> devcoord: dc_bind_device() '/boot/driver/bootpart.so'
[00003.051] 01128.01142> devmgr: /dev/class/block/007: FVM?
[00003.051] 01044.01047> devcoord: dc_bind_device() '/boot/driver/fvm.so'
[00003.063] 01128.01142> devmgr: launch /boot/bin/blobfs (blobfs:/blob) OK
[00003.099] 02674.03658> sdmmc_probe_sdio: sdio device initialized successfully
[00003.099] 02674.03658>           Manufacturer: 0x2d0
[00003.099] 02674.03658>           Product: 0x4359
[00003.099] 02674.03658>           cccr vsn: 0x3
[00003.099] 02674.03658>           SDIO vsn: 0x4
[00003.099] 02674.03658>           num funcs: 3

The u-boot link is not more available

https://github.com/mikevoydanoff/u-boot is no longer available as mentioned by @mishudark too. Nor was the u-boot.bin, compiled by one of you before.

I am a newcomer to the VIM2 over fuchsia. Could anyone help me to get the clone of the u-boot source code or the u-boot.bin for personal use only? Thanks heaps.

I will try to ask Google and update here if I get response.

BTW, you might interest in Zircon on Khadas VIM2 Board.

1 Like

@Gouwa, thank you for your instant reply. Wish you all well!

My understanding is that the u-boot.bin is prerequisite to get the Zircon running onto the VIM2 board. So, the u-boot.bin or its source code is everything here. I wonder if you could email me, jingp18@yahoo.com, a copy of your compiled u-boot.bin or source code from your earlier clone for my personal education only?

Thanks. Jing

@Gouwa from the context that Google and ARM are working on vulkan for ARM64 devices like VIM2, so is it avalible that we could run a graphic version fuchsia on VIM2?

For those following Fuchsia, a little recent info on Fuchsia was posted on CNX.

plz share link to image - i can make krescue image for ease installation!!

1 Like