spi: omap2_mcspi supports wake events
Currently mcspi wake-ups are not enabled. This might cause cases where OMAP is not waking up on mcspi events. Signed-off-by: Jouni Hogander <jouni.hogander@nokia.com> Signed-off-by: Tony Lindgren <tony@atomide.com> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
c42b110cae
commit
ddb22195cb
|
@ -59,6 +59,8 @@
|
|||
|
||||
/* per-register bitmasks: */
|
||||
|
||||
#define OMAP2_MCSPI_SYSCONFIG_SMARTIDLE (2 << 3)
|
||||
#define OMAP2_MCSPI_SYSCONFIG_ENAWAKEUP (1 << 2)
|
||||
#define OMAP2_MCSPI_SYSCONFIG_AUTOIDLE (1 << 0)
|
||||
#define OMAP2_MCSPI_SYSCONFIG_SOFTRESET (1 << 1)
|
||||
|
||||
|
@ -90,6 +92,7 @@
|
|||
|
||||
#define OMAP2_MCSPI_CHCTRL_EN (1 << 0)
|
||||
|
||||
#define OMAP2_MCSPI_WAKEUPENABLE_WKEN (1 << 0)
|
||||
|
||||
/* We have 2 DMA channels per CS, one for RX and one for TX */
|
||||
struct omap2_mcspi_dma {
|
||||
|
@ -873,8 +876,12 @@ static int __init omap2_mcspi_reset(struct omap2_mcspi *mcspi)
|
|||
} while (!(tmp & OMAP2_MCSPI_SYSSTATUS_RESETDONE));
|
||||
|
||||
mcspi_write_reg(master, OMAP2_MCSPI_SYSCONFIG,
|
||||
/* (3 << 8) | (2 << 3) | */
|
||||
OMAP2_MCSPI_SYSCONFIG_AUTOIDLE);
|
||||
OMAP2_MCSPI_SYSCONFIG_AUTOIDLE |
|
||||
OMAP2_MCSPI_SYSCONFIG_ENAWAKEUP |
|
||||
OMAP2_MCSPI_SYSCONFIG_SMARTIDLE);
|
||||
|
||||
mcspi_write_reg(master, OMAP2_MCSPI_WAKEUPENABLE,
|
||||
OMAP2_MCSPI_WAKEUPENABLE_WKEN);
|
||||
|
||||
omap2_mcspi_set_master_mode(master);
|
||||
|
||||
|
|
Loading…
Reference in New Issue