summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorgi Djakov <djakov@kernel.org>2026-09-09 15:38:45 +0300
committerGeorgi Djakov <djakov@kernel.org>2026-09-09 15:38:45 +0300
commitad23aee250fad10877cb3579f00561f51ddd4580 (patch)
tree78e19db7eb1ea72e99fb3c3f6e931075785fcf90
parent725394e0d3a52ca9e24e44109bf2ea96e02defca (diff)
parent78a6d636448381b5b4ec17f4406ddc507e68bd94 (diff)
downloadlinux-next-ad23aee250fad10877cb3579f00561f51ddd4580.tar.gz
linux-next-ad23aee250fad10877cb3579f00561f51ddd4580.zip
Merge branch 'icc-fixes' into icc-next
* icc-fixes interconnect: qcom: use 64-bit SMD RPM bus votes Signed-off-by: Georgi Djakov <djakov@kernel.org>
-rw-r--r--drivers/interconnect/qcom/icc-rpm.h4
-rw-r--r--drivers/interconnect/qcom/smd-rpm.c8
2 files changed, 6 insertions, 6 deletions
diff --git a/drivers/interconnect/qcom/icc-rpm.h b/drivers/interconnect/qcom/icc-rpm.h
index cdd5f444b152..b8fa786d3bfd 100644
--- a/drivers/interconnect/qcom/icc-rpm.h
+++ b/drivers/interconnect/qcom/icc-rpm.h
@@ -30,7 +30,7 @@ enum qcom_icc_type {
* @resource_type: RPM resource type of the clock resource
* @clock_id: index of the clock resource of a specific resource type
* @branch: whether the resource represents a branch clock
-*/
+ */
struct rpm_clk_resource {
u32 resource_type;
u32 clock_id;
@@ -167,7 +167,7 @@ int qnoc_probe(struct platform_device *pdev);
void qnoc_remove(struct platform_device *pdev);
bool qcom_icc_rpm_smd_available(void);
-int qcom_icc_rpm_smd_send(int ctx, int rsc_type, int id, u32 val);
+int qcom_icc_rpm_smd_send(int ctx, int rsc_type, int id, u64 val);
int qcom_icc_rpm_set_bus_rate(const struct rpm_clk_resource *clk, int ctx, u32 rate);
#endif
diff --git a/drivers/interconnect/qcom/smd-rpm.c b/drivers/interconnect/qcom/smd-rpm.c
index dbc7ae50b02b..6ac9aef942ad 100644
--- a/drivers/interconnect/qcom/smd-rpm.c
+++ b/drivers/interconnect/qcom/smd-rpm.c
@@ -20,7 +20,7 @@ static struct qcom_smd_rpm *icc_smd_rpm;
struct icc_rpm_smd_req {
__le32 key;
__le32 nbytes;
- __le32 value;
+ __le64 value;
};
bool qcom_icc_rpm_smd_available(void)
@@ -29,12 +29,12 @@ bool qcom_icc_rpm_smd_available(void)
}
EXPORT_SYMBOL_GPL(qcom_icc_rpm_smd_available);
-int qcom_icc_rpm_smd_send(int ctx, int rsc_type, int id, u32 val)
+int qcom_icc_rpm_smd_send(int ctx, int rsc_type, int id, u64 val)
{
struct icc_rpm_smd_req req = {
.key = cpu_to_le32(RPM_KEY_BW),
- .nbytes = cpu_to_le32(sizeof(u32)),
- .value = cpu_to_le32(val),
+ .nbytes = cpu_to_le32(sizeof(u64)),
+ .value = cpu_to_le64(val),
};
return qcom_rpm_smd_write(icc_smd_rpm, ctx, rsc_type, id, &req,