The files present in this repository are generated as a result of a multi-step process. This document attempts to describe the steps performed to reach re-create this content.
- Create a directory to work in:
mkdir -p ~/mangOH_backports
cd ~/mangOH_backports
- Get a local copy of the mangOH backports repository:
git clone --branch swi_4.14.y https://github.com/mangOH/linux-backports.git
- Get a local copy of the stable Linux kernel tree:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
- Download the zip file of the 2019-10-31 release of the Cypress FMAC driver. The link to that zip was obtained from the summary page.
- Extract the zip file:
unzip cypress-fmac-v4.14.77-2019_1031.zip
- Extract the patches that came from the zip file:
tar -xf cypress-patch-v4.14.77-2019_1031.tar.gz
- Go into the kernel source directory:
cd ~/mangOH_backports/linux
- Create a new branch on which to apply the patches:
git checkout -b cypress_fmac_v4.14.77_20191031 v4.14.77
- Apply the patches:
git am ~/mangOH_backports/cypress-patch/*
cd ~/mangOH_backports/linux-backports
- Ensure that you have an up to date version of coccinelle installed. Version 1.0.8 is known to work.
- Run this command to generatee the backports tree:
./gentree.py --clean --verbose --git-revision cypress_fmac_v4.14.77_20191031 ~/mangOH_backports/linux ~/mangOH_backports/generated
At this point ~/mangOH_backports/generated
should contain a directory that is consistent with the
content of this git repository. If you wish to manually perform a build, do the following.
- Copy the generated backports folder inside of your leaf worksapce:
cp -r ~/mangOH/generated /path/to/your/leaf/workspace/
- Setup your leaf environment:
cd /path/to/your/leaf/workspace/generated && leaf shell
- Set the backports config:
ARCH=arm CROSS_COMPILE=arm-poky-linux-gnueabi- KLIB=`findtoolchain wp77xx kernelroot` KLIB_BUILD=`findtoolchain wp77xx kernelroot` PATH=`findtoolchain wp77xx dir`:$PATH make defconfig-mangoh-yellow
- Build the backported modules:
ARCH=arm CROSS_COMPILE=arm-poky-linux-gnueabi- KLIB=`findtoolchain wp77xx kernelroot` KLIB_BUILD=`findtoolchain wp77xx kernelroot` PATH=`findtoolchain wp77xx dir`:$PATH make