intel_scu_ipc: Length fix
authorAlan Cox <alan@linux.intel.com>
Tue, 1 Jun 2010 11:51:00 +0000 (12:51 +0100)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 1 Jun 2010 15:40:47 +0000 (08:40 -0700)
Commands with data must set the length in the message.

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/platform/x86/intel_scu_ipc.c

index 576c3ed924356d5fc1f3915bce9670b498a636ca..40658e3385b45346ddc91132816e28ccfee4dd84 100644 (file)
@@ -524,7 +524,7 @@ int intel_scu_ipc_command(int cmd, int sub, u32 *in, int inlen,
        for (i = 0; i < inlen; i++)
                ipc_data_writel(*in++, 4 * i);
 
-       ipc_command(cmd << 12 | sub);
+       ipc_command((cmd << 12) | sub | (inlen << 18));
        err = busy_loop();
 
        for (i = 0; i < outlen; i++)