mirror of
https://github.com/motioneye-project/motioneyeos.git
synced 2025-08-02 07:57:43 +00:00
configs/hifive_unleashed: new defconfig
This patch adds support for the HiFive Unleashed board. This includes building the firmware, kernel and rootFS for the HiFive Unleashed. Signed-off-by: Alistair Francis <alistair.francis@wdc.com> [Thomas: - fix the directory name hifive_unleased -> hifive-unleashed - drop from readme.txt the instructions about manually flashing each partition, since we have a full SD card image - drop the custom post-image.sh script] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
parent
9b5b7165de
commit
86531fae3e
@ -187,6 +187,7 @@ friendlyarm_nanopi_neo2_defconfig: { extends: .defconfig }
|
|||||||
galileo_defconfig: { extends: .defconfig }
|
galileo_defconfig: { extends: .defconfig }
|
||||||
grinn_chiliboard_defconfig: { extends: .defconfig }
|
grinn_chiliboard_defconfig: { extends: .defconfig }
|
||||||
grinn_liteboard_defconfig: { extends: .defconfig }
|
grinn_liteboard_defconfig: { extends: .defconfig }
|
||||||
|
hifive_unleashed_defconfig: { extends: .defconfig }
|
||||||
imx23evk_defconfig: { extends: .defconfig }
|
imx23evk_defconfig: { extends: .defconfig }
|
||||||
imx6-sabreauto_defconfig: { extends: .defconfig }
|
imx6-sabreauto_defconfig: { extends: .defconfig }
|
||||||
imx6-sabresd_defconfig: { extends: .defconfig }
|
imx6-sabresd_defconfig: { extends: .defconfig }
|
||||||
|
@ -123,7 +123,9 @@ F: package/kvazaar/
|
|||||||
F: package/v4l2loopback/
|
F: package/v4l2loopback/
|
||||||
|
|
||||||
N: Alistair Francis <alistair@alistair23.me>
|
N: Alistair Francis <alistair@alistair23.me>
|
||||||
|
F: board/sifive/
|
||||||
F: boot/opensbi/
|
F: boot/opensbi/
|
||||||
|
F: configs/hifive_unleashed_defconfig
|
||||||
F: package/xen/
|
F: package/xen/
|
||||||
|
|
||||||
N: Alvaro G. M <alvaro.gamez@hazent.com>
|
N: Alvaro G. M <alvaro.gamez@hazent.com>
|
||||||
|
17
board/sifive/hifive-unleashed/genimage.cfg
Normal file
17
board/sifive/hifive-unleashed/genimage.cfg
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
image sdcard.img {
|
||||||
|
hdimage {
|
||||||
|
gpt = true
|
||||||
|
}
|
||||||
|
|
||||||
|
partition bootloader {
|
||||||
|
image = "fw_payload.bin"
|
||||||
|
offset = 1M
|
||||||
|
size = 32M
|
||||||
|
partition-type-uuid = 2E54B353-1271-4842-806F-E436D6AF6985
|
||||||
|
}
|
||||||
|
|
||||||
|
partition rootfs {
|
||||||
|
image = "rootfs.ext4"
|
||||||
|
partition-type-uuid = 0FC63DAF-8483-4772-8E79-3D69D8477DE4
|
||||||
|
}
|
||||||
|
}
|
16
board/sifive/hifive-unleashed/linux.config.fragment
Normal file
16
board/sifive/hifive-unleashed/linux.config.fragment
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
CONFIG_HZ_100=y
|
||||||
|
CONFIG_CMDLINE="earlycon=sbi root=/dev/mmcblk0p2 rootwait"
|
||||||
|
CONFIG_DEVTMPFS_MOUNT=y
|
||||||
|
CONFIG_SERIAL_SIFIVE=y
|
||||||
|
CONFIG_SERIAL_SIFIVE_CONSOLE=y
|
||||||
|
CONFIG_SPI=y
|
||||||
|
CONFIG_SPI_SIFIVE=y
|
||||||
|
CONFIG_GPIOLIB=y
|
||||||
|
CONFIG_GPIO_SYSFS=y
|
||||||
|
CONFIG_GPIO_SIFIVE=y
|
||||||
|
CONFIG_MMC=y
|
||||||
|
CONFIG_MMC_SPI=y
|
||||||
|
CONFIG_CLK_U54_PRCI=y
|
||||||
|
CONFIG_CLK_GEMGXL_MGMT=y
|
||||||
|
CONFIG_PWM=y
|
||||||
|
CONFIG_PWM_SIFIVE=y
|
75
board/sifive/hifive-unleashed/readme.txt
Normal file
75
board/sifive/hifive-unleashed/readme.txt
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
SiFive HiFive Unleashed
|
||||||
|
=======================
|
||||||
|
|
||||||
|
This file describes how to use the pre-defined Buildroot
|
||||||
|
configuration for the SiFive HiFive Unleashed board.
|
||||||
|
|
||||||
|
Further information about the HiFive Unleashed board can be found
|
||||||
|
at https://www.sifive.com/boards/hifive-unleashed
|
||||||
|
|
||||||
|
Building
|
||||||
|
========
|
||||||
|
|
||||||
|
Configure Buildroot using the default board configuration:
|
||||||
|
|
||||||
|
$ make hifive_unleashed_defconfig
|
||||||
|
|
||||||
|
Customise the build as necessary:
|
||||||
|
|
||||||
|
$ make menuconfig
|
||||||
|
|
||||||
|
Start the build:
|
||||||
|
|
||||||
|
$ make
|
||||||
|
|
||||||
|
Result of the build
|
||||||
|
===================
|
||||||
|
|
||||||
|
Once the build has finished you will have the following files:
|
||||||
|
|
||||||
|
output/images/
|
||||||
|
+-- fw_jump.bin
|
||||||
|
+-- fw_jump.elf
|
||||||
|
+-- fw_payload.bin
|
||||||
|
+-- fw_payload.elf
|
||||||
|
+-- Image
|
||||||
|
+-- rootfs.ext2
|
||||||
|
+-- rootfs.ext4
|
||||||
|
+-- rootfs.tar
|
||||||
|
+-- sdcard.img
|
||||||
|
|
||||||
|
|
||||||
|
Creating a bootable SD card with genimage
|
||||||
|
=========================================
|
||||||
|
|
||||||
|
Buildroot builds a SD card image for you. All you need to do is dd the
|
||||||
|
image to your SD card, which can be done with the following command:
|
||||||
|
|
||||||
|
$ sudo dd if=output/images/sdcard.img of=/dev/mmcblk0 bs=4096
|
||||||
|
|
||||||
|
Booting the SD card on the board
|
||||||
|
================================
|
||||||
|
|
||||||
|
Make sure that the all DIP switches are set to the off position for
|
||||||
|
default boot mode (MSEL mode = 1111), insert the SD card and power
|
||||||
|
up the board.
|
||||||
|
|
||||||
|
Connect the USB cable and open minicom (/dev/ttyUSB1, 115200, 8N1).
|
||||||
|
|
||||||
|
See the 'SiFive HiFive Unleashed Getting Started Guide' for
|
||||||
|
more details (https://www.sifive.com/documentation).
|
||||||
|
|
||||||
|
You will get a warning reported by fdisk when you examine the SD card.
|
||||||
|
This is because the genimage.cfg file doesn't specify the SD card size
|
||||||
|
(as people will naturally have different sized cards), so the
|
||||||
|
secondary GPT header is placed after the rootfs rather than at the end
|
||||||
|
of the disk where it is expected to be.
|
||||||
|
|
||||||
|
You will see something like this at boot time:
|
||||||
|
|
||||||
|
[ 2.318722] GPT:Primary header thinks Alt. header is not at the end of the disk.
|
||||||
|
[ 2.325390] GPT:190496 != 122142719
|
||||||
|
[ 2.328843] GPT:Alternate GPT header not at the end of the disk.
|
||||||
|
[ 2.334824] GPT:190496 != 122142719
|
||||||
|
[ 2.338302] GPT: Use GNU Parted to correct GPT errors.
|
||||||
|
[ 2.343456] mmcblk0: p1 p2
|
40
configs/hifive_unleashed_defconfig
Normal file
40
configs/hifive_unleashed_defconfig
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
# Architecture
|
||||||
|
BR2_riscv=y
|
||||||
|
BR2_riscv_custom=y
|
||||||
|
BR2_RISCV_ISA_CUSTOM_RVM=y
|
||||||
|
BR2_RISCV_ISA_CUSTOM_RVF=y
|
||||||
|
BR2_RISCV_ISA_CUSTOM_RVD=y
|
||||||
|
BR2_RISCV_ISA_CUSTOM_RVC=y
|
||||||
|
BR2_RISCV_64=y
|
||||||
|
BR2_RISCV_ABI_LP64D=y
|
||||||
|
|
||||||
|
# System
|
||||||
|
BR2_SYSTEM_DHCP="eth0"
|
||||||
|
BR2_TARGET_GENERIC_GETTY=y
|
||||||
|
BR2_TARGET_GENERIC_GETTY_PORT="ttySIF0"
|
||||||
|
BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
|
||||||
|
BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/sifive/hifive-unleashed/genimage.cfg"
|
||||||
|
|
||||||
|
# Filesystem
|
||||||
|
BR2_TARGET_ROOTFS_EXT2=y
|
||||||
|
BR2_TARGET_ROOTFS_EXT2_4=y
|
||||||
|
|
||||||
|
# Linux headers same as kernel, a 5.1 series
|
||||||
|
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_1=y
|
||||||
|
|
||||||
|
# Kernel
|
||||||
|
BR2_LINUX_KERNEL=y
|
||||||
|
BR2_LINUX_KERNEL_CUSTOM_GIT=y
|
||||||
|
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/alistair23/linux.git"
|
||||||
|
BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="hifive-unleashed-5.1"
|
||||||
|
BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
|
||||||
|
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/sifive/hifive-unleashed/linux.config.fragment"
|
||||||
|
BR2_LINUX_KERNEL_IMAGE=y
|
||||||
|
|
||||||
|
# Bootloader
|
||||||
|
BR2_TARGET_OPENSBI=y
|
||||||
|
BR2_TARGET_OPENSBI_PLAT="sifive/fu540"
|
||||||
|
BR2_TARGET_OPENSBI_LINUX_PAYLOAD=y
|
||||||
|
|
||||||
|
# Host tools
|
||||||
|
BR2_PACKAGE_HOST_GENIMAGE=y
|
Loading…
x
Reference in New Issue
Block a user