These revisions have HW issues and are only early engineering samples used internally. We simply drop the MSIOF support for them. Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx> --- We got confirmation from Renesas for dropping ES1.* support. drivers/spi/spi-sh-msiof.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/drivers/spi/spi-sh-msiof.c b/drivers/spi/spi-sh-msiof.c index 9bca3d076f05..e3b249c71175 100644 --- a/drivers/spi/spi-sh-msiof.c +++ b/drivers/spi/spi-sh-msiof.c @@ -24,6 +24,7 @@ #include <linux/platform_device.h> #include <linux/pm_runtime.h> #include <linux/sh_dma.h> +#include <linux/sys_soc.h> #include <linux/spi/sh_msiof.h> #include <linux/spi/spi.h> @@ -1257,8 +1258,15 @@ static void sh_msiof_release_dma(struct sh_msiof_spi_priv *p) dma_release_channel(ctlr->dma_tx); } +static const struct soc_device_attribute sh_msiof_blacklist[] = { + /* Those have HW issues */ + { .soc_id = "r8a7795", .revision = "ES1.[01]" }, + { /* Sentinel */ } +}; + static int sh_msiof_spi_probe(struct platform_device *pdev) { + const struct soc_device_attribute *attr; struct spi_controller *ctlr; const struct sh_msiof_chipdata *chipdata; struct sh_msiof_spi_info *info; @@ -1267,6 +1275,10 @@ static int sh_msiof_spi_probe(struct platform_device *pdev) int i; int ret; + attr = soc_device_match(sh_msiof_blacklist); + if (attr) + return -ENOTSUPP; + chipdata = of_device_get_match_data(&pdev->dev); if (chipdata) { info = sh_msiof_spi_parse_dt(&pdev->dev); -- 2.30.2