Lines Matching refs:uci

78 static void save_microcode_patch(struct ucode_cpu_info *uci, void *data, unsigned int size)  in save_microcode_patch()  argument
124 if (!intel_find_matching_signature(p->data, uci->cpu_sig.sig, uci->cpu_sig.pf)) in save_microcode_patch()
143 scan_microcode(void *data, size_t size, struct ucode_cpu_info *uci, bool save) in scan_microcode() argument
163 if (!intel_find_matching_signature(data, uci->cpu_sig.sig, in scan_microcode()
164 uci->cpu_sig.pf)) { in scan_microcode()
170 save_microcode_patch(uci, data, mc_size); in scan_microcode()
177 uci->cpu_sig.sig, in scan_microcode()
178 uci->cpu_sig.pf, in scan_microcode()
179 uci->cpu_sig.rev)) in scan_microcode()
210 struct ucode_cpu_info uci; in show_saved_mc() local
218 intel_cpu_collect_info(&uci); in show_saved_mc()
220 sig = uci.cpu_sig.sig; in show_saved_mc()
221 pf = uci.cpu_sig.pf; in show_saved_mc()
222 rev = uci.cpu_sig.rev; in show_saved_mc()
272 static void save_mc_for_early(struct ucode_cpu_info *uci, u8 *mc, unsigned int size) in save_mc_for_early() argument
279 save_microcode_patch(uci, mc, size); in save_mc_for_early()
329 struct ucode_cpu_info uci; in show_ucode_info_early() local
332 intel_cpu_collect_info(&uci); in show_ucode_info_early()
333 print_ucode_info(early_old_rev, uci.cpu_sig.rev, current_mc_date); in show_ucode_info_early()
364 static int apply_microcode_early(struct ucode_cpu_info *uci, bool early) in apply_microcode_early() argument
369 mc = uci->mc; in apply_microcode_early()
380 uci->cpu_sig.rev = rev; in apply_microcode_early()
399 uci->cpu_sig.rev = rev; in apply_microcode_early()
402 print_ucode(old_rev, uci->cpu_sig.rev, mc->hdr.date); in apply_microcode_early()
404 print_ucode_info(old_rev, uci->cpu_sig.rev, mc->hdr.date); in apply_microcode_early()
411 struct ucode_cpu_info uci; in save_microcode_in_initrd_intel() local
428 intel_cpu_collect_info(&uci); in save_microcode_in_initrd_intel()
430 scan_microcode(cp.data, cp.size, &uci, true); in save_microcode_in_initrd_intel()
440 static struct microcode_intel *__load_ucode_intel(struct ucode_cpu_info *uci) in __load_ucode_intel() argument
461 intel_cpu_collect_info(uci); in __load_ucode_intel()
463 return scan_microcode(cp.data, cp.size, uci, false); in __load_ucode_intel()
469 struct ucode_cpu_info uci; in load_ucode_intel_bsp() local
471 patch = __load_ucode_intel(&uci); in load_ucode_intel_bsp()
475 uci.mc = patch; in load_ucode_intel_bsp()
477 apply_microcode_early(&uci, true); in load_ucode_intel_bsp()
483 struct ucode_cpu_info uci; in load_ucode_intel_ap() local
491 patch = __load_ucode_intel(&uci); in load_ucode_intel_ap()
498 uci.mc = *iup; in load_ucode_intel_ap()
500 apply_microcode_early(&uci, true); in load_ucode_intel_ap()
503 static struct microcode_intel *find_patch(struct ucode_cpu_info *uci) in find_patch() argument
512 if (phdr->rev <= uci->cpu_sig.rev) in find_patch()
516 uci->cpu_sig.sig, in find_patch()
517 uci->cpu_sig.pf)) in find_patch()
528 struct ucode_cpu_info uci; in reload_ucode_intel() local
530 intel_cpu_collect_info(&uci); in reload_ucode_intel()
532 p = find_patch(&uci); in reload_ucode_intel()
536 uci.mc = p; in reload_ucode_intel()
538 apply_microcode_early(&uci, false); in reload_ucode_intel()
563 struct ucode_cpu_info *uci = ucode_cpu_info + cpu; in apply_microcode_intel() local
576 mc = find_patch(uci); in apply_microcode_intel()
578 mc = uci->mc; in apply_microcode_intel()
623 uci->cpu_sig.rev = rev; in apply_microcode_intel()
635 struct ucode_cpu_info *uci = ucode_cpu_info + cpu; in generic_load_microcode() local
638 int new_rev = uci->cpu_sig.rev; in generic_load_microcode()
679 csig = uci->cpu_sig.sig; in generic_load_microcode()
680 cpf = uci->cpu_sig.pf; in generic_load_microcode()
701 vfree(uci->mc); in generic_load_microcode()
702 uci->mc = (struct microcode_intel *)new_mc; in generic_load_microcode()
709 save_mc_for_early(uci, new_mc, new_mc_size); in generic_load_microcode()
712 cpu, new_rev, uci->cpu_sig.rev); in generic_load_microcode()