kernel-rpi-os-32/README.md

47 lines
2 KiB
Markdown
Raw Permalink Normal View History

2022-03-24 17:05:12 +00:00
# Kernel for Raspberry Pi 32 bits (in sync with official bullseye repo)
2022-03-23 10:53:53 +00:00
2022-03-24 17:05:12 +00:00
This repository holds a pre-built 32 bits Linux bits kernel image for the Raspberry Pi, compiled from https://github.com/raspberrypi/linux, for usage by the [gokrazy](https://github.com/gokrazy/gokrazy) project.
To use the files in this repository, adjust the `-kernel_package`
of `gokr-packer`:
2022-03-23 10:53:53 +00:00
```
2022-03-24 17:05:12 +00:00
GOARCH=arm gokr-packer \
2022-03-26 10:45:17 +00:00
-kernel_package=github.com/gokrazy-community/kernel-rpi-os-32/dist \
2022-03-23 11:02:03 +00:00
github.com/gokrazy/hello
2022-03-23 10:53:53 +00:00
```
## How does it differ from https://github.com/gokrazy/kernel ?
| | gokrazy-community/kernel-rpi-os-32 | gokrazy/kernel |
| ------------ | ---------------------------------- | -------------- |
| architecture | ARMv6 32-bit | ARMv8 64-bit |
| upstream | linux Raspberry Pi OS fork | linux mainline |
2023-09-24 16:58:30 +00:00
This kernel can be used by the oldest Raspberry Pi and follows the release cycles of the Raspberry Pi foundation.
2022-03-23 10:53:53 +00:00
## Manual compilation
```
go run cmd/compile/main.go
```
It will compile the kernel located in `linux-sources` using a [crossbuild docker image](https://github.com/gokrazy-community/crossbuild-armhf) and copy the resulting files in the `dist` folder.
2022-03-23 11:01:08 +00:00
2022-04-23 19:28:30 +00:00
It uses default kernel config (`make bcmrpi_defconfig`), as recommended by the [official documentation](https://www.raspberrypi.com/documentation/computers/linux_kernel.html#cross-compiling-the-kernel), with the addition of the SquashFS module (`CONFIG_SQUASHFS`, which is required for gokrazy) and `CONFIG_IPV6`.
2022-03-24 17:16:07 +00:00
Further additions include the `CONFIG_W1`, `W1_MASTER_GPIO`, `W1_SLAVE_THERM` and `GPIOLIB`.
2022-03-24 17:05:12 +00:00
## Update check
```
go run cmd/check-update/main.go
```
It will compare the kernel version distributed on https://archive.raspberrypi.org/debian/ with the `linux-sources` submodule current HEAD.
2022-03-23 11:01:08 +00:00
## Licenses
- The `vmlinuz` and `*.dtb` files are built from [Linux kernel sources](https://github.com/raspberrypi/linux), released under the GPL (see `linux-sources/COPYING`)
- The rest of the repository is released under BSD 3-Clause License (see `LICENSE`)