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