SPI slave protocols are typically handled in userspace through spidev,
hence suppress the warning when the SPI controller is running in slave
mode.

Signed-off-by: Geert Uytterhoeven <[email protected]>
---
 drivers/spi/spidev.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/spi/spidev.c b/drivers/spi/spidev.c
index e3c19f30f591115a..8b590dd96480a9f9 100644
--- a/drivers/spi/spidev.c
+++ b/drivers/spi/spidev.c
@@ -713,7 +713,8 @@ static int spidev_probe(struct spi_device *spi)
         * compatible string, it is a Linux implementation thing
         * rather than a description of the hardware.
         */
-       if (spi->dev.of_node && !of_match_device(spidev_dt_ids, &spi->dev)) {
+       if (spi->dev.of_node && !of_match_device(spidev_dt_ids, &spi->dev) &&
+           !(spi->master->flags & SPI_MASTER_IS_SLAVE)) {
                dev_err(&spi->dev, "buggy DT: spidev listed directly in DT\n");
                WARN_ON(spi->dev.of_node &&
                        !of_match_device(spidev_dt_ids, &spi->dev));
-- 
1.9.1

Reply via email to