Lines Matching refs:clamp_id
1290 #define for_each_clamp_id(clamp_id) \ argument
1291 for ((clamp_id) = 0; (clamp_id) < UCLAMP_CNT; (clamp_id)++)
1298 static inline unsigned int uclamp_none(enum uclamp_id clamp_id) in uclamp_none() argument
1300 if (clamp_id == UCLAMP_MIN) in uclamp_none()
1314 uclamp_idle_value(struct rq *rq, enum uclamp_id clamp_id, in uclamp_idle_value() argument
1322 if (clamp_id == UCLAMP_MAX) { in uclamp_idle_value()
1330 static inline void uclamp_idle_reset(struct rq *rq, enum uclamp_id clamp_id, in uclamp_idle_reset() argument
1337 WRITE_ONCE(rq->uclamp[clamp_id].value, clamp_value); in uclamp_idle_reset()
1341 unsigned int uclamp_rq_max_value(struct rq *rq, enum uclamp_id clamp_id, in uclamp_rq_max_value() argument
1344 struct uclamp_bucket *bucket = rq->uclamp[clamp_id].bucket; in uclamp_rq_max_value()
1358 return uclamp_idle_value(rq, clamp_id, clamp_value); in uclamp_rq_max_value()
1420 uclamp_tg_restrict(struct task_struct *p, enum uclamp_id clamp_id) in uclamp_tg_restrict() argument
1423 struct uclamp_se uc_req = p->uclamp_req[clamp_id]; in uclamp_tg_restrict()
1455 uclamp_eff_get(struct task_struct *p, enum uclamp_id clamp_id) in uclamp_eff_get() argument
1457 struct uclamp_se uc_req = uclamp_tg_restrict(p, clamp_id); in uclamp_eff_get()
1458 struct uclamp_se uc_max = uclamp_default[clamp_id]; in uclamp_eff_get()
1467 unsigned long uclamp_eff_value(struct task_struct *p, enum uclamp_id clamp_id) in uclamp_eff_value() argument
1472 if (p->uclamp[clamp_id].active) in uclamp_eff_value()
1473 return (unsigned long)p->uclamp[clamp_id].value; in uclamp_eff_value()
1475 uc_eff = uclamp_eff_get(p, clamp_id); in uclamp_eff_value()
1491 enum uclamp_id clamp_id) in uclamp_rq_inc_id() argument
1493 struct uclamp_rq *uc_rq = &rq->uclamp[clamp_id]; in uclamp_rq_inc_id()
1494 struct uclamp_se *uc_se = &p->uclamp[clamp_id]; in uclamp_rq_inc_id()
1500 p->uclamp[clamp_id] = uclamp_eff_get(p, clamp_id); in uclamp_rq_inc_id()
1506 uclamp_idle_reset(rq, clamp_id, uc_se->value); in uclamp_rq_inc_id()
1529 enum uclamp_id clamp_id) in uclamp_rq_dec_id() argument
1531 struct uclamp_rq *uc_rq = &rq->uclamp[clamp_id]; in uclamp_rq_dec_id()
1532 struct uclamp_se *uc_se = &p->uclamp[clamp_id]; in uclamp_rq_dec_id()
1589 bkt_clamp = uclamp_rq_max_value(rq, clamp_id, uc_se->value); in uclamp_rq_dec_id()
1596 enum uclamp_id clamp_id; in uclamp_rq_inc() local
1610 for_each_clamp_id(clamp_id) in uclamp_rq_inc()
1611 uclamp_rq_inc_id(rq, p, clamp_id); in uclamp_rq_inc()
1620 enum uclamp_id clamp_id; in uclamp_rq_dec() local
1634 for_each_clamp_id(clamp_id) in uclamp_rq_dec()
1635 uclamp_rq_dec_id(rq, p, clamp_id); in uclamp_rq_dec()
1639 enum uclamp_id clamp_id) in uclamp_rq_reinc_id() argument
1641 if (!p->uclamp[clamp_id].active) in uclamp_rq_reinc_id()
1644 uclamp_rq_dec_id(rq, p, clamp_id); in uclamp_rq_reinc_id()
1645 uclamp_rq_inc_id(rq, p, clamp_id); in uclamp_rq_reinc_id()
1651 if (clamp_id == UCLAMP_MAX && (rq->uclamp_flags & UCLAMP_FLAG_IDLE)) in uclamp_rq_reinc_id()
1658 enum uclamp_id clamp_id; in uclamp_update_active() local
1678 for_each_clamp_id(clamp_id) in uclamp_update_active()
1679 uclamp_rq_reinc_id(rq, p, clamp_id); in uclamp_update_active()
1816 enum uclamp_id clamp_id, in uclamp_reset() argument
1825 if (clamp_id == UCLAMP_MIN && in uclamp_reset()
1831 if (clamp_id == UCLAMP_MAX && in uclamp_reset()
1843 enum uclamp_id clamp_id; in __setscheduler_uclamp() local
1845 for_each_clamp_id(clamp_id) { in __setscheduler_uclamp()
1846 struct uclamp_se *uc_se = &p->uclamp_req[clamp_id]; in __setscheduler_uclamp()
1849 if (!uclamp_reset(attr, clamp_id, uc_se)) in __setscheduler_uclamp()
1856 if (unlikely(rt_task(p) && clamp_id == UCLAMP_MIN)) in __setscheduler_uclamp()
1859 value = uclamp_none(clamp_id); in __setscheduler_uclamp()
1883 enum uclamp_id clamp_id; in uclamp_fork() local
1889 for_each_clamp_id(clamp_id) in uclamp_fork()
1890 p->uclamp[clamp_id].active = false; in uclamp_fork()
1895 for_each_clamp_id(clamp_id) { in uclamp_fork()
1896 uclamp_se_set(&p->uclamp_req[clamp_id], in uclamp_fork()
1897 uclamp_none(clamp_id), false); in uclamp_fork()
1908 enum uclamp_id clamp_id; in init_uclamp_rq() local
1911 for_each_clamp_id(clamp_id) { in init_uclamp_rq()
1912 uc_rq[clamp_id] = (struct uclamp_rq) { in init_uclamp_rq()
1913 .value = uclamp_none(clamp_id) in init_uclamp_rq()
1923 enum uclamp_id clamp_id; in init_uclamp() local
1929 for_each_clamp_id(clamp_id) { in init_uclamp()
1930 uclamp_se_set(&init_task.uclamp_req[clamp_id], in init_uclamp()
1931 uclamp_none(clamp_id), false); in init_uclamp()
1936 for_each_clamp_id(clamp_id) { in init_uclamp()
1937 uclamp_default[clamp_id] = uc_max; in init_uclamp()
1939 root_task_group.uclamp_req[clamp_id] = uc_max; in init_uclamp()
1940 root_task_group.uclamp[clamp_id] = uc_max; in init_uclamp()
9701 enum uclamp_id clamp_id; in alloc_uclamp_sched_group() local
9703 for_each_clamp_id(clamp_id) { in alloc_uclamp_sched_group()
9704 uclamp_se_set(&tg->uclamp_req[clamp_id], in alloc_uclamp_sched_group()
9705 uclamp_none(clamp_id), false); in alloc_uclamp_sched_group()
9706 tg->uclamp[clamp_id] = parent->uclamp[clamp_id]; in alloc_uclamp_sched_group()
9976 enum uclamp_id clamp_id; in cpu_util_update_eff() local
9986 for_each_clamp_id(clamp_id) { in cpu_util_update_eff()
9988 eff[clamp_id] = css_tg(css)->uclamp_req[clamp_id].value; in cpu_util_update_eff()
9991 eff[clamp_id] > uc_parent[clamp_id].value) { in cpu_util_update_eff()
9992 eff[clamp_id] = uc_parent[clamp_id].value; in cpu_util_update_eff()
10001 for_each_clamp_id(clamp_id) { in cpu_util_update_eff()
10002 if (eff[clamp_id] == uc_se[clamp_id].value) in cpu_util_update_eff()
10004 uc_se[clamp_id].value = eff[clamp_id]; in cpu_util_update_eff()
10005 uc_se[clamp_id].bucket_id = uclamp_bucket_id(eff[clamp_id]); in cpu_util_update_eff()
10006 clamps |= (0x1 << clamp_id); in cpu_util_update_eff()
10063 enum uclamp_id clamp_id) in cpu_uclamp_write() argument
10078 if (tg->uclamp_req[clamp_id].value != req.util) in cpu_uclamp_write()
10079 uclamp_se_set(&tg->uclamp_req[clamp_id], req.util, false); in cpu_uclamp_write()
10085 tg->uclamp_pct[clamp_id] = req.percent; in cpu_uclamp_write()
10111 enum uclamp_id clamp_id) in cpu_uclamp_print() argument
10120 util_clamp = tg->uclamp_req[clamp_id].value; in cpu_uclamp_print()
10128 percent = tg->uclamp_pct[clamp_id]; in cpu_uclamp_print()