1 /* SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0)
2 * Copyright 2019-2021 NXP
7 /** @addtogroup dprtc Data Path Real Time Counter API
8 * Contains initialization APIs and runtime control APIs for RTC
14 int dprtc_open(struct fsl_mc_io *mc_io,
19 int dprtc_close(struct fsl_mc_io *mc_io,
24 * struct dprtc_cfg - Structure representing DPRTC configuration
25 * @options: place holder
31 int dprtc_create(struct fsl_mc_io *mc_io,
34 const struct dprtc_cfg *cfg,
37 int dprtc_destroy(struct fsl_mc_io *mc_io,
42 int dprtc_enable(struct fsl_mc_io *mc_io,
46 int dprtc_disable(struct fsl_mc_io *mc_io,
50 int dprtc_is_enabled(struct fsl_mc_io *mc_io,
55 int dprtc_reset(struct fsl_mc_io *mc_io,
59 int dprtc_set_clock_offset(struct fsl_mc_io *mc_io,
64 int dprtc_set_freq_compensation(struct fsl_mc_io *mc_io,
67 uint32_t freq_compensation);
69 int dprtc_get_freq_compensation(struct fsl_mc_io *mc_io,
72 uint32_t *freq_compensation);
74 int dprtc_get_time(struct fsl_mc_io *mc_io,
79 int dprtc_set_time(struct fsl_mc_io *mc_io,
84 int dprtc_set_alarm(struct fsl_mc_io *mc_io,
89 struct dprtc_ext_trigger_status {
91 uint8_t unread_valid_timestamp;
94 int dprtc_get_ext_trigger_timestamp(struct fsl_mc_io *mc_io,
98 struct dprtc_ext_trigger_status *status);
100 int dprtc_set_fiper_loopback(struct fsl_mc_io *mc_io,
104 uint8_t fiper_as_input);
107 * struct dprtc_attr - Structure representing DPRTC attributes
108 * @id: DPRTC object ID
116 int dprtc_get_attributes(struct fsl_mc_io *mc_io,
119 struct dprtc_attr *attr);
121 int dprtc_get_api_version(struct fsl_mc_io *mc_io,
124 uint16_t *minor_ver);
126 #endif /* __FSL_DPRTC_H */