]> Gentwo Git Trees - linux/.git/commitdiff
mfd: macsmc: Add new __SMC_KEY macro
authorJames Calligeros <jcalligeros99@gmail.com>
Sat, 25 Oct 2025 00:24:36 +0000 (10:24 +1000)
committerLee Jones <lee@kernel.org>
Thu, 6 Nov 2025 13:58:42 +0000 (13:58 +0000)
When using the _SMC_KEY macro in switch/case statements, GCC 15.2.1 errors
out with 'case label does not reduce to an integer constant'. Introduce
a new __SMC_KEY macro that can be used instead.

Signed-off-by: James Calligeros <jcalligeros99@gmail.com>
Link: https://patch.msgid.link/20251025-macsmc-subdevs-v4-5-374d5c9eba0e@gmail.com
Signed-off-by: Lee Jones <lee@kernel.org>
include/linux/mfd/macsmc.h

index 6b13f01a85924f2bce3951a5a97b8ef002f4c796..f6f80c33b5cf79e4d2a6cab7d45749642a490722 100644 (file)
@@ -41,6 +41,7 @@ typedef u32 smc_key;
  */
 #define SMC_KEY(s) (smc_key)(_SMC_KEY(#s))
 #define _SMC_KEY(s) (((s)[0] << 24) | ((s)[1] << 16) | ((s)[2] << 8) | (s)[3])
+#define __SMC_KEY(a, b, c, d) (((u32)(a) << 24) | ((u32)(b) << 16) | ((u32)(c) << 8) | ((u32)(d)))
 
 #define APPLE_SMC_READABLE BIT(7)
 #define APPLE_SMC_WRITABLE BIT(6)