unt.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #ifndef _MID_UNT_H_
  2. #define _MID_UNT_H_
  3. #ifdef CONFIG_SUPPORT_SSU_ENHANCE_UPGRADE
  4. #define MAX_SCHEDUL_A_UNT (10)
  5. typedef enum _SCHEDUL_UNIT_
  6. {
  7. SSU_UNT_Second = 0x00, // 00b
  8. SSU_UNT_Minute = 0x01, // 01b
  9. SSU_UNT_Hour = 0x02, // 10b
  10. SSU_UNT_Day = 0x03, // 11b
  11. }SSU_UNT_SCHEDUL_UNIT;
  12. typedef struct _UNT_SCHEDUL_T
  13. {
  14. UINT16 u16StartMJD;
  15. UINT32 u32StartUCT;
  16. UINT16 u16EndMJD;
  17. UINT32 u32EndUCT;
  18. UINT8 u8Final_availablility;
  19. UINT8 u8Periodicity_flag;
  20. UINT8 u8Period_unit;
  21. UINT8 u8Duration_unit;
  22. UINT8 u8Estimated_cycle_time_unit;
  23. UINT16 u16Period;
  24. UINT16 u16Duration;
  25. UINT16 u16Estimated_cycle_time;
  26. }UNT_SCHEDUL_T;
  27. typedef enum _SSU_UNT_UPDATE_MODE
  28. {
  29. M_IMMEDIATE = 0x00, //manul and immediate
  30. M_IRD_AVAILABLE,
  31. M_NEXT_START,
  32. AUTO_IMMEDIATE = 0x10,
  33. AUTO_IRD_AVAILABLE,
  34. AUTO_NEXT_START,
  35. MAX_UPDATE_MODE = 0xff,
  36. }SSU_UNT_UPDATE_MODE;
  37. void MID_SsuUnt_SetTimeZero(void);
  38. /*we can get the number of Scheduling time*/
  39. UINT8 MID_SsuUnt_GetNoOfTime(void);
  40. /*we can get schedul info of SSU's UNT in this API*/
  41. UINT8 MID_SsuUnt_GetTime(UNT_SCHEDUL_T* pstInfo, int num);
  42. /*we can get association tag of SSU's UNT in this API*/
  43. UINT16 MID_SsuUnt_GetAssociation(void);
  44. #endif
  45. #endif