summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCristian Marussi <cristian.marussi@arm.com>2026-05-08 18:32:51 +0300
committerSudeep Holla <sudeep.holla@kernel.org>2026-05-12 17:29:11 +0300
commit2e757f71a5ab861478204e2907bb373ccb3ca087 (patch)
tree888e9c03a7420b9e4856384f3ed6f9cf21e926f7
parentcdcd2fc94936f78752e8e4829b1dc9962f0c2383 (diff)
downloadlinux-2e757f71a5ab861478204e2907bb373ccb3ca087.tar.xz
firmware: arm_scmi: Drop unused clock rate interfaces
Only the unified interface exposing min_rate/max_rate is now used. Reviewed-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Cristian Marussi <cristian.marussi@arm.com> Link: https://patch.msgid.link/20260508153300.2224715-7-cristian.marussi@arm.com Signed-off-by: Sudeep Holla <sudeep.holla@kernel.org>
-rw-r--r--drivers/firmware/arm_scmi/clock.c9
-rw-r--r--include/linux/scmi_protocol.h12
2 files changed, 0 insertions, 21 deletions
diff --git a/drivers/firmware/arm_scmi/clock.c b/drivers/firmware/arm_scmi/clock.c
index 512400122b85..467b13a3a18f 100644
--- a/drivers/firmware/arm_scmi/clock.c
+++ b/drivers/firmware/arm_scmi/clock.c
@@ -467,7 +467,6 @@ iter_clk_describe_update_state(struct scmi_iterator_state *st,
st->num_remaining = NUM_REMAINING(flags);
st->num_returned = NUM_RETURNED(flags);
p->clkd->rate_discrete = RATE_DISCRETE(flags);
- p->clkd->info.rate_discrete = p->clkd->rate_discrete;
/* Warn about out of spec replies ... */
if (!p->clkd->rate_discrete &&
@@ -532,21 +531,13 @@ scmi_clock_describe_rates_get(const struct scmi_protocol_handle *ph, u32 clk_id,
return 0;
if (!clkd->rate_discrete) {
- clkd->info.range.min_rate = clkd->rates[RATE_MIN];
- clkd->info.range.max_rate = clkd->rates[RATE_MAX];
- clkd->info.range.step_size = clkd->rates[RATE_STEP];
clkd->info.max_rate = clkd->rates[RATE_MAX];
dev_dbg(ph->dev, "Min %llu Max %llu Step %llu Hz\n",
clkd->rates[RATE_MIN], clkd->rates[RATE_MAX],
clkd->rates[RATE_STEP]);
} else {
- unsigned int i;
-
sort(clkd->rates, clkd->num_rates,
sizeof(clkd->rates[0]), rate_cmp_func, NULL);
- clkd->info.list.num_rates = clkd->num_rates;
- for (i = 0; i < clkd->num_rates; i++)
- clkd->info.list.rates[i] = clkd->rates[i];
clkd->info.max_rate = clkd->rates[clkd->num_rates - 1];
}
clkd->info.min_rate = clkd->rates[RATE_MIN];
diff --git a/include/linux/scmi_protocol.h b/include/linux/scmi_protocol.h
index f82747adc8eb..9913b4f097d8 100644
--- a/include/linux/scmi_protocol.h
+++ b/include/linux/scmi_protocol.h
@@ -44,7 +44,6 @@ struct scmi_base_info {
struct scmi_clock_info {
char name[SCMI_MAX_STR_SIZE];
unsigned int enable_latency;
- bool rate_discrete;
bool rate_changed_notifications;
bool rate_change_requested_notifications;
bool state_ctrl_forbidden;
@@ -53,17 +52,6 @@ struct scmi_clock_info {
bool extended_config;
u64 min_rate;
u64 max_rate;
- union {
- struct {
- int num_rates;
- u64 rates[SCMI_MAX_NUM_RATES];
- } list;
- struct {
- u64 min_rate;
- u64 max_rate;
- u64 step_size;
- } range;
- };
int num_parents;
u32 *parents;
};