Message ID | 20240209-cdns-qspi-cs-v1-1-a4f9dfed9ab4@bootlin.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 0d62c64a8e48438545dcef7e5d2f4839ff5cfe4c |
Headers | show |
Series | spi: cadence-quadspi: correct chip-select logic | expand |
Hi, On Feb 09, 2024 at 14:45:30 +0100, Théo Lebrun wrote: > Check each flash CS against the num-cs property from devicetree. > Fallback to the driver max supported value (CQSPI_MAX_CHIPSELECT) if > num-cs isn't present. > > cqspi->num_chipselect is set in cqspi_of_get_pdata() to the num-cs > devicetree property, or to CQSPI_MAX_CHIPSELECT if num-cs is not set. Makes sense, > > Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com> > --- > drivers/spi/spi-cadence-quadspi.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/spi/spi-cadence-quadspi.c b/drivers/spi/spi-cadence-quadspi.c > index d44a0c501879..7ba4d5d16fd2 100644 > --- a/drivers/spi/spi-cadence-quadspi.c > +++ b/drivers/spi/spi-cadence-quadspi.c > @@ -1635,7 +1635,7 @@ static int cqspi_setup_flash(struct cqspi_st *cqspi) > return ret; > } > > - if (cs >= CQSPI_MAX_CHIPSELECT) { > + if (cs >= cqspi->num_chipselect) { Reviewed-by: Dhruva Gole <d-gole@ti.com>
diff --git a/drivers/spi/spi-cadence-quadspi.c b/drivers/spi/spi-cadence-quadspi.c index d44a0c501879..7ba4d5d16fd2 100644 --- a/drivers/spi/spi-cadence-quadspi.c +++ b/drivers/spi/spi-cadence-quadspi.c @@ -1635,7 +1635,7 @@ static int cqspi_setup_flash(struct cqspi_st *cqspi) return ret; } - if (cs >= CQSPI_MAX_CHIPSELECT) { + if (cs >= cqspi->num_chipselect) { dev_err(dev, "Chip select %d out of range.\n", cs); of_node_put(np); return -EINVAL;
Check each flash CS against the num-cs property from devicetree. Fallback to the driver max supported value (CQSPI_MAX_CHIPSELECT) if num-cs isn't present. cqspi->num_chipselect is set in cqspi_of_get_pdata() to the num-cs devicetree property, or to CQSPI_MAX_CHIPSELECT if num-cs is not set. Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com> --- drivers/spi/spi-cadence-quadspi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)