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>
lakkyung.jung [Mon, 26 Feb 2018 11:35:49 +0000 (20:35 +0900)]
sched: ehmp: Add to select initial util type for new task.
Change-Id: Idd792099fb636585f2d620ae7fd3f8405cec142f
Signed-off-by: lakkyung.jung <lakkyung.jung@samsung.com>
lakkyung.jung [Mon, 29 Jan 2018 13:40:38 +0000 (22:40 +0900)]
sched: ehmp/fair: refactor exynos_select_cpu.
Change-Id: I496b0cd4e3890285d9f73b9d5c9f11b6b5c9e888
Signed-off-by: lakkyung.jung <lakkyung.jung@samsung.com>
lakkyung.jung [Mon, 29 Jan 2018 13:07:42 +0000 (22:07 +0900)]
sched: ehmp: fix build error when ehmp was disabled.
Change-Id: If7ec0ffe282781ab3bb0d5a845a98603aad66725
Signed-off-by: lakkyung.jung <lakkyung.jung@samsung.com>
Park Bumgyu [Fri, 19 Jan 2018 01:45:26 +0000 (10:45 +0900)]
[HACK] [COMMON] samsung: support Power Management for exynos
Change-Id: Ic85e130e0d9e80af5ad03706572794578699957c
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Wed, 14 Mar 2018 10:45:28 +0000 (19:45 +0900)]
cpufreq: acme: disable cluster-wide power mode while getting/setting frequency
Change-Id: I0d999d112d4785544e3f89b41055e51f55bf1921
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Wed, 14 Mar 2018 10:30:41 +0000 (19:30 +0900)]
cpufreq: acme: move domain id increment
If acme fail to initialize cpufreq domain, domain id does not
increase. Move domain id increment to fix it.
Change-Id: I0cbc1f80452a71195bea010020d93178a268eabb
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Wed, 14 Mar 2018 06:04:43 +0000 (15:04 +0900)]
cpufreq: acme: add ready/exit callback
ready/exit callback will be used by thermal.
Change-Id: Ieab321d3d49c25a2772569b0f7c7cb701e0acda0
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Johnlay Park [Wed, 14 Mar 2018 01:52:35 +0000 (10:52 +0900)]
cpufreq: acme: remove cooling device registration
Change-Id: I073da61cddf7a4f9d97418fda0d723a4033861f2
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Hyeonseong Gil [Wed, 28 Feb 2018 00:29:22 +0000 (09:29 +0900)]
[COMMON] cpufreq: acme: remove enum dm_type
Change-Id: Ifce38d2a6c218b7f74f8e9a5ad6f9fb9d901cf09
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Hyeonseong Gil [Tue, 27 Feb 2018 09:04:58 +0000 (18:04 +0900)]
[COMMON] cpufreq: acme: Use devdata from dm_scaler
It can be used devdata directly from the sclaer function.
Added devdata register at exynos_dm_data_init().
Change-Id: I35965a1e4011366b0e16af7e22f6312319b4363a
Signed-off-by: Hyeonseong Gil <hs.gil@samsung.com>
Soohyun Kim [Wed, 24 Jan 2018 04:37:53 +0000 (13:37 +0900)]
cpufreq: acme: change API for cpuhotplug
Change-Id: I9df99631bf827de8ced627f91d1fa8ba6a645c8b
Signed-off-by: Soohyun Kim <soohyuni.kim@samsung.com>
Eunseok Choi [Tue, 23 Jan 2018 13:19:24 +0000 (22:19 +0900)]
cpufreq: acme: register cpufreq cooling device
Change-Id: I039e4db41c7db0a634e0e35d77000c576d63c514
Signed-off-by: Eunseok Choi <es10.choi@samsung.com>
Soohyun Kim [Mon, 22 Jan 2018 10:56:58 +0000 (19:56 +0900)]
cpufreq: acme: change API for cooling device registration
Change-Id: Ib52c8ca4209ef88ee85dcb3094d192899e4a2f9a
Signed-off-by: Soohyun Kim <soohyuni.kim@samsung.com>
Soohyun Kim [Fri, 9 Mar 2018 03:39:01 +0000 (12:39 +0900)]
soc: cpupm: Fix build error.
Build error occured when CONFIG_CPU_IDLE is disabled.
So, distinguish the build area use by config.
Change-Id: Id0c30d53813b29b4899665ceca3ac9fbd662eda2
Signed-off-by: Soohyun Kim <soohyuni.kim@samsung.com>
lakkyung.jung [Fri, 11 May 2018 09:30:28 +0000 (18:30 +0900)]
[9610] arm64: dts: Add CPUIDLE feature.
Change-Id: I97301d80eeb6a2f121e215c7fe670ea3196d6475
Signed-off-by: lakkyung.jung <lakkyung.jung@samsung.com>
Park Bumgyu [Mon, 26 Feb 2018 07:13:32 +0000 (16:13 +0900)]
HACK: handle big reset control
In prior chips, only big cluster supports CPD(Cluster Power Down),
therefore, big_reset_control() is called in cluster_enable/disable
function. It should be changed to consider cluster.
Change-Id: I75a50df68a44aceabb41b06fd9d66cb65aaf7de2
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
lakkyung.jung [Fri, 11 May 2018 09:21:00 +0000 (18:21 +0900)]
[9610] arm64: dts: Add node for cpupm.
Change-Id: I2936efcbed28a7578db311acc3714349916f5fe0
Signed-off-by: lakkyung.jung <lakkyung.jung@samsung.com>
Park Bumgyu [Tue, 20 Feb 2018 10:43:15 +0000 (19:43 +0900)]
cpuidle: profiler: renewal idle profiler
Change-Id: I880065e2feebd06dd8e820f1716a2d3c51e3a070
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Fri, 23 Feb 2018 00:39:01 +0000 (09:39 +0900)]
soc: cpupm: handle idle ip
Change-Id: I028775221ea5ff3238bf50532095ea49b49071a1
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Fri, 26 Jan 2018 10:25:10 +0000 (19:25 +0900)]
nohz: export symbol tick_nohz_get_sleep_length_cpu
tick_nohz_get_sleep_length_cpu returns the length of the current
sleep for a particular CPU.
Change-Id: I8fbc8af8914f0d2ddc47847bb55320925c59aaf9
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Mon, 19 Feb 2018 04:50:19 +0000 (13:50 +0900)]
soc: cpupm: support system idle
Change-Id: Id861005931eff43e61c9cd7b98aed8d00adc61b1
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Tue, 13 Feb 2018 12:05:16 +0000 (21:05 +0900)]
soc: cpupm: handle cpu hotplug
Change-Id: I0a2eb08b97bb8d4d07cec790cae13523ed0fadc8
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Mon, 5 Feb 2018 10:29:56 +0000 (19:29 +0900)]
soc: cpupm: support cluster power down
Change-Id: I232bfac95617d8dff191b176d48119abd0c7accd
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Fri, 26 Jan 2018 10:15:49 +0000 (19:15 +0900)]
soc: cpupm: support c2 state idle
Change-Id: I27d951d61470de912fde7fe21419ecaa3d9ffecb
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Park Bumgyu [Wed, 31 Jan 2018 06:38:46 +0000 (15:38 +0900)]
psci: change customized PSCI to support bit operation
Change-Id: I8cf40dbe290e56d6d93fb2c193342eda166b3857
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>
Signed-off-by: Soohyun Kim <soohyuni.kim@samsung.com>
Johnlay Park [Mon, 22 Jan 2018 12:41:36 +0000 (21:41 +0900)]
cache: kill the unused cache related patch
Change-Id: I858260c9963c0c1b17137a9c1471925851d5eb66
Signed-off-by: Johnlay Park <jonglae.park@samsung.com>
Park Bumgyu [Tue, 10 May 2016 06:37:06 +0000 (15:37 +0900)]
arm64: fill flush_all_cpu_caches()
Change-Id: I2b87a88480d04145a341a312aaa8fc9ac0e690aa
Signed-off-by: Park Bumgyu <bumgyu.park@samsung.com>