Skip to contentSkip to conversation

boards: add rpi-zero defconfig (branch yem/rpi-zero)

PATCH New Yann E. MORIN 2 participants 4 messages May 8, 2016 Broadcom BCM2711/BCM2835 Arm architecture

lore
Share & tools
lore
#0 lore raw

cover boards: add rpi-zero defconfig (branch yem/rpi-zero)

Hello All!

This small series adds support for the Raspberry Pi Zero.

The first patch bumps rpi-firmware, to get new DT overlays specific to the zero.

The second patch actually adds a defconfig for the rpi0.

Regards,
Yann E. MORIN.

The following changes since commit b2dcb2d6c4144688e2b9ec4d744af306276120f1

fs/common: fix typo in comments (2016-05-08 15:34:52 +0200)

are available in the git repository at:

https://git.busybox.net/~ymorin/git/buildroot

for you to fetch changes up to 6566e90641147f226d7432b25723574dd92d5b69

boards/raspberrypi0: new board (2016-05-08 15:43:18 +0200)

----------------------------------------------------------------
Yann E. MORIN (2):
package/rpi-firmware: bump version for rpi0
boards/raspberrypi0: new board

 board/raspberrypi/genimage-raspberrypi0.cfg | 30 +++++++++++++++++++++++++
 board/raspberrypi0                          |  1 +
 configs/raspberrypi0_defconfig              | 34 +++++++++++++++++++++++++++++
 package/rpi-firmware/rpi-firmware.mk        |  2 +-
 4 files changed, 66 insertions(+), 1 deletion(-)
 create mode 100644 board/raspberrypi/genimage-raspberrypi0.cfg
 create mode 120000 board/raspberrypi0
 create mode 100644 configs/raspberrypi0_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.  |
'------------------------------^-------^------------------^--------------------'
#1 lore raw

PATCH 1/2 package/rpi-firmware: bump version for rpi0

Although the current version of rpi-firmware we use is working just fine on the rpi-zero, the latest firmware provides a DTB overlay to use the USB OTG device in either host or slave modes.

---
 package/rpi-firmware/rpi-firmware.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
package/rpi-firmware/rpi-firmware.mk +1 -1
index 96b10f4..bcb8641 100644
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-RPI_FIRMWARE_VERSION = c5e131971c323f5658c7c5d4b1dd105d37903a99
+RPI_FIRMWARE_VERSION = cc6d7bf8b4c03a2a660ff9fdf4083fc165620866
 RPI_FIRMWARE_SITE = $(call github,raspberrypi,firmware,$(RPI_FIRMWARE_VERSION))
 RPI_FIRMWARE_LICENSE = BSD-3c
 RPI_FIRMWARE_LICENSE_FILES = boot/LICENCE.broadcom
Signature · 1 line
2.7.4
#2 lore raw

PATCH 2/2 boards/raspberrypi0: new board

In reply to Yann E. MORIN

Add support for the rpi-0, which is basically a rpi (model A+) in a smaller form-factor.

This one does not have an ethernet port, so we just remove it from the configuration (or we could use the existing rasbperrypi_defconfig and suffer froma longer boot time because of the waiting for eth0).

---
 board/raspberrypi/genimage-raspberrypi0.cfg | 30 +++++++++++++++++++++++++
 board/raspberrypi0                          |  1 +
 configs/raspberrypi0_defconfig              | 34 +++++++++++++++++++++++++++++
 3 files changed, 65 insertions(+)
 create mode 100644 board/raspberrypi/genimage-raspberrypi0.cfg
 create mode 120000 board/raspberrypi0
 create mode 100644 configs/raspberrypi0_defconfig
board/raspberrypi/genimage-raspberrypi0.cfg new file +30 -0
new file mode 100644
index 0000000..a38840c
@@ -0,0 +1,30 @@
+image boot.vfat {
+  vfat {
+    files = {
+      "bcm2708-rpi-b-plus.dtb",
+      "rpi-firmware/bootcode.bin",
+      "rpi-firmware/cmdline.txt",
+      "rpi-firmware/config.txt",
+      "rpi-firmware/fixup.dat",
+      "rpi-firmware/start.elf",
+      "kernel-marked/zImage"
+    }
+  }
+  size = 32M
+}
+
+image sdcard.img {
+  hdimage {
+  }
+
+  partition boot {
+    partition-type = 0xC
+    bootable = "true"
+    image = "boot.vfat"
+  }
+
+  partition rootfs {
+    partition-type = 0x83
+    image = "rootfs.ext4"
+  }
+}
board/raspberrypi0 new file +1 -0
new file mode 120000
index 0000000..fcdafc8
@@ -0,0 +1 @@
+raspberrypi
\ No newline at end of file
configs/raspberrypi0_defconfig new file +34 -0
new file mode 100644
index 0000000..cec88bd
@@ -0,0 +1,34 @@
+BR2_arm=y
+BR2_arm1176jzf_s=y
+BR2_ARM_EABIHF=y
+
+# Linux headers same as kernel, a 4.4 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_4=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="26f3b72a9c049be10e6af196252283e1f6ab9d1f"
+BR2_LINUX_KERNEL_DEFCONFIG="bcmrpi"
+
+# Build the DTBs for A/B from the kernel sources: the zero is the same
+# as the A+ model, just in a different form-factor 
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2708-rpi-b-plus"
+
+BR2_PACKAGE_RPI_FIRMWARE=y
+# BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS is not set
+
+# Required tools to create the SD image
+BR2_PACKAGE_HOST_DOSFSTOOLS=y
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_MTOOLS=y
+
+# Filesystem / image
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+# BR2_TARGET_ROOTFS_TAR is not set
+BR2_ROOTFS_POST_BUILD_SCRIPT="board/raspberrypi0/post-build.sh"
+BR2_ROOTFS_POST_IMAGE_SCRIPT="board/raspberrypi0/post-image.sh"
Signature · 1 line
2.7.4
#3 lore raw

cover boards: add rpi-zero defconfig (branch yem/rpi-zero)

In reply to Yann E. MORIN

Hello,

Quoted 3 lines · Yann E. MORIN

Yann E. MORIN (2):
package/rpi-firmware: bump version for rpi0
boards/raspberrypi0: new board

Applied, thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com