| Function report | 
| Source Code: arch\x86\kernel\cpu\microcode\core.c | Create Date:2022-07-28 08:07:54 | 
| Last Modify:2020-03-16 20:13:29 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:microcode_init
Proto:int __init microcode_init(void)
Type:int
Parameter:Nothing
| 841 | If dis_ucode_ldr Then Return -EINVAL | 
| 844 | If CPU vendor == X86_VENDOR_INTEL Then microcode_ops = init_intel_microcode() | 
| 846 | Else if CPU vendor == X86_VENDOR_AMD Then microcode_ops = init_amd_microcode() | 
| 848 | Else pr_err("no support for this CPU vendor\n") | 
| 851 | If Not microcode_ops Then Return -ENODEV | 
| 856 | If IS_ERR(ake device for request_firmware ) Then Return PTR_ERR(ake device for request_firmware ) | 
| 859 | get_online_cpus() | 
| 862 | error = subsys_interface_register( & mc_cpu_interface) | 
| 863 | If Not error Then perf_check_microcode() | 
| 866 | put_online_cpus() | 
| 871 | error = sysfs_create_group( & kobj, & cpu_root_microcode_group) | 
| 874 | If error Then | 
| 875 | pr_err("Error creating microcode group!\n") | 
| 876 | Go to out_driver | 
| 879 | error = microcode_dev_init() | 
| 880 | If error Then Go to out_ucode_group | 
| 883 | register_syscore_ops( & mc_syscore_ops) | 
| 889 | pr_info("Microcode Update Driver: v%s.", DRIVER_VERSION) | 
| 891 | Return 0 | 
| 893 | out_ucode_group : | 
| 894 | sysfs_remove_group( & kobj, & cpu_root_microcode_group) | 
| 897 | out_driver : | 
| 898 | get_online_cpus() | 
| 904 | put_online_cpus() | 
| 906 | out_pdev : | 
| 908 | Return error | 
| Source code conversion tool public plug-in interface | X | 
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |