Introduction
This page describes how to clone the LTSI Kernel v3.10.
Creating Local Branch
Clone myremote repo into a working directory named myremote. This could take some time. “myremote” could be any directory name you’d like.
git clone https://github.com/altera-opensource/linux-socfpga myremote
CD into the directory created.
cd myremote
Add a remote. I just happened to call this remote the same as the directory name, but it could be anything you’d like.
git remote add myremote https://github.com/altera-opensource/linux-socfpga
List branches available from the remote. Note that the socfpga-3.10-ltsi branch is bold, red and italicized.
$ git remote show myremote
* remote myremote
Fetch URL: https://github.com/altera-opensource/linux-socfpga
Push URL: https://github.com/altera-opensource/linux-socfpga
HEAD branch: master
Remote branches:
master new (next fetch will store in remotes/myremote)
socfpga-3.10 new (next fetch will store in remotes/myremote)
socfpga-3.10-ltsi new (next fetch will store in remotes/myremote)
socfpga-3.10-ltsi-rt new (next fetch will store in remotes/myremote)
socfpga-3.11 new (next fetch will store in remotes/myremote)
socfpga-3.12 new (next fetch will store in remotes/myremote)
socfpga-3.13 new (next fetch will store in remotes/myremote)
socfpga-3.14 new (next fetch will store in remotes/myremote)
socfpga-3.4-ltsi new (next fetch will store in remotes/myremote)
socfpga-3.6 new (next fetch will store in remotes/myremote)
socfpga-3.7 new (next fetch will store in remotes/myremote)
socfpga-3.7-ghrd new (next fetch will store in remotes/myremote)
socfpga-3.8 new (next fetch will store in remotes/myremote)
socfpga-3.9 new (next fetch will store in remotes/myremote)
socfpga-3.9-rel new (next fetch will store in remotes/myremote)
socfpga-3.9-rel-amp new (next fetch will store in remotes/myremote)
Local ref configured for 'git push':
master pushes to master (up to date)
Fetch the remote. This fetches all remote references for a subsequent checkout. It’s necessary to fetch occasionally (once every 1-2 weeks) and rebase to pick up new changes that are available as they are pushed out to myremote for customers.
$ git fetch myremote
From https://github.com/altera-opensource/linux-socfpga
* [new branch] master → myremote/master
* [new branch] socfpga-3.10 → myremote/socfpga-3.10
* [new branch] socfpga-3.10-ltsi → myremote/socfpga-3.10-ltsi
* [new branch] socfpga-3.10-ltsi-rt → myremote/socfpga-3.10-ltsi-rt
* [new branch] socfpga-3.11 → myremote/socfpga-3.11
* [new branch] socfpga-3.12 → myremote/socfpga-3.12
* [new branch] socfpga-3.13 → myremote/socfpga-3.13
* [new branch] socfpga-3.14 → myremote/socfpga-3.14
* [new branch] socfpga-3.4-ltsi → myremote/socfpga-3.4-ltsi
* [new branch] socfpga-3.6 → myremote/socfpga-3.6
* [new branch] socfpga-3.7 → myremote/socfpga-3.7
* [new branch] socfpga-3.7-ghrd → myremote/socfpga-3.7-ghrd
* [new branch] socfpga-3.8 → myremote/socfpga-3.8
* [new branch] socfpga-3.9 → myremote/socfpga-3.9
* [new branch] socfpga-3.9-rel → myremote/socfpga-3.9-rel
* [new branch] socfpga-3.9-rel-amp → myremote/socfpga-3.9-rel-amp
Checkout the LTSI branch. Note that this command creates a local branch named “linux-ltsi”. This name could be anything you’d like it to be. myremote/socfpga-3.10-ltsi is the
/referenced above.
$ git checkout -b linux-ltsi myremote/socfpga-3.10-ltsi
Checking out files: 100% (26318/26318), done.
Branch linux-ltsi set up to track remote branch socfpga-3.10-ltsi from gtihub.
Switched to a new branch 'linux-ltsi'
Building Kernel
Assuming tools and such are installed, build the kernel normally.
make socfpga_defconfig
make -j12 zImage 2>&1 | tee ../linux-ltsi-log.txt