Linux

From Tizen Wiki
Jump to: navigation, search

INFO

Linux is the used Kernel of Tizen OS , it's based on Mainline kernel ...

Status: This Community page is in Draft state



Cooperation Model between profiles

This section is the meeting place for joined efforts on kernel maintenance among profiles

To ease up profile maintainers , Tizen:Common proposes a cooperation model , feel free to embrace it or not.

Keep in mind that profile's kernel maintainers can do anything he wants into their profile: we don't want to add restrictions, but if maintainer believes into cooperation model, feel free to adopt those detailed conventions.

Check this diagram :

Tizen Kernel Inheritance Model.png


https://docs.google.com/a/open.eurogiciel.org/drawings/d/1cxGudWRSCcFY9Gp-WuDi_bjzq0Xmux-hityxlUgNWKg/edit

https://docs.google.com/drawings/d/1cxGudWRSCcFY9Gp-WuDi_bjzq0Xmux-hityxlUgNWKg/pub?w=480&h=360


LTSI KERNEL 3.14.y

Here's the idea, as stated earlier: Tizen-3.0 is expected use 3.14.y LTSI Kernel and packaging could be factorized into a generic kernel ( /platform/kernel/linux-stable ) then each profile is free to rebase on it ...


Currently, Tizen Common is based on several kernels. Which kernel (repo/branch/version/config) is used depends on architecture which Common is built for. IVI kernels are based on LTS kernel and plan to rebase on LTSI once 3.14 is released (in rc state now) We assume that LTSI is based on maintained LTS repo during later lifespan.

Sources :

Upstream: http://git.linuxfoundation.org/?p=ltsi-kernel.git;a=summary

Downstream (tizen) : https://review.tizen.org/gerrit/gitweb?p=platform%2Fkernel%2Flinux-stable.git;a=summary


New Features

Profile specific features are not in this linux-stable git but in profile's kernel.

If a change is needed by several profiles (2 at least) then it makes sense to have it shared into this linux-stable git tree once the change has been forwarded upstream to LTSI.

Forwarding upstream should be done on LF side ("LTSI Staging Tree" IICR) and as soon it is merged there better it is...

  • 1/ If released then Tizen's linux-stable will automatically have it
  • 2/ If merged then it could be cherry picked and be also pushed in Tizen's linux-stable
  • 3/ If not merged, then it must be studied carefully on possibilities to have in tizen

If the change needs faster integration into tizen, please make sure to add "Bug: Forwarded: and Origin: " labels in commit messages ( As explained there : http://fr.slideshare.net/rzrfreefr/tizen-upstreamcooptdc2014pcoval )

The purpose of this workflow is to make sure if the patch will be reviewed by the experts and if integration teams should be kept or not by checking upstream feedback.

Then profile's maintainers can still decide to integrate downstream changes while rebasing onto linux-stable's tizen branch.

Note LTSI project is open to new features while LTS is not.

Resources :

OTHER KERNELS

For some reasons other work in progress are not yet using LTSI kernel, this is not a problem packaging's file from "linux-stable" can be reused and adapted.

Either maintainer cherry-pick (preferred) packaging files and set the right version, otherwise just copy packaging/*.spec file and maintain it by yourself.

ARCHITECTURES

ARCH : x86

No special information mainline kernel is used

No InitRd is used in Common .

ARCH : ARM

See

http://rzr.online.fr/q/ARM


renesas

Branch: 3.10.y

Uses kernel-common/packaging/*.spec

See Renesas page

https://github.com/dhobsong/rcar-m2-tizen-kernel/blob/master/Makefile

Exynos linux-3.10

Own packaging probably based on Mobile kernel

see Exynos page

https://review.tizen.org/gerrit/gitweb?p=platform%2Fkernel%2Flinux-3.10.git;a=summary

http://www.slideshare.net/MyungJooHam/tdc-mjham-armkernelintizen3noani

ARCH : MIPS

Version: 3.10.5

WIP announced into dev list

Details:

PROFILES / PROJECTS

Tizen:Common

For ARM (Odroid U3) kernel is located in the 'master' branch of:

https://review.tizen.org/gerrit/gitweb?p=platform%2Fkernel%2Flinux-exynos.git;a=summary

Other platforms use other kernels and some of them are not located on tizen.org site.

Tizen:IVI

Intend to rebase on linux-stable

https://review.tizen.org/gerrit/gitweb?p=profile%2Fivi%2Fkernel-x86-ivi.git;a=summary

Tizen:*

TODO

Please describe your status/plans here


Others : yagl emulator

Uses kernel-common/packaging/*.spec

See Emulator page

RESOURCES