Hello Mihai, just saw I made a similar patch for myself lately, so regarding the discussion of the need of such a patch, I would opt for it. However, see below … Am Tue, Oct 08, 2024 at 11:32:26AM +0300 schrieb Mihai Sain: > Add support to print the controller version and used irq > similar to other at91 drivers (spi, twi, usart). > > Signed-off-by: Mihai Sain <mihai.sain@xxxxxxxxxxxxx> > --- > drivers/spi/atmel-quadspi.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/spi/atmel-quadspi.c b/drivers/spi/atmel-quadspi.c > index 95cdfc28361e..757f07132585 100644 > --- a/drivers/spi/atmel-quadspi.c > +++ b/drivers/spi/atmel-quadspi.c > @@ -687,6 +687,8 @@ static int atmel_qspi_probe(struct platform_device *pdev) > pm_runtime_mark_last_busy(&pdev->dev); > pm_runtime_put_autosuspend(&pdev->dev); > > + dev_info(&pdev->dev, "AT91 QSPI Controller version %#x (irq %d)\n", > + atmel_qspi_read(aq, QSPI_VERSION), irq); > return 0; I think this should go above pm_runtime functions, because it does i/o on a register. This is how my diff looks like: diff --git a/drivers/spi/atmel-quadspi.c b/drivers/spi/atmel-quadspi.c index 3d95b887235e6..7405b66e14b30 100644 --- a/drivers/spi/atmel-quadspi.c +++ b/drivers/spi/atmel-quadspi.c @@ -1356,6 +1356,7 @@ static int atmel_qspi_probe(struct platform_device *pdev) struct atmel_qspi *aq; struct resource *res; int irq, err = 0; + u32 version; ctrl = devm_spi_alloc_host(&pdev->dev, sizeof(*aq)); if (!ctrl) @@ -1470,6 +1471,12 @@ static int atmel_qspi_probe(struct platform_device *pdev) pm_runtime_dont_use_autosuspend(&pdev->dev); goto dma_release; } + + version = atmel_qspi_read(aq, QSPI_VERSION) & 0x00000fff; + dev_info(&pdev->dev, + "Atmel QSPI Controller version 0x%x at %pR (irq %d)\n", + version, pdev->resource, irq); + pm_runtime_mark_last_busy(&pdev->dev); pm_runtime_put_autosuspend(&pdev->dev); Greets Alex