mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-28 23:23:55 +08:00
d691005856
Based on 1 normalized pattern(s): this file is part of the linux kernel and is made available under the terms of the gnu general public license version 2 or at your option any later version incorporated herein by reference extracted by the scancode license scanner the SPDX license identifier GPL-2.0-or-later has been chosen to replace the boilerplate/reference in 18 file(s). Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Richard Fontana <rfontana@redhat.com> Reviewed-by: Allison Randal <allison@lohutok.net> Reviewed-by: Armijn Hemel <armijn@tjaldur.nl> Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org> Cc: linux-spdx@vger.kernel.org Link: https://lkml.kernel.org/r/20190520075211.321157221@linutronix.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
50 lines
1.2 KiB
C
50 lines
1.2 KiB
C
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
/* ----------------------------------------------------------------------- *
|
|
*
|
|
* Copyright 2008 rPath, Inc. - All Rights Reserved
|
|
*
|
|
* ----------------------------------------------------------------------- */
|
|
|
|
/*
|
|
* This is a host program to preprocess the CPU strings into a
|
|
* compact format suitable for the setup code.
|
|
*/
|
|
|
|
#include <stdio.h>
|
|
|
|
#include "../include/asm/required-features.h"
|
|
#include "../include/asm/disabled-features.h"
|
|
#include "../include/asm/cpufeatures.h"
|
|
#include "../kernel/cpu/capflags.c"
|
|
|
|
int main(void)
|
|
{
|
|
int i, j;
|
|
const char *str;
|
|
|
|
printf("static const char x86_cap_strs[] =\n");
|
|
|
|
for (i = 0; i < NCAPINTS; i++) {
|
|
for (j = 0; j < 32; j++) {
|
|
str = x86_cap_flags[i*32+j];
|
|
|
|
if (i == NCAPINTS-1 && j == 31) {
|
|
/* The last entry must be unconditional; this
|
|
also consumes the compiler-added null
|
|
character */
|
|
if (!str)
|
|
str = "";
|
|
printf("\t\"\\x%02x\\x%02x\"\"%s\"\n",
|
|
i, j, str);
|
|
} else if (str) {
|
|
printf("#if REQUIRED_MASK%d & (1 << %d)\n"
|
|
"\t\"\\x%02x\\x%02x\"\"%s\\0\"\n"
|
|
"#endif\n",
|
|
i, j, i, j, str);
|
|
}
|
|
}
|
|
}
|
|
printf("\t;\n");
|
|
return 0;
|
|
}
|