mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 03:01:39 -04:00
mtd: spi-nor: fsl-quadspi: reset the module in the probe
The uboot may run the QuadSpi controler with command:
#sf probe
So we should reset the module in the probe.
This patch also clear the pending interrupts which arised by the uboot
code.
Signed-off-by: Huang Shijie <[email protected]>
Signed-off-by: Frank Li <[email protected]>
Signed-off-by: Brian Norris <[email protected]>
This commit is contained in:
parent
5cc66cb734
commit
8b8319c8b7
1 changed files with 8 additions and 0 deletions
|
|
@ -716,6 +716,11 @@ static int fsl_qspi_nor_setup(struct fsl_qspi *q)
|
|||
if (ret)
|
||||
return ret;
|
||||
|
||||
/* Reset the module */
|
||||
writel(QUADSPI_MCR_SWRSTSD_MASK | QUADSPI_MCR_SWRSTHD_MASK,
|
||||
base + QUADSPI_MCR);
|
||||
udelay(1);
|
||||
|
||||
/* Init the LUT table. */
|
||||
fsl_qspi_init_lut(q);
|
||||
|
||||
|
|
@ -733,6 +738,9 @@ static int fsl_qspi_nor_setup(struct fsl_qspi *q)
|
|||
writel(QUADSPI_MCR_RESERVED_MASK | QUADSPI_MCR_END_CFG_MASK,
|
||||
base + QUADSPI_MCR);
|
||||
|
||||
/* clear all interrupt status */
|
||||
writel(0xffffffff, q->iobase + QUADSPI_FR);
|
||||
|
||||
/* enable the interrupt */
|
||||
writel(QUADSPI_RSER_TFIE, q->iobase + QUADSPI_RSER);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue