aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/mod/file2alias.c
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/mod/file2alias.c')
-rw-r--r--scripts/mod/file2alias.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c
index c0e14b3f2306..026ba38759ca 100644
--- a/scripts/mod/file2alias.c
+++ b/scripts/mod/file2alias.c
@@ -1013,6 +1013,30 @@ static int do_amba_entry(const char *filename,
1013} 1013}
1014ADD_TO_DEVTABLE("amba", struct amba_id, do_amba_entry); 1014ADD_TO_DEVTABLE("amba", struct amba_id, do_amba_entry);
1015 1015
1016/* LOOKS like x86cpu:vendor:VVVV:family:FFFF:model:MMMM:feature:*,FEAT,*
1017 * All fields are numbers. It would be nicer to use strings for vendor
1018 * and feature, but getting those out of the build system here is too
1019 * complicated.
1020 */
1021
1022static int do_x86cpu_entry(const char *filename, struct x86_cpu_id *id,
1023 char *alias)
1024{
1025 id->feature = TO_NATIVE(id->feature);
1026 id->family = TO_NATIVE(id->family);
1027 id->model = TO_NATIVE(id->model);
1028 id->vendor = TO_NATIVE(id->vendor);
1029
1030 strcpy(alias, "x86cpu:");
1031 ADD(alias, "vendor:", id->vendor != X86_VENDOR_ANY, id->vendor);
1032 ADD(alias, ":family:", id->family != X86_FAMILY_ANY, id->family);
1033 ADD(alias, ":model:", id->model != X86_MODEL_ANY, id->model);
1034 ADD(alias, ":feature:*,", id->feature != X86_FEATURE_ANY, id->feature);
1035 strcat(alias, ",*");
1036 return 1;
1037}
1038ADD_TO_DEVTABLE("x86cpu", struct x86_cpu_id, do_x86cpu_entry);
1039
1016/* Does namelen bytes of name exactly match the symbol? */ 1040/* Does namelen bytes of name exactly match the symbol? */
1017static bool sym_is(const char *name, unsigned namelen, const char *symbol) 1041static bool sym_is(const char *name, unsigned namelen, const char *symbol)
1018{ 1042{