Skip to contentSkip to conversation

spi/imx: set the inactive state of the clock according to the clock polarity

PATCH New Dirk Behme 2 participants 2 messages Sep 25, 2012 – Sep 28, 2012

Subsystems (2)
lore
Share & tools
lore

Dirk Behme

author
#0 lore raw

PATCH v2 1/1 spi/imx: set the inactive state of the clock according to the clock polarity

From: Knut Wohlrab <[email protected]>

There are SPI devices which need a SPI clock with active low polarity and high inactive state.

Add the setting of the inactive state ECSPIx_CONFIGREG:SCLK CTL according to the clock polarity ECSPIx_CONFIGREG:SCLK POL:

DT without "spi-cpol" = 0 = clock active high polarity = inactive state low
DT with "spi-cpol" = 1 = clock active low polarity = inactive state high

---
Changes in v2:
No functional changes on the patch itself. Add Acked-by and Sob tags, CC to Mark Brown.

 drivers/spi/spi-imx.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)
drivers/spi/spi-imx.c +4 -2
index e834ff8..d64655b 100644
@@ -197,6 +197,7 @@ static unsigned int spi_imx_clkdiv_2(unsigned int fin,
 #define MX51_ECSPI_CONFIG_SCLKPOL(cs)	(1 << ((cs) +  4))
 #define MX51_ECSPI_CONFIG_SBBCTRL(cs)	(1 << ((cs) +  8))
 #define MX51_ECSPI_CONFIG_SSBPOL(cs)	(1 << ((cs) + 12))
+#define MX51_ECSPI_CONFIG_SCLKCTL(cs)	(1 << ((cs) + 20))
 
 #define MX51_ECSPI_INT		0x10
 #define MX51_ECSPI_INT_TEEN		(1 <<  0)
@@ -287,9 +288,10 @@ static int __maybe_unused mx51_ecspi_config(struct spi_imx_data *spi_imx,
 	if (config->mode & SPI_CPHA)
 		cfg |= MX51_ECSPI_CONFIG_SCLKPHA(config->cs);
 
-	if (config->mode & SPI_CPOL)
+	if (config->mode & SPI_CPOL) {
 		cfg |= MX51_ECSPI_CONFIG_SCLKPOL(config->cs);
-
+		cfg |= MX51_ECSPI_CONFIG_SCLKCTL(config->cs);
+	}
 	if (config->mode & SPI_CS_HIGH)
 		cfg |= MX51_ECSPI_CONFIG_SSBPOL(config->cs);
 
Signature · 1 line
1.7.0.4
Applied
#1 lore raw

PATCH v2 1/1 spi/imx: set the inactive state of the clock according to the clock polarity

Quoted 4 lines · Dirk Behme

From: Knut Wohlrab <[email protected]>

There are SPI devices which need a SPI clock with active low polarity and high inactive state.

Applied, thanks.