MCPcopy Create free account
hub / github.com/coreboot/coreboot / get_features

Function get_features

payloads/coreinfo/cpuinfo_module.c:101–134  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

99}
100
101static void get_features(WINDOW *win, int *row)
102{
103 uint32_t eax, ebx, ecx, edx;
104 int lrow = *row;
105
106 wmove(win, lrow++, 1);
107 wprintw(win, "Features: ");
108
109 docpuid(0x00000001, &eax, &ebx, &ecx, &edx);
110 decode_flags(win, edx, generic_cap_flags, &lrow);
111
112 lrow++;
113
114 switch (vendor) {
115 case VENDOR_AMD:
116 wmove(win, lrow++, 1);
117 wprintw(win, "AMD Extended Flags: ");
118 decode_flags(win, ecx, amd_cap_generic_ecx_flags, &lrow);
119 docpuid(0x80000001, &eax, &ebx, &ecx, &edx);
120 decode_flags(win, edx, amd_cap_extended_edx_flags, &lrow);
121 decode_flags(win, ecx, amd_cap_extended_ecx_flags, &lrow);
122 break;
123 case VENDOR_INTEL:
124 wmove(win, lrow++, 1);
125 wprintw(win, "Intel Extended Flags: ");
126 decode_flags(win, ecx, intel_cap_generic_ecx_flags, &lrow);
127 docpuid(0x80000001, &eax, &ebx, &ecx, &edx);
128 decode_flags(win, edx, intel_cap_extended_edx_flags, &lrow);
129 decode_flags(win, ecx, intel_cap_extended_ecx_flags, &lrow);
130 break;
131 }
132
133 *row = lrow;
134}
135
136static void do_name(WINDOW *win, int row)
137{

Callers 1

cpuinfo_module_redrawFunction · 0.85

Calls 3

decode_flagsFunction · 0.85
wmoveFunction · 0.50
wprintwFunction · 0.50

Tested by

no test coverage detected