From: Andy Shevchenko <andriy.shevchenko@linux.intel.com> To: Mark Brown <broonie@kernel.org>, Andy Shevchenko <andriy.shevchenko@linux.intel.com>, linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: Daniel Mack <daniel@zonque.org>, Haojian Zhuang <haojian.zhuang@gmail.com>, Robert Jarzmik <robert.jarzmik@free.fr>, Russell King <linux@armlinux.org.uk> Subject: [PATCH v2 4/9] spi: pxa2xx: Skip SSP initialization if it's done elsewhere Date: Wed, 27 Mar 2024 21:29:23 +0200 [thread overview] Message-ID: <20240327193138.2385910-5-andriy.shevchenko@linux.intel.com> (raw) In-Reply-To: <20240327193138.2385910-1-andriy.shevchenko@linux.intel.com> If SSP has been enumerated elsewhere, skip its initialization in pxa2xx_spi_init_pdata(). Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> --- drivers/spi/spi-pxa2xx.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/spi/spi-pxa2xx.c b/drivers/spi/spi-pxa2xx.c index e7072727c25c..b01a18c89b6b 100644 --- a/drivers/spi/spi-pxa2xx.c +++ b/drivers/spi/spi-pxa2xx.c @@ -1355,6 +1355,7 @@ pxa2xx_spi_init_pdata(struct platform_device *pdev) struct device *dev = &pdev->dev; struct device *parent = dev->parent; enum pxa_ssp_type type = SSP_UNDEFINED; + struct ssp_device *ssp = NULL; const void *match; bool is_lpss_priv; int status; @@ -1372,6 +1373,10 @@ pxa2xx_spi_init_pdata(struct platform_device *pdev) return ERR_PTR(status); type = (enum pxa_ssp_type)value; + } else { + ssp = pxa_ssp_request(pdev->id, pdev->name); + if (ssp) + type = ssp->type; } /* Validate the SSP type correctness */ @@ -1394,6 +1399,10 @@ pxa2xx_spi_init_pdata(struct platform_device *pdev) pdata->enable_dma = true; pdata->dma_burst_size = 1; + /* If SSP has been already enumerated, use it */ + if (ssp) + return pdata; + status = pxa2xx_spi_init_ssp(pdev, &pdata->ssp, type); if (status) return ERR_PTR(status); -- 2.43.0.rc1.1.gbec44491f096
WARNING: multiple messages have this Message-ID (diff)
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com> To: Mark Brown <broonie@kernel.org>, Andy Shevchenko <andriy.shevchenko@linux.intel.com>, linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: Daniel Mack <daniel@zonque.org>, Haojian Zhuang <haojian.zhuang@gmail.com>, Robert Jarzmik <robert.jarzmik@free.fr>, Russell King <linux@armlinux.org.uk> Subject: [PATCH v2 4/9] spi: pxa2xx: Skip SSP initialization if it's done elsewhere Date: Wed, 27 Mar 2024 21:29:23 +0200 [thread overview] Message-ID: <20240327193138.2385910-5-andriy.shevchenko@linux.intel.com> (raw) In-Reply-To: <20240327193138.2385910-1-andriy.shevchenko@linux.intel.com> If SSP has been enumerated elsewhere, skip its initialization in pxa2xx_spi_init_pdata(). Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> --- drivers/spi/spi-pxa2xx.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/spi/spi-pxa2xx.c b/drivers/spi/spi-pxa2xx.c index e7072727c25c..b01a18c89b6b 100644 --- a/drivers/spi/spi-pxa2xx.c +++ b/drivers/spi/spi-pxa2xx.c @@ -1355,6 +1355,7 @@ pxa2xx_spi_init_pdata(struct platform_device *pdev) struct device *dev = &pdev->dev; struct device *parent = dev->parent; enum pxa_ssp_type type = SSP_UNDEFINED; + struct ssp_device *ssp = NULL; const void *match; bool is_lpss_priv; int status; @@ -1372,6 +1373,10 @@ pxa2xx_spi_init_pdata(struct platform_device *pdev) return ERR_PTR(status); type = (enum pxa_ssp_type)value; + } else { + ssp = pxa_ssp_request(pdev->id, pdev->name); + if (ssp) + type = ssp->type; } /* Validate the SSP type correctness */ @@ -1394,6 +1399,10 @@ pxa2xx_spi_init_pdata(struct platform_device *pdev) pdata->enable_dma = true; pdata->dma_burst_size = 1; + /* If SSP has been already enumerated, use it */ + if (ssp) + return pdata; + status = pxa2xx_spi_init_ssp(pdev, &pdata->ssp, type); if (status) return ERR_PTR(status); -- 2.43.0.rc1.1.gbec44491f096 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2024-03-27 19:31 UTC|newest] Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top 2024-03-27 19:29 [PATCH v2 0/9] spi: pxa2xx: Drop linux/spi/pxa2xx_spi.h Andy Shevchenko 2024-03-27 19:29 ` Andy Shevchenko 2024-03-27 19:29 ` [PATCH v2 1/9] spi: pxa2xx: Narrow the Kconfig option visibility Andy Shevchenko 2024-03-27 19:29 ` Andy Shevchenko 2024-03-27 19:29 ` [PATCH v2 2/9] spi: pxa2xx: Drop ACPI_PTR() and of_match_ptr() Andy Shevchenko 2024-03-27 19:29 ` Andy Shevchenko 2024-03-27 19:29 ` [PATCH v2 3/9] spi: pxa2xx: Extract pxa2xx_spi_init_ssp() helper Andy Shevchenko 2024-03-27 19:29 ` Andy Shevchenko 2024-03-27 19:29 ` Andy Shevchenko [this message] 2024-03-27 19:29 ` [PATCH v2 4/9] spi: pxa2xx: Skip SSP initialization if it's done elsewhere Andy Shevchenko 2024-03-27 19:29 ` [PATCH v2 5/9] spi: pxa2xx: Allow number of chip select pins to be read from property Andy Shevchenko 2024-03-27 19:29 ` Andy Shevchenko 2024-03-27 19:29 ` [PATCH v2 6/9] spi: pxa2xx: Provide num-cs for Sharp PDAs via device properties Andy Shevchenko 2024-03-27 19:29 ` Andy Shevchenko 2024-03-27 19:29 ` [PATCH v2 7/9] spi: pxa2xx: Move contents of linux/spi/pxa2xx_spi.h to a local one Andy Shevchenko 2024-03-27 19:29 ` Andy Shevchenko 2024-03-27 19:29 ` [PATCH v2 8/9] spi: pxa2xx: Remove outdated documentation Andy Shevchenko 2024-03-27 19:29 ` Andy Shevchenko 2024-03-27 19:29 ` [PATCH v2 9/9] spi: pxa2xx: Don't use "proxy" headers Andy Shevchenko 2024-03-27 19:29 ` Andy Shevchenko 2024-03-29 1:29 ` (subset) [PATCH v2 0/9] spi: pxa2xx: Drop linux/spi/pxa2xx_spi.h Mark Brown 2024-03-29 1:29 ` Mark Brown 2024-04-03 11:07 ` Andy Shevchenko 2024-04-03 11:07 ` Andy Shevchenko 2024-04-03 13:29 ` Mark Brown 2024-04-03 13:29 ` Mark Brown 2024-04-03 13:39 ` Andy Shevchenko 2024-04-03 13:39 ` Andy Shevchenko 2024-04-03 13:41 ` Andy Shevchenko 2024-04-03 13:41 ` Andy Shevchenko 2024-04-03 14:13 ` Mark Brown 2024-04-03 14:13 ` Mark Brown 2024-04-03 14:41 ` Andy Shevchenko 2024-04-03 14:41 ` Andy Shevchenko 2024-04-03 15:50 ` Mark Brown 2024-04-03 15:50 ` Mark Brown 2024-04-03 17:13 ` Andy Shevchenko 2024-04-03 17:13 ` Andy Shevchenko
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20240327193138.2385910-5-andriy.shevchenko@linux.intel.com \ --to=andriy.shevchenko@linux.intel.com \ --cc=broonie@kernel.org \ --cc=daniel@zonque.org \ --cc=haojian.zhuang@gmail.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-spi@vger.kernel.org \ --cc=linux@armlinux.org.uk \ --cc=robert.jarzmik@free.fr \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.