* [PATCH v2 0/3] spi: pxa2xx: Clean up linux/spi/pxa2xx_spi.h
@ 2024-03-07 17:03 Andy Shevchenko
2024-03-07 17:03 ` [PATCH v2 1/3] spi: pxa2xx: Kill pxa2xx_set_spi_info() Andy Shevchenko
` (3 more replies)
0 siblings, 4 replies; 8+ messages in thread
From: Andy Shevchenko @ 2024-03-07 17:03 UTC (permalink / raw)
To: Andy Shevchenko, Arnd Bergmann, linux-arm-kernel, linux-kernel,
linux-spi
Cc: Daniel Mack, Haojian Zhuang, Robert Jarzmik, Russell King, Mark Brown
A couple of cleanups against linux/spi/pxa2xx_spi.h.
In v2:
- preserved a comment (Arnd)
- added tag (Arnd)
- added new patch to avoid using unneeded header in soc/pxa/ssp.c
Andy Shevchenko (3):
spi: pxa2xx: Kill pxa2xx_set_spi_info()
spi: pxa2xx: Make num_chipselect 8-bit in the struct
pxa2xx_spi_controller
spi: pxa2xx: Use proper SSP header in soc/pxa/ssp.c
arch/arm/mach-pxa/devices.c | 18 ------------------
arch/arm/mach-pxa/spitz.c | 14 +++++++++++++-
drivers/soc/pxa/ssp.c | 2 +-
include/linux/spi/pxa2xx_spi.h | 10 +---------
4 files changed, 15 insertions(+), 29 deletions(-)
--
2.43.0.rc1.1.gbec44491f096
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2 1/3] spi: pxa2xx: Kill pxa2xx_set_spi_info()
2024-03-07 17:03 [PATCH v2 0/3] spi: pxa2xx: Clean up linux/spi/pxa2xx_spi.h Andy Shevchenko
@ 2024-03-07 17:03 ` Andy Shevchenko
2024-03-07 17:21 ` Andy Shevchenko
2024-03-07 17:03 ` [PATCH v2 2/3] spi: pxa2xx: Make num_chipselect 8-bit in the struct pxa2xx_spi_controller Andy Shevchenko
` (2 subsequent siblings)
3 siblings, 1 reply; 8+ messages in thread
From: Andy Shevchenko @ 2024-03-07 17:03 UTC (permalink / raw)
To: Andy Shevchenko, Arnd Bergmann, linux-arm-kernel, linux-kernel,
linux-spi
Cc: Daniel Mack, Haojian Zhuang, Robert Jarzmik, Russell King, Mark Brown
There is the only one user of the pxa2xx_set_spi_info(). Unexport it
and inline to the actual user.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
arch/arm/mach-pxa/devices.c | 18 ------------------
arch/arm/mach-pxa/spitz.c | 14 +++++++++++++-
include/linux/spi/pxa2xx_spi.h | 8 --------
3 files changed, 13 insertions(+), 27 deletions(-)
diff --git a/arch/arm/mach-pxa/devices.c b/arch/arm/mach-pxa/devices.c
index 661b3fc43275..1e4cd502340e 100644
--- a/arch/arm/mach-pxa/devices.c
+++ b/arch/arm/mach-pxa/devices.c
@@ -7,7 +7,6 @@
#include <linux/clk-provider.h>
#include <linux/dma-mapping.h>
#include <linux/dmaengine.h>
-#include <linux/spi/pxa2xx_spi.h>
#include <linux/platform_data/i2c-pxa.h>
#include <linux/soc/pxa/cpu.h>
@@ -665,23 +664,6 @@ struct platform_device pxa27x_device_gpio = {
.resource = pxa_resource_gpio,
};
-/* pxa2xx-spi platform-device ID equals respective SSP platform-device ID + 1.
- * See comment in arch/arm/mach-pxa/ssp.c::ssp_probe() */
-void __init pxa2xx_set_spi_info(unsigned id, struct pxa2xx_spi_controller *info)
-{
- struct platform_device *pd;
-
- pd = platform_device_alloc("pxa2xx-spi", id);
- if (pd == NULL) {
- printk(KERN_ERR "pxa2xx-spi: failed to allocate device id %d\n",
- id);
- return;
- }
-
- pd->dev.platform_data = info;
- platform_device_add(pd);
-}
-
static struct resource pxa_dma_resource[] = {
[0] = {
.start = 0x40000000,
diff --git a/arch/arm/mach-pxa/spitz.c b/arch/arm/mach-pxa/spitz.c
index cc691b199429..be7a3574e951 100644
--- a/arch/arm/mach-pxa/spitz.c
+++ b/arch/arm/mach-pxa/spitz.c
@@ -585,6 +585,9 @@ static struct gpiod_lookup_table spitz_spi_gpio_table = {
static void __init spitz_spi_init(void)
{
+ struct platform_device *pd;
+ int id = 2;
+
if (machine_is_akita())
gpiod_add_lookup_table(&akita_lcdcon_gpio_table);
else
@@ -592,7 +595,16 @@ static void __init spitz_spi_init(void)
gpiod_add_lookup_table(&spitz_ads7846_gpio_table);
gpiod_add_lookup_table(&spitz_spi_gpio_table);
- pxa2xx_set_spi_info(2, &spitz_spi_info);
+
+ /* pxa2xx-spi platform-device ID equals respective SSP platform-device ID + 1 */
+ pd = platform_device_alloc("pxa2xx-spi", id);
+ if (pd == NULL) {
+ pr_err("pxa2xx-spi: failed to allocate device id %d\n", id);
+ } else {
+ pd->dev.platform_data = info;
+ platform_device_add(pd);
+ }
+
spi_register_board_info(ARRAY_AND_SIZE(spitz_spi_devices));
}
#else
diff --git a/include/linux/spi/pxa2xx_spi.h b/include/linux/spi/pxa2xx_spi.h
index ca2cd4e30ead..56aba2f737b1 100644
--- a/include/linux/spi/pxa2xx_spi.h
+++ b/include/linux/spi/pxa2xx_spi.h
@@ -45,12 +45,4 @@ struct pxa2xx_spi_chip {
u32 timeout;
};
-#if defined(CONFIG_ARCH_PXA) || defined(CONFIG_ARCH_MMP)
-
-#include <linux/clk.h>
-
-extern void pxa2xx_set_spi_info(unsigned id, struct pxa2xx_spi_controller *info);
-
-#endif
-
#endif /* __LINUX_SPI_PXA2XX_SPI_H */
--
2.43.0.rc1.1.gbec44491f096
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v2 2/3] spi: pxa2xx: Make num_chipselect 8-bit in the struct pxa2xx_spi_controller
2024-03-07 17:03 [PATCH v2 0/3] spi: pxa2xx: Clean up linux/spi/pxa2xx_spi.h Andy Shevchenko
2024-03-07 17:03 ` [PATCH v2 1/3] spi: pxa2xx: Kill pxa2xx_set_spi_info() Andy Shevchenko
@ 2024-03-07 17:03 ` Andy Shevchenko
2024-03-07 17:03 ` [PATCH v2 3/3] spi: pxa2xx: Use proper SSP header in soc/pxa/ssp.c Andy Shevchenko
2024-03-07 17:52 ` [PATCH v2 0/3] spi: pxa2xx: Clean up linux/spi/pxa2xx_spi.h Andy Shevchenko
3 siblings, 0 replies; 8+ messages in thread
From: Andy Shevchenko @ 2024-03-07 17:03 UTC (permalink / raw)
To: Andy Shevchenko, Arnd Bergmann, linux-arm-kernel, linux-kernel,
linux-spi
Cc: Daniel Mack, Haojian Zhuang, Robert Jarzmik, Russell King, Mark Brown
There is no use for whole 16-bit for the number of chip select pins.
Drop it to 8 bits.
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
include/linux/spi/pxa2xx_spi.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/linux/spi/pxa2xx_spi.h b/include/linux/spi/pxa2xx_spi.h
index 56aba2f737b1..e5a4a045fb67 100644
--- a/include/linux/spi/pxa2xx_spi.h
+++ b/include/linux/spi/pxa2xx_spi.h
@@ -17,7 +17,7 @@ struct dma_chan;
* (resides in device.platform_data).
*/
struct pxa2xx_spi_controller {
- u16 num_chipselect;
+ u8 num_chipselect;
u8 enable_dma;
u8 dma_burst_size;
bool is_target;
--
2.43.0.rc1.1.gbec44491f096
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v2 3/3] spi: pxa2xx: Use proper SSP header in soc/pxa/ssp.c
2024-03-07 17:03 [PATCH v2 0/3] spi: pxa2xx: Clean up linux/spi/pxa2xx_spi.h Andy Shevchenko
2024-03-07 17:03 ` [PATCH v2 1/3] spi: pxa2xx: Kill pxa2xx_set_spi_info() Andy Shevchenko
2024-03-07 17:03 ` [PATCH v2 2/3] spi: pxa2xx: Make num_chipselect 8-bit in the struct pxa2xx_spi_controller Andy Shevchenko
@ 2024-03-07 17:03 ` Andy Shevchenko
2024-03-07 22:06 ` Arnd Bergmann
2024-03-07 17:52 ` [PATCH v2 0/3] spi: pxa2xx: Clean up linux/spi/pxa2xx_spi.h Andy Shevchenko
3 siblings, 1 reply; 8+ messages in thread
From: Andy Shevchenko @ 2024-03-07 17:03 UTC (permalink / raw)
To: Andy Shevchenko, Arnd Bergmann, linux-arm-kernel, linux-kernel,
linux-spi
Cc: Daniel Mack, Haojian Zhuang, Robert Jarzmik, Russell King, Mark Brown
There is nothing from pxa2xx_spi.h used by soc/pxa/ssp.c.
Replace it with pxa2xx_ssp.h.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/soc/pxa/ssp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/soc/pxa/ssp.c b/drivers/soc/pxa/ssp.c
index 7af04e8b8163..854d32e04558 100644
--- a/drivers/soc/pxa/ssp.c
+++ b/drivers/soc/pxa/ssp.c
@@ -25,7 +25,7 @@
#include <linux/clk.h>
#include <linux/err.h>
#include <linux/platform_device.h>
-#include <linux/spi/pxa2xx_spi.h>
+#include <linux/pxa2xx_ssp.h>
#include <linux/io.h>
#include <linux/of.h>
#include <linux/of_device.h>
--
2.43.0.rc1.1.gbec44491f096
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH v2 1/3] spi: pxa2xx: Kill pxa2xx_set_spi_info()
2024-03-07 17:03 ` [PATCH v2 1/3] spi: pxa2xx: Kill pxa2xx_set_spi_info() Andy Shevchenko
@ 2024-03-07 17:21 ` Andy Shevchenko
0 siblings, 0 replies; 8+ messages in thread
From: Andy Shevchenko @ 2024-03-07 17:21 UTC (permalink / raw)
To: Arnd Bergmann, linux-arm-kernel, linux-kernel, linux-spi
Cc: Daniel Mack, Haojian Zhuang, Robert Jarzmik, Russell King, Mark Brown
On Thu, Mar 07, 2024 at 07:03:15PM +0200, Andy Shevchenko wrote:
...
> + pd->dev.platform_data = info;
Oops, this won't compile :-)
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 0/3] spi: pxa2xx: Clean up linux/spi/pxa2xx_spi.h
2024-03-07 17:03 [PATCH v2 0/3] spi: pxa2xx: Clean up linux/spi/pxa2xx_spi.h Andy Shevchenko
` (2 preceding siblings ...)
2024-03-07 17:03 ` [PATCH v2 3/3] spi: pxa2xx: Use proper SSP header in soc/pxa/ssp.c Andy Shevchenko
@ 2024-03-07 17:52 ` Andy Shevchenko
3 siblings, 0 replies; 8+ messages in thread
From: Andy Shevchenko @ 2024-03-07 17:52 UTC (permalink / raw)
To: Arnd Bergmann, linux-arm-kernel, linux-kernel, linux-spi
Cc: Daniel Mack, Haojian Zhuang, Robert Jarzmik, Russell King, Mark Brown
On Thu, Mar 07, 2024 at 07:03:14PM +0200, Andy Shevchenko wrote:
> A couple of cleanups against linux/spi/pxa2xx_spi.h.
Besides obvious compilation error I think I can follow Arnd's suggestion to get
rid of the pxa2xx_spi.h altogether. Stay tuned!
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 3/3] spi: pxa2xx: Use proper SSP header in soc/pxa/ssp.c
2024-03-07 17:03 ` [PATCH v2 3/3] spi: pxa2xx: Use proper SSP header in soc/pxa/ssp.c Andy Shevchenko
@ 2024-03-07 22:06 ` Arnd Bergmann
2024-03-08 12:11 ` Andy Shevchenko
0 siblings, 1 reply; 8+ messages in thread
From: Arnd Bergmann @ 2024-03-07 22:06 UTC (permalink / raw)
To: Andy Shevchenko, linux-arm-kernel, linux-kernel, linux-spi
Cc: Daniel Mack, Haojian Zhuang, Robert Jarzmik, Russell King, Mark Brown
On Thu, Mar 7, 2024, at 18:03, Andy Shevchenko wrote:
> There is nothing from pxa2xx_spi.h used by soc/pxa/ssp.c.
> Replace it with pxa2xx_ssp.h.
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 3/3] spi: pxa2xx: Use proper SSP header in soc/pxa/ssp.c
2024-03-07 22:06 ` Arnd Bergmann
@ 2024-03-08 12:11 ` Andy Shevchenko
0 siblings, 0 replies; 8+ messages in thread
From: Andy Shevchenko @ 2024-03-08 12:11 UTC (permalink / raw)
To: Arnd Bergmann
Cc: linux-arm-kernel, linux-kernel, linux-spi, Daniel Mack,
Haojian Zhuang, Robert Jarzmik, Russell King, Mark Brown
On Thu, Mar 07, 2024 at 11:06:00PM +0100, Arnd Bergmann wrote:
> On Thu, Mar 7, 2024, at 18:03, Andy Shevchenko wrote:
> > There is nothing from pxa2xx_spi.h used by soc/pxa/ssp.c.
> > Replace it with pxa2xx_ssp.h.
> >
> > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
>
> Acked-by: Arnd Bergmann <arnd@arndb.de>
Thanks. There is a v3.
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2024-03-08 12:11 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-07 17:03 [PATCH v2 0/3] spi: pxa2xx: Clean up linux/spi/pxa2xx_spi.h Andy Shevchenko
2024-03-07 17:03 ` [PATCH v2 1/3] spi: pxa2xx: Kill pxa2xx_set_spi_info() Andy Shevchenko
2024-03-07 17:21 ` Andy Shevchenko
2024-03-07 17:03 ` [PATCH v2 2/3] spi: pxa2xx: Make num_chipselect 8-bit in the struct pxa2xx_spi_controller Andy Shevchenko
2024-03-07 17:03 ` [PATCH v2 3/3] spi: pxa2xx: Use proper SSP header in soc/pxa/ssp.c Andy Shevchenko
2024-03-07 22:06 ` Arnd Bergmann
2024-03-08 12:11 ` Andy Shevchenko
2024-03-07 17:52 ` [PATCH v2 0/3] spi: pxa2xx: Clean up linux/spi/pxa2xx_spi.h Andy Shevchenko
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).