Johnlay Park [Mon, 9 Apr 2018 13:21:47 +0000 (22:21 +0900)]
[COMMON] sched/rt: fix the problem of long stay
in faster CPU domain.
Change-Id: Icc0c64a945efff9bf33753224ca16c9086e9b7d5
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Park Bumgyu [Fri, 13 Apr 2018 02:30:57 +0000 (11:30 +0900)]
ems: clean up ems.h
Change-Id: I70a89c242ada635932d85cbdb9533ef07bcb3526
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Fri, 13 Apr 2018 02:20:57 +0000 (11:20 +0900)]
sched: ems: remove exynos_fit_idlest_group()
Since exynos_proper_cpu() is implemented, exynos no longer calls
find_idlest_group(). Therefore, exynos_fit_idlest_group() is no
longer needed.
Change-Id: Ia04391c3406f8cfe0215fc20ea966b4a1d8c8228
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Thu, 12 Apr 2018 07:49:30 +0000 (16:49 +0900)]
sche: ems: implement proper_cpu
exynos_proper_cpu() is called last in exynos wakeup balance. This is
called when the task does not require preformance, and the prev cpu
is overutilized and does not select the energy cpu.
Since balancing is necessary, the task is sent to the cpu with the
smallest utilization in order to minimize power consumption.
Change-Id: I5ef1a3b6d295763e7c4dc0df9f871d7ef05f8c9a
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Thu, 12 Apr 2018 04:59:03 +0000 (13:59 +0900)]
trace: ems: remove unused event and modify name
Change-Id: I0b5ed6ef6b0adcdf377f0bc915484e0187d3c162
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Thu, 12 Apr 2018 04:30:20 +0000 (13:30 +0900)]
soc: samsung: cpupm: support sysfs to enable/disable power mode
Change-Id: I8f0384bb511a8d9c4aaa57329808e65766ce8b03
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Wed, 11 Apr 2018 03:57:59 +0000 (12:57 +0900)]
cpuidle: profiler: reset idle-ip statistics
Change-Id: I2bb9aae929aeae059eb23e2cff03462fe4eb33db
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Wed, 11 Apr 2018 01:13:17 +0000 (10:13 +0900)]
init/kconfig: FRT dependends on EMS
Change-Id: I5b241b766adc14a2169ec773ead76caba7187f03
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Tue, 10 Apr 2018 01:18:38 +0000 (10:18 +0900)]
sched: ems: set cpu capacity for simplified energy model
We added the SIMPLIFIED_ENERGY_TABLE config to prevent conflicts
with existing energy model. If this config is enabled, the codes for
legacy energy model is unactivated.
Change-Id: I9b6d48334b32a50fd4cc8029d8eab85adb623a9d
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Tue, 10 Apr 2018 01:24:22 +0000 (10:24 +0900)]
cpufreq: acme: update frequency-scale
The freq-scale is updated to adjust the amount of task uilization
accumulation to the cpu frequency. In the previous kernel version,
the freq-scale was updated in the cpufreq framework, but in the
current version, it should be updated in the cpufreq driver
Change-Id: I542898e234f3e7a4e337c96bae40b5a054fcbd97
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Johnlay Park [Fri, 23 Mar 2018 07:44:04 +0000 (16:44 +0900)]
[COMMON] sched: sysctl: match the variable type
for fixing the build error on clang
Change-Id: I396d4f622018fcf2bd601b7c8405640896943493
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Fri, 6 Apr 2018 11:33:48 +0000 (20:33 +0900)]
[COMMON] sched/rt: remove useless retrying core selection
due to the RT throttling in CPU Hotplug in/out
Change-Id: I9b82bdc511cfb49d3cb9b538d4fec6917624afc6
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Fri, 6 Apr 2018 10:57:42 +0000 (19:57 +0900)]
[COMMON] sched/rt: add the online cpu condition
Change-Id: I32df8e8e32a09b4613108e99e8ad3cfaa5bfcd80
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Fri, 6 Apr 2018 07:10:14 +0000 (16:10 +0900)]
[COMMON] sched/rt: add a trace point for FRT algorithm
for optimizing the system performance
Change-Id: I70c7a5f5c06b84e40689030e2186faee14a75c26
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Fri, 6 Apr 2018 07:05:14 +0000 (16:05 +0900)]
[COMMON] sched/rt: enforcing the rt task serialization
to maximize the cache hot benifit.
Change-Id: Idf4854b442bcefe67f6ed7488d154a328d429c44
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Thu, 5 Apr 2018 11:56:20 +0000 (20:56 +0900)]
Revert "[9820] sched: core: fix bug that rt could not be binded to little"
This reverts commit
5933bc155713c86efe99c096ca7ff7421ca53f46
Change-Id: Ib4d852432562747b74472f2dd2c32abd8ea5d4f3
Park Bumgyu [Fri, 6 Apr 2018 05:46:25 +0000 (14:46 +0900)]
sched: ems: remove ehmp.c
EHMP(Exynos HMP) was replaced by EMS(Exynos Mobile Scheduler).
Delete existing ehmp.c.
Change-Id: I437b4b5f0572525f4f692c4a8242c5525f3e2140
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Fri, 6 Apr 2018 06:02:28 +0000 (15:02 +0900)]
sched: ems: move active balance to ems
Move the active balance related code from ehmp.c to core.c of ems.
ehmp.c will be removed.
Change-Id: I6a01db308b3c889f01da642fa3b96df93dc6432f
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Fri, 6 Apr 2018 05:15:09 +0000 (14:15 +0900)]
sched: ems: integrate common API
Commonly used APIs are delcared redundantly in several files in EMS.
It is integrated into core.c.
Change-Id: Ic42d508d1083f9321c856452f50731c2a9fa9adf
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Fri, 6 Apr 2018 05:41:30 +0000 (14:41 +0900)]
sched: ems: seperate task util initiialization
Seperate code related to task util initialization to facilitate
code management.
Change-Id: I86244fe3169467b74baca6a34b968ef04c495586
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Fri, 6 Apr 2018 04:46:39 +0000 (13:46 +0900)]
sched: ems: separate energy coefficient cpu selection
Separate code related to energy conefficient cpu selection to
facilitate code management.
Change-Id: I0a18490da3f178483108c6cb8c34b904cbaca3d6
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Thu, 5 Apr 2018 11:01:19 +0000 (20:01 +0900)]
sched: ems: build simplified energy table
The simplified energy table only considers the compute capacity and power
of the cpu. When the frequency domain is registered, an energy table is
created dynamically.
Change-Id: Ifbd466dbd6ba0e496f98f17e3dd3b2850ab3ceea
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Thu, 5 Apr 2018 06:33:08 +0000 (15:33 +0900)]
sched: ems: parsing energy data to build energy table
To build energy table, parse the mips and coefficient from device tree.
Change-Id: If7db3c4d67cb62a983cccd452ce2546feabe5e27
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Thu, 5 Apr 2018 05:36:40 +0000 (14:36 +0900)]
sched: ems: avoid to access empty energy table
Accessing the energy table without allocation cause a NULL pointer
exception. energy_table.nr_states have values after the energy table
created, so check the nr_states to avoid problem.
Change-Id: I90d6c9b8ff5ac0eb67b92ab0bb57b911d8f65091
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Daeyeong Lee [Fri, 6 Apr 2018 06:47:37 +0000 (15:47 +0900)]
[COMMON] sched: ems: Modify trace log name of EMS feature
Change-Id: I8641050a38bccaa26bac3016e52c10a223e14353
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Park Bumgyu [Tue, 27 Mar 2018 03:50:03 +0000 (12:50 +0900)]
sched: ems: support find energy efficient cpu
Based on the task utilization, it is a function to find the cpu with
the least energy efficiency considering cpu cpacity and power.
Change-Id: I28c333f8f6881ea4aaaf57361cc612975dc35c26
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Fri, 23 Mar 2018 07:23:43 +0000 (16:23 +0900)]
sched: ems: renewal prefer perf
Modify the structure of prefer perf to work with PCF
Change-Id: Ic26874ecd074645031ecac933999f5e488f4f2b1
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Fri, 23 Mar 2018 05:07:09 +0000 (14:07 +0900)]
sched: ems: renewal global boost
Modify the structure of global boost to work with PCF. Accordingly,
the range of value is changed from 0~100 to 0/1.
Change-Id: I2a5d35cfeb69a9b9ca9d5e1d043f49ee4d3d4ff9
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Fri, 23 Mar 2018 05:08:55 +0000 (14:08 +0900)]
sched: ems: support PCF(Performance CPU Finder)
PCF(Performance CPU Finder) provides the ability to find the highest
performance cpu at any given moment. Currently, it is composed of a
selection algorithm based on distributed processing.
Change-Id: Iaaaedd12fee9fe0829db9dd1f7cb72993581a51e
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
lakkyung.jung [Wed, 28 Mar 2018 04:13:21 +0000 (13:13 +0900)]
[COMMON] sched: ems/st_addon: Add core assignment policy for prefer_idle task.
Change-Id: I9179e123b6a04b5ead9605a61e0277c9c9949882
Signed-off-by: lakkyung.jung <lakkyung.jung@samsung.com>
Daeyeong Lee [Wed, 28 Mar 2018 01:31:47 +0000 (10:31 +0900)]
[COMMON] soc: samsung: topology: Remove unnecessary ignore-energy-costs
Change-Id: I35839c994cb86b83897a76173c452a2241834ffe
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Tue, 27 Mar 2018 09:46:50 +0000 (18:46 +0900)]
[COMMON] sched: ems: New function to check whether task make cpu overutilize
The lbt_bring_overutilize function checks whether the CPU will be overutilized
at all levels when a task is added to the CPU.
Change-Id: Idbeb0f06f65ab7a807d85f4e76fc1fb8931d12f7
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Fri, 23 Mar 2018 07:28:34 +0000 (16:28 +0900)]
[COMMON] sched: ems: Move lbt/ontime node from ehmp to ems
Change-Id: I3422985e2cd8f2d1235f983934af5b401326a7b9
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Thu, 22 Mar 2018 10:18:13 +0000 (19:18 +0900)]
[COMMON] sched: ems: Disable ontime feature if ontime node isn't in DT
Change-Id: If7440f36447b73c6e7b8d77bf048b249764bc681
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Thu, 22 Mar 2018 12:13:30 +0000 (21:13 +0900)]
[COMMON] sched: ems: Use default ratio if lbt node isn't in DT
Change-Id: I50c6b0547788eaf329eb6cabb311288f4863b3ef
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Fri, 23 Mar 2018 07:15:25 +0000 (16:15 +0900)]
[COMMON] sched: ems: Separate On-time feature into ontime.c
Change-Id: I8afdbca1a3c4a042784544fd062913c4f8bbedee
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Fri, 23 Mar 2018 07:10:55 +0000 (16:10 +0900)]
[COMMON] sched: ems: Separate LBT feature into lbt.c
Change-Id: Id4b7b40f06418d4d1c46c3170999942ccb895f5b
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Thu, 22 Mar 2018 04:44:14 +0000 (13:44 +0900)]
[COMMON] sched: ems: Modify to create ontime sysfs node dynamically
Change-Id: I15a1727ae54f45686e6d61f3e4159a841b39ba46
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Wed, 21 Mar 2018 06:28:58 +0000 (15:28 +0900)]
[COMMON] sched: ems: Modify to create lbt sysfs node dynamically
Change-Id: I9553139a23fe807beb5ee4ff47d7f4b31813850d
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Tue, 20 Mar 2018 09:51:21 +0000 (18:51 +0900)]
[COMMON] sched: ems: Create sysfs directory of ontime/lbt
Change-Id: I68162de1f59ddc5d29efce3350a90357023b9804
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Park Bumgyu [Fri, 23 Mar 2018 02:13:19 +0000 (11:13 +0900)]
sched: ems: add wakeup balance
Wakeup balance is a scheme that determines which cpu to assign waking
up task or new task to. In fact, it corresponds to the main stream of
EMS. The current patch is skeleton code, and each function will be
reflected.
Change-Id: Ib176e03c94af2d45476bb8b9747b53167e8ff2a9
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Thu, 22 Mar 2018 05:43:33 +0000 (14:43 +0900)]
sched: change exynos scheduler name from EHMP to EMS
Rename Exynos scheduler. Existing EHMP(Exynos HMP) was a scheduler
considering only HMP chipset. EMS(Exynos Mobile Scheduler) will support
all chipsets regardless of cluster and core configuration.
Change-Id: I2802ddcd9e401a0d92f9c98656b5e591d429d6ce
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Wed, 21 Mar 2018 06:25:47 +0000 (15:25 +0900)]
sched: ems: build skeleton for EMS
Change-Id: I0e79d33aa1e5f64a9621773916d0546c1b0c8d20
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Soohyun Kim [Mon, 2 Apr 2018 23:58:05 +0000 (08:58 +0900)]
cpufreq: acme: remove race contdition when set/get freq
Change-Id: I964b18bc4eab0914879c7cf0226ee8bc780dd9de
Signed-off-by: Soohyun Kim <soohyuni.kim@samsung.com>
Soohyun Kim [Mon, 2 Apr 2018 11:25:48 +0000 (20:25 +0900)]
Revert "cpufreq: acme: fix race contidion when set/get freq."
This reverts commit
a67c37d0d34f2232ff796b2466e4429df7f5181c.
Change-Id: I9614c5c653436a00584506629e76678cd2f75fae
Soohyun Kim [Fri, 30 Mar 2018 10:16:27 +0000 (19:16 +0900)]
cpufreq: acme: fix race contidion when set/get freq.
Change-Id: I7a7d59366d81ae4544760548dbb8fac4fed5abe0
Signed-off-by: Soohyun Kim <soohyuni.kim@samsung.com>
Johnlay Park [Thu, 29 Mar 2018 07:19:12 +0000 (16:19 +0900)]
cpufreq: acme: change the way of waking sibline
Fixining bug of
"cpufreq: acme: fix bug about power mode blocking"
Change-Id: I539c454dbc9b72bbf51dfc3dc7ed8bcf910593a5
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Soohyun Kim [Thu, 29 Mar 2018 04:12:35 +0000 (13:12 +0900)]
exynos: acme: check need awake when get/set freq.
Change-Id: Iea6c79e32612dc40e4d7b3e4ceacaa2c4efb1fb0
Signed-off-by: Soohyun Kim <soohyuni.kim@samsung.com>
Soohyun Kim [Thu, 29 Mar 2018 04:08:53 +0000 (13:08 +0900)]
cpufreq: acme: fix bug about power mode blocking.
Change-Id: I07c0e50ca484c09ac76e827b68b1c861d730c1a5
Signed-off-by: Soohyun Kim <soohyuni.kim@samsung.com>
Soohyun Kim [Thu, 29 Mar 2018 04:07:14 +0000 (13:07 +0900)]
[COMMON] cpufreq: acme: add need-awake info for domain
Change-Id: I67c8935ab0b9f9e55a25489dded617572a5cd44c
Signed-off-by: Soohyun Kim <soohyuni.kim@samsung.com>
Youngtae Lee [Wed, 28 Jun 2017 10:35:54 +0000 (03:35 -0700)]
[9820] sched: core: fix bug that rt could not be binded to little
Current rt little binding code is working
when target task is on runqueue. Remove this condition
to all rt tasks bind to little.
Change-Id: I2f1883e2e8dffef25920848f6ef87b38a231ff0c
Signed-off-by: Youngtae Lee <yt0729.lee@samsung.com>
Soohyun Kim [Wed, 28 Mar 2018 07:15:33 +0000 (16:15 +0900)]
[COMMON] sched/rt : fix unnecessary operation for PELT
Change-Id: I3579565f8025b151b303862a710374963197731e
Signed-off-by: Soohyun Kim <soohyuni.kim@samsung.com>
Johnlay Park [Thu, 22 Mar 2018 14:53:43 +0000 (23:53 +0900)]
[COMMON] sched/rt: introduce FRT scheduler
Cpu selection logic change for fluid scheduling.
Fluid RT Scheduler consider task load for core selection
and it can victim higher priority rt task.
because Fluid RT scheduler make a decision through
weighted load by priority.
Change-Id: I40c3c93d4fcf985b0002796748037cacd04e813e
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Fri, 2 Mar 2018 04:32:13 +0000 (13:32 +0900)]
[COMMON] sched/rt: trace: add tracepoint for RT task
Change-Id: I82c5fe708671e00b8f655f40459272c0dcc8b584
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Wed, 28 Feb 2018 13:06:47 +0000 (22:06 +0900)]
[COMMON] sched/rt: hooking cpufreq callback
The cpufreq hook should be called any time the root RT rq utilization
changes. This can occur when a task is switched to or from the rt
class, or a task moves between groups or CPUs, but these paths
currently do not call the cpufreq hook.
Refer I9e6ef6f34157d8bd51f385c5340756090ec050fe
Change-Id: Ibe6b36c133aa7b90962cb188a0b95fcd779e9d2a
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Wed, 28 Feb 2018 11:52:41 +0000 (20:52 +0900)]
[COMMON] sched/rt: add API of propagating of RT TG tree
And remove_load_avg used for inheriting the load between
RT and FAIR task pelt load
Change-Id: Ic30db1ba0e7eb146617bff233842137222c30044
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Wed, 28 Feb 2018 07:03:52 +0000 (16:03 +0900)]
[COMMON] sched/rt: update sched_rt_entity
For task changing its policy or group
Change-Id: I594332064c172bce50f0d4b8134e992a52c2576d
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Wed, 28 Feb 2018 03:59:36 +0000 (12:59 +0900)]
[COMMON] sched/rt: Enable config for change sched group
Change-Id: I3212ac413dbb8dad7e4c89aae1684f65d93e09f9
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Wed, 28 Feb 2018 03:54:30 +0000 (12:54 +0900)]
[COMMON] sched/rt: Use pelt RT b/w in scale_rt_capacity
Remove rt tasks from rt_avg metric and directly use the average
b/w of rt scheduler in scale_rt_capacity
Change-Id: Ibcb772c15251aae8924ef1580bf81c9f05a26eb8
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Tue, 27 Feb 2018 12:53:22 +0000 (21:53 +0900)]
[COMMON] sched/rt: fix !CONFIG_64BIT last_update_time update
Special care must be given to last_update_time on 32BIT
configurations. Add such special treatment as in FAIR.
CAUTIONS: not actually tested on !CONFIG_64BIT
refer the I5728e02a00670ad20f93b4fe9b2d0ea697a66b87
Change-Id: I490c62b207e452f881b8acd07252aa4408b2fa83
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Tue, 27 Feb 2018 12:24:13 +0000 (21:24 +0900)]
[COMMON] sched/{fair,rt}: copy sched avg data across switches between class
When switching a task between FAIR and RT, its sched avg data
has to be copied over, so that per-class PELT always works on
updated data.
Refer the I7561e16ceca2635a50f57e9361d351f22f991651
Change-Id: Id4f7c96c87c97441901b8dd8110ba2aed9ccf247
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Tue, 27 Feb 2018 06:57:52 +0000 (15:57 +0900)]
[COMMON] sched/rt: migrate utilization in task migration
Implement removal of utilization from src rt_rq and
addition to the same to dst_rq.
Refer the Ic4757299f0561f13e58671b9a163c00d10c6a147
Change-Id: I4be0b776c96d1871e246a50255e23d007dcee0e3
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Mon, 26 Feb 2018 01:32:14 +0000 (10:32 +0900)]
[COMMON] sched/rt: Initializing RT Task load
Change-Id: Ic59923ac76d690811fda9fc0228a2dea152948c9
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Fri, 23 Feb 2018 11:04:10 +0000 (20:04 +0900)]
[COMMON] sched/rt: Adding task_change_group for RT
Change-Id: I4723d85597b86d2ac7914470dd01fcfddd573da0
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Fri, 23 Feb 2018 11:01:29 +0000 (20:01 +0900)]
[COMMON] sched/rt: Sharing the primitives in common
Such as, add/sub positive, which used in fair class
exclusively.
Change-Id: I18fdc114e702013adbb4cd2cb2b3dde3805fa693
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Thu, 22 Feb 2018 12:54:10 +0000 (21:54 +0900)]
[COMMON] sched/rt: Tracking the rt task load
On each task activity, rt load is also tracked
Change-Id: I3f1fe1be40ef7a28df88c309821579efa0812e00
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Johnlay Park [Thu, 22 Feb 2018 12:15:15 +0000 (21:15 +0900)]
[COMMON] sched/rt: Introduce pelt load for rt
To activate the FRT (Fluid Real Time) scheduler, task load
for RT task is also necessary for the fluidic scheduling.
Change-Id: I82a998bf9253d54c6858ab9dcd8eaa5b99ecb4a6
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Daeyeong Lee [Tue, 27 Mar 2018 08:25:24 +0000 (17:25 +0900)]
[COMMON] sched: ems: Fix bug of ontime_task_wakeup
Despite not finding target_cpu, there was a hole to include the task in ontime.
The code to defenc it is added.
Change-Id: Ibf6aec93eedd2d7f8c9f45e2e4acc26705733838
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Soohyun Kim [Tue, 27 Mar 2018 15:09:33 +0000 (00:09 +0900)]
[COMMON] cpufreq: acme: add online check about domain cpus.
Change-Id: Id7fc67da1f4c0500dac03f944e061a2844fc479f
Signed-off-by: Soohyun Kim <soohyuni.kim@samsung.com>
Soohyun Kim [Fri, 23 Mar 2018 06:04:42 +0000 (15:04 +0900)]
[COMMON] cpufreq_schedutil: select alive cpu for scaling.
Change-Id: I42b75111f30c9921d858459db883ebdffad83798
Signed-off-by: Soohyun Kim <soohyuni.kim@samsung.com>
Hyeonseong Gil [Fri, 16 Mar 2018 12:00:16 +0000 (21:00 +0900)]
[COMMON] cpufreq: acme: register/unregister cpu_cooling
Change-Id: I259196e71acb3348a9e9868824b476be7ff49bef
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Daeyeong Lee [Tue, 13 Mar 2018 09:43:31 +0000 (18:43 +0900)]
[COMMON] sched: fair: ontime task must wake up from specified target_cpu
Change-Id: I49b6cbe6d77b1a4887d50dc0c65206cccaf51f71
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Tue, 13 Mar 2018 04:00:46 +0000 (13:00 +0900)]
[COMMON] sched: ehmp: Add trace log of ontime_task_wakeup
Change-Id: I71ae8e7e8dab77f9771808676c1a14fe79a4c6e7
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Mon, 12 Mar 2018 13:56:35 +0000 (22:56 +0900)]
[COMMON] sched: ehmp: Modify ontime_task_wakeup to remove topology dependencies
Change-Id: Iccc9abce05adc6e0d15264eafa1bd6001c707481
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Mon, 12 Mar 2018 12:52:26 +0000 (21:52 +0900)]
[COMMON] sched: ehmp: Modify cpu of ontime_entity should be mangaged
Change-Id: I6c2c23e5117d387f8deb9d7995a7377174a06e80
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Fri, 9 Mar 2018 06:34:30 +0000 (15:34 +0900)]
[COMMON] sched: ehmp: Refactoring On-time feature to remove topology dependencies
Change-Id: I0112dd25891af4c4010444dca890b1fb38fdb6a7
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Tue, 13 Mar 2018 10:13:41 +0000 (19:13 +0900)]
[COMMON] sched: ehmp: Add trace log of lbt_overutilized
Change-Id: I6b6e1ef69679de27b14eee7c8629e760a1fe8c98
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Thu, 8 Mar 2018 11:42:13 +0000 (20:42 +0900)]
[COMMON] sched: fair: Support improved LBT feature
Change-Id: Ifc2b9e58a43e41128bde7a2c92e897684c25aecf
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Tue, 13 Mar 2018 10:56:50 +0000 (19:56 +0900)]
[COMMON] sched: ehmp: Modify need_active_balance to use lbt_overutilized
Change-Id: I192607e7f51f2125241728cbbeb33f0c2c707c76
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Mon, 5 Mar 2018 08:41:06 +0000 (17:41 +0900)]
[COMMON] sched: ehmp: Refactoring LBT feature to remove topology dependencies
Change-Id: I1d59cce214221bfe64a48c2ff34bb14ad6e4c34f
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Mon, 19 Feb 2018 13:27:15 +0000 (22:27 +0900)]
[COMMON] soc: samsung: topology: Configure exynos_topology based on DT
Change-Id: If9b7e2086e99e5b9ac1e8348c58da7eee363e490
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Mon, 19 Feb 2018 11:37:14 +0000 (20:37 +0900)]
[COMMON] soc: samsung: topology: Modify sched_domain_energy_f to use SD_LEVEL dynamically
Change-Id: Ie2c138d11cb9a51cd3d3ecb3c1d9f9fbe11bdefb
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Wed, 14 Feb 2018 07:57:05 +0000 (16:57 +0900)]
[COMMON] soc: samsung: topology: Refactoring DT parsing function
Change-Id: I48917bddb20370547ef2be35b9d0a66263434f89
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Tue, 20 Feb 2018 06:20:46 +0000 (15:20 +0900)]
[COMMON] soc: samsung: topology: Modify to not support mpidr to configure cpu_topology
Change-Id: I247c35e5ecacfab2946ffef02f7fab7f21a062c8
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Mon, 19 Feb 2018 12:15:07 +0000 (21:15 +0900)]
[COMMON] soc: samsung: topology: Remove SYS level in topology hierarchy
Change-Id: I26693ab9f5f8a687ec2d80e964a5c492275c5333
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Tue, 13 Feb 2018 11:25:25 +0000 (20:25 +0900)]
[COMMON] soc: samsung: topology: Add cpu_coregroup_energy
Change-Id: Id4217ed4887e37a74971a35c6a3c931ddeafbbd6
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Tue, 13 Feb 2018 06:53:07 +0000 (15:53 +0900)]
[COMMON] soc: samsung: topology: Add cluster_flags
Change-Id: If2ce37ef3f6a8ec6b51eccf05f4e24cbeeb1219c
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Tue, 13 Feb 2018 06:50:41 +0000 (15:50 +0900)]
[COMMON] base: arch_topology: Add sched_domain flag detection for cluster
Change-Id: Iade8db08000fd74c10030475fe2377babb5a59eb
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Mon, 12 Feb 2018 10:25:54 +0000 (19:25 +0900)]
[COMMON] soc: samsung: topology: Add DSU level in topology hierarchy
Change-Id: I4fa8c4ecdc4638da00375e62827d577489e6fcf1
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Mon, 12 Feb 2018 08:06:10 +0000 (17:06 +0900)]
[COMMON] soc: samsung: topology: Initialize coregroup_id and cluster_sibling
Change-Id: I61a8aba2f192e05d01db5ba47d43402b84c8213e
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Mon, 12 Feb 2018 07:15:50 +0000 (16:15 +0900)]
[COMMON] topology: sysfs: Provide coregroup_id and cluster_siblings attributes
Change-Id: I28e6e81486a0eabc600462fff08994ca5669b2df
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Mon, 12 Feb 2018 07:12:55 +0000 (16:12 +0900)]
[COMMON] arm64: topology: Add coregroup_id and cluster_sibling
Change-Id: I01ae62a259dd96356b226454d9301fa822ce0eff
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Mon, 12 Feb 2018 06:27:44 +0000 (15:27 +0900)]
[COMMON] soc: samsung: topology: Remove SMT level in topology hierarchy
Change-Id: I88be094c2e0cd1482411e4946b68aec56413f4fa
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Daeyeong Lee [Wed, 7 Feb 2018 08:15:34 +0000 (17:15 +0900)]
[COMMON] soc: samsung: topology: Make new CPU topology support for ARCH_EXYNOS
Change-Id: I02fb470e14ca0bd556782ef9f75d1e2c9448bc18
Signed-off-by: Daeyeong Lee <daeyeong.lee@samsung.com>
Youngtae Lee [Tue, 30 Jan 2018 08:15:12 +0000 (17:15 +0900)]
Revert "cpufreq: schedutil: move slow path from workqueue to SCHED_FIFO task"
This reverts commit
02a7b1ee3baa15a98b541d8cfd156bbe1a091c20.
Change-Id: I33dd4543bc56f7be867bfeb9bf4ff63350405f11
Signed-off-by: Youngtae Lee <yt0729.lee@samsung.com>
lakkyung.jung [Wed, 14 Mar 2018 04:46:14 +0000 (13:46 +0900)]
[COMMON] sched: fair/ehmp: Add to estimate core/cluster power down.
after moving task, previous cpu/cluster can be powered down.
so it should be consider it when idle power was calculated.
Change-Id: I13d954a1640940a7be93d0429248be8802fd615c
Signed-off-by: lakkyung.jung <lakkyung.jung@samsung.com>
lakkyung.jung [Wed, 14 Mar 2018 04:18:58 +0000 (13:18 +0900)]
[COMMON] cpuidle: Add to get target residency for cpu.
Change-Id: I9c59acd8bdda34d7071d8512c8551dcb76eee5b5
Signed-off-by: lakkyung.jung <lakkyung.jung@samsung.com>
lakkyung.jung [Tue, 13 Mar 2018 11:35:22 +0000 (20:35 +0900)]
[COMMON] sched: fair/ehmp: Consider cpu capacity when idlest group finds.
Change-Id: I2f168aced04ade3321adcd3408ce2da344d4ab3b
Signed-off-by: lakkyung.jung <lakkyung.jung@samsung.com>
lakkyung.jung [Tue, 13 Mar 2018 10:05:13 +0000 (19:05 +0900)]
[COMMON] sched: fair: Adjust average load considering CPU capacity.
Change-Id: Id606bb8ebe305f684ed097da5fd7fa809eae5f17
Signed-off-by: lakkyung.jung <lakkyung.jung@samsung.com>
lakkyung.jung [Tue, 13 Mar 2018 09:46:17 +0000 (18:46 +0900)]
[COMMON] sched: fair: Modify condition of group_is_overloaded for idle cpu.
If the idle cpu(CPU_NEWLY_IDLE/CPU_IDLE) performs load balancing,
the group is considered an overload group if the group has more
tasks than it can handle.
Change-Id: I25ae84ade65321234ee6e306e7234a238d8e2183
Signed-off-by: lakkyung.jung <lakkyung.jung@samsung.com>