any prebuilt-sd card-image image available for HiFive Unleashed ?

Klaus Küchemann maciphone2 at googlemail.com
Sat Dec 12 09:47:53 UTC 2020


Well, some more details:
--this is my current partition table, dd`ed GENERIC-fbsd-image(mounted) to ufs&efi :
root at freebsd:/usr/ports/sysutils/u-boot-sifive-fu540 # gpart show da2
=>       40  124735408  da2  GPT  (59G)
         40         24       - free -  (12K)
         64       2048    1 !5b193300-fc78-40cd-8002-e86c45580b47  (1.0M)
       2112       8192    2 !2e54b353-1271-4842-806f-e436d6af6985  (4.0M)
      10304     112640    3  efi  (55M)
     122944    8192000    4  freebsd-ufs  (3.9G)
    8314944  116420504       - free -  (56G) ,

`have also added(with gpart) empty ms-basic-data partition(not got auto-mounted under MacOS like the one from freedom-sdk) , still hanging … UnhandledUnUhnhelthanndled excepn tioen: Illegral in0.. guessing it doesn’t detect the DeviceTree...


--------------------------from freedom-u-sdk u-boot:---------
=> printenv
arch=riscv
baudrate=115200
board=fu540
board_name=fu540
boot_a_script=load ${devtype} ${devnum}:${distro_bootpart} ${scriptaddr} ${prefix}${script}; source ${scriptaddr}
boot_efi_binary=if fdt addr ${fdt_addr_r}; then bootefi bootmgr ${fdt_addr_r};else bootefi bootmgr ${fdtcontroladdr};fi;load ${devtype} ${devnum}:${distro_bootpart} ${kernel_addr_r} efi/boot/bootriscv64.efi; if fdt addr ${fdt_addr_r}; then bootefi ${kernel_addr_r} ${fdt_addr_r};else bootefi ${kernel_addr_r} ${fdtcontroladdr};fi
boot_extlinux=sysboot ${devtype} ${devnum}:${distro_bootpart} any ${scriptaddr} ${prefix}${boot_syslinux_conf}
boot_prefixes=/ /boot/
boot_script_dhcp=boot.scr.uimg
boot_scripts=boot.scr.uimg boot.scr
boot_syslinux_conf=extlinux/extlinux.conf
boot_targets=mmc0 dhcp 
bootcmd=run distro_bootcmd
bootcmd_dhcp=if dhcp ${scriptaddr} ${boot_script_dhcp}; then source ${scriptaddr}; fi;setenv efi_fdtfile ${fdtfile}; setenv efi_old_vci ${bootp_vci};setenv efi_old_arch ${bootp_arch};setenv bootp_vci PXEClient:Arch:00027:UNDI:003000;setenv bootp_arch 0x1b;if dhcp ${kernel_addr_r}; then tftpboot ${fdt_addr_r} dtb/${efi_fdtfile};if fdt addr ${fdt_addr_r}; then bootefi ${kernel_addr_r} ${fdt_addr_r}; else bootefi ${kernel_addr_r} ${fdtcontroladdr};fi;fi;setenv bootp_vci ${efi_old_vci};setenv bootp_arch ${efi_old_arch};setenv efi_fdtfile;setenv efi_old_arch;setenv efi_old_vci;
bootcmd_mmc0=devnum=0; run mmc_boot
bootdelay=2
cpu=fu540
distro_bootcmd=for target in ${boot_targets}; do run bootcmd_${target}; done
efi_dtb_prefixes=/ /dtb/ /dtb/current/
ethaddr=70:b3:d5:92:f1:d5
fdt_addr_r=0x88000000
fdt_high=0xffffffffffffffff
fdtcontroladdr=ff75f770
initrd_high=0xffffffffffffffff
kernel_addr_r=0x84000000
kernel_comp_addr_r=0x90000000
kernel_comp_size=0x4000000
load_efi_dtb=load ${devtype} ${devnum}:${distro_bootpart} ${fdt_addr_r} ${prefix}${efi_fdtfile}
mmc_boot=if mmc dev ${devnum}; then devtype=mmc; run scan_dev_for_boot_part; fi
partitions=name=loader1,start=17K,size=1M,type=${type_guid_gpt_loader1};name=loader2,size=4MB,type=${type_guid_gpt_loader2};name=system,size=-,bootable,type=${type_guid_gpt_system};
preboot=setenv fdt_addr ${fdtcontroladdr};fdt addr ${fdtcontroladdr};
pxefile_addr_r=0x88200000
ramdisk_addr_r=0x88300000
scan_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 run scan_dev_for_boot; fi; done; setenv devplist
scan_dev_for_efi=setenv efi_fdtfile ${fdtfile}; for prefix in ${efi_dtb_prefixes}; do if test -e ${devtype} ${devnum}:${distro_bootpart} ${prefix}${efi_fdtfile}; then run load_efi_dtb; fi;done;if test -e ${devtype} ${devnum}:${distro_bootpart} efi/boot/bootriscv64.efi; then echo Found EFI removable media binary efi/boot/bootriscv64.efi; run boot_efi_binary; echo EFI LOAD FAILED: continuing...; fi; setenv efi_fdtfile
scan_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 SCRIPT FAILED: continuing...; fi
scan_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; done
scriptaddr=0x88100000
serial#=000001d5
stderr=serial at 10010000
stdin=serial at 10010000
stdout=serial at 10010000
type_guid_gpt_loader1=5B193300-FC78-40CD-8002-E86C45580B47
type_guid_gpt_loader2=2E54B353-1271-4842-806F-E436D6AF6985
type_guid_gpt_system=0FC63DAF-8483-4772-8E79-3D69D8477DE4
vendor=sifive

Environment size: 3870/131068 bytes
-------------------------------------


--------- boot-script from freedom-u-sdk : -----------
'V�tK�_���  �        �Y�g U-Boot boot script                �    # This is the  MMC u-boot boot script
#  1. MMC load a uEnv.txt
#  2. MMC load a Image.gz

# See if we have a MMC uEnv.txt file
if fatload ${devtype} ${devnum}:${distro_bootpart} ${scriptaddr} /uEnv.txt; then
    env import -t ${scriptaddr} ${filesize}
    run bootcmd
fi;

# Try to load DTB from the MMC
load ${devtype} ${devnum}:${distro_bootpart} ${fdt_addr_r} hifive-unleashed-a00-microsemi.dtb

setenv kernel_comp_addr_r 0x90000000
setenv kernel_comp_size 0x4000000

setenv bootargs root=/dev/mmcblk0p4 rootfstype=ext4 rootwait console=ttySIF0,115200 earlycon=sbi

# Try to boot a Image.gz from the MMC
if load ${devtype} ${devnum}:${distro_bootpart} ${kernel_addr_r} Image.gz; then
  booti ${kernel_addr_r} - ${fdt_addr_r}
fi;




Regards

K.


More information about the freebsd-riscv mailing list