This is no longer necessary..

Thanks to Florian from OpenWrt, this patch should no longer be necessary. He rebased patches from Raspberry Pi kernel tree to OpenWrt.
This page still remains, as currently, OpenWrt ships for Raspberry Pi target as 3.10 kernel and they move to 3.12 - someone might want to use 3.12.7y.
Or for some other reason unknown to me.

This change was in revision r39970.

What is this?

This is a patch made against OpenWRT trunk revision r39286.

Why is it here instead of trac or patchwork of OpenWrt?

Because.. I provide sometimes lot of patches for OpenWrt and only few of them get into mainstream, and those few that get in there..
Might take some time, therefore I provide some of my patches on my own site so people could easily download my patch. This is just
my opinion, but patchwork.. Doesn't quite allow direct downloading of patch file and atleast when I copy paste from there to nano in
console window, all tabs are converted to spaces..

What does it do?

Patches OpenWRT sources to support Raspberry PI. It makes OpenWrt buildroot use Raspberry Pi's official kernel sources
instead of vanilla sources.
  • Old version (openwrt-rpi.patch):
    • It sets brcm2708 (at r38972 target brcm2708 supports only Raspberry PI) target to use kernel 3.12.7y (current stable kernel while writing this at 1.12.2013)
    • It adds missing default kernel configuration options to target/linux/generic/config-3.12 - there were few, 1 usb soundcard, few chargers.. etc..
    • It adds a patch to target/linux/brcm2708/patches-3.12 named 001-rpi-kernel.patch, this is a big patch - 8.0 megabytes. One could wonder what it does, and it does a lot but to summarize; it patches vanilla kernel to rpi-3.12.y kernel.
What is rpi-3.12.y kernel?

It is a linux kernel version 3.12 which has been designed for Raspberry Pi by Raspberry Pi Foundation. It is official kernel for Raspberry Pi.
Standard OpenWrt kernel for brcm2708 (rpi) is old and broken. It causes constantly errors while trying to write to disk, famous mmc errors and
has few other rpi specific issues as well.

Does this patch broken compatibility in build tree for other achitechtures? Answer is no. I have given effort to the patch to ensure that it doesn't
brake compatibility and one can use same tree for compiling to other architechtures as well.

What is currently latest patch version?

openwrt-rpi-kernel-3.12.7y.patch version 4.0

Changes from v3.0
  • Added 3.12.7y kernel headers support for toolchain

Changes from v2.0
  • Added config-3.12 file to target/linux/brcm2708

Changes from v1.0:
  • fixed module loading, forgot to add arch specific patch that adds y to extraversion..
  • Made changes so patch won't be so big anymore..

How do I use this patch?

Get trunk revision r39286 or possibly newer(?) with git. Download this patch to your local repository's root and apply patch.

Oskari Rauta,
16.2.2014 klo 13.03
Oskari Rauta,
1.12.2013 klo 4.49