Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

powerpc: Fix doorbell type shift

doorbell type is defined as bits 32:36 so should be shifted by 63-36 =
27 rather than 28.

We never noticed this bug as we've only every used type PPC_DBELL = 0.

Signed-off-by: Michael Neuling <mikey@neuling.org>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

authored by

Michael Neuling and committed by
Benjamin Herrenschmidt
dc28518f b6935f8c

+1 -1
+1 -1
arch/powerpc/include/asm/dbell.h
··· 18 18 #include <asm/ppc-opcode.h> 19 19 20 20 #define PPC_DBELL_MSG_BRDCAST (0x04000000) 21 - #define PPC_DBELL_TYPE(x) (((x) & 0xf) << 28) 21 + #define PPC_DBELL_TYPE(x) (((x) & 0xf) << (63-36)) 22 22 enum ppc_dbell { 23 23 PPC_DBELL = 0, /* doorbell */ 24 24 PPC_DBELL_CRIT = 1, /* critical doorbell */