]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
firmware: arm_scmi: Use round_up() for base protocol list size calculation
authorPeng Fan <peng.fan@nxp.com>
Sat, 28 Feb 2026 03:37:33 +0000 (11:37 +0800)
committerSudeep Holla <sudeep.holla@kernel.org>
Sun, 8 Mar 2026 13:12:00 +0000 (13:12 +0000)
Replace the open-coded size rounding logic with the kernel's
round_up() helper to improve readability and align with common
kernel practices.

The original expression:
  (1 + (loop_num_ret - 1) / sizeof(u32)) * sizeof(u32)

is equivalent to rounding up loop_num_ret to the nearest multiple of
sizeof(u32), which is exactly what round_up() does.

No functional change.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Cristian Marussi <cristian.marussi@arm.com>
Message-Id: <20260228-scmi-check-v1-1-4935b58bb2db@nxp.com>
Signed-off-by: Sudeep Holla <sudeep.holla@kernel.org>
drivers/firmware/arm_scmi/base.c

index 22267bbd0f4db9e244480b3b9a3b5669e92d82c4..cd1331c2fc40355b54716d4b4fee69b017d3817e 100644 (file)
@@ -7,6 +7,7 @@
 
 #define pr_fmt(fmt) "SCMI Notifications BASE - " fmt
 
+#include <linux/math.h>
 #include <linux/module.h>
 #include <linux/scmi_protocol.h>
 
@@ -219,8 +220,7 @@ scmi_base_implementation_list_get(const struct scmi_protocol_handle *ph,
                }
 
                real_list_sz = t->rx.len - sizeof(u32);
-               calc_list_sz = (1 + (loop_num_ret - 1) / sizeof(u32)) *
-                               sizeof(u32);
+               calc_list_sz = round_up(loop_num_ret, sizeof(u32));
                if (calc_list_sz != real_list_sz) {
                        dev_warn(dev,
                                 "Malformed reply - real_sz:%zd  calc_sz:%u  (loop_num_ret:%d)\n",