Line data Source code
1 1 : /* 2 : * Copyright (c) 2020 Antmicro <www.antmicro.com> 3 : * 4 : * SPDX-License-Identifier: Apache-2.0 5 : */ 6 : 7 : /** 8 : * @file 9 : * @brief LiteX Clock Control driver interface 10 : */ 11 : 12 : #ifndef CLK_CTRL_LITEX_H 13 : #define CLK_CTRL_LITEX_H 14 : 15 : /** 16 : * @brief LiteX Clock Control driver interface 17 : * @defgroup clock_control_litex_interface LiteX Clock Control driver interface 18 : * @brief LiteX Clock Control driver interface 19 : * @ingroup clock_control_interface 20 : * @{ 21 : */ 22 : 23 : #include <zephyr/types.h> 24 : 25 0 : #define MMCM DT_NODELABEL(clock0) 26 0 : #define NCLKOUT DT_PROP_LEN(MMCM, clock_output_names) 27 : 28 : /** 29 : * @brief Structure for interfacing with clock control API 30 : * 31 : * @param clkout_nr Number of clock output to be changed 32 : * @param rate Frequency to set given in Hz 33 : * @param phase Phase offset in degrees 34 : * @param duty Duty cycle of clock signal in percent 35 : * 36 : */ 37 1 : struct litex_clk_setup { 38 0 : uint8_t clkout_nr; 39 0 : uint32_t rate; 40 0 : uint16_t phase; 41 0 : uint8_t duty; 42 : }; 43 : 44 : /** 45 : * @} 46 : */ 47 : 48 : #endif /* CLK_CTRL_LITEX_H */