diff options
Diffstat (limited to 'drivers/spi/spi-imx.c')
-rw-r--r-- | drivers/spi/spi-imx.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/spi/spi-imx.c b/drivers/spi/spi-imx.c index 410522fdd4c9..3aa33c8c819f 100644 --- a/drivers/spi/spi-imx.c +++ b/drivers/spi/spi-imx.c | |||
@@ -356,6 +356,9 @@ static int __maybe_unused mx51_ecspi_config(struct spi_imx_data *spi_imx, | |||
356 | else | 356 | else |
357 | cfg &= ~MX51_ECSPI_CONFIG_SSBPOL(config->cs); | 357 | cfg &= ~MX51_ECSPI_CONFIG_SSBPOL(config->cs); |
358 | 358 | ||
359 | /* CTRL register always go first to bring out controller from reset */ | ||
360 | writel(ctrl, spi_imx->base + MX51_ECSPI_CTRL); | ||
361 | |||
359 | reg = readl(spi_imx->base + MX51_ECSPI_TESTREG); | 362 | reg = readl(spi_imx->base + MX51_ECSPI_TESTREG); |
360 | if (config->mode & SPI_LOOP) | 363 | if (config->mode & SPI_LOOP) |
361 | reg |= MX51_ECSPI_TESTREG_LBC; | 364 | reg |= MX51_ECSPI_TESTREG_LBC; |
@@ -363,7 +366,6 @@ static int __maybe_unused mx51_ecspi_config(struct spi_imx_data *spi_imx, | |||
363 | reg &= ~MX51_ECSPI_TESTREG_LBC; | 366 | reg &= ~MX51_ECSPI_TESTREG_LBC; |
364 | writel(reg, spi_imx->base + MX51_ECSPI_TESTREG); | 367 | writel(reg, spi_imx->base + MX51_ECSPI_TESTREG); |
365 | 368 | ||
366 | writel(ctrl, spi_imx->base + MX51_ECSPI_CTRL); | ||
367 | writel(cfg, spi_imx->base + MX51_ECSPI_CONFIG); | 369 | writel(cfg, spi_imx->base + MX51_ECSPI_CONFIG); |
368 | 370 | ||
369 | /* | 371 | /* |