Freescale's public GIT has two very similar Linux Kernel repositories -
linux-2.6-imx.git - Freescale i.MX Linux Tree
and
linux-imx.git - i.MX Linux Kernel
The second one seems to have a more recent release (4.1.15_2.0.0_ga), missing in the other repository.
What's the difference between these repositories?
Which one should be used?
Is the linux-imx project on github most up to date then, anyone can comment?
Also was trying to understand how NXP's linux git repo works, and how branches are maintained. For example the linux from latest BSP release 4.9.11_1.0.0.0_ga, I don't see any commits since release. Is this branch dead then?
If not, how do I sync it with latest ? (git fetch or pull always tells me nothing new )
Hi D.RY,
as an outsider not involved with the NXP development I do not know the exact procedures, but watching previous behaviour gives a clue as to how things work.
Usually the release branches are not updated anymore. They simply reference a stable set of sources. When there are bug fixes, then another branch will be cut afterwards containing those. Check for example the http://git.freescale.com/git/cgit.cgi/imx/linux-imx.git/log/?h=imx_4.1.15_1.0.0_ga and http://git.freescale.com/git/cgit.cgi/imx/linux-imx.git/log/?h=imx_4.1.15_2.0.0_ga branches. The development leading to those branches are internal and cannot be followed as far as I can tell. Not every Linux git repo has a comparable open development model as the mainline Linux kernel. Often times the public repositories are simply mirrors of internal repositories where the actual development takes place.
Hey Detlev Zundel,
Thus one basically doesn't know for a year or so what changes fixes they done, until a new BSP is released?
Is there a way to push or suggest patches to their kernel? I saw someone from NXP pushed or used to submit patches or code to patchwork to Linux kernel, but it didn't look recent relative to BSP release. So may be that practice has stopped. I'm not familiar in general with how this works. Trying to understand how different companies that use say iMX SoC and Linux sync or share their linux-imx work.
Tried looking here : patchwork kernel but didn't see such project. Yet, I saw at least one/two patches from Freescale/NXP in sources there..
How do different SoM/CoM manufacturers sync on kernel and bootloader updates or changes or fixes they do themselves, and then to NXP? Does each maintain their own repo, and has to follow everyone else? And then resync (or rebase, probably right term) based on the new NXP BSP release ... ?
Hi Erez,
if you look at the overview page Freescale Public GIT you'll see that the linux-2.6-imx repo has been idle for 3 years. So the linux-imx is definitely the repo to use.
Historically after the linux kernel version update from 2.4 to 2.6 a lot of repositories started to include the "2.6" substring in their names. Of course this was outdated by the switch from 2.6 to 3.0 so the substrings disappeared again. If the repo was never renamed (which would need every downstream user to change the URLs) you can tell when the repo came into life.
Of course as stated in the other thread linked by Marcel, there is also the github hosted linux tree somewhat more open for contributions external to NXP.
Of course in the long run the NXP SoCs should be supported in the mainline linux kernel itself, so the choice of the repository is an individual decision and certainly depends on the SoC you use and the level of support in the different trees.
Just to add some more info - there is an informative item here in the i.MX community touching this topic:
Dear i.MX Developers,
We have created a maintenance GIT branch for both MX28 EVK and MX53 QSB platforms. The branch is called "imx_2.6.35_maintain" and can be found at this location:http://git.freescale.com/git/cgit.cgi/imx/linux-2.6-imx.git/.
In the future we will be making bug fix/maintain releases for MX53QSB and MX28EVK platform from this branch. For instructions on submitting patches to the branch, please refer to this discussion: Submit i.MX53 & i.MX28 Linux kernel patches.
Thank you, Detlev Zundel! There is a bit of confusion due to the naming of the original 2.6 repositories but hopefully having them on the new repository will make things clearer.
And then there is also https://github.com/Freescale/linux-fslc, more on this discussion about the Freescale kernel roadmap https://community.nxp.com/thread/380548.