From: Théo Lebrun Date: Fri, 9 Feb 2024 13:45:30 +0000 (+0100) Subject: spi: cadence-qspi: assert each subnode flash CS is valid X-Git-Tag: v6.9-rc1~142^2~27 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0d62c64a8e48438545dcef7e5d2f4839ff5cfe4c;p=thirdparty%2Flinux.git spi: cadence-qspi: assert each subnode flash CS is valid 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 Reviewed-by: Dhruva Gole Link: https://msgid.link/r/20240209-cdns-qspi-cs-v1-1-a4f9dfed9ab4@bootlin.com Signed-off-by: Mark Brown --- diff --git a/drivers/spi/spi-cadence-quadspi.c b/drivers/spi/spi-cadence-quadspi.c index a5e2f7786b760..a397f2c2b5fca 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;