Changes between Version 35 and Version 36 of buildroot

12/10/2020 11:51:21 PM (19 months ago)
Tim Harvey

add venice section


  • buildroot

    v35 v36  
     205== Venice (IMX8MM)
     206The following details pertain to buildroot 2018.10 although newer versions will likely be similar if not the same.
     208The Venice product family is based on the i.MX8MM SoC which has 4x Cortex-A53 CPU cores. Therefore the 'BR2_aarch64' is really the only important configuration which produces binaries executable on arm64 CPU's.
     210To build a root filesystem only:
     212cat << EOF > configs/venice_minimal_defconfig
     213# arm64 arch
     215# filesystem options
     218make venice_minimal_defconfig
     222This builds output/images/root.tar.xz consisting of a ~1.7MiB root filesystem (when uncompressed) in 5 to 10 minutes of building on a typical Linux desktop.
     224If you also want buildroot to build a Gateworks v5.4.45 kernel with the minimal root filesystem attached as an initrd you would add the following the your defconfig:
     226cat << EOF > configs/venice_kernel_defconfig
     227# arm64 arch
     229# toolchain
     231# kernel
     237# filesystem options
     240make venice_kernel_defconfig
     244This produces a ~23MB output/images/Image in 5 to 10 minutes of building on a typical Linux desktop. This is a kernel Image containing the root filesystem in a ramdisk. This is a really easy way to get a read-only minimal Linux image that boots fast and does not access flash storage.
     246To boot this kernel image on a Venice board via the bootloader with a tftpserver:
     248tftpboot $kernel_addr_r Image && booti $kernel_addr_r - $fdtcontroladdr
     251Now you have a minimal Linux OS that booted in about 6 seconds.
     253A prebuilt image can be found [ here] which contains:
     254 * Gateworks Linux 5.4.45 kernel
     255 * resize2fs (BR2_PACKAGE_E2FSPROGS_RESIZE2FS)
     256 * uclibc
     257 * screen (BR2_PACKAGE_SCREEN)
     258 * pciutils (BR2_PACKAGE_PCIUTILS)
     259 * libusb (BR2_PACKAGE_LIBUSB)
     260 * eudev (BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV) (required for usbutils)
     261 * usbutils (BR2_PACKAGE_USBUTILS)
     262 * gdisk/sgdisk disk partitioning tools:
     264 * stress (BR2_PACKAGE_STRESS)
     265 * evtest (BR2_PACKAGE_EVTEST)
     267You can boot a Kernel+ramdisk via U-Boot like this:
     268 * load from network tftpserver
     270tftpboot $kernel_addr_r Image && booti $kernel_addr_r - $fdtcontroladdr
     272 * load from microSD with ext/fat filesystem
     274load mmc 1:1 $kernel_addr_r Image && booti $kernel_addr_r - $fdtcontroladdr
     276 * load from USB with ext/fat filesystem
     278usb start; load usb 0:1 $kernel_addr_r Image && booti $kernel_addr_r - $fdtcontroladdr
    205282== Newport (CN80XX)
    225302This builds a ~500KiB output/images/root.tar.xz in less than 5 minutes on a typical Linux desktop.
    228304If you also want buildroot to build a kernel provided from buildroot using the buildroot rootfs embedded as an initramfs then enable the following to create a kernel suitable for aarch64 and booting via U-Boot {{{booti}}}: