* Use SysTick as OS tick timer * Use LPTIM2 as tickless idle timer * Remove dummy LPTIM2 IRQ handler * Clean up clock init code * Rename os timer to idle timer * Advance hal ticks along with FreeRTOS's * Improve SysTick control during tickless idle * Improve idle timer precision * Correct SysTick IRQ priority * Main, FuriHal: move system startup to separate thread * Minor code cleanup Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
		
			
				
	
	
		
			23 lines
		
	
	
		
			488 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			488 B
		
	
	
	
		
			C
		
	
	
	
	
	
#pragma once
 | 
						|
 | 
						|
/** Early initialization */
 | 
						|
void furi_hal_clock_init_early();
 | 
						|
 | 
						|
/** Early deinitialization */
 | 
						|
void furi_hal_clock_deinit_early();
 | 
						|
 | 
						|
/** Initialize clocks */
 | 
						|
void furi_hal_clock_init();
 | 
						|
 | 
						|
/** Switch to HSI clock */
 | 
						|
void furi_hal_clock_switch_to_hsi();
 | 
						|
 | 
						|
/** Switch to PLL clock */
 | 
						|
void furi_hal_clock_switch_to_pll();
 | 
						|
 | 
						|
/** Stop SysTick counter without resetting */
 | 
						|
void furi_hal_clock_suspend_tick();
 | 
						|
 | 
						|
/** Continue SysTick counter operation */
 | 
						|
void furi_hal_clock_resume_tick();
 |