Tags | Linux Kernel Version |
---|---|
raspberrypi-kernel_1.20200114-1 | 4.19.93 |
raspberrypi-kernel_1.20200205-1 | 4.19.97 |
raspberrypi-kernel_1.20200210-1 | 4.19.97 |
raspberrypi-kernel_1.20200212-1 | 4.19.97 |
raspberrypi-kernel_1.20200512-2 | 4.19.118 |
raspberrypi-kernel_1.20200527-1 | 5.4.42 |
raspberrypi-kernel_1.20200601+arm64-1 | 5.4.42 |
raspberrypi-kernel_1.20200601-1 | 4.19.118 |
raspberrypi-kernel_1.20200717-1 | 5.4.51 |
raspberrypi-kernel_1.20200723-1 | 5.4.51 |
raspberrypi-kernel_1.20200811-1 | 5.4.51 |
raspberrypi-kernel_1.20200819-1 | 5.4.51 |
raspberrypi-kernel_1.20200902-1 | 5.4.51 |
raspberrypi-kernel_1.20200902-1 | 5.4.51 |
raspberrypi-kernel_1.20201022-1 | 5.4.72 |
raspberrypi-kernel_1.20201126-1 | 5.4.79 |
raspberrypi-kernel_1.20201201-1 | 5.4.79 |
raspberrypi-kernel_1.20210104-1 | 5.4.83 |
raspberrypi-kernel_1.20210108-1 | 5.4.83 |
raspberrypi-kernel_1.20210201-1 | 5.10.11 |
raspberrypi-kernel_1.20210303-1 | 5.10.17 |
raspberrypi-kernel_1.20210430-1 | 5.10.17 |
raspberrypi-kernel_1.20210527-1 | 5.10.17 |
1.20210727 | 5.10.52 |
1.20210805 | 5.10.52 |
1.20210831 | 5.10.60 |
1.20210928 | 5.10.63 |
1.20211007 | 5.10.63 |
1.20211029 | 5.10.63 |
1.20230306 | 5.15.84 |
1.20230317 | 6.1.19 |
1.20230405 | 6.1.21 |
1.20200527-1
and 1.20200601+arm64-1
are 64-bit Aarch64-only releases, while the rest, up to 1.20200601-1
, are 32-bit only.
1.20200717-1
was the first release available in both forms.
TL;DR Below are three methods of getting at this information, for those who want to know.
The basic method is to read the beginning of the top-level Makefile
.
First, we get a list of tags we are interested in:
$ git tag | grep raspberrypi-kernel_1.202
raspberrypi-kernel_1.20200114-1
raspberrypi-kernel_1.20200205-1
raspberrypi-kernel_1.20200210-1
raspberrypi-kernel_1.20200212-1
raspberrypi-kernel_1.20200512-2
raspberrypi-kernel_1.20200527-1
raspberrypi-kernel_1.20200601+arm64-1
raspberrypi-kernel_1.20200601-1
raspberrypi-kernel_1.20200717-1
raspberrypi-kernel_1.20200723-1
raspberrypi-kernel_1.20200811-1
raspberrypi-kernel_1.20200819-1
raspberrypi-kernel_1.20200902-1
raspberrypi-kernel_1.20201022-1
raspberrypi-kernel_1.20201126-1
raspberrypi-kernel_1.20201201-1
raspberrypi-kernel_1.20210104-1
raspberrypi-kernel_1.20210107.master-1
raspberrypi-kernel_1.20210108-1
raspberrypi-kernel_1.20210108.master-1
raspberrypi-kernel_1.20210111.master-1
raspberrypi-kernel_1.20210201-1
raspberrypi-kernel_1.20210303-1
raspberrypi-kernel_1.20210430-1
raspberrypi-kernel_1.20210527-1
Then we read each of their actual kernel version like this:
$ git show raspberrypi-kernel_1.20200114-1:Makefile | head
# SPDX-License-Identifier: GPL-2.0
VERSION = 4
PATCHLEVEL = 19
SUBLEVEL = 93
EXTRAVERSION =
NAME = "People's Front"
# *DOCUMENTATION*
# To see a list of typical targets execute "make help"
# More info can be located in ./README
So raspberrypi-kernel_1.20200114-1
corresponds to kernel 4.19.93
.
git log x..y
is empty, if x
includes y
as ancestor. Thus it is possible to work out that some recent tags are not in the rpi-4.19.y
branch:
$ git tag | grep raspberrypi-kernel_1.202 | xargs -n 1 -I{} git log -1 --decorate raspberrypi/rpi-4.19.y..{} | grep ^commit | uniq
commit 971a2bb14b459819db1bda8fcdf953e493242b42 (tag: raspberrypi-kernel_1.20200601+arm64-1, tag: raspberrypi-kernel_1.20200527-1)
commit 3e92327867b6b40fed95ed36bb20f56d6e0cc879 (tag: raspberrypi-kernel_1.20200717-1)
commit f0eeafb5d9109c2a1d512f045d7326a8a1d33e7e (tag: raspberrypi-kernel_1.20200723-1)
commit f2f7e4b23d8788e96f81a7522b2f703e51c53e70 (tag: raspberrypi-kernel_1.20200902-1, tag: raspberrypi-kernel_1.20200819-1, tag: raspberrypi-kernel_1.20200811-1)
commit ff93994fb3f92070d8521d709ad04675ecaa5817 (tag: raspberrypi-kernel_1.20201022-1)
commit 9797f1a4938c20139b00a25de93cc99efb5c291b (tag: raspberrypi-kernel_1.20201201-1, tag: raspberrypi-kernel_1.20201126-1)
commit 76c49e60e742d0bebd798be972d67dd3fd007691 (tag: raspberrypi-kernel_1.20210108-1, tag: raspberrypi-kernel_1.20210104-1)
Likewise, tags not in the rpi-5.4.y
branch:
$ git tag | grep raspberrypi-kernel_1.202 | xargs -n 1 -I{} git log -1 --decorate raspberrypi/rpi-5.4.y..{} | grep ^commit | uniq
commit 767722747b98c2d57425f984da2a8192ae30cc69 (tag: raspberrypi-kernel_1.20200114-1)
commit f16e91dad2af9d57aef477cc1f522040353849f5 (tag: raspberrypi-kernel_1.20200212-1, tag: raspberrypi-kernel_1.20200210-1, tag: raspberrypi-kernel_1.20200205-1)
commit fe2c7bf4cad4641dfb6f12712755515ab15815ca (tag: raspberrypi-kernel_1.20200601-1, tag: raspberrypi-kernel_1.20200512-2)
commit 971a2bb14b459819db1bda8fcdf953e493242b42 (tag: raspberrypi-kernel_1.20200601+arm64-1, tag: raspberrypi-kernel_1.20200527-1)
commit fe2c7bf4cad4641dfb6f12712755515ab15815ca (tag: raspberrypi-kernel_1.20200601-1, tag: raspberrypi-kernel_1.20200512-2)
commit 971a2bb14b459819db1bda8fcdf953e493242b42
is not in either of the branches.
This method has the advantage of showing which tags correspond to the same commit (just built differently). These take a minute or two.
git branch -a --contains
is a lot slower (the below took over two hours!), but the information is more direct:
$ git tag | grep raspberrypi-kernel_1.202 | xargs -n 1 -t git branch -a --contains
git branch -a --contains raspberrypi-kernel_1.20200114-1
remotes/raspberrypi/rpi-4.19.y
git branch -a --contains raspberrypi-kernel_1.20200205-1
remotes/raspberrypi/rpi-4.19.y
git branch -a --contains raspberrypi-kernel_1.20200210-1
remotes/raspberrypi/rpi-4.19.y
git branch -a --contains raspberrypi-kernel_1.20200212-1
remotes/raspberrypi/rpi-4.19.y
git branch -a --contains raspberrypi-kernel_1.20200512-2
remotes/raspberrypi/rpi-4.19.y
git branch -a --contains raspberrypi-kernel_1.20200527-1
git branch -a --contains raspberrypi-kernel_1.20200601+arm64-1
git branch -a --contains raspberrypi-kernel_1.20200601-1
remotes/raspberrypi/rpi-4.19.y
git branch -a --contains raspberrypi-kernel_1.20200717-1
remotes/raspberrypi/rpi-5.4.y
git branch -a --contains raspberrypi-kernel_1.20200723-1
remotes/raspberrypi/rpi-5.4.y
git branch -a --contains raspberrypi-kernel_1.20200811-1
remotes/raspberrypi/rpi-5.4.y
git branch -a --contains raspberrypi-kernel_1.20200819-1
remotes/raspberrypi/rpi-5.4.y
git branch -a --contains raspberrypi-kernel_1.20200902-1
remotes/raspberrypi/rpi-5.4.y
git branch -a --contains raspberrypi-kernel_1.20201022-1
remotes/raspberrypi/rpi-5.4.y
git branch -a --contains raspberrypi-kernel_1.20201126-1
remotes/raspberrypi/rpi-5.4.y
git branch -a --contains raspberrypi-kernel_1.20201201-1
remotes/raspberrypi/rpi-5.4.y
git branch -a --contains raspberrypi-kernel_1.20210104-1
remotes/raspberrypi/rpi-5.4.y
git branch -a --contains raspberrypi-kernel_1.20210108-1
remotes/raspberrypi/rpi-5.4.y
Interestingly, this shows raspberrypi-kernel_1.20200527-1
and raspberrypi-kernel_1.20200601+arm64-1
are not in any branches.
The 14GB firmware repository has a changelog
file. A shallow clone is sufficient for this purpose.
The changelog
contains information about kernel versions back to Sept 2019, and March 2018:
$ grep -E '(raspberrypi-firmware|Linux version|Kernel| 4.)' debian/changelog
raspberrypi-firmware (1:1.20230405-1) bullseye; urgency=medium
* Linux version 6.1.21
raspberrypi-firmware (1:1.20230317-1) bullseye; urgency=medium
* firmware as of 4c6c5389d55d419e38f00116829d5a0f30c7bfbf
* Linux version 6.1.19
raspberrypi-firmware (1:1.20230315-1) bullseye; urgency=medium
* Linux version 6.1.19
raspberrypi-firmware (1:1.20230306-1) bullseye; urgency=medium
* Linux version 5.15.84
raspberrypi-firmware (1:1.20230106-1) bullseye; urgency=medium
* Linux version 5.15.84
raspberrypi-firmware (1:1.20221104-1) bullseye; urgency=medium
* Linux version 5.15.76
raspberrypi-firmware (1:1.20221028-1) bullseye; urgency=medium
* Linux version 5.15.74
raspberrypi-firmware (1:1.20220830-1) bullseye; urgency=medium
* firmware as of 48cd70fe84432c5d050637b61e4b7b9c831c98bf
* Linux version 5.15.61
raspberrypi-firmware (1:1.20220811-1) bullseye; urgency=medium
* Linux version 5.15.56
raspberrypi-firmware (1:1.20220331-1) bullseye; urgency=medium
* Linux version 5.15.32
raspberrypi-firmware (1:1.20220328-1) bullseye; urgency=medium
* Linux version 5.15.30
raspberrypi-firmware (1:1.20220308-2) bullseye; urgency=medium
raspberrypi-firmware (1:1.20220308-1) bullseye; urgency=medium
* Linux version 5.10.103
raspberrypi-firmware (1:1.20220120-2) bullseye; urgency=medium
raspberrypi-firmware (1:1.20220120-1) bullseye; urgency=medium
* Linux version 5.10.92
raspberrypi-firmware (1:1.20220118-1) bullseye; urgency=medium
* Linux version 5.10.92
raspberrypi-firmware (1:1.20220106-1) bullseye; urgency=medium
* Linux version 5.10.89
raspberrypi-firmware (1:1.20211118-3) bullseye; urgency=medium
raspberrypi-firmware (1:1.20211118-2) bullseye; urgency=medium
raspberrypi-firmware (1:1.20211118-1) bullseye; urgency=medium
* Linux version 5.10.63
raspberrypi-firmware (1:1.20211029-1) bullseye; urgency=medium
* Linux version 5.10.63
raspberrypi-firmware (1:1.20211007-2) bullseye; urgency=medium
raspberrypi-firmware (1:1.20211007-1) bullseye; urgency=medium
* Linux version 5.10.63
raspberrypi-firmware (1:1.20210928-1) bullseye; urgency=medium
* Linux version 5.10.63
raspberrypi-firmware (1:1.20210831-3) bullseye; urgency=medium
raspberrypi-firmware (1:1.20210831-2) bullseye; urgency=medium
raspberrypi-firmware (1:1.20210831-1) buster; urgency=medium
* firmware as of 46f356dcecc5204ca9a8cef7e6894e083b231bc7
* Linux version 5.10.60
raspberrypi-firmware (1:1.20210805-1) buster; urgency=medium
* Linux version 5.10.52
raspberrypi-firmware (1:1.20210727-1) buster; urgency=medium
* Linux version 5.10.52
raspberrypi-firmware (1:1.20210527-1) buster; urgency=medium
* Linux version 5.10.17
raspberrypi-firmware (1:1.20210430-2) buster; urgency=medium
* Linux version 5.10.17
raspberrypi-firmware (1.20210430-1) buster; urgency=medium
* Linux version 5.10.17
raspberrypi-firmware (1.20210303-1) buster; urgency=medium
* Linux version 5.10.17
raspberrypi-firmware (1.20210201-1) buster; urgency=medium
* Linux version 5.10.11
raspberrypi-firmware (1.20210108-1) buster; urgency=medium
* Linux version 5.4.83
raspberrypi-firmware (1.20210104-1) buster; urgency=medium
* Linux version 5.4.83
raspberrypi-firmware (1.20201201-1) buster; urgency=medium
* Linux version 5.4.79
raspberrypi-firmware (1.20201126-1) buster; urgency=medium
* Linux version 5.4.79
raspberrypi-firmware (1.20201022-1) buster; urgency=medium
* Linux version 5.4.72
raspberrypi-firmware (1.20200902-2) buster; urgency=medium
* Linux version 5.4.51
raspberrypi-firmware (1.20200902-1) buster; urgency=medium
* Linux version 5.4.51
raspberrypi-firmware (1.20200819-1) buster; urgency=medium
* Linux version 5.4.51
raspberrypi-firmware (1.20200811-1) buster; urgency=medium
* Linux version 5.4.51
raspberrypi-firmware (1.20200805-1) buster; urgency=medium
* Linux version 5.4.51
raspberrypi-firmware (1.20200723-1) buster; urgency=medium
* Linux version 5.4.51
raspberrypi-firmware (1.20200717-1) buster; urgency=medium
* Linux version 5.4.51
raspberrypi-firmware (1.20200601-1) buster; urgency=medium
* Linux version 4.19.118
raspberrypi-firmware (1.20200512-2) buster; urgency=medium
raspberrypi-firmware (1.20200512-1) buster; urgency=medium
* Linux version 4.19.118
raspberrypi-firmware (1.20200212-1) buster; urgency=medium
* Linux version 4.19.97
raspberrypi-firmware (1.20200210-1) buster; urgency=medium
* Linux version 4.19.97
raspberrypi-firmware (1.20200205-1) buster; urgency=medium
* Linux version 4.19.97
raspberrypi-firmware (1.20200203-1) buster; urgency=medium
* Linux version 4.19.97
raspberrypi-firmware (1.20200131-1) buster; urgency=medium
* Linux version 4.19.93
raspberrypi-firmware (1.20200114-1) buster; urgency=medium
* Linux version 4.19.93
raspberrypi-firmware (1.20191119-1) buster; urgency=medium
* Linux version 4.19.83
raspberrypi-firmware (1.20190925+1-1) buster; urgency=medium
* Linux version 4.19.75
raspberrypi-firmware (1.20190925-2) buster; urgency=medium
* Linux version 4.19.75
raspberrypi-firmware (1.20190925-1) buster; urgency=medium
* Linux version 4.19.75
raspberrypi-firmware (1.20190916-1) buster; urgency=medium
* Linux version 4.19.71
...
raspberrypi-firmware (1.20180313-1) stretch; urgency=medium
* Kernel 4.9.80
...
A variant of the above, parsing the online version of that file, from https://github.com/RPi-Distro/firmware/ :
curl https://github.com/RPi-Distro/firmware/ | grep -i debian | cut -f 10 -d '"' \
| xargs -I{} curl https://github.com/{} | grep changelog | cut -f 10 -d '"' \
| xargs -I{} curl https://github.com/{} | grep raw-url | cut -f 4 -d '"' \
| xargs -I{} wget -O - https://github.com/{} | grep -E '(raspberrypi-firmware|Linux version|Kernel| 4.)'