printf: Remove unused 'bprintf'
[drm/drm-misc.git] / include / linux / platform_data / x86 / soc.h
blobf981907a5cb0a37ea056b66fceb8b49f7d26c7cb
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3 * Helpers for Intel SoC model detection
5 * Copyright (c) 2019, Intel Corporation.
6 */
8 #ifndef __PLATFORM_DATA_X86_SOC_H
9 #define __PLATFORM_DATA_X86_SOC_H
11 #include <linux/types.h>
13 #if IS_ENABLED(CONFIG_X86)
15 #include <linux/mod_devicetable.h>
17 #include <asm/cpu_device_id.h>
19 #define SOC_INTEL_IS_CPU(soc, type) \
20 static inline bool soc_intel_is_##soc(void) \
21 { \
22 static const struct x86_cpu_id soc##_cpu_ids[] = { \
23 X86_MATCH_VFM(type, NULL), \
24 {} \
25 }; \
26 const struct x86_cpu_id *id; \
28 id = x86_match_cpu(soc##_cpu_ids); \
29 if (id) \
30 return true; \
31 return false; \
34 SOC_INTEL_IS_CPU(byt, INTEL_ATOM_SILVERMONT);
35 SOC_INTEL_IS_CPU(cht, INTEL_ATOM_AIRMONT);
36 SOC_INTEL_IS_CPU(apl, INTEL_ATOM_GOLDMONT);
37 SOC_INTEL_IS_CPU(glk, INTEL_ATOM_GOLDMONT_PLUS);
38 SOC_INTEL_IS_CPU(cml, INTEL_KABYLAKE_L);
40 #undef SOC_INTEL_IS_CPU
42 #else /* IS_ENABLED(CONFIG_X86) */
44 static inline bool soc_intel_is_byt(void)
46 return false;
49 static inline bool soc_intel_is_cht(void)
51 return false;
54 static inline bool soc_intel_is_apl(void)
56 return false;
59 static inline bool soc_intel_is_glk(void)
61 return false;
64 static inline bool soc_intel_is_cml(void)
66 return false;
68 #endif /* IS_ENABLED(CONFIG_X86) */
70 #endif /* __PLATFORM_DATA_X86_SOC_H */