提交 70b5b18f 编写于 作者: A Andy Shevchenko 提交者: Ingo Molnar

x86/platform/intel-mid: Run PWRMU command immediately

On some firmwares we have to tell how exactly we want the command to be
proceeded. The default case, based on the official BSP code, is to run it
immediately.

This appears to be a safer approach based on the documentation.
Signed-off-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/1471530580-94247-1-git-send-email-andriy.shevchenko@linux.intel.comSigned-off-by: NIngo Molnar <mingo@kernel.org>
上级 3684b03d
...@@ -44,6 +44,10 @@ ...@@ -44,6 +44,10 @@
/* Bits in PM_CMD */ /* Bits in PM_CMD */
#define PM_CMD_CMD(x) ((x) << 0) #define PM_CMD_CMD(x) ((x) << 0)
#define PM_CMD_IOC (1 << 8) #define PM_CMD_IOC (1 << 8)
#define PM_CMD_CM_NOP (0 << 9)
#define PM_CMD_CM_IMMEDIATE (1 << 9)
#define PM_CMD_CM_DELAY (2 << 9)
#define PM_CMD_CM_TRIGGER (3 << 9)
#define PM_CMD_D3cold (1 << 21) #define PM_CMD_D3cold (1 << 21)
/* List of commands */ /* List of commands */
...@@ -137,7 +141,7 @@ static int mid_pwr_wait(struct mid_pwr *pwr) ...@@ -137,7 +141,7 @@ static int mid_pwr_wait(struct mid_pwr *pwr)
static int mid_pwr_wait_for_cmd(struct mid_pwr *pwr, u8 cmd) static int mid_pwr_wait_for_cmd(struct mid_pwr *pwr, u8 cmd)
{ {
writel(PM_CMD_CMD(cmd), pwr->regs + PM_CMD); writel(PM_CMD_CMD(cmd) | PM_CMD_CM_IMMEDIATE, pwr->regs + PM_CMD);
return mid_pwr_wait(pwr); return mid_pwr_wait(pwr);
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册