Thread (91 messages) 91 messages, 8 authors, 2023-08-08

Re: [PATCH v2 08/28] soc: fsl: cpm1: qmc: Introduce available timeslots masks

From: Christophe Leroy <hidden>
Date: 2023-08-08 16:32:17
Also in: alsa-devel, linux-arm-kernel, linux-devicetree, linux-gpio, linuxppc-dev, lkml


Le 26/07/2023 à 17:02, Herve Codina a écrit :
Available timeslots masks define timeslots available for the related
channel. These timeslots are defined by the QMC binding.

Timeslots used are initialized to available timeslots but can be a
subset of available timeslots.
This prepares the dynamic timeslots management (ie. changing timeslots
at runtime).

Signed-off-by: Herve Codina <herve.codina@bootlin.com>
Reviewed-by: Christophe Leroy <redacted>
quoted hunk ↗ jump to hunk
---
  drivers/soc/fsl/qe/qmc.c | 8 ++++++--
  1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/drivers/soc/fsl/qe/qmc.c b/drivers/soc/fsl/qe/qmc.c
index 2d2a9d88ba6c..21ad7e79e7bd 100644
--- a/drivers/soc/fsl/qe/qmc.c
+++ b/drivers/soc/fsl/qe/qmc.c
@@ -177,7 +177,9 @@ struct qmc_chan {
  	struct qmc *qmc;
  	void __iomem *s_param;
  	enum qmc_mode mode;
+	u64	tx_ts_mask_avail;
  	u64	tx_ts_mask;
+	u64	rx_ts_mask_avail;
  	u64	rx_ts_mask;
  	bool is_reverse_data;
  
@@ -875,7 +877,8 @@ static int qmc_of_parse_chans(struct qmc *qmc, struct device_node *np)
  			of_node_put(chan_np);
  			return ret;
  		}
-		chan->tx_ts_mask = ts_mask;
+		chan->tx_ts_mask_avail = ts_mask;
+		chan->tx_ts_mask = chan->tx_ts_mask_avail;
  
  		ret = of_property_read_u64(chan_np, "fsl,rx-ts-mask", &ts_mask);
  		if (ret) {
@@ -884,7 +887,8 @@ static int qmc_of_parse_chans(struct qmc *qmc, struct device_node *np)
  			of_node_put(chan_np);
  			return ret;
  		}
-		chan->rx_ts_mask = ts_mask;
+		chan->rx_ts_mask_avail = ts_mask;
+		chan->rx_ts_mask = chan->rx_ts_mask_avail;
  
  		mode = "transparent";
  		ret = of_property_read_string(chan_np, "fsl,operational-mode", &mode);
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help