xref: /rk3399_ARM-atf/drivers/ti/clk/include/ti_clk_soc_lfosc0.h (revision a28114d66a6d43db4accef5fd5d6dab6c059e584)
1 /*
2  * Copyright (c) 2025-2026 Texas Instruments Incorporated - https://www.ti.com
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #ifndef TI_CLK_SOC_LFOSC0_H
8 #define TI_CLK_SOC_LFOSC0_H
9 
10 #include <ti_clk.h>
11 
12 /*
13  * Low Frequency Oscillator (LFOSC0) driver data.
14  *
15  * Holds board-specific register configuration used by the LFOSC0 driver
16  * to read the oscillator control register and determine its state.
17  */
18 struct ti_clk_data_lfosc0 {
19 	/* Base driver data */
20 	struct ti_clk_drv_data data;
21 	/* Base address of RTC module containing LFOSC0 control registers */
22 	uint32_t rtc_base;
23 	/* Offset to LFXOSC control register from rtc_base */
24 	uint32_t lfxosc_ctrl_offset;
25 	/* Bit mask for LFOSC0 32K disable bit in control register */
26 	uint32_t disable_mask;
27 	/* Fixed frequency of LFOSC0 in Hz */
28 	uint32_t freq_hz;
29 };
30 
31 extern const struct ti_clk_drv ti_clk_drv_soc_lfosc0;
32 
33 #endif /* TI_CLK_SOC_LFOSC0_H */
34