mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data
@ 2025-11-30  9:40 Krzysztof Kozlowski
  2025-11-30  9:40 ` [PATCH 1/4] ASoC: qcom: Constify APR " Krzysztof Kozlowski
                   ` (7 more replies)
  0 siblings, 8 replies; 10+ messages in thread
From: Krzysztof Kozlowski @ 2025-11-30  9:40 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Srinivas Kandagatla,
	Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, linux-kernel, linux-sound, Krzysztof Kozlowski

Patch #1 and #3 touches also Qualcomm SoC file, so this could go either
via Qualcomm SoC tree (with Mark's Ack) or via ASoC tree (with Bjorn's
Ack).

I propose to take it via ASoC tree (Bjorn's Ack), because I am
constifying things there already, so less possible conflicts.

Best regards,
Krzysztof

---
Krzysztof Kozlowski (4):
      ASoC: qcom: Constify APR callback response data
      soc: qcom: apr: Use typedef for GPR callback member
      ASoC: qcom: Constify GPR callback response data
      ASoC: qcom: Constify APR/GPR result structs

 include/linux/soc/qcom/apr.h  |  6 +++---
 sound/soc/qcom/qdsp6/q6adm.c  |  6 +++---
 sound/soc/qcom/qdsp6/q6afe.c  |  6 +++---
 sound/soc/qcom/qdsp6/q6apm.c  | 10 +++++-----
 sound/soc/qcom/qdsp6/q6asm.c  | 10 +++++-----
 sound/soc/qcom/qdsp6/q6core.c |  6 +++---
 sound/soc/qcom/qdsp6/q6prm.c  |  6 +++---
 7 files changed, 25 insertions(+), 25 deletions(-)
---
base-commit: 8db0437c888596202bf1b996d6a152de3f83c4e5
change-id: 20251129-asoc-apr-const-f9c768f0cda2

Best regards,
-- 
Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH 1/4] ASoC: qcom: Constify APR callback response data
  2025-11-30  9:40 [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data Krzysztof Kozlowski
@ 2025-11-30  9:40 ` Krzysztof Kozlowski
  2025-11-30  9:40 ` [PATCH 2/4] soc: qcom: apr: Use typedef for GPR callback member Krzysztof Kozlowski
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Krzysztof Kozlowski @ 2025-11-30  9:40 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Srinivas Kandagatla,
	Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, linux-kernel, linux-sound, Krzysztof Kozlowski

APR bus driver calls each APR client callback with pointer to the APR
response packet.  The callbacks are not suppose to modify that response
packet, so make it a pointer to const to document that expectation
explicitly.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
 include/linux/soc/qcom/apr.h  | 2 +-
 sound/soc/qcom/qdsp6/q6adm.c  | 4 ++--
 sound/soc/qcom/qdsp6/q6afe.c  | 4 ++--
 sound/soc/qcom/qdsp6/q6asm.c  | 8 ++++----
 sound/soc/qcom/qdsp6/q6core.c | 4 ++--
 5 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/include/linux/soc/qcom/apr.h b/include/linux/soc/qcom/apr.h
index a532d1e4b1f4..35f44cd868cb 100644
--- a/include/linux/soc/qcom/apr.h
+++ b/include/linux/soc/qcom/apr.h
@@ -155,7 +155,7 @@ struct apr_driver {
 	int	(*probe)(struct apr_device *sl);
 	void	(*remove)(struct apr_device *sl);
 	int	(*callback)(struct apr_device *a,
-			    struct apr_resp_pkt *d);
+			    const struct apr_resp_pkt *d);
 	int	(*gpr_callback)(struct gpr_resp_pkt *d, void *data, int op);
 	struct device_driver		driver;
 	const struct apr_device_id	*id_table;
diff --git a/sound/soc/qcom/qdsp6/q6adm.c b/sound/soc/qcom/qdsp6/q6adm.c
index 0b8d06ec8b26..608ca0e41539 100644
--- a/sound/soc/qcom/qdsp6/q6adm.c
+++ b/sound/soc/qcom/qdsp6/q6adm.c
@@ -186,11 +186,11 @@ static void q6adm_free_copp(struct kref *ref)
 	kfree(c);
 }
 
-static int q6adm_callback(struct apr_device *adev, struct apr_resp_pkt *data)
+static int q6adm_callback(struct apr_device *adev, const struct apr_resp_pkt *data)
 {
 	struct aprv2_ibasic_rsp_result_t *result = data->payload;
 	int port_idx, copp_idx;
-	struct apr_hdr *hdr = &data->hdr;
+	const struct apr_hdr *hdr = &data->hdr;
 	struct q6copp *copp;
 	struct q6adm *adm = dev_get_drvdata(&adev->dev);
 
diff --git a/sound/soc/qcom/qdsp6/q6afe.c b/sound/soc/qcom/qdsp6/q6afe.c
index 980851a12976..4f9f9a7277df 100644
--- a/sound/soc/qcom/qdsp6/q6afe.c
+++ b/sound/soc/qcom/qdsp6/q6afe.c
@@ -958,11 +958,11 @@ static struct q6afe_port *q6afe_find_port(struct q6afe *afe, int token)
 	return ret;
 }
 
-static int q6afe_callback(struct apr_device *adev, struct apr_resp_pkt *data)
+static int q6afe_callback(struct apr_device *adev, const struct apr_resp_pkt *data)
 {
 	struct q6afe *afe = dev_get_drvdata(&adev->dev);
 	struct aprv2_ibasic_rsp_result_t *res;
-	struct apr_hdr *hdr = &data->hdr;
+	const struct apr_hdr *hdr = &data->hdr;
 	struct q6afe_port *port;
 
 	if (!data->payload_size)
diff --git a/sound/soc/qcom/qdsp6/q6asm.c b/sound/soc/qcom/qdsp6/q6asm.c
index e7295b7b2461..df183b7a4019 100644
--- a/sound/soc/qcom/qdsp6/q6asm.c
+++ b/sound/soc/qcom/qdsp6/q6asm.c
@@ -599,12 +599,12 @@ int q6asm_get_hw_pointer(struct audio_client *ac, unsigned int dir)
 EXPORT_SYMBOL_GPL(q6asm_get_hw_pointer);
 
 static int32_t q6asm_stream_callback(struct apr_device *adev,
-				     struct apr_resp_pkt *data,
+				     const struct apr_resp_pkt *data,
 				     int session_id)
 {
 	struct q6asm *q6asm = dev_get_drvdata(&adev->dev);
 	struct aprv2_ibasic_rsp_result_t *result;
-	struct apr_hdr *hdr = &data->hdr;
+	const struct apr_hdr *hdr = &data->hdr;
 	struct audio_port_data *port;
 	struct audio_client *ac;
 	uint32_t client_event = 0;
@@ -744,13 +744,13 @@ static int32_t q6asm_stream_callback(struct apr_device *adev,
 }
 
 static int q6asm_srvc_callback(struct apr_device *adev,
-			       struct apr_resp_pkt *data)
+			       const struct apr_resp_pkt *data)
 {
 	struct q6asm *q6asm = dev_get_drvdata(&adev->dev);
 	struct aprv2_ibasic_rsp_result_t *result;
 	struct audio_port_data *port;
 	struct audio_client *ac = NULL;
-	struct apr_hdr *hdr = &data->hdr;
+	const struct apr_hdr *hdr = &data->hdr;
 	struct q6asm *a;
 	uint32_t sid = 0;
 	uint32_t dir = 0;
diff --git a/sound/soc/qcom/qdsp6/q6core.c b/sound/soc/qcom/qdsp6/q6core.c
index 49cfb32cd209..51398199bff3 100644
--- a/sound/soc/qcom/qdsp6/q6core.c
+++ b/sound/soc/qcom/qdsp6/q6core.c
@@ -67,11 +67,11 @@ struct q6core {
 
 static struct q6core *g_core;
 
-static int q6core_callback(struct apr_device *adev, struct apr_resp_pkt *data)
+static int q6core_callback(struct apr_device *adev, const struct apr_resp_pkt *data)
 {
 	struct q6core *core = dev_get_drvdata(&adev->dev);
 	struct aprv2_ibasic_rsp_result_t *result;
-	struct apr_hdr *hdr = &data->hdr;
+	const struct apr_hdr *hdr = &data->hdr;
 
 	result = data->payload;
 	switch (hdr->opcode) {

-- 
2.48.1


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH 2/4] soc: qcom: apr: Use typedef for GPR callback member
  2025-11-30  9:40 [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data Krzysztof Kozlowski
  2025-11-30  9:40 ` [PATCH 1/4] ASoC: qcom: Constify APR " Krzysztof Kozlowski
@ 2025-11-30  9:40 ` Krzysztof Kozlowski
  2025-12-19 20:43   ` Bjorn Andersson
  2025-11-30  9:40 ` [PATCH 3/4] ASoC: qcom: Constify GPR callback response data Krzysztof Kozlowski
                   ` (5 subsequent siblings)
  7 siblings, 1 reply; 10+ messages in thread
From: Krzysztof Kozlowski @ 2025-11-30  9:40 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Srinivas Kandagatla,
	Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, linux-kernel, linux-sound, Krzysztof Kozlowski

There is already a typedef for GPR callback used in 'struct
pkt_router_svc', so use it also in 'struct apr_driver', because it is
the same type - one is assigned to another in apr_device_probe().

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
 include/linux/soc/qcom/apr.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/linux/soc/qcom/apr.h b/include/linux/soc/qcom/apr.h
index 35f44cd868cb..b16530f319ad 100644
--- a/include/linux/soc/qcom/apr.h
+++ b/include/linux/soc/qcom/apr.h
@@ -156,7 +156,7 @@ struct apr_driver {
 	void	(*remove)(struct apr_device *sl);
 	int	(*callback)(struct apr_device *a,
 			    const struct apr_resp_pkt *d);
-	int	(*gpr_callback)(struct gpr_resp_pkt *d, void *data, int op);
+	gpr_port_cb gpr_callback;
 	struct device_driver		driver;
 	const struct apr_device_id	*id_table;
 };

-- 
2.48.1


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH 3/4] ASoC: qcom: Constify GPR callback response data
  2025-11-30  9:40 [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data Krzysztof Kozlowski
  2025-11-30  9:40 ` [PATCH 1/4] ASoC: qcom: Constify APR " Krzysztof Kozlowski
  2025-11-30  9:40 ` [PATCH 2/4] soc: qcom: apr: Use typedef for GPR callback member Krzysztof Kozlowski
@ 2025-11-30  9:40 ` Krzysztof Kozlowski
  2025-11-30  9:40 ` [PATCH 4/4] ASoC: qcom: Constify APR/GPR result structs Krzysztof Kozlowski
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Krzysztof Kozlowski @ 2025-11-30  9:40 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Srinivas Kandagatla,
	Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, linux-kernel, linux-sound, Krzysztof Kozlowski

GPR bus driver calls each GPR client callback with pointer to the GPR
response packet.  The callbacks are not suppose to modify that response
packet, so make it a pointer to const to document that expectation
explicitly.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
 include/linux/soc/qcom/apr.h | 2 +-
 sound/soc/qcom/qdsp6/q6apm.c | 8 ++++----
 sound/soc/qcom/qdsp6/q6prm.c | 4 ++--
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/include/linux/soc/qcom/apr.h b/include/linux/soc/qcom/apr.h
index b16530f319ad..6e1b1202e818 100644
--- a/include/linux/soc/qcom/apr.h
+++ b/include/linux/soc/qcom/apr.h
@@ -122,7 +122,7 @@ struct gpr_ibasic_rsp_accepted_t {
 #define APR_SVC_MAJOR_VERSION(v)	((v >> 16) & 0xFF)
 #define APR_SVC_MINOR_VERSION(v)	(v & 0xFF)
 
-typedef int (*gpr_port_cb) (struct gpr_resp_pkt *d, void *priv, int op);
+typedef int (*gpr_port_cb) (const struct gpr_resp_pkt *d, void *priv, int op);
 struct packet_router;
 struct pkt_router_svc {
 	struct device *dev;
diff --git a/sound/soc/qcom/qdsp6/q6apm.c b/sound/soc/qcom/qdsp6/q6apm.c
index 94cc6376a367..cec135c53b99 100644
--- a/sound/soc/qcom/qdsp6/q6apm.c
+++ b/sound/soc/qcom/qdsp6/q6apm.c
@@ -487,14 +487,14 @@ int q6apm_get_hw_pointer(struct q6apm_graph *graph, int dir)
 }
 EXPORT_SYMBOL_GPL(q6apm_get_hw_pointer);
 
-static int graph_callback(struct gpr_resp_pkt *data, void *priv, int op)
+static int graph_callback(const struct gpr_resp_pkt *data, void *priv, int op)
 {
 	struct data_cmd_rsp_rd_sh_mem_ep_data_buffer_done_v2 *rd_done;
 	struct data_cmd_rsp_wr_sh_mem_ep_data_buffer_done_v2 *done;
 	struct apm_cmd_rsp_shared_mem_map_regions *rsp;
 	struct gpr_ibasic_rsp_result_t *result;
 	struct q6apm_graph *graph = priv;
-	struct gpr_hdr *hdr = &data->hdr;
+	const struct gpr_hdr *hdr = &data->hdr;
 	struct device *dev = graph->dev;
 	uint32_t client_event;
 	phys_addr_t phys;
@@ -761,13 +761,13 @@ struct audioreach_module *q6apm_find_module_by_mid(struct q6apm_graph *graph, ui
 
 }
 
-static int apm_callback(struct gpr_resp_pkt *data, void *priv, int op)
+static int apm_callback(const struct gpr_resp_pkt *data, void *priv, int op)
 {
 	gpr_device_t *gdev = priv;
 	struct q6apm *apm = dev_get_drvdata(&gdev->dev);
 	struct device *dev = &gdev->dev;
 	struct gpr_ibasic_rsp_result_t *result;
-	struct gpr_hdr *hdr = &data->hdr;
+	const struct gpr_hdr *hdr = &data->hdr;
 
 	result = data->payload;
 
diff --git a/sound/soc/qcom/qdsp6/q6prm.c b/sound/soc/qcom/qdsp6/q6prm.c
index 0b8fad0bc832..eaec6d211cf8 100644
--- a/sound/soc/qcom/qdsp6/q6prm.c
+++ b/sound/soc/qcom/qdsp6/q6prm.c
@@ -175,12 +175,12 @@ int q6prm_set_lpass_clock(struct device *dev, int clk_id, int clk_attr, int clk_
 }
 EXPORT_SYMBOL_GPL(q6prm_set_lpass_clock);
 
-static int prm_callback(struct gpr_resp_pkt *data, void *priv, int op)
+static int prm_callback(const struct gpr_resp_pkt *data, void *priv, int op)
 {
 	gpr_device_t *gdev = priv;
 	struct q6prm *prm = dev_get_drvdata(&gdev->dev);
 	struct gpr_ibasic_rsp_result_t *result;
-	struct gpr_hdr *hdr = &data->hdr;
+	const struct gpr_hdr *hdr = &data->hdr;
 
 	switch (hdr->opcode) {
 	case PRM_CMD_RSP_REQUEST_HW_RSC:

-- 
2.48.1


^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH 4/4] ASoC: qcom: Constify APR/GPR result structs
  2025-11-30  9:40 [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data Krzysztof Kozlowski
                   ` (2 preceding siblings ...)
  2025-11-30  9:40 ` [PATCH 3/4] ASoC: qcom: Constify GPR callback response data Krzysztof Kozlowski
@ 2025-11-30  9:40 ` Krzysztof Kozlowski
  2025-12-01 15:31 ` [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data Srinivas Kandagatla
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Krzysztof Kozlowski @ 2025-11-30  9:40 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Srinivas Kandagatla,
	Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, linux-kernel, linux-sound, Krzysztof Kozlowski

APR and GPR callbacks receive pointer to const response packet which
holds the response result.  That result should not be modified by
callback, so make it pointer to const for code safety.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
 sound/soc/qcom/qdsp6/q6adm.c  | 2 +-
 sound/soc/qcom/qdsp6/q6afe.c  | 2 +-
 sound/soc/qcom/qdsp6/q6apm.c  | 2 +-
 sound/soc/qcom/qdsp6/q6asm.c  | 2 +-
 sound/soc/qcom/qdsp6/q6core.c | 2 +-
 sound/soc/qcom/qdsp6/q6prm.c  | 2 +-
 6 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/sound/soc/qcom/qdsp6/q6adm.c b/sound/soc/qcom/qdsp6/q6adm.c
index 608ca0e41539..c415b3003030 100644
--- a/sound/soc/qcom/qdsp6/q6adm.c
+++ b/sound/soc/qcom/qdsp6/q6adm.c
@@ -188,7 +188,7 @@ static void q6adm_free_copp(struct kref *ref)
 
 static int q6adm_callback(struct apr_device *adev, const struct apr_resp_pkt *data)
 {
-	struct aprv2_ibasic_rsp_result_t *result = data->payload;
+	const struct aprv2_ibasic_rsp_result_t *result = data->payload;
 	int port_idx, copp_idx;
 	const struct apr_hdr *hdr = &data->hdr;
 	struct q6copp *copp;
diff --git a/sound/soc/qcom/qdsp6/q6afe.c b/sound/soc/qcom/qdsp6/q6afe.c
index 4f9f9a7277df..51d73ad7f477 100644
--- a/sound/soc/qcom/qdsp6/q6afe.c
+++ b/sound/soc/qcom/qdsp6/q6afe.c
@@ -961,7 +961,7 @@ static struct q6afe_port *q6afe_find_port(struct q6afe *afe, int token)
 static int q6afe_callback(struct apr_device *adev, const struct apr_resp_pkt *data)
 {
 	struct q6afe *afe = dev_get_drvdata(&adev->dev);
-	struct aprv2_ibasic_rsp_result_t *res;
+	const struct aprv2_ibasic_rsp_result_t *res;
 	const struct apr_hdr *hdr = &data->hdr;
 	struct q6afe_port *port;
 
diff --git a/sound/soc/qcom/qdsp6/q6apm.c b/sound/soc/qcom/qdsp6/q6apm.c
index cec135c53b99..3b504e2a9173 100644
--- a/sound/soc/qcom/qdsp6/q6apm.c
+++ b/sound/soc/qcom/qdsp6/q6apm.c
@@ -492,7 +492,7 @@ static int graph_callback(const struct gpr_resp_pkt *data, void *priv, int op)
 	struct data_cmd_rsp_rd_sh_mem_ep_data_buffer_done_v2 *rd_done;
 	struct data_cmd_rsp_wr_sh_mem_ep_data_buffer_done_v2 *done;
 	struct apm_cmd_rsp_shared_mem_map_regions *rsp;
-	struct gpr_ibasic_rsp_result_t *result;
+	const struct gpr_ibasic_rsp_result_t *result;
 	struct q6apm_graph *graph = priv;
 	const struct gpr_hdr *hdr = &data->hdr;
 	struct device *dev = graph->dev;
diff --git a/sound/soc/qcom/qdsp6/q6asm.c b/sound/soc/qcom/qdsp6/q6asm.c
index df183b7a4019..6f1667895262 100644
--- a/sound/soc/qcom/qdsp6/q6asm.c
+++ b/sound/soc/qcom/qdsp6/q6asm.c
@@ -603,7 +603,7 @@ static int32_t q6asm_stream_callback(struct apr_device *adev,
 				     int session_id)
 {
 	struct q6asm *q6asm = dev_get_drvdata(&adev->dev);
-	struct aprv2_ibasic_rsp_result_t *result;
+	const struct aprv2_ibasic_rsp_result_t *result;
 	const struct apr_hdr *hdr = &data->hdr;
 	struct audio_port_data *port;
 	struct audio_client *ac;
diff --git a/sound/soc/qcom/qdsp6/q6core.c b/sound/soc/qcom/qdsp6/q6core.c
index 51398199bff3..f4939302b88a 100644
--- a/sound/soc/qcom/qdsp6/q6core.c
+++ b/sound/soc/qcom/qdsp6/q6core.c
@@ -70,7 +70,7 @@ static struct q6core *g_core;
 static int q6core_callback(struct apr_device *adev, const struct apr_resp_pkt *data)
 {
 	struct q6core *core = dev_get_drvdata(&adev->dev);
-	struct aprv2_ibasic_rsp_result_t *result;
+	const struct aprv2_ibasic_rsp_result_t *result;
 	const struct apr_hdr *hdr = &data->hdr;
 
 	result = data->payload;
diff --git a/sound/soc/qcom/qdsp6/q6prm.c b/sound/soc/qcom/qdsp6/q6prm.c
index eaec6d211cf8..6d9834b5d16b 100644
--- a/sound/soc/qcom/qdsp6/q6prm.c
+++ b/sound/soc/qcom/qdsp6/q6prm.c
@@ -179,7 +179,7 @@ static int prm_callback(const struct gpr_resp_pkt *data, void *priv, int op)
 {
 	gpr_device_t *gdev = priv;
 	struct q6prm *prm = dev_get_drvdata(&gdev->dev);
-	struct gpr_ibasic_rsp_result_t *result;
+	const struct gpr_ibasic_rsp_result_t *result;
 	const struct gpr_hdr *hdr = &data->hdr;
 
 	switch (hdr->opcode) {

-- 
2.48.1


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data
  2025-11-30  9:40 [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data Krzysztof Kozlowski
                   ` (3 preceding siblings ...)
  2025-11-30  9:40 ` [PATCH 4/4] ASoC: qcom: Constify APR/GPR result structs Krzysztof Kozlowski
@ 2025-12-01 15:31 ` Srinivas Kandagatla
  2025-12-02 17:08 ` Mark Brown
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 10+ messages in thread
From: Srinivas Kandagatla @ 2025-12-01 15:31 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Bjorn Andersson, Konrad Dybcio,
	Srinivas Kandagatla, Liam Girdwood, Mark Brown, Jaroslav Kysela,
	Takashi Iwai
  Cc: linux-arm-msm, linux-kernel, linux-sound



On 11/30/25 9:40 AM, Krzysztof Kozlowski wrote:
> Patch #1 and #3 touches also Qualcomm SoC file, so this could go either
> via Qualcomm SoC tree (with Mark's Ack) or via ASoC tree (with Bjorn's
> Ack).
> 
> I propose to take it via ASoC tree (Bjorn's Ack), because I am
> constifying things there already, so less possible conflicts.
> 
> Best regards,
> Krzysztof
> 
> ---

LGTM.


Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>

--srini

> Krzysztof Kozlowski (4):
>       ASoC: qcom: Constify APR callback response data
>       soc: qcom: apr: Use typedef for GPR callback member
>       ASoC: qcom: Constify GPR callback response data
>       ASoC: qcom: Constify APR/GPR result structs
> 
>  include/linux/soc/qcom/apr.h  |  6 +++---
>  sound/soc/qcom/qdsp6/q6adm.c  |  6 +++---
>  sound/soc/qcom/qdsp6/q6afe.c  |  6 +++---
>  sound/soc/qcom/qdsp6/q6apm.c  | 10 +++++-----
>  sound/soc/qcom/qdsp6/q6asm.c  | 10 +++++-----
>  sound/soc/qcom/qdsp6/q6core.c |  6 +++---
>  sound/soc/qcom/qdsp6/q6prm.c  |  6 +++---
>  7 files changed, 25 insertions(+), 25 deletions(-)
> ---
> base-commit: 8db0437c888596202bf1b996d6a152de3f83c4e5
> change-id: 20251129-asoc-apr-const-f9c768f0cda2
> 
> Best regards,


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data
  2025-11-30  9:40 [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data Krzysztof Kozlowski
                   ` (4 preceding siblings ...)
  2025-12-01 15:31 ` [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data Srinivas Kandagatla
@ 2025-12-02 17:08 ` Mark Brown
  2025-12-22 20:58 ` Mark Brown
  2025-12-23 17:06 ` Mark Brown
  7 siblings, 0 replies; 10+ messages in thread
From: Mark Brown @ 2025-12-02 17:08 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Bjorn Andersson, Konrad Dybcio, Srinivas Kandagatla,
	Liam Girdwood, Jaroslav Kysela, Takashi Iwai, linux-arm-msm,
	linux-kernel, linux-sound

[-- Attachment #1: Type: text/plain, Size: 392 bytes --]

On Sun, Nov 30, 2025 at 10:40:22AM +0100, Krzysztof Kozlowski wrote:
> Patch #1 and #3 touches also Qualcomm SoC file, so this could go either
> via Qualcomm SoC tree (with Mark's Ack) or via ASoC tree (with Bjorn's
> Ack).
> 
> I propose to take it via ASoC tree (Bjorn's Ack), because I am
> constifying things there already, so less possible conflicts.

That works for me, Bjorn?

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 2/4] soc: qcom: apr: Use typedef for GPR callback member
  2025-11-30  9:40 ` [PATCH 2/4] soc: qcom: apr: Use typedef for GPR callback member Krzysztof Kozlowski
@ 2025-12-19 20:43   ` Bjorn Andersson
  0 siblings, 0 replies; 10+ messages in thread
From: Bjorn Andersson @ 2025-12-19 20:43 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Konrad Dybcio, Srinivas Kandagatla, Liam Girdwood, Mark Brown,
	Jaroslav Kysela, Takashi Iwai, linux-arm-msm, linux-kernel,
	linux-sound

On Sun, Nov 30, 2025 at 10:40:24AM +0100, Krzysztof Kozlowski wrote:
> There is already a typedef for GPR callback used in 'struct
> pkt_router_svc', so use it also in 'struct apr_driver', because it is
> the same type - one is assigned to another in apr_device_probe().
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>

Acked-by: Bjorn Andersson <andersson@kernel.org>

Regards,
Bjorn

> ---
>  include/linux/soc/qcom/apr.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/include/linux/soc/qcom/apr.h b/include/linux/soc/qcom/apr.h
> index 35f44cd868cb..b16530f319ad 100644
> --- a/include/linux/soc/qcom/apr.h
> +++ b/include/linux/soc/qcom/apr.h
> @@ -156,7 +156,7 @@ struct apr_driver {
>  	void	(*remove)(struct apr_device *sl);
>  	int	(*callback)(struct apr_device *a,
>  			    const struct apr_resp_pkt *d);
> -	int	(*gpr_callback)(struct gpr_resp_pkt *d, void *data, int op);
> +	gpr_port_cb gpr_callback;
>  	struct device_driver		driver;
>  	const struct apr_device_id	*id_table;
>  };
> 
> -- 
> 2.48.1
> 

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data
  2025-11-30  9:40 [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data Krzysztof Kozlowski
                   ` (5 preceding siblings ...)
  2025-12-02 17:08 ` Mark Brown
@ 2025-12-22 20:58 ` Mark Brown
  2025-12-23 17:06 ` Mark Brown
  7 siblings, 0 replies; 10+ messages in thread
From: Mark Brown @ 2025-12-22 20:58 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Srinivas Kandagatla,
	Liam Girdwood, Jaroslav Kysela, Takashi Iwai,
	Krzysztof Kozlowski
  Cc: linux-arm-msm, linux-kernel, linux-sound

On Sun, 30 Nov 2025 10:40:22 +0100, Krzysztof Kozlowski wrote:
> Patch #1 and #3 touches also Qualcomm SoC file, so this could go either
> via Qualcomm SoC tree (with Mark's Ack) or via ASoC tree (with Bjorn's
> Ack).
> 
> I propose to take it via ASoC tree (Bjorn's Ack), because I am
> constifying things there already, so less possible conflicts.
> 
> [...]

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next

Thanks!

[1/4] ASoC: qcom: Constify APR callback response data
      commit: 86af3c229245fe1e59f428fc6abe19127ce15f5f
[2/4] soc: qcom: apr: Use typedef for GPR callback member
      commit: c66cea195d76c7c396c4c565b967d3e2a709e762
[3/4] ASoC: qcom: Constify GPR callback response data
      commit: f3a86870c5938fe82ce02c29235326d417010ffb
[4/4] ASoC: qcom: Constify APR/GPR result structs
      commit: a2a631830deb382a3d27b6f52b2d654a3e6bb427

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data
  2025-11-30  9:40 [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data Krzysztof Kozlowski
                   ` (6 preceding siblings ...)
  2025-12-22 20:58 ` Mark Brown
@ 2025-12-23 17:06 ` Mark Brown
  7 siblings, 0 replies; 10+ messages in thread
From: Mark Brown @ 2025-12-23 17:06 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Srinivas Kandagatla,
	Liam Girdwood, Jaroslav Kysela, Takashi Iwai,
	Krzysztof Kozlowski
  Cc: linux-arm-msm, linux-kernel, linux-sound

On Sun, 30 Nov 2025 10:40:22 +0100, Krzysztof Kozlowski wrote:
> Patch #1 and #3 touches also Qualcomm SoC file, so this could go either
> via Qualcomm SoC tree (with Mark's Ack) or via ASoC tree (with Bjorn's
> Ack).
> 
> I propose to take it via ASoC tree (Bjorn's Ack), because I am
> constifying things there already, so less possible conflicts.
> 
> [...]

Applied to

   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next

Thanks!

[1/4] ASoC: qcom: Constify APR callback response data
      commit: 86af3c229245fe1e59f428fc6abe19127ce15f5f
[2/4] soc: qcom: apr: Use typedef for GPR callback member
      commit: c66cea195d76c7c396c4c565b967d3e2a709e762
[3/4] ASoC: qcom: Constify GPR callback response data
      commit: f3a86870c5938fe82ce02c29235326d417010ffb
[4/4] ASoC: qcom: Constify APR/GPR result structs
      commit: a2a631830deb382a3d27b6f52b2d654a3e6bb427

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

Thanks,
Mark


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2025-12-23 17:06 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-11-30  9:40 [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data Krzysztof Kozlowski
2025-11-30  9:40 ` [PATCH 1/4] ASoC: qcom: Constify APR " Krzysztof Kozlowski
2025-11-30  9:40 ` [PATCH 2/4] soc: qcom: apr: Use typedef for GPR callback member Krzysztof Kozlowski
2025-12-19 20:43   ` Bjorn Andersson
2025-11-30  9:40 ` [PATCH 3/4] ASoC: qcom: Constify GPR callback response data Krzysztof Kozlowski
2025-11-30  9:40 ` [PATCH 4/4] ASoC: qcom: Constify APR/GPR result structs Krzysztof Kozlowski
2025-12-01 15:31 ` [PATCH 0/4] ASoC / soc/qcom: Constify APR/GPR callback response data Srinivas Kandagatla
2025-12-02 17:08 ` Mark Brown
2025-12-22 20:58 ` Mark Brown
2025-12-23 17:06 ` Mark Brown

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®