函数逻辑报告 |
Source Code:arch\x86\kernel\apic\apic.c |
Create Date:2022-07-27 09:26:39 |
| Last Modify:2020-03-16 21:21:31 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:calibrate_APIC_clock
函数原型:static int __init calibrate_APIC_clock(void)
返回类型:int
参数:无
| 866 | levt等于this_cpu_ptr( & lapic_events) |
| 871 | pm_referenced等于0 |
| 873 | 如果boot_cpu_has(TSC deadline timer )则返回:0 |
| 881 | 如果非lapic_init_clockevent()则 |
| 888 | features与等于CLOCK_EVT_FEAT_DUMMY的反 |
| 889 | 返回:0 |
| 892 | Define the default level of output to be very little* This can be turned up by using apic=verbose for more* information and apic=debug for _lots_ of information.* apic_verbosity is defined in apic.c(APIC_VERBOSE, "Using local APIC timer interrupts.\ncalibrating APIC timer ...\n") |
| 900 | 禁止中断() |
| 915 | 如果tsc_khz则 |
| 924 | 开中断() |
| 928 | 当1循环 |
| 929 | 如果tsc_khz则 |
| 935 | 否则 |
| 943 | cpu_relax() |
| 947 | 禁止中断() |
| 949 | 开中断() |
| 952 | 禁止中断() |
| 961 | pm_referenced等于非calibrate_by_pmtimer(lapic_cal_pm2 - lapic_cal_pm1, & delta, & deltatsc) |
| 964 | lapic_timer_period等于delta乘Clock divisor 除In this functions we calibrate APIC bus clocks to the external timer |
| 965 | lapic_init_clockevent() |
| 972 | 如果boot_cpu_has(Time Stamp Counter )则 |
| 973 | Define the default level of output to be very little* This can be turned up by using apic=verbose for more* information and apic=debug for _lots_ of information.* apic_verbosity is defined in apic.c(APIC_VERBOSE, "..... CPU clock speed is %ld.%04ld MHz.\n", (deltatsc / In this functions we calibrate APIC bus clocks to the external timer) / (1000000 / HZ), (deltatsc / In this functions we calibrate APIC bus clocks to the external timer) % (1000000 / HZ)) |
| 979 | Define the default level of output to be very little* This can be turned up by using apic=verbose for more* information and apic=debug for _lots_ of information.* apic_verbosity is defined in apic.c(APIC_VERBOSE, "..... host bus clock speed is %u.%04u MHz.\n", lapic_timer_period / (1000000 / HZ), lapic_timer_period % (1000000 / HZ)) |
| 987 | 如果lapic_timer_period小于1000000除HZ则 |
| 993 | features与等于CLOCK_EVT_FEAT_DUMMY的反 |
| 1007 | lapic_timer_set_periodic(levt) |
| 1008 | lapic_cal_loops等于负1 |
| 1011 | 开中断() |
| 1014 | cpu_relax() |
| 1017 | 禁止中断() |
| 1018 | lapic_timer_shutdown(levt) |
| 1021 | deltaj等于lapic_cal_j2减lapic_cal_j1 |
| 1027 | 否则features或等于CLOCK_EVT_FEAT_DUMMY |
| 1030 | 开中断() |
| 1032 | 如果features按位与CLOCK_EVT_FEAT_DUMMY则 |
| 1033 | 打印警告信息("APIC timer disabled due to verification failure\n") |
| 1034 | 返回:负1 |
| 1037 | 返回:0 |
| 名称 | 描述 |
|---|---|
| x86_init_noop | Setup the boot APIC* Calibrate and verify the result. |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |