Deployment Bot (from Travis CI) | 6d7e6e9 | 2021-06-14 19:18:41 +0000 | [diff] [blame^] | 1 | op-build Linux Kernel |
| 2 | ===================== |
| 3 | |
| 4 | The skiroot/Petitboot kernel is currently based on the 5.3 series. |
| 5 | |
| 6 | Submitting a patch |
| 7 | ------------------ |
| 8 | |
| 9 | If you require a patch added to the firmware, follow these steps: |
| 10 | |
| 11 | 1. Submit your patch upstream. It doesn’t need to be upstream, but it |
| 12 | should be on it’s way |
| 13 | 2. Send a pull request or a ``git format-patch`` formatted patch series |
| 14 | to openpower-firmware@lists.ozlabs.org, and cc joel@jms.id.au. Be |
| 15 | sure to use ``--suppress-cc=sob`` when generating the patches so we |
| 16 | don’t spam the community. The current tree is based on 5.1-stable |
| 17 | (although we will always move to the latest stable kernel ASAP). |
| 18 | |
| 19 | Bug fixes |
| 20 | --------- |
| 21 | |
| 22 | Whenever a stable release is tagged in |
| 23 | https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/, |
| 24 | we will rebase our patches on top of that and create a new release. |
| 25 | |
| 26 | If you are submitting patches upstream that you want to be included, |
| 27 | then ensure you cc stable as per the |
| 28 | `rules <https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/plain/Documentation/stable_kernel_rules.txt>`__. |
| 29 | |
| 30 | Versioning |
| 31 | ---------- |
| 32 | |
| 33 | Versions are the upstream version number, followed by ``-openpowerN``, |
| 34 | where N is the revision that counts up from 1 for the given upstream |
| 35 | version number. These versions will be present as tags in the git |
| 36 | repository hosted at https://github.com/open-power/linux. |
| 37 | |
| 38 | We aim to follow "the latest upstream release". |
| 39 | |
| 40 | For op-build stable trees, we follow the latest stable release of the |
| 41 | kernel that particular op-build release was made with. Since op-build |
| 42 | stable releases may outlast how long an upstream kernel is maintain for, |
| 43 | we will move up the kernel version we use until the next LTS kernel. |
| 44 | Once on an LTS kernel, an op-build stable release will stick with that |
| 45 | version. |
| 46 | |
| 47 | Tree and patches |
| 48 | ---------------- |
| 49 | |
| 50 | The kernel tree hosted at https://github.com/open-power/linux contains |
| 51 | the current release plus a set of patches that we carry. Ideally there |
| 52 | would be no patches carried, as everything should be upstream. |
| 53 | |
| 54 | We take the commits in this tree between the upstream tag and the |
| 55 | openpower tag and generate a series of patches that are imported into |
| 56 | the op-build Buildroot overlay, and placed in |
| 57 | `op-build/openpower/linux <https://github.com/open-power/op-build/tree/master/openpower/linux>`_. |
| 58 | op-build then fetches the upstream tarball and applies these patches. |
| 59 | This way we don’t have to clone an entire tree when doing an op-build |
| 60 | build. |
| 61 | |
| 62 | All patches are to head upstream *first*. There is a zero chance that |
| 63 | op-build will carry kernel patches for any time greater than "until the |
| 64 | next kernel release", and even then, only in *exceptional* circumstances. |
| 65 | |
| 66 | Patches in the tree |
| 67 | ------------------- |
| 68 | |
| 69 | - xhci: Reset controller on xhci shutdown |