diff options
author | Quinn Jensen <quinn.jensen@freescale.com> | 2007-10-24 21:26:54 -0600 |
---|---|---|
committer | Quinn Jensen <quinn.jensen@freescale.com> | 2007-10-24 21:26:54 -0600 |
commit | 4de82860cc284cec3afdbfb103a54f96133b0a2a (patch) | |
tree | 51b080681334d05bcfe46c0eb5cd771a447cceb9 /arch | |
parent | ad48d19287b55d81884f33b319707ced4906e9c7 (diff) |
CR ENGR00053173 Fix SDMA Mask Value In Suspend Routine
Patch for CR ENGR00053173: Fix SDMA mask value in suspend routine.
Use the correct mask value to get the current SDMA State.
Applies to linux 2.6.22 kernel for MX3 platforms.
http://www.bitshrine.org/gpp/linux-2.6.22-mx-CR-ENGR00053173-Fix-SDMA-Mask-Value-In-Sus.patch
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/plat-mxc/sdma/dma_sdma.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/arm/plat-mxc/sdma/dma_sdma.c b/arch/arm/plat-mxc/sdma/dma_sdma.c index 43c863c6504f..89fea1411f6d 100644 --- a/arch/arm/plat-mxc/sdma/dma_sdma.c +++ b/arch/arm/plat-mxc/sdma/dma_sdma.c @@ -43,7 +43,8 @@ static mxc_dma_channel_t mxc_sdma_channels[MAX_DMA_CHANNELS]; static mxc_dma_channel_private_t mxc_sdma_private[MAX_DMA_CHANNELS]; -#define DMA_SLEEP_STATE (0x6 << 12) +#define SDMA_SLEEP_STATE (0x6 << 12) +#define SDMA_STATE_MASK (0xF << 12) /*! * To indicate whether SDMA engine is suspending @@ -569,7 +570,7 @@ int mxc_dma_enable(int channel_num) */ static int mxc_dma_suspend(struct platform_device *pdev, pm_message_t state) { - if ((SDMA_ONCE_STAT & DMA_SLEEP_STATE) == DMA_SLEEP_STATE) { + if ((SDMA_ONCE_STAT & SDMA_STATE_MASK) == SDMA_SLEEP_STATE) { suspend_flag = 1; clk_disable(mxc_sdma_ahb_clk); clk_disable(mxc_sdma_ipg_clk); |