summaryrefslogtreecommitdiffstats
path: root/drivers/spi
diff options
context:
space:
mode:
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>2022-02-25 18:23:41 +0100
committerMark Brown <broonie@kernel.org>2022-02-28 13:10:18 +0100
commit71ea0e3ac70a50b0c56105e116ed903f8e504e8f (patch)
tree4a670577485ae59b64b90c6dcf6c27f1fd78f78a /drivers/spi
parentspi: pxa2xx-pci: Refactor CE4100 to use ->setup() (diff)
downloadlinux-71ea0e3ac70a50b0c56105e116ed903f8e504e8f.tar.xz
linux-71ea0e3ac70a50b0c56105e116ed903f8e504e8f.zip
spi: pxa2xx-pci: Refactor Quark X1000 to use ->setup()
Refactor Quark X1000 handling code to use ->setup() instead of using the configuration data structure directly. It will allow to refactor further to avoid intermediate storage for the used configuration parameters. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20220225172350.69797-2-andriy.shevchenko@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi')
-rw-r--r--drivers/spi/spi-pxa2xx-pci.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/spi/spi-pxa2xx-pci.c b/drivers/spi/spi-pxa2xx-pci.c
index bd20379d9342..4d617ad72bca 100644
--- a/drivers/spi/spi-pxa2xx-pci.c
+++ b/drivers/spi/spi-pxa2xx-pci.c
@@ -167,6 +167,14 @@ static int mrfld_spi_setup(struct pci_dev *dev, struct pxa_spi_info *c)
return 0;
}
+static int qrk_spi_setup(struct pci_dev *dev, struct pxa_spi_info *c)
+{
+ c->num_chipselect = 1;
+ c->max_clk_rate = 50000000;
+
+ return 0;
+}
+
static struct pxa_spi_info spi_info_configs[] = {
[PORT_CE4100] = {
.type = PXA25x_SSP,
@@ -209,8 +217,7 @@ static struct pxa_spi_info spi_info_configs[] = {
[PORT_QUARK_X1000] = {
.type = QUARK_X1000_SSP,
.port_id = -1,
- .num_chipselect = 1,
- .max_clk_rate = 50000000,
+ .setup = qrk_spi_setup,
},
[PORT_LPT0] = {
.type = LPSS_LPT_SSP,