return UCLAMP_BUCKET_DELTA * uclamp_bucket_id(clamp_value);
 }
 
-static inline unsigned int uclamp_none(int clamp_id)
+static inline enum uclamp_id uclamp_none(enum uclamp_id clamp_id)
 {
        if (clamp_id == UCLAMP_MIN)
                return 0;
 }
 
 static inline unsigned int
-uclamp_idle_value(struct rq *rq, unsigned int clamp_id,
+uclamp_idle_value(struct rq *rq, enum uclamp_id clamp_id,
                  unsigned int clamp_value)
 {
        /*
        return uclamp_none(UCLAMP_MIN);
 }
 
-static inline void uclamp_idle_reset(struct rq *rq, unsigned int clamp_id,
+static inline void uclamp_idle_reset(struct rq *rq, enum uclamp_id clamp_id,
                                     unsigned int clamp_value)
 {
        /* Reset max-clamp retention only on idle exit */
 }
 
 static inline
-unsigned int uclamp_rq_max_value(struct rq *rq, unsigned int clamp_id,
-                                unsigned int clamp_value)
+enum uclamp_id uclamp_rq_max_value(struct rq *rq, enum uclamp_id clamp_id,
+                                  unsigned int clamp_value)
 {
        struct uclamp_bucket *bucket = rq->uclamp[clamp_id].bucket;
        int bucket_id = UCLAMP_BUCKETS - 1;
 }
 
 static inline struct uclamp_se
-uclamp_tg_restrict(struct task_struct *p, unsigned int clamp_id)
+uclamp_tg_restrict(struct task_struct *p, enum uclamp_id clamp_id)
 {
        struct uclamp_se uc_req = p->uclamp_req[clamp_id];
 #ifdef CONFIG_UCLAMP_TASK_GROUP
  * - the system default clamp value, defined by the sysadmin
  */
 static inline struct uclamp_se
-uclamp_eff_get(struct task_struct *p, unsigned int clamp_id)
+uclamp_eff_get(struct task_struct *p, enum uclamp_id clamp_id)
 {
        struct uclamp_se uc_req = uclamp_tg_restrict(p, clamp_id);
        struct uclamp_se uc_max = uclamp_default[clamp_id];
        return uc_req;
 }
 
-unsigned int uclamp_eff_value(struct task_struct *p, unsigned int clamp_id)
+enum uclamp_id uclamp_eff_value(struct task_struct *p, enum uclamp_id clamp_id)
 {
        struct uclamp_se uc_eff;
 
  * for each bucket when all its RUNNABLE tasks require the same clamp.
  */
 static inline void uclamp_rq_inc_id(struct rq *rq, struct task_struct *p,
-                                   unsigned int clamp_id)
+                                   enum uclamp_id clamp_id)
 {
        struct uclamp_rq *uc_rq = &rq->uclamp[clamp_id];
        struct uclamp_se *uc_se = &p->uclamp[clamp_id];
  * enforce the expected state and warn.
  */
 static inline void uclamp_rq_dec_id(struct rq *rq, struct task_struct *p,
-                                   unsigned int clamp_id)
+                                   enum uclamp_id clamp_id)
 {
        struct uclamp_rq *uc_rq = &rq->uclamp[clamp_id];
        struct uclamp_se *uc_se = &p->uclamp[clamp_id];
 
 static inline void uclamp_rq_inc(struct rq *rq, struct task_struct *p)
 {
-       unsigned int clamp_id;
+       enum uclamp_id clamp_id;
 
        if (unlikely(!p->sched_class->uclamp_enabled))
                return;
 
 static inline void uclamp_rq_dec(struct rq *rq, struct task_struct *p)
 {
-       unsigned int clamp_id;
+       enum uclamp_id clamp_id;
 
        if (unlikely(!p->sched_class->uclamp_enabled))
                return;
 }
 
 static inline void
-uclamp_update_active(struct task_struct *p, unsigned int clamp_id)
+uclamp_update_active(struct task_struct *p, enum uclamp_id clamp_id)
 {
        struct rq_flags rf;
        struct rq *rq;
 uclamp_update_active_tasks(struct cgroup_subsys_state *css,
                           unsigned int clamps)
 {
+       enum uclamp_id clamp_id;
        struct css_task_iter it;
        struct task_struct *p;
-       unsigned int clamp_id;
 
        css_task_iter_start(css, 0, &it);
        while ((p = css_task_iter_next(&it))) {
 static void __setscheduler_uclamp(struct task_struct *p,
                                  const struct sched_attr *attr)
 {
-       unsigned int clamp_id;
+       enum uclamp_id clamp_id;
 
        /*
         * On scheduling class change, reset to default clamps for tasks
 
 static void uclamp_fork(struct task_struct *p)
 {
-       unsigned int clamp_id;
+       enum uclamp_id clamp_id;
 
        for_each_clamp_id(clamp_id)
                p->uclamp[clamp_id].active = false;
 static void __init init_uclamp(void)
 {
        struct uclamp_se uc_max = {};
-       unsigned int clamp_id;
+       enum uclamp_id clamp_id;
        int cpu;
 
        mutex_init(&uclamp_mutex);
                                            struct task_group *parent)
 {
 #ifdef CONFIG_UCLAMP_TASK_GROUP
-       int clamp_id;
+       enum uclamp_id clamp_id;
 
        for_each_clamp_id(clamp_id) {
                uclamp_se_set(&tg->uclamp_req[clamp_id],
        struct uclamp_se *uc_parent = NULL;
        struct uclamp_se *uc_se = NULL;
        unsigned int eff[UCLAMP_CNT];
-       unsigned int clamp_id;
+       enum uclamp_id clamp_id;
        unsigned int clamps;
 
        css_for_each_descendant_pre(css, top_css) {