Upstream patch submission checklist

Simon Glass sjg at chromium.org
Thu Dec 1 13:21:32 AEDT 2016


Hi Joel,

On 30 November 2016 at 17:44, Joel Stanley <joel at jms.id.au> wrote:
> Hello Chris,
>
> When we submit the fsi patches upstream we want to go through the
> following checklist:
>
>  - Base them on an upstream tag. We have chosen 4.9-rc1 in this case
>
>  - Get your maintainers using ./scripts/get_maintainers.pl. In
> addition to the list from this tool, cc them to:
>
>    joel at jms.id.au
>    jk at ozlabs.org
>    andrew at aj.id.au
>    alistair at popple.id.au
>    benh at kernel.crashing.org
>    linux-kernel at vger.kernel.org
>
>  - Generate your patches with git format-patch
>    * use the --to and --cc directives to attach the recipiants to the patches
>    * use --cover-letter to generate a cover ltetter
>   * As you've based them on an upstream tag, you should be able to do
> use v4.9-rc1..HEAD as the range
>
>  - Run your patches through ./scripts/checkpatch.pl and fix the issues mentioned
>
>  - Build the kernel using, checking for warnings:
>    * make aspeed_g4_defconfig
>    * make aspeed_g5_defconfig
>    * make multi_v5_defconfig
>    * You will need to enable the FSI options after doing each make
>        ./scripts/config -e CONFIG_FSI_MASTER_GPIO
>        ./scripts/config -e CONFIG_FSI_SCOM
>        ./scripts/config -e CONFIG_FSI_MBX
>    * Seperately to testing the options as =y, you should test them as =m:
>        ./scripts/config -m CONFIG_FSI_MASTER_GPIO
>        ./scripts/config -m CONFIG_FSI_SCOM
>        ./scripts/config -m CONFIG_FSI_MBX
>   * Build for ARCH=arm as well as for ARCH=x86_64. Others will test
> that the code compiles on all kinds of architectures, so you need to
> make sure it doesn't generate warnings there.
>
>  - Check that the patches apply to a clean tree
>   * git checkout v4.9-rc1
>   * git reset --hard
>   * git clean -fd
>   * Then apply the patches with git am ~/fsi-v1/*.patch

You may be interested in patman, which does some of those steps for you:

- runs get_maintainers.pl
- creates a cover letter and generates patches
- runs them through checkpatch
- applies the patches to check that all is well (your last step)
- emails them out

It also deals with generating change logs.

You should be able to find it in the U-Boot tree (tools/patman) along
with a README.

Regards,
Simon


More information about the openbmc mailing list