Bump buildroot to 2019.02
This commit is contained in:
@@ -22,7 +22,7 @@ image sdcard.img {
|
||||
|
||||
partition u-boot {
|
||||
in-partition-table = "no"
|
||||
image = "u-boot.imx"
|
||||
image = "%UBOOTBIN%"
|
||||
offset = 1024
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
# Minimal SD card image for the Freescale iMX8 boards
|
||||
#
|
||||
# We mimic the .sdcard Freescale's image format:
|
||||
# * the SD card must have 33 kB free space at the beginning,
|
||||
# * U-Boot is integrated into imx8-boot-sd.bin and is dumped as is,
|
||||
# * a FAT partition at offset 8MB is containing Image and DTB files
|
||||
# * a single root filesystem partition is required (ext2, ext3 or ext4)
|
||||
#
|
||||
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
%FILES%
|
||||
}
|
||||
}
|
||||
size = 32M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition imx-boot {
|
||||
in-partition-table = "no"
|
||||
image = "imx8-boot-sd.bin"
|
||||
offset = 33K
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type = 0xC
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
offset = 8M
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext2"
|
||||
}
|
||||
}
|
||||
20
bsp/buildroot/board/freescale/common/imx/imx8-bootloader-prepare.sh
Executable file
20
bsp/buildroot/board/freescale/common/imx/imx8-bootloader-prepare.sh
Executable file
@@ -0,0 +1,20 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
main ()
|
||||
{
|
||||
UBOOT_DTB=$2
|
||||
if [ ! -e "$UBOOT_DTB" ]; then
|
||||
echo "ERROR: couldn't find dtb: $UBOOT_DTB"
|
||||
exit 1
|
||||
fi
|
||||
cat ${BINARIES_DIR}/u-boot-spl.bin ${BINARIES_DIR}/lpddr4_pmu_train_fw.bin > ${BINARIES_DIR}/u-boot-spl-ddr.bin
|
||||
BL31=${BINARIES_DIR}/bl31.bin BL33=${BINARIES_DIR}/u-boot.bin ${HOST_DIR}/bin/mkimage_fit_atf.sh ${UBOOT_DTB} > ${BINARIES_DIR}/u-boot.its
|
||||
${HOST_DIR}/bin/mkimage -E -p 0x3000 -f ${BINARIES_DIR}/u-boot.its ${BINARIES_DIR}/u-boot.itb
|
||||
rm -f ${BINARIES_DIR}/u-boot.its
|
||||
|
||||
${HOST_DIR}/bin/mkimage_imx8 -fit -signed_hdmi ${BINARIES_DIR}/signed_hdmi_imx8m.bin -loader ${BINARIES_DIR}/u-boot-spl-ddr.bin 0x7E1000 -second_loader ${BINARIES_DIR}/u-boot.itb 0x40200000 0x60000 -out ${BINARIES_DIR}/imx8-boot-sd.bin
|
||||
|
||||
exit $?
|
||||
}
|
||||
|
||||
main $@
|
||||
@@ -7,10 +7,10 @@
|
||||
#
|
||||
dtb_list()
|
||||
{
|
||||
local DTB_LIST="$(sed -n 's/^BR2_LINUX_KERNEL_INTREE_DTS_NAME="\([a-z0-9 \-]*\)"$/\1/p' ${BR2_CONFIG})"
|
||||
local DTB_LIST="$(sed -n 's/^BR2_LINUX_KERNEL_INTREE_DTS_NAME="\([\/a-z0-9 \-]*\)"$/\1/p' ${BR2_CONFIG})"
|
||||
|
||||
for dt in $DTB_LIST; do
|
||||
echo -n "\"$dt.dtb\", "
|
||||
echo -n "\"`basename $dt`.dtb\", "
|
||||
done
|
||||
}
|
||||
|
||||
@@ -23,6 +23,8 @@ linux_image()
|
||||
{
|
||||
if grep -Eq "^BR2_LINUX_KERNEL_UIMAGE=y$" ${BR2_CONFIG}; then
|
||||
echo "\"uImage\""
|
||||
elif grep -Eq "^BR2_LINUX_KERNEL_IMAGE=y$" ${BR2_CONFIG}; then
|
||||
echo "\"Image\""
|
||||
else
|
||||
echo "\"zImage\""
|
||||
fi
|
||||
@@ -30,20 +32,33 @@ linux_image()
|
||||
|
||||
genimage_type()
|
||||
{
|
||||
if grep -Eq "^BR2_TARGET_UBOOT_SPL=y$" ${BR2_CONFIG}; then
|
||||
if grep -Eq "^BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8M=y$" ${BR2_CONFIG}; then
|
||||
echo "genimage.cfg.template_imx8"
|
||||
elif grep -Eq "^BR2_TARGET_UBOOT_SPL=y$" ${BR2_CONFIG}; then
|
||||
echo "genimage.cfg.template_spl"
|
||||
else
|
||||
echo "genimage.cfg.template"
|
||||
fi
|
||||
}
|
||||
|
||||
uboot_image()
|
||||
{
|
||||
if grep -Eq "^BR2_TARGET_UBOOT_FORMAT_DTB_IMX=y$" ${BR2_CONFIG}; then
|
||||
echo "u-boot-dtb.imx"
|
||||
elif grep -Eq "^BR2_TARGET_UBOOT_FORMAT_IMX=y$" ${BR2_CONFIG}; then
|
||||
echo "u-boot.imx"
|
||||
fi
|
||||
}
|
||||
|
||||
main()
|
||||
{
|
||||
local FILES="$(dtb_list) $(linux_image)"
|
||||
local UBOOTBIN="$(uboot_image)"
|
||||
local GENIMAGE_CFG="$(mktemp --suffix genimage.cfg)"
|
||||
local GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
|
||||
|
||||
sed -e "s/%FILES%/${FILES}/" \
|
||||
-e "s/%UBOOTBIN%/${UBOOTBIN}/" \
|
||||
board/freescale/common/imx/$(genimage_type) > ${GENIMAGE_CFG}
|
||||
|
||||
rm -rf "${GENIMAGE_TMP}"
|
||||
|
||||
@@ -0,0 +1,89 @@
|
||||
From 27a2cd6a1980adf3002412678c8fdec6528dc47d Mon Sep 17 00:00:00 2001
|
||||
From: Trent Piepho <tpiepho@impinj.com>
|
||||
Date: Fri, 6 Apr 2018 17:11:27 -0700
|
||||
Subject: [PATCH] imx: Create distinct pre-processed mkimage config files
|
||||
|
||||
Each imx image is created by a separate sub-make and during this process
|
||||
the mkimage config file is run though cpp.
|
||||
|
||||
The cpp output is to the same file no matter what imx image is being
|
||||
created.
|
||||
|
||||
This means if two imx images are generated in parallel they will attempt
|
||||
to independently produce the same pre-processed mkimage config file at
|
||||
the same time.
|
||||
|
||||
Avoid the problem by making the pre-processed config file name unique
|
||||
based on the imx image it will be used in. This way each image will
|
||||
create a unique config file and they won't clobber each other when run
|
||||
in parallel.
|
||||
|
||||
This should fixed the build bug referenced in b5b0e4e3 ("imximage:
|
||||
Remove failure when no IVT offset is found").
|
||||
|
||||
Cc: Breno Lima <breno.lima@nxp.com>
|
||||
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
Cc: Fabio Estevam <fabio.estevam@nxp.com>
|
||||
Signed-off-by: Trent Piepho <tpiepho@impinj.com>
|
||||
Tested-by: Fabio Estevam <fabio.estevam@nxp.com>
|
||||
[fabio: Adapted to imx_v2017.03_4.9.11_1.0.0_ga]
|
||||
Signed-off-by: Fabio Estevam <festevam@gmail.com>
|
||||
---
|
||||
arch/arm/imx-common/Makefile | 15 ++++++++-------
|
||||
1 file changed, 8 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/imx-common/Makefile b/arch/arm/imx-common/Makefile
|
||||
index d862258..f1bae8d 100644
|
||||
--- a/arch/arm/imx-common/Makefile
|
||||
+++ b/arch/arm/imx-common/Makefile
|
||||
@@ -69,9 +69,11 @@ endif
|
||||
quiet_cmd_cpp_cfg = CFGS $@
|
||||
cmd_cpp_cfg = $(CPP) $(cpp_flags) -x c -o $@ $<
|
||||
|
||||
-IMX_CONFIG = $(CONFIG_IMX_CONFIG:"%"=%).cfgtmp
|
||||
+# mkimage source config file
|
||||
+IMX_CONFIG = $(CONFIG_IMX_CONFIG:"%"=%)
|
||||
|
||||
-$(IMX_CONFIG): %.cfgtmp: % FORCE
|
||||
+# How to create a cpp processed config file, they all use the same source
|
||||
+%.cfgout: $(IMX_CONFIG) FORCE
|
||||
$(Q)mkdir -p $(dir $@)
|
||||
$(call if_changed_dep,cpp_cfg)
|
||||
|
||||
@@ -79,7 +81,7 @@ MKIMAGEFLAGS_u-boot.imx = -n $(filter-out $(PLUGIN).bin $< $(PHONY),$^) -T imxim
|
||||
-e $(CONFIG_SYS_TEXT_BASE)
|
||||
u-boot.imx: MKIMAGEOUTPUT = u-boot.imx.log
|
||||
|
||||
-u-boot.imx: u-boot.bin $(IMX_CONFIG) $(PLUGIN).bin FORCE
|
||||
+u-boot.imx: u-boot.bin u-boot.cfgout $(PLUGIN).bin FORCE
|
||||
$(call if_changed,mkimage)
|
||||
|
||||
ifeq ($(CONFIG_OF_SEPARATE),y)
|
||||
@@ -87,16 +89,15 @@ MKIMAGEFLAGS_u-boot-dtb.imx = -n $(filter-out $(PLUGIN).bin $< $(PHONY),$^) -T i
|
||||
-e $(CONFIG_SYS_TEXT_BASE)
|
||||
u-boot-dtb.imx: MKIMAGEOUTPUT = u-boot-dtb.imx.log
|
||||
|
||||
-u-boot-dtb.imx: u-boot-dtb.bin $(IMX_CONFIG) $(PLUGIN).bin FORCE
|
||||
+u-boot-dtb.imx: u-boot-dtb.bin u-boot-dtb.cfgout $(PLUGIN).bin FORCE
|
||||
$(call if_changed,mkimage)
|
||||
endif
|
||||
|
||||
MKIMAGEFLAGS_SPL = -n $(filter-out $(PLUGIN).bin $< $(PHONY),$^) -T imximage \
|
||||
-e $(CONFIG_SPL_TEXT_BASE)
|
||||
-
|
||||
SPL: MKIMAGEOUTPUT = SPL.log
|
||||
|
||||
-SPL: spl/u-boot-spl.bin $(IMX_CONFIG) $(PLUGIN).bin FORCE
|
||||
+SPL: spl/u-boot-spl.bin spl/u-boot-spl.cfgout $(PLUGIN).bin FORCE
|
||||
$(call if_changed,mkimage)
|
||||
|
||||
MKIMAGEFLAGS_u-boot.uim = -A arm -O U-Boot -a $(CONFIG_SYS_TEXT_BASE) \
|
||||
@@ -124,4 +125,4 @@ cmd_u-boot-nand-spl_imx = (printf '\000\000\000\000\106\103\102\040\001' && \
|
||||
spl/u-boot-nand-spl.imx: SPL FORCE
|
||||
$(call if_changed,u-boot-nand-spl_imx)
|
||||
|
||||
-targets += $(addprefix ../../../,$(IMX_CONFIG) SPL u-boot.uim spl/u-boot-nand-spl.imx)
|
||||
+targets += $(addprefix ../../../,SPL spl/u-boot-spl.cfgout u-boot-dtb.cfgout u-boot.cfgout u-boot.uim spl/u-boot-nand-spl.imx)
|
||||
--
|
||||
2.7.4
|
||||
|
||||
80
bsp/buildroot/board/freescale/imx8mqevk/readme.txt
Normal file
80
bsp/buildroot/board/freescale/imx8mqevk/readme.txt
Normal file
@@ -0,0 +1,80 @@
|
||||
***************************
|
||||
Freescale i.MX8MQ EVK board
|
||||
***************************
|
||||
|
||||
This file documents the Buildroot support for the Freescale i.MX8MQ
|
||||
EVK board.
|
||||
|
||||
Build
|
||||
=====
|
||||
|
||||
First, configure Buildroot for the i.MX8MQ EVK board:
|
||||
|
||||
make freescale_imx8mqevk_defconfig
|
||||
|
||||
Build all components:
|
||||
|
||||
make
|
||||
|
||||
You will find in output/images/ the following files:
|
||||
- bl31.bin
|
||||
- boot.vfat
|
||||
- fsl-imx8mq-evk.dtb
|
||||
- Image
|
||||
- imx8-boot-sd.bin
|
||||
- lpddr4_pmu_train_fw.bin
|
||||
- rootfs.ext2
|
||||
- rootfs.ext4
|
||||
- rootfs.tar
|
||||
- sdcard.img
|
||||
- signed_hdmi_imx8m.bin
|
||||
- u-boot.bin
|
||||
- u-boot.imx
|
||||
- u-boot-nodtb.bin
|
||||
- u-boot-spl-ddr.bin
|
||||
|
||||
Create a bootable SD card
|
||||
=========================
|
||||
|
||||
To determine the device associated to the SD card have a look in the
|
||||
/proc/partitions file:
|
||||
|
||||
cat /proc/partitions
|
||||
|
||||
Buildroot prepares a bootable "sdcard.img" image in the output/images/
|
||||
directory, ready to be dumped on a SD card. Launch the following
|
||||
command as root:
|
||||
|
||||
dd if=output/images/sdcard.img of=/dev/<your-sd-device>
|
||||
|
||||
*** WARNING! This will destroy all the card content. Use with care! ***
|
||||
|
||||
For details about the medium image layout, see the definition in
|
||||
board/freescale/common/imx/genimage.cfg.template_imx8.
|
||||
|
||||
Boot the i.MX8MQ EVK board
|
||||
==========================
|
||||
|
||||
To boot your newly created system:
|
||||
- insert the SD card in the SD slot of the board;
|
||||
- Configure the switches as follows:
|
||||
SW801: ON ON OFF OFF
|
||||
SW802: ON OFF
|
||||
- put a micro USB cable into the Debug USB Port and connect using a terminal
|
||||
emulator at 115200 bps, 8n1;
|
||||
- power on the board.
|
||||
|
||||
Enable HDMI output
|
||||
==================
|
||||
|
||||
To enable HDMI output at boot you must provide the video kernel boot
|
||||
argument. To set the video boot argument from U-Boot run after
|
||||
stopping in U-Boot prompt:
|
||||
|
||||
setenv mmcargs 'setenv bootargs console=${console} root=${mmcroot} video=HDMI-A-1:1920x1080-32@60'
|
||||
saveenv
|
||||
reset
|
||||
|
||||
Change screen resolution to suit your connected display.
|
||||
|
||||
Enjoy!
|
||||
25
bsp/buildroot/board/freescale/p1025twr/readme.txt
Normal file
25
bsp/buildroot/board/freescale/p1025twr/readme.txt
Normal file
@@ -0,0 +1,25 @@
|
||||
The bootloader is no longer buildable in the latest Freescale/NXP tree or
|
||||
upstream. As such, retrieve the "Image: SDK V1.2 e500v2 Binary ISO" from
|
||||
NXP downloads and follow the release notes for reflashing.
|
||||
|
||||
For programming the kernel and rootfs created by buildroot into the flash.
|
||||
The fast way is to tftp transfer the files via one of the network interfaces.
|
||||
Make sure your devkit has ipaddr and serverip defined to reach your tftp
|
||||
server.
|
||||
|
||||
(Assuming the default u-boot env from NXP)
|
||||
1. Program the DTB to NOR flash
|
||||
|
||||
=> setenv dtbfile p1025twr.dtb
|
||||
=> run dtbflash
|
||||
|
||||
2. Program the kernel and rootfs to NOR flash (reusing orignal rootfs
|
||||
NOR location, as the kernel location is to small)
|
||||
|
||||
=> tftpboot $loadaddr uImage; protect off 0xeeb80000 +$filesize; erase 0xeeb80000 +$filesize; cp.b $loadaddr 0xeeb80000 $filesize; protect on 0xeeb80000 +$filesize; cmp.b $loadaddr 0xefa80000 $filesize
|
||||
|
||||
3. Booting your new system
|
||||
|
||||
=> bootm 0xeeb80000 - 0xefe80000
|
||||
|
||||
You can login with user "root".
|
||||
24
bsp/buildroot/board/freescale/t1040d4rdb/readme.txt
Normal file
24
bsp/buildroot/board/freescale/t1040d4rdb/readme.txt
Normal file
@@ -0,0 +1,24 @@
|
||||
For the bootloader, NXP has stablized at SDK2.0 (final release). It is
|
||||
suggested to download the prebuilt from NXP downloads and follow the
|
||||
release notes for reflashing.
|
||||
|
||||
To program the kernel and rootfs created by buildroot into the flash. The
|
||||
fast way is to tftp transfer the files via one of the network interfaces.
|
||||
Make sure your devkit has ipaddr and serverip defined to reach your tftp
|
||||
server.
|
||||
|
||||
(Assuming the default u-boot env from NXP)
|
||||
1. Program the DTB to NOR flash
|
||||
|
||||
=> tftpboot $loadaddr t1040d4rdb.dtb; protect off 0xe8800000 +$filesize; erase 0xe8800000 +$filesize; cp.b $loadaddr 0xe8800000 $filesize; protect on 0xe8800000 +$filesize; cmp.b $loadaddr 0xe8800000 $filesize
|
||||
|
||||
2. Program the kernel and rootfs to NOR flash
|
||||
|
||||
=> tftpboot $loadaddr uImage; protect off 0xe8020000 +$filesize; erase 0xe8020000 +$filesize; cp.b $loadaddr 0xe8020000 $filesize; protect on 0xe8020000 +$filesize; cmp.b $loadaddr 0xe8020000 $filesize
|
||||
=> tftpboot $loadaddr rootfs.cpio.uboot; protect off 0xe9300000 +$filesize; erase 0xe9300000 +$filesize; cp.b $loadaddr 0xe9300000 $filesize; protect on 0xe9300000 +$filesize; cmp.b $loadaddr 0xe9300000 $filesize
|
||||
|
||||
3. Booting your new system
|
||||
|
||||
=> boot
|
||||
|
||||
You can login with user "root".
|
||||
Reference in New Issue
Block a user