raspberrypi: update packages and defconfigs (branch yem/rpi)
v2 cover raspberrypi: update packages and defconfigs (branch yem/rpi)
Hello All!
This series updates our support for the RaspberryPi line of boards:
RaspberryPi models A and B, A+ and B+, and model 2 B.
Patch 1 adds the option to install a utility to diagnmose issues when talking to the GPU (useful to debug DT-related issues... when booted!)
Patches 2-5 update our defconfig files and drops the defconfig without DT support.
Patch 6 updates the board instructions according to the previous patches.
Thanks to Floris and Pascal for their initial works! :-)
Changes v1 -> v2:
- vcdbg selects rpi-userland (Baruch, Thomas)
- merge defconfig files for A/B and A+/B+ (Thomas)
- further bump the kernel version
- update board readme after defconfig merge
Regards,
Yann E. MORIN.
The following changes since commit 41282cbdd62dd1299be50428e436e96c45f916eb:
package/rpi-userland: bump version (2015-06-29 22:16:45 +0200)
are available in the git repository at:
git://git.busybox.net/~ymorin/git/buildroot yem/rpi
for you to fetch changes up to ce3d41536398919a5aa02211e7a85c82771a4e52:
boards/raspberrypi: update instructions (2015-06-30 00:01:09 +0200)
----------------------------------------------------------------
Yann E. MORIN (6):
package/rpi-firmware: add option to install vcdbg configs/raspberrypi: update the DT-enabled config configs/raspberrypi2: update our defconfig config/raspberrypi: remove non-DT defconfig config/raspberrypi: rename our non-DT defconfig file boards/raspberrypi: update instructions
board/raspberrypi/linux-3.18-rpi-dt.defconfig | 204 -------------------------- board/raspberrypi/readme.txt | 48 +++--- configs/raspberrypi2_defconfig | 16 +- configs/raspberrypi_defconfig | 26 ++-- configs/raspberrypi_dt_defconfig | 20 --- package/rpi-firmware/Config.in | 13 ++ package/rpi-firmware/rpi-firmware.mk | 7 + 7 files changed, 69 insertions(+), 265 deletions(-) delete mode 100644 board/raspberrypi/linux-3.18-rpi-dt.defconfig delete mode 100644 configs/raspberrypi_dt_defconfig
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH v2 1/6 package/rpi-firmware: add option to install vcdbg
vcdbg is a tool to help debug the communication with the GPU. It comes as a binary-only, and in two flavours: one for the hard floating point ABI, one for the software floating poitn ABI.
Unfortunately, we have no source code for that tool, only a binary that was dynamically linked with glibc and libraries from rpi-userland.
So, just install that executable, and let's hope there is no symbol issue at runtime.
Cc; Floris Bos <[email protected]>
Cc: Pascal de Bruijn <[email protected]>
Cc: Baruch Siach <[email protected]>
Cc: Thomas Petazzoni <[email protected]>
---
Changes v1 -> v2:
- select rpi-userland (Baruch, Thomas)
--- package/rpi-firmware/Config.in | 13 +++++++++++++ package/rpi-firmware/rpi-firmware.mk | 7 +++++++ 2 files changed, 20 insertions(+)
package/rpi-firmware/Config.in +13 -0
@@ -65,4 +65,17 @@ config BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS Say 'y' here if you need to load one or more of the DTB overlays, to support HATs (Hardware Attached on Top, add-on modules). +config BR2_PACKAGE_RPI_FIRMWARE_INSTALL_VCDBG + bool "vcdbg" + depends on BR2_INSTALL_LIBSTDCPP # rpi-userland + depends on BR2_TOOLCHAIN_HAS_THREADS # rpi-userland + depends on !BR2_STATIC_LIBS # rpi-userland + select BR2_PACKAGE_RPI_USERLAND + help + Install vcdbg, to help debug communication with the GPU. + +comment "vcdbg needs a toolchain w/ C++, threads, dynamic library" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \ + || BR2_STATIC_LIBS + endif # BR2_PACKAGE_RPI_FIRMWARE
package/rpi-firmware/rpi-firmware.mk +7 -0
@@ -29,6 +29,13 @@ define RPI_FIRMWARE_INSTALL_DTB_OVERLAYS endef endif +ifeq ($(BR2_PACKAGE_RPI_FIRMWARE_INSTALL_VCDBG),y) +define RPI_FIRMWARE_INSTALL_TARGET_CMDS + $(INSTALL) -d -m 0700 $(@D)/$(if BR2_ARM_EABIHF,hardfp/)opt/vc/bin/vcdbg \ + $(TARGET_DIR)/usr/sbin/vcdbg +endef +endif # INSTRALL_VCDBG + define RPI_FIRMWARE_INSTALL_IMAGES_CMDS $(INSTALL) -D -m 0644 $(@D)/boot/bootcode.bin $(BINARIES_DIR)/rpi-firmware/bootcode.bin $(INSTALL) -D -m 0644 $(@D)/boot/start$(BR2_PACKAGE_RPI_FIRMWARE_BOOT).elf $(BINARIES_DIR)/rpi-firmware/start.elf
Signature · 1 line
1.9.1
PATCH v2 1/6 package/rpi-firmware: add option to install vcdbg
Hi Yann,
Quoted 3 lines · Yann E. MORIN
vcdbg is a tool to help debug the communication with the GPU. It comes as a binary-only, and in two flavours: one for the hard floating point ABI, one for the software floating poitn ABI.
s/poitn/point/
Quoted 2 lines
Unfortunately, we have no source code for that tool, only a binary that was dynamically linked with glibc and libraries from rpi-userland.
Shouldn't it depend on glibc them? Does it run with uClibc*/musl?
Quoted 2 lines
So, just install that executable, and let's hope there is no symbol issue at runtime.
baruch
Signature · 3 lines
http://baruch.siach.name/blog/ ~. .~ Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
- baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -PATCH v2 1/6 package/rpi-firmware: add option to install vcdbg
Baruch, All,
On 2015-06-30 06:35 +0300, Baruch Siach spake thusly:
Quoted 11 lines · Yann E. MORIN
Quoted 3 lines
vcdbg is a tool to help debug the communication with the GPU. It comes as a binary-only, and in two flavours: one for the hard floating point ABI, one for the software floating poitn ABI.
s/poitn/point/
Quoted 2 lines
Unfortunately, we have no source code for that tool, only a binary that was dynamically linked with glibc and libraries from rpi-userland.
Shouldn't it depend on glibc them? Does it run with uClibc*/musl?
No, it does not run with musl or uClibc/uClibc-ng, because it is linked to libc.so.6.
I'll fix that (and the typo). Thanks! :-)
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH v2 2/6 configs/raspberrypi: update the DT-enabled config
In reply to Yann E. MORINUpdate to the latest stable kernel version; build an in-tree DTB; use a in-tree defconfig; enable C++ (to match what we have in the non-DT variant); do not install DTB overlays (this minimalist config does not make use of them).
Generate the DTBs for both the "original" variant (A and B) and the "Plus" variant (A+ and B+).
Drop our custom linux defconfig file now we use an in-tree one.
---
Changes v1 -> v2:
- use a singled defconfig for a/B and A+/B+ (Thomas)
- further bump the kernel version
--- board/raspberrypi/linux-3.18-rpi-dt.defconfig | 204 -------------------------- configs/raspberrypi_dt_defconfig | 21 ++- 2 files changed, 14 insertions(+), 211 deletions(-) delete mode 100644 board/raspberrypi/linux-3.18-rpi-dt.defconfig
board/raspberrypi/linux-3.18-rpi-dt.defconfig deleted +0 -204
@@ -1,204 +0,0 @@ -# CONFIG_LOCALVERSION_AUTO is not set -CONFIG_KERNEL_XZ=y -# CONFIG_SWAP is not set -CONFIG_SYSVIPC=y -CONFIG_POSIX_MQUEUE=y -CONFIG_FHANDLE=y -CONFIG_NO_HZ_IDLE=y -CONFIG_HIGH_RES_TIMERS=y -CONFIG_IKCONFIG=m -CONFIG_IKCONFIG_PROC=y -CONFIG_LOG_BUF_SHIFT=21 -# CONFIG_UTS_NS is not set -# CONFIG_IPC_NS is not set -# CONFIG_PID_NS is not set -# CONFIG_NET_NS is not set -CONFIG_RELAY=y -# CONFIG_COMPAT_BRK is not set -CONFIG_JUMP_LABEL=y -CONFIG_MODULES=y -CONFIG_MODULE_UNLOAD=y -# CONFIG_BLK_DEV_BSG is not set -# CONFIG_IOSCHED_DEADLINE is not set -# CONFIG_IOSCHED_CFQ is not set -CONFIG_ARCH_BCM2708=y -CONFIG_BCM2708_DT=y -CONFIG_PREEMPT=y -CONFIG_AEABI=y -CONFIG_KSM=y -CONFIG_UACCESS_WITH_MEMCPY=y -# CONFIG_ATAGS is not set -CONFIG_KEXEC=y -CONFIG_AUTO_ZRELADDR=y -CONFIG_CPU_FREQ=y -CONFIG_CPU_FREQ_STAT=m -CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE=y -CONFIG_CPU_FREQ_GOV_POWERSAVE=m -CONFIG_CPU_FREQ_GOV_USERSPACE=m -CONFIG_CPU_FREQ_GOV_ONDEMAND=m -CONFIG_VFP=y -CONFIG_BINFMT_MISC=m -# CONFIG_SUSPEND is not set -CONFIG_NET=y -CONFIG_PACKET=y -CONFIG_PACKET_DIAG=m -CONFIG_UNIX=y -CONFIG_UNIX_DIAG=m -CONFIG_INET=y -CONFIG_SYN_COOKIES=y -# CONFIG_INET_XFRM_MODE_TRANSPORT is not set -# CONFIG_INET_XFRM_MODE_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_BEET is not set -# CONFIG_INET_LRO is not set -CONFIG_INET_DIAG=m -CONFIG_INET_UDP_DIAG=m -# CONFIG_IPV6 is not set -CONFIG_NETLINK_DIAG=y -CONFIG_BPF_JIT=y -# CONFIG_WIRELESS is not set -CONFIG_DEVTMPFS=y -CONFIG_DEVTMPFS_MOUNT=y -# CONFIG_FIRMWARE_IN_KERNEL is not set -CONFIG_CONNECTOR=y -CONFIG_BLK_DEV_LOOP=m -CONFIG_BLK_DEV_RAM=m -CONFIG_SCSI=m -# CONFIG_SCSI_PROC_FS is not set -CONFIG_BLK_DEV_SD=m -# CONFIG_SCSI_LOWLEVEL is not set -CONFIG_NETDEVICES=y -CONFIG_DUMMY=m -# CONFIG_ETHERNET is not set -CONFIG_USB_USBNET=m -# CONFIG_USB_NET_AX8817X is not set -# CONFIG_USB_NET_AX88179_178A is not set -# CONFIG_USB_NET_CDCETHER is not set -# CONFIG_USB_NET_CDC_NCM is not set -CONFIG_USB_NET_SMSC95XX=m -# CONFIG_USB_NET_NET1080 is not set -# CONFIG_USB_NET_CDC_SUBSET is not set -# CONFIG_USB_NET_ZAURUS is not set -# CONFIG_WLAN is not set -CONFIG_INPUT_SPARSEKMAP=m -CONFIG_INPUT_EVDEV=m -# CONFIG_INPUT_KEYBOARD is not set -# CONFIG_INPUT_MOUSE is not set -# CONFIG_SERIO is not set -# CONFIG_LEGACY_PTYS is not set -# CONFIG_DEVKMEM is not set -CONFIG_SERIAL_AMBA_PL011=y -CONFIG_SERIAL_AMBA_PL011_CONSOLE=y -CONFIG_HW_RANDOM_BCM2708=m -CONFIG_I2C=m -CONFIG_I2C_CHARDEV=m -CONFIG_I2C_BCM2835=m -CONFIG_I2C_BCM2708=m -CONFIG_SPI=y -CONFIG_SPI_BCM2835=m -CONFIG_SPI_BCM2708=m -CONFIG_SPI_BITBANG=m -CONFIG_GPIO_SYSFS=y -CONFIG_GPIO_GENERIC_PLATFORM=y -# CONFIG_HWMON is not set -CONFIG_THERMAL=y -CONFIG_THERMAL_BCM2835=y -CONFIG_WATCHDOG=y -CONFIG_SOFT_WATCHDOG=m -CONFIG_BCM2708_WDT=m -CONFIG_REGULATOR=y -CONFIG_REGULATOR_FIXED_VOLTAGE=m -CONFIG_REGULATOR_USERSPACE_CONSUMER=m -CONFIG_FB=y -CONFIG_FIRMWARE_EDID=y -CONFIG_FB_MODE_HELPERS=y -CONFIG_FB_BCM2708=y -CONFIG_FRAMEBUFFER_CONSOLE=y -CONFIG_LOGO=y -# CONFIG_LOGO_LINUX_MONO is not set -# CONFIG_LOGO_LINUX_VGA16 is not set -CONFIG_SOUND=m -CONFIG_SND=m -CONFIG_SND_SEQUENCER=m -CONFIG_SND_SEQ_DUMMY=m -CONFIG_SND_MIXER_OSS=m -CONFIG_SND_PCM_OSS=m -CONFIG_SND_SEQUENCER_OSS=y -CONFIG_SND_HRTIMER=m -# CONFIG_SND_SUPPORT_OLD_API is not set -CONFIG_SND_DUMMY=m -CONFIG_SND_BCM2835=m -# CONFIG_SND_SPI is not set -CONFIG_SND_USB_AUDIO=m -CONFIG_HIDRAW=y -CONFIG_UHID=y -CONFIG_HID_PID=y -CONFIG_USB_HIDDEV=y -CONFIG_USB=y -CONFIG_USB_ANNOUNCE_NEW_DEVICES=y -CONFIG_USB_DYNAMIC_MINORS=y -CONFIG_USB_DWCOTG=y -CONFIG_USB_STORAGE=m -CONFIG_USB_STORAGE_REALTEK=m -CONFIG_USB_STORAGE_DATAFAB=m -CONFIG_USB_STORAGE_FREECOM=m -CONFIG_USB_STORAGE_ISD200=m -CONFIG_USB_STORAGE_USBAT=m -CONFIG_USB_STORAGE_SDDR09=m -CONFIG_USB_STORAGE_SDDR55=m -CONFIG_USB_STORAGE_JUMPSHOT=m -CONFIG_USB_STORAGE_ALAUDA=m -CONFIG_USB_STORAGE_ONETOUCH=m -CONFIG_USB_STORAGE_KARMA=m -CONFIG_USB_STORAGE_CYPRESS_ATACB=m -CONFIG_USB_STORAGE_ENE_UB6250=m -CONFIG_MMC=y -CONFIG_MMC_SDHCI=y -CONFIG_MMC_SDHCI_PLTFM=y -CONFIG_MMC_BCM2835=y -CONFIG_MMC_BCM2835_DMA=y -CONFIG_NEW_LEDS=y -CONFIG_LEDS_CLASS=y -CONFIG_LEDS_GPIO=m -CONFIG_LEDS_TRIGGERS=y -CONFIG_LEDS_TRIGGER_TIMER=m -CONFIG_LEDS_TRIGGER_ONESHOT=m -CONFIG_LEDS_TRIGGER_HEARTBEAT=m -CONFIG_LEDS_TRIGGER_BACKLIGHT=m -CONFIG_LEDS_TRIGGER_CPU=y -CONFIG_LEDS_TRIGGER_GPIO=m -CONFIG_LEDS_TRIGGER_DEFAULT_ON=m -CONFIG_LEDS_TRIGGER_TRANSIENT=m -CONFIG_LEDS_TRIGGER_CAMERA=m -# CONFIG_IOMMU_SUPPORT is not set -CONFIG_EXT2_FS=m -CONFIG_EXT3_FS=m -# CONFIG_EXT3_FS_XATTR is not set -CONFIG_EXT4_FS=y -CONFIG_FANOTIFY=y -CONFIG_MSDOS_FS=m -CONFIG_VFAT_FS=m -CONFIG_FAT_DEFAULT_CODEPAGE=850 -CONFIG_FAT_DEFAULT_IOCHARSET="utf8" -CONFIG_TMPFS=y -CONFIG_TMPFS_POSIX_ACL=y -CONFIG_CONFIGFS_FS=m -# CONFIG_MISC_FILESYSTEMS is not set -# CONFIG_NETWORK_FILESYSTEMS is not set -CONFIG_NLS_DEFAULT="utf8" -CONFIG_NLS_CODEPAGE_437=m -CONFIG_NLS_CODEPAGE_850=m -CONFIG_NLS_ASCII=m -CONFIG_NLS_ISO8859_1=m -CONFIG_NLS_ISO8859_15=m -CONFIG_NLS_UTF8=m -CONFIG_PRINTK_TIME=y -CONFIG_STRIP_ASM_SYMS=y -CONFIG_PANIC_ON_OOPS=y -# CONFIG_RCU_CPU_STALL_VERBOSE is not set -CONFIG_STRICT_DEVMEM=y -CONFIG_DEBUG_USER=y -CONFIG_CRYPTO_MANAGER=m -# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set -CONFIG_CRYPTO_NULL=m -# CONFIG_CRYPTO_ANSI_CPRNG is not set -# CONFIG_CRYPTO_HW is not set
configs/raspberrypi_dt_defconfig +14 -7
@@ -3,18 +3,25 @@ BR2_arm1176jzf_s=y BR2_TARGET_GENERIC_GETTY_PORT="tty1" -# Lock to 3.18 headers as the RPi kernel with -# DT support is based off the 3.18 branch +# Lock to 4.0 headers as the RPi kernel stable tree is +# based off the 4.0 branch BR2_KERNEL_HEADERS_VERSION=y -BR2_DEFAULT_KERNEL_VERSION="3.18" -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_18=y +BR2_DEFAULT_KERNEL_VERSION="4.0.6" +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_0=y + +BR2_TOOLCHAIN_BUILDROOT_CXX=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux.git" -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="2747cc0bde4ca441691260fae1e34c9ef954ccae" -BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y -BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/raspberrypi/linux-3.18-rpi-dt.defconfig" +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="f90f981770e3ac8506dc84c9cd01471faaa0b0c2" +BR2_LINUX_KERNEL_USE_DEFCONFIG=y +BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi" BR2_LINUX_KERNEL_ZIMAGE=y +# Build the DTBs for A/B and A+/B+ from the kernel sources +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2708-rpi-b bcm2708-rpi-b-plus" + BR2_PACKAGE_RPI_FIRMWARE=y +# BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS is not set
Signature · 1 line
1.9.1
PATCH v2 3/6 configs/raspberrypi2: update our defconfig
In reply to Yann E. MORINUpdate to the latest stable kernel version (4.0.y); build an in-tree DTB.
---
Changes v1 -> v2:
- further bump kernel version
--- configs/raspberrypi2_defconfig | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-)
configs/raspberrypi2_defconfig +11 -5
@@ -7,16 +7,22 @@ BR2_TOOLCHAIN_BUILDROOT_CXX=y BR2_TARGET_GENERIC_GETTY_PORT="tty1" -# Lock to 3.18 headers as the RPi2 kernel is based off the 3.18 branch +# Lock to 4.0 headers as the RPi kernel stable tree is +# based off the 4.0 branch BR2_KERNEL_HEADERS_VERSION=y -BR2_DEFAULT_KERNEL_VERSION="3.18" -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_18=y +BR2_DEFAULT_KERNEL_VERSION="4.0.6" +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_0=y BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_GIT=y BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/raspberrypi/linux.git" -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="2747cc0bde4ca441691260fae1e34c9ef954ccae" +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="f90f981770e3ac8506dc84c9cd01471faaa0b0c2" BR2_LINUX_KERNEL_DEFCONFIG="bcm2709" -BR2_LINUX_KERNEL_ZIMAGE=y +BR2_LINUX_KERNEL_ZIMAGE=yo + +# Build the DTB from the kernel sources +BR2_LINUX_KERNEL_DTS_SUPPORT=y +BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2709-rpi-2-b" BR2_PACKAGE_RPI_FIRMWARE=y +# BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS is not set
Signature · 1 line
1.9.1
PATCH v2 4/6 config/raspberrypi: remove non-DT defconfig
In reply to Yann E. MORINThe RPi is slowly but surely dropping support for booting without a DTB, so just ditch our old defconfig now that we have up-to-date DT-enabled defconfigs for all RPi models (save for the compute module).
--- configs/raspberrypi_defconfig | 21 --------------------- 1 file changed, 21 deletions(-) delete mode 100644 configs/raspberrypi_defconfig
configs/raspberrypi_defconfig deleted +0 -21
@@ -1,21 +0,0 @@ -BR2_arm=y -BR2_arm1176jzf_s=y - -BR2_TOOLCHAIN_BUILDROOT_CXX=y - -BR2_TARGET_GENERIC_GETTY_PORT="tty1" - -BR2_PACKAGE_RPI_FIRMWARE=y - -# Lock to 3.12 headers as the RPi kernel is based off the 3.12 branch -BR2_KERNEL_HEADERS_VERSION=y -BR2_DEFAULT_KERNEL_VERSION="3.12.28" -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_12=y - -BR2_LINUX_KERNEL=y -BR2_LINUX_KERNEL_CUSTOM_GIT=y -BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://github.com/raspberrypi/linux.git" -BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="c256eb9968c8997dce47350d2075e42f1b3991d3" -BR2_LINUX_KERNEL_USE_DEFCONFIG=y -BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi_quick" -BR2_LINUX_KERNEL_ZIMAGE=y
Signature · 1 line
1.9.1
PATCH v2 5/6 config/raspberrypi: rename our non-DT defconfig file
In reply to Yann E. MORINSince we no longer have a non-DT defconfig, and we no longer want to advertise such a possibility (non-DT is being phased out), just rename the DT-enabled defconfig file.
---
configs/{raspberrypi_dt_defconfig => raspberrypi_defconfig} | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename configs/{raspberrypi_dt_defconfig => raspberrypi_defconfig} (100%)configs/raspberrypi_defconfig renamed from configs/raspberrypi_dt_defconfig +0 -0
Signature · 1 line
1.9.1
PATCH v2 6/6 boards/raspberrypi: update instructions
In reply to Yann E. MORINNow that we have a sanitised set of defconfig files, and we no longer support non-DT setups, update and simplify the board readme file.
---
Changes v1 -> v2:
- update after merge of A/B and A+/B+ (Thomas)
--- board/raspberrypi/readme.txt | 48 ++++++++++++++++++++------------------------ 1 file changed, 22 insertions(+), 26 deletions(-)
board/raspberrypi/readme.txt +22 -26
@@ -22,17 +22,14 @@ How to build it Configure Buildroot ------------------- -The raspberrypi_defconfig configuration is a minimal configuration with -all that is required to bring the Raspberry Pi up. You should base your -work on this defconfig: +There are two RaspberryPi defconfig files in Buildroot, one for each +major variant, which you should base your work on: - $ make raspberrypi_defconfig - -Alternatively, if you want to test support for the Device Tree: +For models A, B, A+ or B+: - $ make raspberrypi_dt_defconfig + $ make raspberrypi_defconfig -For Raspberry Pi 2 use a different defconfig: +And for model 2 B: $ make raspberrypi2_defconfig
@@ -64,20 +61,23 @@ Result of the build After building, you should obtain this tree: output/images/ - +-- rootfs.tar [0] + +-- rootfs.tar [0] +-- rpi-firmware/ - | +-- bcm2708-rpi-b.dtb - | +-- bcm2708-rpi-b-plus.dtb - | +-- bcm2709-rpi-2-b.dtb | +-- bootcode.bin | +-- config.txt | +-- fixup.dat | `-- start.elf + +-- bcm2708-rpi-b.dtb [1] + +-- bcm2708-rpi-b-plus.dtb [1] + +-- bcm2709-rpi-2-b.dtb [1] `-- zImage [0] Note for Volatile: rootfs.tar will only be there if you kept "tar the root filesystem" option selected in "Filesystem images". +[1] Not all of them will be present, depending on the RaspberryPi + model you are using. + Prepare you SDCard ==================
@@ -105,30 +105,26 @@ Install the binaries to the SDCard At the root of the boot partition, the Raspberry Pi must find the following files: - * bcm2708-rpi-b.dtb [1] - * bcm2708-rpi-b-plus.dtb [2] - * bcm2709-rpi-2-b.dtb [3] + * bcm2708-rpi-b.dtb [2] + * bcm2708-rpi-b-plus.dtb [3] + * bcm2709-rpi-2-b.dtb [4] * bootcode.bin * config.txt * fixup.dat * start.elf * zImage -[1] For models A and B -[2] For models A+ and B+ -[3] For model 2 +[2] For models A and B +[3] For models A+ and B+ +[4] For model 2 For example: - $ cp output/images/rpi-firmware/* /mnt/mountpointboot - -If your kernel does *not* have support for the Device Tree, then install -it with: - - $ cp output/images/zImage /mnt/mountpointboot + $ cp output/images/rpi-firmware/* /mnt/mountpointboot + $ cp output/images/*.dtb /mnt/mountpointboot -If your kernel *does* have support for the Device Tree, then install it -with: +The kernel image must be marked with a special header so that the +bootloader of the RaspberryPi knows it supports Device Tree: $ ./output/host/usr/bin/mkknlimg output/images/zImage /mnt/mountpointboot/zImage
Signature · 1 line
1.9.1
v2 cover raspberrypi: update packages and defconfigs (branch yem/rpi)
In reply to Yann E. MORINDear Yann E. MORIN,
Quoted 2 lines · Yann E. MORIN
Yann E. MORIN (6):
package/rpi-firmware: add option to install vcdbg
There are still some pending questions on that one.
Quoted 5 lines
configs/raspberrypi: update the DT-enabled config configs/raspberrypi2: update our defconfig config/raspberrypi: remove non-DT defconfig config/raspberrypi: rename our non-DT defconfig file boards/raspberrypi: update instructions
All these ones applied, thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com