* [Buildroot] [PATCH 1/6 v2] package/rpi-firmware: add option to install vcdbg
2015-06-29 22:07 [Buildroot] [PATCH 0/6 v2] raspberrypi: update packages and defconfigs (branch yem/rpi) Yann E. MORIN
@ 2015-06-29 22:07 ` Yann E. MORIN
2015-06-30 3:35 ` Baruch Siach
2015-06-29 22:07 ` [Buildroot] [PATCH 2/6 v2] configs/raspberrypi: update the DT-enabled config Yann E. MORIN
` (5 subsequent siblings)
6 siblings, 1 reply; 10+ messages in thread
From: Yann E. MORIN @ 2015-06-29 22:07 UTC (permalink / raw)
To: buildroot
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.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc; Floris Bos <bos@je-eigen-domein.nl>
Cc: Pascal de Bruijn <pmjdebruijn@pcode.nl>
Cc: Baruch Siach <baruch@tkos.co.il>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
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(+)
diff --git a/package/rpi-firmware/Config.in b/package/rpi-firmware/Config.in
index a060b4e..7e8ab19 100644
--- a/package/rpi-firmware/Config.in
+++ b/package/rpi-firmware/Config.in
@@ -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
diff --git a/package/rpi-firmware/rpi-firmware.mk b/package/rpi-firmware/rpi-firmware.mk
index 56d6925..6299b04 100644
--- a/package/rpi-firmware/rpi-firmware.mk
+++ b/package/rpi-firmware/rpi-firmware.mk
@@ -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
--
1.9.1
^ permalink raw reply related [flat|nested] 10+ messages in thread* [Buildroot] [PATCH 1/6 v2] package/rpi-firmware: add option to install vcdbg
2015-06-29 22:07 ` [Buildroot] [PATCH 1/6 v2] package/rpi-firmware: add option to install vcdbg Yann E. MORIN
@ 2015-06-30 3:35 ` Baruch Siach
2015-06-30 18:17 ` Yann E. MORIN
0 siblings, 1 reply; 10+ messages in thread
From: Baruch Siach @ 2015-06-30 3:35 UTC (permalink / raw)
To: buildroot
Hi Yann,
On Tue, Jun 30, 2015 at 12:07:41AM +0200, Yann E. MORIN wrote:
> 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/
> 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?
> So, just install that executable, and let's hope there is no symbol
> issue at runtime.
baruch
--
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 -
^ permalink raw reply [flat|nested] 10+ messages in thread* [Buildroot] [PATCH 1/6 v2] package/rpi-firmware: add option to install vcdbg
2015-06-30 3:35 ` Baruch Siach
@ 2015-06-30 18:17 ` Yann E. MORIN
0 siblings, 0 replies; 10+ messages in thread
From: Yann E. MORIN @ 2015-06-30 18:17 UTC (permalink / raw)
To: buildroot
Baruch, All,
On 2015-06-30 06:35 +0300, Baruch Siach spake thusly:
> On Tue, Jun 30, 2015 at 12:07:41AM +0200, Yann E. MORIN wrote:
> > 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/
>
> > 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.
--
.-----------------.--------------------.------------------.--------------------.
| 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. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH 2/6 v2] configs/raspberrypi: update the DT-enabled config
2015-06-29 22:07 [Buildroot] [PATCH 0/6 v2] raspberrypi: update packages and defconfigs (branch yem/rpi) Yann E. MORIN
2015-06-29 22:07 ` [Buildroot] [PATCH 1/6 v2] package/rpi-firmware: add option to install vcdbg Yann E. MORIN
@ 2015-06-29 22:07 ` Yann E. MORIN
2015-06-29 22:07 ` [Buildroot] [PATCH 3/6 v2] configs/raspberrypi2: update our defconfig Yann E. MORIN
` (4 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Yann E. MORIN @ 2015-06-29 22:07 UTC (permalink / raw)
To: buildroot
Update 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.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Floris Bos <bos@je-eigen-domein.nl>
Cc: Pascal de Bruijn <pmjdebruijn@pcode.nl>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
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
diff --git a/board/raspberrypi/linux-3.18-rpi-dt.defconfig b/board/raspberrypi/linux-3.18-rpi-dt.defconfig
deleted file mode 100644
index 69c0fa3..0000000
--- a/board/raspberrypi/linux-3.18-rpi-dt.defconfig
+++ /dev/null
@@ -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
diff --git a/configs/raspberrypi_dt_defconfig b/configs/raspberrypi_dt_defconfig
index 991460e..61487a4 100644
--- a/configs/raspberrypi_dt_defconfig
+++ b/configs/raspberrypi_dt_defconfig
@@ -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
--
1.9.1
^ permalink raw reply related [flat|nested] 10+ messages in thread* [Buildroot] [PATCH 3/6 v2] configs/raspberrypi2: update our defconfig
2015-06-29 22:07 [Buildroot] [PATCH 0/6 v2] raspberrypi: update packages and defconfigs (branch yem/rpi) Yann E. MORIN
2015-06-29 22:07 ` [Buildroot] [PATCH 1/6 v2] package/rpi-firmware: add option to install vcdbg Yann E. MORIN
2015-06-29 22:07 ` [Buildroot] [PATCH 2/6 v2] configs/raspberrypi: update the DT-enabled config Yann E. MORIN
@ 2015-06-29 22:07 ` Yann E. MORIN
2015-06-29 22:07 ` [Buildroot] [PATCH 4/6 v2] config/raspberrypi: remove non-DT defconfig Yann E. MORIN
` (3 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Yann E. MORIN @ 2015-06-29 22:07 UTC (permalink / raw)
To: buildroot
Update to the latest stable kernel version (4.0.y); build an in-tree DTB.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Floris Bos <bos@je-eigen-domein.nl>
Cc: Pascal de Bruijn <pmjdebruijn@pcode.nl>
---
Changes v1 -> v2:
- further bump kernel version
---
configs/raspberrypi2_defconfig | 16 +++++++++++-----
1 file changed, 11 insertions(+), 5 deletions(-)
diff --git a/configs/raspberrypi2_defconfig b/configs/raspberrypi2_defconfig
index 5859749..7b12040 100644
--- a/configs/raspberrypi2_defconfig
+++ b/configs/raspberrypi2_defconfig
@@ -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
--
1.9.1
^ permalink raw reply related [flat|nested] 10+ messages in thread* [Buildroot] [PATCH 4/6 v2] config/raspberrypi: remove non-DT defconfig
2015-06-29 22:07 [Buildroot] [PATCH 0/6 v2] raspberrypi: update packages and defconfigs (branch yem/rpi) Yann E. MORIN
` (2 preceding siblings ...)
2015-06-29 22:07 ` [Buildroot] [PATCH 3/6 v2] configs/raspberrypi2: update our defconfig Yann E. MORIN
@ 2015-06-29 22:07 ` Yann E. MORIN
2015-06-29 22:07 ` [Buildroot] [PATCH 5/6 v2] config/raspberrypi: rename our non-DT defconfig file Yann E. MORIN
` (2 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Yann E. MORIN @ 2015-06-29 22:07 UTC (permalink / raw)
To: buildroot
The 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).
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Floris Bos <bos@je-eigen-domein.nl>
Cc: Pascal de Bruijn <pmjdebruijn@pcode.nl>
---
configs/raspberrypi_defconfig | 21 ---------------------
1 file changed, 21 deletions(-)
delete mode 100644 configs/raspberrypi_defconfig
diff --git a/configs/raspberrypi_defconfig b/configs/raspberrypi_defconfig
deleted file mode 100644
index f9b8a1c..0000000
--- a/configs/raspberrypi_defconfig
+++ /dev/null
@@ -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
--
1.9.1
^ permalink raw reply related [flat|nested] 10+ messages in thread* [Buildroot] [PATCH 5/6 v2] config/raspberrypi: rename our non-DT defconfig file
2015-06-29 22:07 [Buildroot] [PATCH 0/6 v2] raspberrypi: update packages and defconfigs (branch yem/rpi) Yann E. MORIN
` (3 preceding siblings ...)
2015-06-29 22:07 ` [Buildroot] [PATCH 4/6 v2] config/raspberrypi: remove non-DT defconfig Yann E. MORIN
@ 2015-06-29 22:07 ` Yann E. MORIN
2015-06-29 22:07 ` [Buildroot] [PATCH 6/6 v2] boards/raspberrypi: update instructions Yann E. MORIN
2015-06-30 12:41 ` [Buildroot] [PATCH 0/6 v2] raspberrypi: update packages and defconfigs (branch yem/rpi) Thomas Petazzoni
6 siblings, 0 replies; 10+ messages in thread
From: Yann E. MORIN @ 2015-06-29 22:07 UTC (permalink / raw)
To: buildroot
Since 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.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Floris Bos <bos@je-eigen-domein.nl>
Cc: Pascal de Bruijn <pmjdebruijn@pcode.nl>
---
configs/{raspberrypi_dt_defconfig => raspberrypi_defconfig} | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename configs/{raspberrypi_dt_defconfig => raspberrypi_defconfig} (100%)
diff --git a/configs/raspberrypi_dt_defconfig b/configs/raspberrypi_defconfig
similarity index 100%
rename from configs/raspberrypi_dt_defconfig
rename to configs/raspberrypi_defconfig
--
1.9.1
^ permalink raw reply [flat|nested] 10+ messages in thread* [Buildroot] [PATCH 6/6 v2] boards/raspberrypi: update instructions
2015-06-29 22:07 [Buildroot] [PATCH 0/6 v2] raspberrypi: update packages and defconfigs (branch yem/rpi) Yann E. MORIN
` (4 preceding siblings ...)
2015-06-29 22:07 ` [Buildroot] [PATCH 5/6 v2] config/raspberrypi: rename our non-DT defconfig file Yann E. MORIN
@ 2015-06-29 22:07 ` Yann E. MORIN
2015-06-30 12:41 ` [Buildroot] [PATCH 0/6 v2] raspberrypi: update packages and defconfigs (branch yem/rpi) Thomas Petazzoni
6 siblings, 0 replies; 10+ messages in thread
From: Yann E. MORIN @ 2015-06-29 22:07 UTC (permalink / raw)
To: buildroot
Now that we have a sanitised set of defconfig files, and we no longer
support non-DT setups, update and simplify the board readme file.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Floris Bos <bos@je-eigen-domein.nl>
Cc: Pascal de Bruijn <pmjdebruijn@pcode.nl>
---
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(-)
diff --git a/board/raspberrypi/readme.txt b/board/raspberrypi/readme.txt
index 4ead046..cf95879 100644
--- a/board/raspberrypi/readme.txt
+++ b/board/raspberrypi/readme.txt
@@ -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
--
1.9.1
^ permalink raw reply related [flat|nested] 10+ messages in thread* [Buildroot] [PATCH 0/6 v2] raspberrypi: update packages and defconfigs (branch yem/rpi)
2015-06-29 22:07 [Buildroot] [PATCH 0/6 v2] raspberrypi: update packages and defconfigs (branch yem/rpi) Yann E. MORIN
` (5 preceding siblings ...)
2015-06-29 22:07 ` [Buildroot] [PATCH 6/6 v2] boards/raspberrypi: update instructions Yann E. MORIN
@ 2015-06-30 12:41 ` Thomas Petazzoni
6 siblings, 0 replies; 10+ messages in thread
From: Thomas Petazzoni @ 2015-06-30 12:41 UTC (permalink / raw)
To: buildroot
Dear Yann E. MORIN,
On Tue, 30 Jun 2015 00:07:41 +0200, Yann E. MORIN wrote:
> Yann E. MORIN (6):
> package/rpi-firmware: add option to install vcdbg
There are still some pending questions on that one.
> 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
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 10+ messages in thread