I'm delighted to announce that the Linaro Technical Steering Committee has approved the release of the big.LITTLE in-kernel switcher (IKS) code to the public.
So here it is:
Branch big.LITTLE-IKS-snapshot of git://git.linaro.org/landing-teams/working/arm/kernel.git
Although this is a snapshot of our latest IKS code, it still needs some minor tidying before it is submitted upstream. So please consider the above as a temporary branch for people to look and play with, and not a branch that we'll keep stable and maintain.
This code was also developed for and tested on the VExpress TC2 development platform. An MCPM backend and possibly a special cpufreq clock driver are required for this code to be usable on other platforms.
The switcher concept is discussed here: http://lwn.net/Articles/481055/
Porting documentation is available here: https://wiki.linaro.org/projects/big.LITTLE.MP/Big.Little.Switcher/Docs/port...
The switcher code description is available here (slightly out of date): https://wiki.linaro.org/projects/big.LITTLE.MP/Big.Little.Switcher/Docs/in-k...
And a review of the MCPM layer upon which IKS and HMP rely: http://lwn.net/Articles/539082/
The core MCPM patches are queued for inclusion into the v3.10 mainline kernel. The MCPM backend for TC2 and the IKS patches will tentatively be submitted for v3.11.
Nicolas
On Thu, May 2, 2013 at 12:03 AM, Nicolas Pitre nicolas.pitre@linaro.org wrote:
I'm delighted to announce that the Linaro Technical Steering Committee has approved the release of the big.LITTLE in-kernel switcher (IKS) code to the public.
Good stuff Nico.
So here it is:
Branch big.LITTLE-IKS-snapshot of git://git.linaro.org/landing-teams/working/arm/kernel.git
Although this is a snapshot of our latest IKS code, it still needs some minor tidying before it is submitted upstream. So please consider the above as a temporary branch for people to look and play with, and not a branch that we'll keep stable and maintain.
As we rebase this code base onto 3.10-rcX and start upstreaming, can we make IKS a topic branch to be added to the LLCT tree? That way Andrey (cc'ed) could pull this in for 13.05 and you won't have to maintain two separate IKS+MP branches.
To be perfectly clear, LLCT's 'linux-linaro' branch would then contain IKS + ARM's reference MP patchset. Viresh and Vincent would then create another tree that would take linux-linaro, revert the reference MP patchset and apply the upstream-friendly version of the MP patchset.
This code was also developed for and tested on the VExpress TC2 development platform. An MCPM backend and possibly a special cpufreq clock driver are required for this code to be usable on other platforms.
The switcher concept is discussed here: http://lwn.net/Articles/481055/
Porting documentation is available here: https://wiki.linaro.org/projects/big.LITTLE.MP/Big.Little.Switcher/Docs/port...
The switcher code description is available here (slightly out of date): https://wiki.linaro.org/projects/big.LITTLE.MP/Big.Little.Switcher/Docs/in-k...
And a review of the MCPM layer upon which IKS and HMP rely: http://lwn.net/Articles/539082/
The core MCPM patches are queued for inclusion into the v3.10 mainline kernel. The MCPM backend for TC2 and the IKS patches will tentatively be submitted for v3.11.
Nicolas
On 05/02/2013 02:33 AM, Nicolas Pitre wrote:
I'm delighted to announce that the Linaro Technical Steering Committee has approved the release of the big.LITTLE in-kernel switcher (IKS) code to the public.
So here it is:
Branch big.LITTLE-IKS-snapshot of git://git.linaro.org/landing-teams/working/arm/kernel.git
Although this is a snapshot of our latest IKS code, it still needs some minor tidying before it is submitted upstream. So please consider the above as a temporary branch for people to look and play with, and not a branch that we'll keep stable and maintain.
This code was also developed for and tested on the VExpress TC2 development platform. An MCPM backend and possibly a special cpufreq clock driver are required for this code to be usable on other platforms.
The switcher concept is discussed here: http://lwn.net/Articles/481055/
Porting documentation is available here: https://wiki.linaro.org/projects/big.LITTLE.MP/Big.Little.Switcher/Docs/port...
The switcher code description is available here (slightly out of date): https://wiki.linaro.org/projects/big.LITTLE.MP/Big.Little.Switcher/Docs/in-k...
And a review of the MCPM layer upon which IKS and HMP rely: http://lwn.net/Articles/539082/
The core MCPM patches are queued for inclusion into the v3.10 mainline kernel. The MCPM backend for TC2 and the IKS patches will tentatively be submitted for v3.11.
It's good news; i will firstly study code and try it on our side, hope later we can have more detailed discussion.
Really great work, Nico. :-)
Thx, Leo Yan
Hi Tixy,
I tried to build the linaro IKS kernel (taken from big.LITTLE-IKS-snapshot), but I saw following warnings of missing config options. Are those expected, or did I do anything wrong?
Eric H.
~/work/build/linaro_iks$./build.sh Using linaro/configs/linaro-base.conf as base Merging linaro/configs/android.conf Merging linaro/configs/big-LITTLE-MP.conf Merging linaro/configs/big-LITTLE-IKS.conf Merging linaro/configs/vexpress.conf scripts/kconfig/conf --alldefconfig Kconfig ./.tmp.config.fLRIDDSFsS:115:warning: override: CPU_FREQ_DEFAULT_GOV_INTERACTIVE changes choice state ./.tmp.config.fLRIDDSFsS:144:warning: override: CPU_FREQ_DEFAULT_GOV_PERFORMANCE changes choice state # # configuration written to .config # Value requested for CONFIG_OABI_COMPAT not in final .config Requested value: # CONFIG_OABI_COMPAT is not set Actual value:
Value requested for CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND not in final .config Requested value: CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y Actual value: # CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
Value requested for CONFIG_ENABLE_DEFAULT_TRACERS not in final .config Requested value: CONFIG_ENABLE_DEFAULT_TRACERS=y Actual value:
Value requested for CONFIG_USB_G_ANDROID not in final .config Requested value: CONFIG_USB_G_ANDROID=y Actual value:
Value requested for CONFIG_CPU_FREQ_DEFAULT_GOV_INTERACTIVE not in final .config Requested value: CONFIG_CPU_FREQ_DEFAULT_GOV_INTERACTIVE=y Actual value: # CONFIG_CPU_FREQ_DEFAULT_GOV_INTERACTIVE is not set
scripts/kconfig/conf --silentoldconfig Kconfig CHK include/generated/uapi/linux/version.h CHK include/generated/utsrelease.h make[1]: `include/generated/mach-types.h' is up to date. CALL scripts/checksyscalls.sh CC scripts/mod/devicetable-offsets.s GEN scripts/mod/devicetable-offsets.h HOSTCC scripts/mod/file2alias.o HOSTLD scripts/mod/modpost CHK include/generated/compile.h HZFILE kernel/hz.bc BC kernel/timeconst.h CC kernel/time.o GZIP kernel/config_data.gz CHK kernel/config_data.h LD kernel/built-in.o LINK vmlinux LD vmlinux.o MODPOST vmlinux.o GEN .version CHK include/generated/compile.h UPD include/generated/compile.h CC init/version.o LD init/built-in.o KSYM .tmp_kallsyms1.o KSYM .tmp_kallsyms2.o LD vmlinux SORTEX vmlinux SYSMAP System.map OBJCOPY arch/arm/boot/Image Kernel: arch/arm/boot/Image is ready GZIP arch/arm/boot/compressed/piggy.gzip AS arch/arm/boot/compressed/piggy.gzip.o LD arch/arm/boot/compressed/vmlinux OBJCOPY arch/arm/boot/zImage Kernel: arch/arm/boot/zImage is ready UIMAGE arch/arm/boot/uImage Image Name: Linux-3.9.0-rc7-00862-g1d6eaf2-d Created: Sun May 5 12:20:26 2013 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 3768896 Bytes = 3680.56 kB = 3.59 MB Load Address: 80008000 Entry Point: 80008000
Begin forwarded message:
From: Nicolas Pitre <nicolas.pitre@linaro.orgmailto:nicolas.pitre@linaro.org> Subject: The Linaro IKS code now publicly available Date: May 1, 2013 12:33:38 PM MDT To: "linaro-kernel@lists.linaro.orgmailto:linaro-kernel@lists.linaro.org" <linaro-kernel@lists.linaro.orgmailto:linaro-kernel@lists.linaro.org>, "linaro-dev@lists.linaro.orgmailto:linaro-dev@lists.linaro.org" <linaro-dev@lists.linaro.orgmailto:linaro-dev@lists.linaro.org>
I'm delighted to announce that the Linaro Technical Steering Committee has approved the release of the big.LITTLE in-kernel switcher (IKS) code to the public.
So here it is:
Branch big.LITTLE-IKS-snapshot of git://git.linaro.org/landing-teams/working/arm/kernel.git
Although this is a snapshot of our latest IKS code, it still needs some minor tidying before it is submitted upstream. So please consider the above as a temporary branch for people to look and play with, and not a branch that we'll keep stable and maintain.
This code was also developed for and tested on the VExpress TC2 development platform. An MCPM backend and possibly a special cpufreq clock driver are required for this code to be usable on other platforms.
The switcher concept is discussed here: http://lwn.net/Articles/481055/
Porting documentation is available here: https://wiki.linaro.org/projects/big.LITTLE.MP/Big.Little.Switcher/Docs/port...
The switcher code description is available here (slightly out of date): https://wiki.linaro.org/projects/big.LITTLE.MP/Big.Little.Switcher/Docs/in-k...
And a review of the MCPM layer upon which IKS and HMP rely: http://lwn.net/Articles/539082/
The core MCPM patches are queued for inclusion into the v3.10 mainline kernel. The MCPM backend for TC2 and the IKS patches will tentatively be submitted for v3.11.
Nicolas
_______________________________________________ linaro-kernel mailing list linaro-kernel@lists.linaro.org http://lists.linaro.org/mailman/listinfo/linaro-kernel
linaro-kernel@lists.linaro.org