Function report |
Source Code:arch\x86\kernel\apb_timer.c |
Create Date:2022-07-28 08:43:28 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:Early setup the APBT timer, only use timer 0 for booting then switch to* per CPU timer if possible.* returns 1 if per cpu apbt is setup* returns 0 if no per cpu apbt is chosen* panic if set up failed, this is the only platform timer on Moorestown.
Proto:void __init apbt_time_init(void)
Type:void
Parameter:Nothing
| 290 | If apb_timer_block_enabled Then Return |
| 292 | apbt_set_mapping() |
| 293 | If Not apbt_virt_address Then Go to out_noapbt |
| 300 | If Common DW APB timer info < APBT_MIN_FREQ || Common DW APB timer info > APBT_MAX_FREQ Then |
| 301 | pr_debug("APBT has invalid freq 0x%lx\n", Common DW APB timer info) |
| 302 | Go to out_noapbt |
| 304 | If apbt_clocksource_register() Then |
| 305 | pr_debug("APBT has failed to register clocksource\n") |
| 306 | Go to out_noapbt |
| 308 | If Not apbt_clockevent_register() Then apb_timer_block_enabled = 1 |
| 310 | Else |
| 311 | pr_debug("APBT has failed to register clockevent\n") |
| 312 | Go to out_noapbt |
| 341 | Return |
| 343 | out_noapbt : |
| 344 | apbt_clear_mapping() |
| 345 | apb_timer_block_enabled = 0 |
| 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 |