diff options
Diffstat (limited to 'include/asm-powerpc/firmware.h')
-rw-r--r-- | include/asm-powerpc/firmware.h | 26 |
1 files changed, 8 insertions, 18 deletions
diff --git a/include/asm-powerpc/firmware.h b/include/asm-powerpc/firmware.h index f804b34cf06a..77069df92bf8 100644 --- a/include/asm-powerpc/firmware.h +++ b/include/asm-powerpc/firmware.h | |||
@@ -41,6 +41,7 @@ | |||
41 | #define FW_FEATURE_MULTITCE (1UL<<19) | 41 | #define FW_FEATURE_MULTITCE (1UL<<19) |
42 | #define FW_FEATURE_SPLPAR (1UL<<20) | 42 | #define FW_FEATURE_SPLPAR (1UL<<20) |
43 | #define FW_FEATURE_ISERIES (1UL<<21) | 43 | #define FW_FEATURE_ISERIES (1UL<<21) |
44 | #define FW_FEATURE_LPAR (1UL<<22) | ||
44 | 45 | ||
45 | enum { | 46 | enum { |
46 | #ifdef CONFIG_PPC64 | 47 | #ifdef CONFIG_PPC64 |
@@ -51,10 +52,10 @@ enum { | |||
51 | FW_FEATURE_MIGRATE | FW_FEATURE_PERFMON | FW_FEATURE_CRQ | | 52 | FW_FEATURE_MIGRATE | FW_FEATURE_PERFMON | FW_FEATURE_CRQ | |
52 | FW_FEATURE_VIO | FW_FEATURE_RDMA | FW_FEATURE_LLAN | | 53 | FW_FEATURE_VIO | FW_FEATURE_RDMA | FW_FEATURE_LLAN | |
53 | FW_FEATURE_BULK | FW_FEATURE_XDABR | FW_FEATURE_MULTITCE | | 54 | FW_FEATURE_BULK | FW_FEATURE_XDABR | FW_FEATURE_MULTITCE | |
54 | FW_FEATURE_SPLPAR, | 55 | FW_FEATURE_SPLPAR | FW_FEATURE_LPAR, |
55 | FW_FEATURE_PSERIES_ALWAYS = 0, | 56 | FW_FEATURE_PSERIES_ALWAYS = 0, |
56 | FW_FEATURE_ISERIES_POSSIBLE = FW_FEATURE_ISERIES, | 57 | FW_FEATURE_ISERIES_POSSIBLE = FW_FEATURE_ISERIES | FW_FEATURE_LPAR, |
57 | FW_FEATURE_ISERIES_ALWAYS = FW_FEATURE_ISERIES, | 58 | FW_FEATURE_ISERIES_ALWAYS = FW_FEATURE_ISERIES | FW_FEATURE_LPAR, |
58 | FW_FEATURE_POSSIBLE = | 59 | FW_FEATURE_POSSIBLE = |
59 | #ifdef CONFIG_PPC_PSERIES | 60 | #ifdef CONFIG_PPC_PSERIES |
60 | FW_FEATURE_PSERIES_POSSIBLE | | 61 | FW_FEATURE_PSERIES_POSSIBLE | |
@@ -81,22 +82,11 @@ enum { | |||
81 | /* This is used to identify firmware features which are available | 82 | /* This is used to identify firmware features which are available |
82 | * to the kernel. | 83 | * to the kernel. |
83 | */ | 84 | */ |
84 | extern unsigned long ppc64_firmware_features; | 85 | extern unsigned long powerpc_firmware_features; |
85 | 86 | ||
86 | static inline unsigned long firmware_has_feature(unsigned long feature) | 87 | #define firmware_has_feature(feature) \ |
87 | { | 88 | ((FW_FEATURE_ALWAYS & (feature)) || \ |
88 | return (FW_FEATURE_ALWAYS & feature) || | 89 | (FW_FEATURE_POSSIBLE & powerpc_firmware_features & (feature))) |
89 | (FW_FEATURE_POSSIBLE & ppc64_firmware_features & feature); | ||
90 | } | ||
91 | |||
92 | #ifdef CONFIG_PPC_PSERIES | ||
93 | typedef struct { | ||
94 | unsigned long val; | ||
95 | char * name; | ||
96 | } firmware_feature_t; | ||
97 | |||
98 | extern firmware_feature_t firmware_features_table[]; | ||
99 | #endif | ||
100 | 90 | ||
101 | extern void system_reset_fwnmi(void); | 91 | extern void system_reset_fwnmi(void); |
102 | extern void machine_check_fwnmi(void); | 92 | extern void machine_check_fwnmi(void); |