| op-build Linux Kernel |
| ===================== |
| |
| The skiroot/Petitboot kernel is currently based on the 5.3 series. |
| |
| Submitting a patch |
| ------------------ |
| |
| If you require a patch added to the firmware, follow these steps: |
| |
| 1. Submit your patch upstream. It doesn’t need to be upstream, but it |
| should be on it’s way |
| 2. Send a pull request or a ``git format-patch`` formatted patch series |
| to openpower-firmware@lists.ozlabs.org, and cc joel@jms.id.au. Be |
| sure to use ``--suppress-cc=sob`` when generating the patches so we |
| don’t spam the community. The current tree is based on 5.1-stable |
| (although we will always move to the latest stable kernel ASAP). |
| |
| Bug fixes |
| --------- |
| |
| Whenever a stable release is tagged in |
| https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/, |
| we will rebase our patches on top of that and create a new release. |
| |
| If you are submitting patches upstream that you want to be included, |
| then ensure you cc stable as per the |
| `rules <https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/plain/Documentation/stable_kernel_rules.txt>`__. |
| |
| Versioning |
| ---------- |
| |
| Versions are the upstream version number, followed by ``-openpowerN``, |
| where N is the revision that counts up from 1 for the given upstream |
| version number. These versions will be present as tags in the git |
| repository hosted at https://github.com/open-power/linux. |
| |
| We aim to follow "the latest upstream release". |
| |
| For op-build stable trees, we follow the latest stable release of the |
| kernel that particular op-build release was made with. Since op-build |
| stable releases may outlast how long an upstream kernel is maintain for, |
| we will move up the kernel version we use until the next LTS kernel. |
| Once on an LTS kernel, an op-build stable release will stick with that |
| version. |
| |
| Tree and patches |
| ---------------- |
| |
| The kernel tree hosted at https://github.com/open-power/linux contains |
| the current release plus a set of patches that we carry. Ideally there |
| would be no patches carried, as everything should be upstream. |
| |
| We take the commits in this tree between the upstream tag and the |
| openpower tag and generate a series of patches that are imported into |
| the op-build Buildroot overlay, and placed in |
| `op-build/openpower/linux <https://github.com/open-power/op-build/tree/master/openpower/linux>`_. |
| op-build then fetches the upstream tarball and applies these patches. |
| This way we don’t have to clone an entire tree when doing an op-build |
| build. |
| |
| All patches are to head upstream *first*. There is a zero chance that |
| op-build will carry kernel patches for any time greater than "until the |
| next kernel release", and even then, only in *exceptional* circumstances. |
| |
| Patches in the tree |
| ------------------- |
| |
| - xhci: Reset controller on xhci shutdown |