Configuration contains:
- building tpl, spl and u-boot (forked u-boot repository)
- booting from SD card and network via PXE
- working ethernet, usb and uart
- minimal rootfs with busybox
- ready to flash SD card image
Signed-off-by: Michał Łyszczek <michal.lyszczek@bofc.pl>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Since all EFI-based systems support GPT, this commit changes
pc_x86_64_efi to use a GPT partition table. It shows an example of how
to craft a disk image with GPT partitioning instead of MBR. This is
achieved by means of a post-image script which uses
mkdosfs+mcopy+sfdisk, since genimage is unable to deal with GPT. Long
term, it would be ideal if genimage had GPT support, but until then,
this script shows how to achieve creating a GPT-based disk image.
The script was kept as simple as possible to make it easy to understand
and adapt for other purposes.
The root filesystem location is passed to the kernel by a partition
UUID, so it is possible to boot on QEMU, directly from the disk image,
or dump the image to a physical device.
Signed-off-by: Carlos Santos <casantos@datacom.com.br>
Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
qemu_aarch64_virt_defconfig (implicitly) specifies cortex-a53, so adjust the
QEMU command line to also emulate a a53 instead of a57.
Also adjust the defconfig to explicitly specify a53 for consistency/clarity.
Signed-off-by: Gerome Burlats <gerome.burlats@smile.fr>
Cc: Romain Naour <romain.naour@smile.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since riscv64 works with linux default defconfig, this patch drop custom config.
Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Tested-by: Mark Corbin <mark.corbin@embecosm.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Bump U-Boot and kernel to their latest releases.
Remove the documented limitations. Recent kernels added support for the
SOM SPI flash, and the carrier SFP port.
Mention the 'dd' command in the warning text. No script is involved.
Cc: Jan Kundrát <jan.kundrat@cesnet.cz>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Before this commit, the grub configuration file was copied to the
TARGET_DIR in a post-image hook, after the filesystem has been
generated. It was kinda working because the board/pc's grub
configuration and the default one are the same and the later was
copied during the build process of the grub2 package.
This commit ensures the custom board/pc grub configuration is copied at
the right time.
Signed-off-by: Grégoire Delattre <gregoire.delattre@gmail.com>
Reviewed-by: Matt Weber <matthew.weber@rockwellcollin.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This updates LEGO MINDSTORMS EV3 to Linux kernel 4.19 and U-Boot
2018.11. This kernel brings Bluetooth support, so some Bluez packages
are also added. Also, we now have proper device tree support, so a few
things are rearranged in the flash and SD card images since the DTB is
no longer appended to the kernel image.
Signed-off-by: David Lechner <david@lechnology.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The first stage bootloader on LEGO MINDSTORMS EV3 only loads the first
256K of the flash memory (this is hard-coded in an EEPROM). So, the
second stage bootloader (U-Boot) cannot exceed this size.
Signed-off-by: David Lechner <david@lechnology.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
NXP U-Boot tree has the following build issue:
MKIMAGE u-boot-dtb.imx
Error: No BOOT_FROM tag in board/freescale/mx7dsabresd/imximage.cfg.cfgtmp
arch/arm/imx-common/Makefile:91: recipe for target 'u-boot-dtb.imx' failed
make[2]: *** [u-boot-dtb.imx] Error 1
Makefile:877: recipe for target 'u-boot-dtb.imx' failed
This issue has been fixed by commit f916757300c1 ("imx: Create
distinct pre-processed mkimage config files"), so backport this
commit to the NXP U-Boot tree in order to fix the build error.
Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/136980027
Reported-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This patch updates the csky custom external toolchain to fix a broken
host dependency of gdb on libexpat.so.0 (most hosts now ship
libexpat.so.1). gdb is required to copy and and boot the kernel (see
board/csky/readme.txt). The updated gdb no longer has this host
dependency, which solves the issue.
Since this external toolchain was built and tested with csky kernel
4.9.56, this patch also updates to that kernel version.
Finally, this 4.9.56 csky kernel changed its default bootargs. So we
add a patch to preserve the same behavior as the previous version.
Signed-off-by: Julien Olivain <juju@cotds.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Orangepi lite2 board has AP6356S WiFi/BT combo, but does
not have ethernet port. So it makes sense to enable wireless
networking by default:
- add broadcom wireless firmware package to image
- add basic wireless tools to image
- add rootfs overlay with proper NVRAM file for on-board AP6356S chip
- add mdev to image to enable module autoloading
- update readme.txt to test wifi
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Add initial support for Orangepi Lite2 board with below features:
- U-Boot 2018.09
- Linux 4.19.0-rc8
- Default packages from buildroot
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Add initial support for Orangepi One Plus board with below features:
- U-Boot 2018.09
- Linux 4.19.0-rc8
- Default packages from buildroot
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Currently, U-Boot is failing to build, due to some issues
with the toolchain and the U-Boot port.
Fix it.
Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
New generic defconfig for aarch64, to run on aarch64 servers compliant
with EFI firmware and ACPI.
This can also be tested with qemu, and is useful so that we have an
arm defconfig with grub enabled. Tested with qemu 2.11.2 and AAVMF,
the aarch64 virtual machine UEFI firmware.
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
[Thomas: extend readme.txt with more details]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
4.18 brought cpufreq support for H3, but sunxi_defconfig does not enable the
ondemand cpufreq govenor so the frequency is dynamically adjusted - So
enable it in linux-extra.config.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
4.18 brought cpufreq support for H3, but sunxi_defconfig does not enable the
driver for the sy8106a regulator used on the board or enable the ondemand
cpufreq govenor so the frequency is dynamically adjusted - So enable these in
linux.fragment.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The default ORC unwinder requires libelf to be built. While we could
build libelf using BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF, we probably
don't really need the ORC unwinder in the PC defconfigs, so let's use
the frame pointer unwinder instead.
Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/123771107
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Update the kernel and U-Boot versions to the actual versions in use.
Update the description of supported hardware features.
Add a note that the stale SPI flash environment issue only affects the
vendor BSP.
Cc: Sergey Matyukevich <geomatsi@gmail.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Bump U-Boot to version 2018.11. This version supports autodetection of
SD/eMMC boot source, so we can now enable environment load from SD card.
Add a U-Boot kconfig fragment that sets SD/eMMC as environment load/save
device. This avoids stale environment values from the SPI flash. That in
turn, allows to use the more convenient distro boot which is enabled in
the default environment.
Bump kernel to version 4.19.2. This version enables
CONFIG_PHY_MVEBU_CP110_COMPHY in the arm64 defconfig, so remove it from
the kernel kconfig fragment. Enable support for SFP modules detection
and configuration. Leave the PHY drivers for now to keep them built into
the kernel. The kernel defconfig builds these drivers as modules. But
that does not work as expected in the default configuration.
Cc: Sergey Matyukevich <geomatsi@gmail.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Tested-by: Sergey Matyukevich <geomatsi@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Amarula A64-Relic board has AP6330 WiFi/BT combo, but does
not have ethernet port. So it makes sense to enable wireless
networking by default:
- add broadcom wireless firmware package to image
- add basic wireless tools to image
- add rootfs overlay with proper NVRAM file for on-board AP6330 chip
- add mdev to image to enable module autoloading
- update readme.txt to test wifi
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Add initial support for Amarula A64-Relic board
with below features:
- U-Boot 2018.07
- Linux 4.17.0-rc6
- Default packages from buildroot
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
[Thomas: add missing BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y and
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y options.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Some ZynqMP device trees in the kernel have a dot in their name,
for example "zynqmp-zcu102-rev1.0". The post image script
left out the part after the dot and created an invalid symlink.
Signed-off-by: Francois Beerten <fbeerten.git@colabti.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This patch provides support for the board Odroid XU4. It uses a recent
4.14 kernel released by Hardkernel, and the current u-boot 2017.05
also from Hardkernel.
Signed-off-by: Pierre CROKAERT <pct@crookies.net>
[Thomas:
- Update DEVELOPERS file
- Update .gitlab-ci.yml file
- Simplify the boot.ini script
- Add missing BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14 option
- Add BR2_PACKAGE_HOST_DOSFSTOOLS and BR2_PACKAGE_HOST_MTOOLS since a
VFAT filesystem is generated
- Keep the default root filesystem size, since it is sufficient.
- Reduce the size of the VFAT filesystem]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Add intial support for Bananapi M2 Ultra board based on the Allwinner
R40 SoC.
- U-Boot 2018.07
- Linux 4.18.12
Board specifications: http://www.banana-pi.org/m2u.html
Signed-off-by: Lothar Felten <lothar.felten@gmail.com>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Add RISC-V 64-bit defconfig for QEMU virt machine.
Tested with QEMU 2.12.1
Signed-off-by: Mark Corbin <mark.corbin@embecosm.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit renames olimex_a20_olinuxino_lime_mali to
olimex_a20_olinuxino_lime_legacy, because the upstream Linux kernel
now also supports using the Mali GPU.
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This patch removes duplicate messages in Linux log on HSDK board.
For HSDK board we setup bootargs via device tree,
see https://elixir.bootlin.com/linux/latest/source/arch/arc/boot/dts/hsdk.dts#L25
"console=ttyS3" was mistakenly placed in u-boot bootargs which are
appended to Kernel bootargs in case of using buildin .dtb.
Before patch log is like:
------------------------8<-------------------------------------
mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 25000000Hz,...
mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 25000000Hz,...
mmc0: new SDHC card at address 59b4
mmc0: new SDHC card at address 59b4
blk_queue_max_segment_size: set to minimum 8192
blk_queue_max_segment_size: set to minimum 8192
------------------------>8-------------------------------------
After patch log is like:
------------------------8<-------------------------------------
mmc_host mmc0: Bus speed (slot 0) = 50000000Hz (slot req 25000000Hz,...
mmc0: new SDHC card at address 59b4
blk_queue_max_segment_size: set to minimum 8192
------------------------8<-------------------------------------
Signed-off-by: Evgeniy Didin <didin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: arc-buildroot@synopsys.com
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Resurrect support for RIoTboard after 2018.02.x deprecation.
Signed-off-by: Nikolay Dimitrov <nikolay.dimitrov@retrohub.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
At first the support for i.MX8MQ processors was minimal, hence this
section in the readme file.
Since then, GPU support was added [1] in master and VPU in next [2].
So drop this section as it is confusing people and no one maintains it.
[1] https://git.buildroot.net/buildroot/commit/?id=84afda9c
[2] https://git.buildroot.net/buildroot/commit/?id=82732071
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
512B is not a correct size to express "512 bytes", and causes a
genimage failure:
ERROR: Invalid size suffix 'B' in '512B'
To express "512 bytes", using just "512" is sufficient. With this
commit, genimage works fine, and we indeed have a 512 bytes unused
partition:
$ fdisk -l output/images/sdcard.img
Disk output/images/sdcard.img: 60 MiB, 62915584 bytes, 122882 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000
Device Boot Start End Sectors Size Id Type
output/images/sdcard.img1 1 1 1 512B 0 Empty
output/images/sdcard.img2 2 524289 524288 256M 83 Linux
Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/88314963
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
As for sh4-r2d (little-endian) restore the old sh-sci driver behaviour
for sh4eb-r2d.
Tested with qemu_sh4eb_r2d_defconfig.
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This reverts commit 18e8cf159177100e69d528293f8cf6875c0b1bca (kernel)
The last Qemu kernel update [1] introduced a regresion in sh4 SCIF
serial device. Some keyboard presses are very slow to be taken into
account, perhaps not even taken into account at all. This would
explain why our test infrastructure doesn’t manage to login as root
[2][3][4].
git bisect reported a kernel patch from 4.11, increasing RX FIFO
trigger defaults value for sh-sci (H)SCIF. The kernel patch itself
looks good but the Qemu emulation is not ready to handle this new
setting.
>From Qemu (2.12.0): target/sh4/README.sh4
"Configuration of the second serial port (SCIF) is supported. FIFO
handling infrastructure has been started but is not completed yet."
We can't use the first serial port (ttySC0) because it's the second
SH UART that's emulated by Qemu.
In order to be able to test sh4 architecture with newer kernel,
revert to the old behaviour.
[1] 03fb00f217
[2] https://gitlab.com/free-electrons/toolchains-builder/-/jobs/72006425
[3] https://gitlab.com/free-electrons/toolchains-builder/-/jobs/72006427
[4] https://gitlab.com/free-electrons/toolchains-builder/-/jobs/72006426
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
U-Boot SPL configures pinmuxes, clocks and other low-level devices. On
the Xilinx ZynqMP SoCs the code to do this resides in a file called
psu_init_gpl.c which is initially generated by the Xilinx development
tools. Add an option to pass these files from the outside (e.g. in the
board files).
For this to work properly, a patch to U-Boot is needed. However this
patch must be applied by each defconfig using
BR2_TARGET_UBOOT_ZYNQMP_PSU_INIT_DIR. If it were in boot/uboot/ to be
applied unconditionally, it would break the build for configs using a
U-Boot version where the patch is already applied.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Cc: Joel Carlson <joelsoncarl@gmail.com>
Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>
[Thomas: add comment about U-Boot version requirements to use this
option.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This adds support the Xilinx ZCU106 development board.
[Tested on the ES2 (Engineering Sample 2) version of the board]
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Cc: Joel Carlson <joelsoncarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
In order to boot on the Xilinx ZynqMP SoCs, U-Boot SPL requires a
recent PMU firmware loaded. Instruct U-Boot to add pmufw.bin to the
boot.bin file together with U-Boot SPL, and the boot ROM will load
both.
For this to work properly, a patch to U-Boot is needed. However this
patch must be applied by each defconfig that wishes to use
BR2_TARGET_UBOOT_ZYNQMP_PMUFW. If it were in boot/uboot/ to be applied
unconditionally, it would break the build for configs using a U-Boot
version higher than 2018.7-rc1 where the patch is already applied.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Cc: Joel Carlson <joelsoncarl@gmail.com>
Reviewed-by: Joel Carlson <JoelsonCarl@gmail.com>
Tested-by: Joel Carlson <JoelsonCarl@gmail.com>
[Thomas:
- indicate that this feature requires U-Boot 2018.07, since commit
c7df098a71e05dc81cee818747759e8060b59626 is needed.
- define UBOOT_ZYNQMP_KCONFIG_PMUFW only once, and instead use a
variable named UBOOT_ZYNQMP_PMUFW_PATH to store the path to the PMU
firmware]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
- Use proper ARCH for mkimage command
- Use different U-Boot binary name depending on ARCH
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
6x_bootscript/6x_upgrade have been deprecated for more than a year.
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The upgrade.cmd script expects the binary to be named
u-boot.<uboot_defconfig>.
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Allow user to override the hardcoded dtb name by using
BR2_ROOTFS_POST_SCRIPT_ARGS.
The only user of this script, configs/freescale_imx8mqevk, is updated
accordingly.
Cc: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Add support for flashing the u-boot-dtb.imx binary in the SD card
when a target selects BR2_TARGET_UBOOT_FORMAT_DTB_IMX.
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The 2017 MinnowBoard Turbot skews no longer use the Realtek 8169
Ethernet chip. The Turbot D0 uses The Intel I211, the Turbot Dual
Ethernet has an I210 (quad-core) or I211 (dual-core).
Add CONFIG_IGB to the Linux config but keep the Realtek 8169 support
to avoid breaking older boards
Tested on Turbot D0, lspci -k shows the igb driver is used:
03:00.0 Class 0200: 8086:1539 igb
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>