Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: sakaki-/bcmrpi3-kernel
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 4.14.37.20180430
Choose a base ref
...
head repository: sakaki-/bcmrpi3-kernel
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Loading
Showing with 1,920 additions and 1,038 deletions.
  1. +19 −8 README.md
  2. +1,901 −1,030 config
27 changes: 19 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -5,41 +5,52 @@ Automated build of the latest 64-bit `bcmrpi3_defconfig` Linux kernel for the Ra

<img src="https://raw.githubusercontent.com/sakaki-/resources/master/raspberrypi/pi3/Raspberry_Pi_3_B_and_B_plus.jpg" alt="Raspberry Pi 3 B and B+" width="250px" align="right"/>

This project contains a weekly autobuild of the default branch (currently, `rpi-4.14.y`) of the [official Raspberry Pi Linux source tree](https://github.com/raspberrypi/linux), for the [64-bit Raspberry Pi 3 Model B](https://www.raspberrypi.org/products/raspberry-pi-3-model-b/) and [B+](https://www.raspberrypi.org/products/raspberry-pi-3-model-b-plus/).
This project contains a weekly autobuild of the default branch (currently, `rpi-5.4.y`) of the [official Raspberry Pi Linux source tree](https://github.com/raspberrypi/linux), for the [64-bit Raspberry Pi 3 Model B](https://www.raspberrypi.org/products/raspberry-pi-3-model-b/) and [B+](https://www.raspberrypi.org/products/raspberry-pi-3-model-b-plus/).

> NB: (8 June 2020) the transition from `rpi-4.19.y` to `rpi-5.4.y` has not yet happened upstream, but as it will do shortly, I have elected to pre-emptively migrate.
Builds are performed with the standard `bcmrpi3_defconfig`, with the only change being that the first 12 hex digits of the tip commit SHA1 hash are appended to `CONFIG_LOCALVERSION` (with a separating hyphen) before building.

> Please note that as the purpose of this project is to provide a 'vanilla' build of the upstream `bcmrpi3_defconfig`, PRs requesting config changes will be rejected. Instead, please see the sister [`bcmrpi3-kernel-bis`](https://github.com/sakaki-/bcmrpi3-kernel-bis) project, which has a weekly autobuild (with versions mirroring this one, using a tweaked `bcmrpi3_defconfig`), and where such PRs *will* be accepted for review.
A new build tarball is automatically created and uploaded as a release asset each week (unless the tip of the default branch is unchanged from the prior week, or an error occurs during the build process).

> The default branch is used, as that is generally given most attention for e.g. VC4 backports.
As an (historical) example, on 1 June 2017, the default branch was `rpi-4.9.y` (NB, it is `rpi-4.14.y` now) and the latest commit was `e5bd734340e6871e4e9ef5ff66e61197eb8ece30` (the short form of which is `e5bd734340e6`). The created release was [4.9.30.20170601](https://github.com/sakaki-/bcmrpi3-kernel/releases/4.9.30.20170601), within which the kernel tarball was `bcmrpi3-kernel-4.9.30.20170601.tar.xz`, and the corresponding kernel release name was `4.9.30-v8-e5bd734340e6+`.
As an (historical) example, on 1 June 2017, the default branch was `rpi-4.9.y` (NB, it is `rpi-5.4.y` now) and the latest commit was `e5bd734340e6871e4e9ef5ff66e61197eb8ece30` (the short form of which is `e5bd734340e6`). The created release was [4.9.30.20170601](https://github.com/sakaki-/bcmrpi3-kernel/releases/4.9.30.20170601), within which the kernel tarball was `bcmrpi3-kernel-4.9.30.20170601.tar.xz`, and the corresponding kernel release name was `4.9.30-v8-e5bd734340e6+`.

Each kernel release tarball currently provides the following files:
* `/boot/kernel8.img` (this is the bootable 64-bit kernel);
* `/boot/bcm-2710-rpi-3-b.dtb`, `/boot/bcm-2710-rpi-3-b-plus.dtb` and `/boot/bcm-2837-rpi-3-b.dtb` (the device tree blobs);
* `/boot/COPYING.linux` (the kernel's license file);
* `/boot/config` (the configuration used to build the kernel);
* `/boot/Module.symvers.xz` (a table mapping exported symbols to provider, compressed);
* `/boot/System.map.xz` (the kernel's symbol table, compressed);
* `/boot/bcm-2710-rpi-3-b.dtb`, `/boot/bcm-2710-rpi-3-b-plus.dtb` and `/boot/bcm-2837-rpi-3-b.dtb` (and, from `5.4.69.20201006` onwards, `/boot/bcm2710-rpi-cm3.dtb`) (the device tree blobs);
* `/boot/overlays/...` (the device tree blob overlays) (from `5.4.69.20201006`);
* `/lib/modules/<kernel release name>/...` (the module set for the kernel);
* `/lib/firmware/...` (the kernel-built firmware).
* `/lib/firmware/...` (the kernel-built firmware, for [< 4.14 only](http://lkml.iu.edu/hypermail/linux/kernel/1709.1/04650.html)).

> The `/boot/bcm-2710-rpi-3-b-plus.dtb` file is only included in more recent builds.
> The `/boot/Module.symvers.xz` file is only included in more recent builds. The `/boot/System.map.xz` is supplied in compressed form only in recent builds.
The current kernel tarball may be downloaded from the link below (or via `wget`, or via the corresponding `bcmrpi-kernel-bin` ebuild, per the [instructions following](#installation)):

Variant | Version | Most Recent Image
:--- | ---: | ---:
Kernel, dtbs, modules and (kernel) firmware | 4.14.37.20180430 | [bcmrpi3-kernel-4.14.37.20180430.tar.xz](https://github.com/sakaki-/bcmrpi3-kernel/releases/download/4.14.37.20180430/bcmrpi3-kernel-4.14.37.20180430.tar.xz)
Kernel, dtbs, modules and (kernel) firmware | 5.4.69.20201006 | [bcmrpi3-kernel-5.4.69.20201006.tar.xz](https://github.com/sakaki-/bcmrpi3-kernel/releases/download/5.4.69.20201006/bcmrpi3-kernel-5.4.69.20201006.tar.xz)

The corresponding kernel configuration (derived via `make bcmrpi3_defconfig`) may be viewed [here](https://github.com/sakaki-/bcmrpi3-kernel/blob/master/config).

> A list of all releases may be seen [here](https://github.com/sakaki-/bcmrpi3-kernel/releases).
> A list of all releases may be seen [here](https://github.com/sakaki-/bcmrpi3-kernel/releases). For an equivalent kernel autobuild for the RPi4B, please see [here](https://github.com/sakaki-/bcm2711-kernel).
## <a name="installation"></a>Installation

To deploy (assuming that your RPi3's micro SD-card's first partition is mounted as `/boot`, and you are already running a 64-bit RPi3 image, such as my [gentoo-on-rpi3-64bit](https://github.com/sakaki-/gentoo-on-rpi3-64bit)) simply download, untar into the root directory, and reboot:
```console
pi64 ~ # cp /boot/kernel8.img{,.old}
pi64 ~ # wget -c https://github.com/sakaki-/bcmrpi3-kernel/releases/download/4.14.37.20180430/bcmrpi3-kernel-4.14.37.20180430.tar.xz
pi64 ~ # tar -xJf bcmrpi3-kernel-4.14.37.20180430.tar.xz -C /
pi64 ~ # wget -c https://github.com/sakaki-/bcmrpi3-kernel/releases/download/5.4.69.20201006/bcmrpi3-kernel-5.4.69.20201006.tar.xz
pi64 ~ # tar -xJf bcmrpi3-kernel-5.4.69.20201006.tar.xz -C /
pi64 ~ # sync && reboot
```

Loading