diff mbox

spi: pxa2xx: Do not detect number of enabled chip selects on Intel SPT

Message ID 1461654506-4040-1-git-send-email-jarkko.nikula@linux.intel.com (mailing list archive)
State Accepted
Commit 66ec246eb9982e7eb8e15e1fc55f543230310dd0
Headers show

Commit Message

Jarkko Nikula April 26, 2016, 7:08 a.m. UTC
Certain Intel Sunrisepoint PCH variants report zero chip selects in SPI
capabilities register even they have one per port. Detection in
pxa2xx_spi_probe() sets master->num_chipselect to 0 leading to -EINVAL
from spi_register_master() where chip select count is validated.

Fix this by not using SPI capabilities register on Sunrisepoint. They don't
have more than one chip select so use the default value 1 instead of
detection.

Cc: <stable@vger.kernel.org> # 4.4+
Fixes: 8b136baa5892 ("spi: pxa2xx: Detect number of enabled Intel LPSS
SPI chip select signals")
Signed-off-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
---
 drivers/spi/spi-pxa2xx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff mbox

Patch

diff --git a/drivers/spi/spi-pxa2xx.c b/drivers/spi/spi-pxa2xx.c
index 0ce82db8e484..66c36b1aab0c 100644
--- a/drivers/spi/spi-pxa2xx.c
+++ b/drivers/spi/spi-pxa2xx.c
@@ -126,7 +126,7 @@  static const struct lpss_config lpss_platforms[] = {
 		.reg_general = -1,
 		.reg_ssp = 0x20,
 		.reg_cs_ctrl = 0x24,
-		.reg_capabilities = 0xfc,
+		.reg_capabilities = -1,
 		.rx_threshold = 1,
 		.tx_threshold_lo = 32,
 		.tx_threshold_hi = 56,