public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/5] spi: pxa2xx: Pass the SSP type via device property
@ 2022-10-19 15:04 Andy Shevchenko
  2022-10-19 15:04 ` [PATCH v2 1/5] spi: pxa2xx: Respect Intel SSP type given by a property Andy Shevchenko
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Andy Shevchenko @ 2022-10-19 15:04 UTC (permalink / raw)
  To: Andy Shevchenko, linux-arm-kernel, linux-spi, linux-kernel
  Cc: Daniel Mack, Haojian Zhuang, Robert Jarzmik, Mark Brown

Currently the SPI PXA2xx devices on Intel platforms can be instantiated 
via the following paths:

 1) as ACPI LPSS device on Haswell, Bay Trail and Cherry Trail
 2) as ACPI LPSS device on the Sky Lake and newer
 3) as PCI LPSS device on Haswell, Bay Trail and Cherry Trail
 4) as PCI LPSS device on the Sky Lake and newer
 5) as PCI device via ID table

Each of this case provides some platform related data differently,
i.e.:
 1) via drivers/acpi/acpi_lpss.c and drivers/spi/spi-pxa2xx.c;
 2) via drivers/mfd/intel-lpss-acpi.c;
 3) via drivers/spi/spi-pxa2xx-pci.c;
 4) via drivers/mfd/intel-lpss-pci.c and drivers/spi/spi-pxa2xx.c;
 5) via drivers/spi/spi-pxa2xx-pci.c;

This approach has two downsides:

a) there is no data propagated in the case #2 because we can't have
   two or more drivers to match the same ACPI ID and hence some cases
   are still not supported (Sky Lake and Cannon Lake ACPI enabled
   LPSS);

a) the data is duplicated over two drivers in case #4 and, besides
   to be a bloatware, it is error prone (e.g. Lakefield has a wrong
   data right now due to missed PCI entry in the spi-pxa2xx.c);

This series fixes the downsides, and enables previously unsupported
cases. On top of that it has a coupole of cleanups (patches 4 and 5).

Changelog v2:
- added cover letter (Mark)
- dropped applied patch

Andy Shevchenko (5):
  spi: pxa2xx: Respect Intel SSP type given by a property
  spi: pxa2xx: Remove no more needed PCI ID table
  spi: pxa2xx: Remove no more needed driver data
  spi: pxa2xx: Move OF and ACPI ID tables closer to their user
  spi: pxa2xx: Switch from PM ifdeffery to pm_ptr()

 drivers/spi/spi-pxa2xx.c   | 170 +++++++------------------------------
 include/linux/pxa2xx_ssp.h |   1 +
 2 files changed, 30 insertions(+), 141 deletions(-)

-- 
2.35.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-10-19 15:12 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-10-19 15:04 [PATCH v2 0/5] spi: pxa2xx: Pass the SSP type via device property Andy Shevchenko
2022-10-19 15:04 ` [PATCH v2 1/5] spi: pxa2xx: Respect Intel SSP type given by a property Andy Shevchenko
2022-10-19 15:04 ` [PATCH v2 2/5] spi: pxa2xx: Remove no more needed PCI ID table Andy Shevchenko
2022-10-19 15:04 ` [PATCH v2 3/5] spi: pxa2xx: Remove no more needed driver data Andy Shevchenko
2022-10-19 15:04 ` [PATCH v2 4/5] spi: pxa2xx: Move OF and ACPI ID tables closer to their user Andy Shevchenko
2022-10-19 15:04 ` [PATCH v2 5/5] spi: pxa2xx: Switch from PM ifdeffery to pm_ptr() Andy Shevchenko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox