sci_timer_rpc.h 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. /*
  2. * Copyright (C) 2016 Freescale Semiconductor, Inc.
  3. * Copyright 2017-2019 NXP
  4. *
  5. * SPDX-License-Identifier: BSD-3-Clause
  6. */
  7. /*!
  8. * Header file for the TIMER RPC implementation.
  9. *
  10. * @addtogroup TIMER_SVC
  11. * @{
  12. */
  13. #ifndef SC_TIMER_RPC_H
  14. #define SC_TIMER_RPC_H
  15. /* Includes */
  16. /* Defines */
  17. /*!
  18. * @name Defines for RPC TIMER function calls
  19. */
  20. /*@{*/
  21. #define TIMER_FUNC_UNKNOWN 0 /* Unknown function */
  22. #define TIMER_FUNC_SET_WDOG_TIMEOUT 1U /* Index for timer_set_wdog_timeout() RPC call */
  23. #define TIMER_FUNC_SET_WDOG_PRE_TIMEOUT 12U /* Index for timer_set_wdog_pre_timeout() RPC call */
  24. #define TIMER_FUNC_START_WDOG 2U /* Index for timer_start_wdog() RPC call */
  25. #define TIMER_FUNC_STOP_WDOG 3U /* Index for timer_stop_wdog() RPC call */
  26. #define TIMER_FUNC_PING_WDOG 4U /* Index for timer_ping_wdog() RPC call */
  27. #define TIMER_FUNC_GET_WDOG_STATUS 5U /* Index for timer_get_wdog_status() RPC call */
  28. #define TIMER_FUNC_PT_GET_WDOG_STATUS 13U /* Index for timer_pt_get_wdog_status() RPC call */
  29. #define TIMER_FUNC_SET_WDOG_ACTION 10U /* Index for timer_set_wdog_action() RPC call */
  30. #define TIMER_FUNC_SET_RTC_TIME 6U /* Index for timer_set_rtc_time() RPC call */
  31. #define TIMER_FUNC_GET_RTC_TIME 7U /* Index for timer_get_rtc_time() RPC call */
  32. #define TIMER_FUNC_GET_RTC_SEC1970 9U /* Index for timer_get_rtc_sec1970() RPC call */
  33. #define TIMER_FUNC_SET_RTC_ALARM 8U /* Index for timer_set_rtc_alarm() RPC call */
  34. #define TIMER_FUNC_SET_RTC_PERIODIC_ALARM 14U /* Index for timer_set_rtc_periodic_alarm() RPC call */
  35. #define TIMER_FUNC_CANCEL_RTC_ALARM 15U /* Index for timer_cancel_rtc_alarm() RPC call */
  36. #define TIMER_FUNC_SET_RTC_CALB 11U /* Index for timer_set_rtc_calb() RPC call */
  37. #define TIMER_FUNC_SET_SYSCTR_ALARM 16U /* Index for timer_set_sysctr_alarm() RPC call */
  38. #define TIMER_FUNC_SET_SYSCTR_PERIODIC_ALARM 17U /* Index for timer_set_sysctr_periodic_alarm() RPC call */
  39. #define TIMER_FUNC_CANCEL_SYSCTR_ALARM 18U /* Index for timer_cancel_sysctr_alarm() RPC call */
  40. /*@}*/
  41. /* Types */
  42. /* Functions */
  43. /*!
  44. * This function dispatches an incoming TIMER RPC request.
  45. *
  46. * @param[in] caller_pt caller partition
  47. * @param[in] msg pointer to RPC message
  48. */
  49. void timer_dispatch(sc_rm_pt_t caller_pt, sc_rpc_msg_t *msg);
  50. /*!
  51. * This function translates and dispatches an TIMER RPC request.
  52. *
  53. * @param[in] ipc IPC handle
  54. * @param[in] msg pointer to RPC message
  55. */
  56. void timer_xlate(sc_ipc_t ipc, sc_rpc_msg_t *msg);
  57. #endif /* SC_TIMER_RPC_H */
  58. /**@}*/