149 #include <sys/types.h>
159 #define dsAUDIOPORT_TYPE_NUM_MAX 4
160 #define dsAudioPORT_NUM_MAX 4
170 dsAUDIOPORT_TYPE_HDMI_ARC,
178 #define dsAudioType_isValid(t) (((t) >= dsAUDIOPORT_TYPE_ID_LR ) && ((t) < dsAUDIOPORT_TYPE_MAX))
195 #define dsAudioEncoding_isValid(t) (((t) >= dsAUDIO_ENC_NONE ) && ((t) < dsAUDIO_ENC_MAX))
215 dsAUDIO_FORMAT_DOLBY_AC3,
216 dsAUDIO_FORMAT_DOLBY_EAC3,
217 dsAUDIO_FORMAT_DOLBY_AC4,
218 dsAUDIO_FORMAT_DOLBY_MAT,
219 dsAUDIO_FORMAT_DOLBY_TRUEHD,
220 dsAUDIO_FORMAT_DOLBY_EAC3_ATMOS,
221 dsAUDIO_FORMAT_DOLBY_TRUEHD_ATMOS,
222 dsAUDIO_FORMAT_DOLBY_MAT_ATMOS,
223 dsAUDIO_FORMAT_DOLBY_AC4_ATMOS,
225 dsAUDIO_FORMAT_VORBIS,
227 dsAUDIO_FORMAT_UNKNOWN,
271 dsAUDIOSUPPORT_NONE = 0x0,
272 dsAUDIOSUPPORT_ATMOS = 0x01,
273 dsAUDIOSUPPORT_DD = 0x02,
274 dsAUDIOSUPPORT_DDPLUS = 0x04,
275 dsAUDIOSUPPORT_DAD = 0x08,
276 dsAUDIOSUPPORT_DAPv2 = 0x10,
277 dsAUDIOSUPPORT_MS12 = 0x20,
278 dsAUDIOSUPPORT_MS12V2 = 0x40,
279 dsAUDIOSUPPORT_Invalid = 0x80,
289 dsAUDIOARCSUPPORT_NONE = 0x0,
290 dsAUDIOARCSUPPORT_ARC = 0x01,
291 dsAUDIOARCSUPPORT_eARC = 0x02,
319 dsMS12SUPPORT_NONE = 0x0,
320 dsMS12SUPPORT_DolbyVolume = 0x01,
321 dsMS12SUPPORT_InteligentEqualizer = 0x02,
322 dsMS12SUPPORT_DialogueEnhancer = 0x04,
323 dsMS12SUPPORT_Invalid = 0x80,
333 #define MAX_PROFILE_LIST_BUFFER_LEN 1024
336 int audioProfileCount;
368 #define dsAudioCompression_isValid(t) (((t) >= dsAUDIO_CMP_NONE ) && ((t) < dsAUDIO_CMP_MAX))
390 } dsATMOSCapability_t;
395 #define dsAudioStereoMode_isValid(t) (((t) >= dsAUDIO_STEREO_UNKNOWN ) && ((t) < dsAUDIO_STEREO_MAX))
408 } dsHdcpProtocolVersion_t;
423 #define dsHdcpStatus_isValid(t) (((t) >= dsHDCP_STATUS_UNPOWERED ) && ((t) < dsHDCP_STATUS_MAX))
451 #define dsVideoPortType_isValid(t) (((t) >= dsVIDEOPORT_TYPE_RF ) && ((t) < dsVIDEOPORT_TYPE_MAX))
497 #define dsVideoPortPixelResolution_isValid(t) (((t) >= dsVIDEO_PIXELRES_720x480 ) && ((t) < dsVIDEO_PIXELRES_MAX))
518 #define dsVideoPortFrameRate_isValid(t) (((t) >= dsVIDEO_FRAMERATE_UNKNOWN ) && ((t) < dsVIDEO_FRAMERATE_MAX))
542 #define dsVideoPortScanMode_isValid(t) (((t) >= dsVIDEO_SCANMODE_INTERLACED ) && ((t) < dsVIDEO_SCANMODE_MAX))
556 #define dsVideoPortAspectRatio_isValid(t) (((t) >= dsVIDEO_ASPECT_RATIO_4x3 ) && ((t) < dsVIDEO_ASPECT_RATIO_MAX))
572 #define dsVideoPortStereoScopicMode_isValid(t) (((t) >= dsVIDEO_SSMODE_UNKNOWN ) && ((t) < dsVIDEO_SSMODE_MAX))
597 #define dsVideoPortDFC_isValid(t) (((t) >= dsVIDEO_ZOOM_NONE ) && ((t) < dsVIDEO_ZOOM_MAX))
684 #define HDCP_KEY_MAX_SIZE (4*1024)
709 dsSURROUNDMODE_NONE = 0x0,
710 dsSURROUNDMODE_DD = 0x1,
711 dsSURROUNDMODE_DDPLUS = 0x2,
718 dsMS12FEATURE_DAPV2 = 0x0,
719 dsMS12FEATURE_DE = 0x1,
720 dsMS12FEATURE_MAX = 0x2,
731 #define MAX_LANGUAGE_LEN 10
758 typedef uint32_t dsFPDColor_t;
759 #define dsFPDColor_Make(R8,G8,B8) (((R8)<<16) | ((G8)<< 8) | ((B8) ))
760 #define dsFPDColor_R(RGB32) (((RGB32) >> 16) & 0xFF)
761 #define dsFPDColor_G(RGB32) (((RGB32) >> 8) & 0xFF)
762 #define dsFPDColor_B(RGB32) (((RGB32) ) & 0xFF)
765 #define dsFPD_COLOR_BLUE dsFPDColor_Make(0, 0, 0xFF)
766 #define dsFPD_COLOR_GREEN dsFPDColor_Make(0, 0xFF, 0)
767 #define dsFPD_COLOR_RED dsFPDColor_Make(0xFF, 0, 0x0)
768 #define dsFPD_COLOR_YELLOW dsFPDColor_Make(0xFF, 0xFF, 0xE0)
769 #define dsFPD_COLOR_ORANGE dsFPDColor_Make(0xFF, 0x8C, 0x00)
770 #define dsFPD_COLOR_WHITE dsFPDColor_Make(0xFF, 0xFF, 0xFF)
771 #define dsFPD_COLOR_MAX 6
776 #define dsFPDColor_isValid(t) (((t) & 0xFF000000) == 0)
784 typedef int32_t dsFPDIndicator_t;
789 #define dsFPD_INDICATOR_MESSAGE 0
790 #define dsFPD_INDICATOR_POWER 1
791 #define dsFPD_INDICATOR_RECORD 2
792 #define dsFPD_INDICATOR_REMOTE 3
793 #define dsFPD_INDICATOR_RFBYPASS 4
794 #define dsFPD_INDICATOR_MAX 5
798 #define dsFPDIndicator_isValid(t) (true)
812 #define dsFPDTextDisplay_isValid(t) (((t) >= dsFPD_TEXTDISP_TEXT ) && ((t) < dsFPD_TEXTDISP_MAX))
829 dsFPD_LED_DEVICE_NONE = 0,
830 dsFPD_LED_DEVICE_ACTIVE = 1,
831 dsFPD_LED_DEVICE_STANDBY = 2,
832 dsFPD_LED_DEVICE_WPS_CONNECTING = 3,
833 dsFPD_LED_DEVICE_WPS_CONNECTED = 4,
834 dsFPD_LED_DEVICE_WPS_ERROR = 5,
835 dsFPD_LED_DEVICE_FACTORY_RESET = 6,
836 dsFPD_LED_DEVICE_USB_UPGRADE = 7,
837 dsFPD_LED_DEVICE_SOFTWARE_DOWNLOAD_ERROR = 8,
856 #define dsFPD_BRIGHTNESS_MAX 100
889 #define dsEEDID_MAX_VIDEO_CODE 64
892 #define dsEEDID_MAX_MON_NAME_LENGTH 14
894 #define MAX_EDID_BYTES_LEN (1024)
932 typedef enum _dsDisplayMatrixCoefficients_t
934 dsDISPLAY_MATRIXCOEFFICIENT_UNKNOWN = 0,
935 dsDISPLAY_MATRIXCOEFFICIENT_BT_709,
936 dsDISPLAY_MATRIXCOEFFICIENT_BT_470_2_BG,
937 dsDISPLAY_MATRIXCOEFFICIENT_SMPTE_170M ,
938 dsDISPLAY_MATRIXCOEFFICIENT_XvYCC_709,
939 dsDISPLAY_MATRIXCOEFFICIENT_eXvYCC_601,
940 dsDISPLAY_MATRIXCOEFFICIENT_BT_2020_NCL,
941 dsDISPLAY_MATRIXCOEFFICIENT_BT_2020_CL,
942 dsDISPLAY_MATRIXCOEFFICIENT_eDVI_FR_RGB,
943 dsDISPLAY_MATRIXCOEFFICIENT_eHDMI_RGB,
944 dsDISPLAY_MATRIXCOEFFICIENT_eFCC,
945 dsDISPLAY_MATRIXCOEFFICIENT_eSMPTE_240M,
946 dsDISPLAY_MATRIXCOEFFICIENT_eHDMI_FR_YCbCr
947 } dsDisplayMatrixCoefficients_t;
949 typedef enum _dsDisplayColorimetryInfo_t
951 dsDISPLAY_COLORIMETRY_INFO_UNKNOWN = 0,
952 dsDISPLAY_COLORIMETRY_INFO_XVYCC601 = 0x01,
953 dsDISPLAY_COLORIMETRY_INFO_XVYCC709 = 0x02,
954 dsDISPLAY_COLORIMETRY_INFO_SYCC601 = 0x04,
955 dsDISPLAY_COLORIMETRY_INFO_ADOBEYCC601 = 0x08,
956 dsDISPLAY_COLORIMETRY_INFO_ADOBERGB = 0x10,
957 dsDISPLAY_COLORIMETRY_INFO_BT2020CL = 0x20,
958 dsDISPLAY_COLORIMETRY_INFO_BT2020NCL = 0x40,
959 dsDISPLAY_COLORIMETRY_INFO_BT2020RGB = 0x80,
960 dsDISPLAY_COLORIMETRY_INFO_DCI_P3 = 0x100
961 } dsDisplayColorimetryInfo_t;
963 typedef enum _dsDisplayColorSpace_t
965 dsDISPLAY_COLORSPACE_UNKNOWN = 0,
966 dsDISPLAY_COLORSPACE_RGB = 1,
967 dsDISPLAY_COLORSPACE_YCbCr422 = 2,
968 dsDISPLAY_COLORSPACE_YCbCr444 = 3,
969 dsDISPLAY_COLORSPACE_YCbCr420 = 4,
970 dsDISPLAY_COLORSPACE_AUTO = 5
971 } dsDisplayColorSpace_t;
973 typedef enum _dsDisplayQuantizationRange_t
975 dsDISPLAY_QUANTIZATIONRANGE_UNKNOWN = 0,
976 dsDISPLAY_QUANTIZATIONRANGE_LIMITED = 1,
977 dsDISPLAY_QUANTIZATIONRANGE_FULL = 2
978 } dsDisplayQuantizationRange_t;
980 typedef enum _dsDisplayColorDepth_t
982 dsDISPLAY_COLORDEPTH_UNKNOWN = 0x0,
983 dsDISPLAY_COLORDEPTH_8BIT = 0x01,
984 dsDISPLAY_COLORDEPTH_10BIT = 0x02,
985 dsDISPLAY_COLORDEPTH_12BIT = 0x04,
986 dsDISPLAY_COLORDEPTH_AUTO = 0x08
987 } dsDisplayColorDepth_t;
992 #define dsSleepMode_isValid(t) (((t) >= dsHOST_SLEEP_MODE_LIGHT) && ((t) < dsHOST_SLEEP_MODE_MAX))
1006 typedef enum _dsHdmiInPort_t
1008 dsHDMI_IN_PORT_NONE = -1,
1019 typedef enum _dsHdmiInSignalStatus_t
1021 dsHDMI_IN_SIGNAL_STATUS_NONE = -1,
1022 dsHDMI_IN_SIGNAL_STATUS_NOSIGNAL,
1023 dsHDMI_IN_SIGNAL_STATUS_UNSTABLE,
1024 dsHDMI_IN_SIGNAL_STATUS_NOTSUPPORTED,
1025 dsHDMI_IN_SIGNAL_STATUS_STABLE,
1026 dsHDMI_IN_SIGNAL_STATUS_MAX
1027 } dsHdmiInSignalStatus_t;
1053 typedef enum _dsCompInSignalStatus_t
1055 dsCOMP_IN_SIGNAL_STATUS_NONE = -1,
1056 dsCOMP_IN_SIGNAL_STATUS_NOSIGNAL,
1057 dsCOMP_IN_SIGNAL_STATUS_UNSTABLE,
1058 dsCOMP_IN_SIGNAL_STATUS_NOTSUPPORTED,
1059 dsCOMP_IN_SIGNAL_STATUS_STABLE,
1060 dsCOMP_IN_SIGNAL_STATUS_MAX
1061 } dsCompInSignalStatus_t;
1068 typedef enum _dsCompositeInPort_t
1070 dsCOMPOSITE_IN_PORT_NONE = -1,
1071 dsCOMPOSITE_IN_PORT_0,
1072 dsCOMPOSITE_IN_PORT_1,
1073 dsCOMPOSITE_IN_PORT_MAX
1074 } dsCompositeInPort_t;
1092 dsVIDEO_CODEC_MPEGHPART2 = (0x01 << 0),
1093 dsVIDEO_CODEC_MPEG4PART10 = (0x01 << 1),
1094 dsVIDEO_CODEC_MPEG2 = (0x01 << 2),
1095 } dsVideoCodingFormat_t;
1100 dsVIDEO_CODEC_HEVC_PROFILE_MAIN = (0x01 << 0),
1101 dsVIDEO_CODEC_HEVC_PROFILE_MAIN10 = (0x01 << 1),
1102 dsVIDEO_CODEC_HEVC_PROFILE_MAINSTILLPICTURE = (0x01 << 2),
1103 } dsVideoCodecHevcProfiles_t;
1107 dsVideoCodecHevcProfiles_t profile;
1113 unsigned int num_entries;
1124 uint8_t vendor_name[8];
1126 uint8_t product_des[16];
1128 uint8_t source_info;
1131 typedef enum tv_hdmi_edid_version_e {
1132 HDMI_EDID_VER_14 = 0,
1135 } tv_hdmi_edid_version_t;
1140 #define MAX_FEATURE_LIST_BUFFER_LEN 1024
1143 int gameFeatureCount;
1146 typedef enum _dsAudioPortState {
1147 dsAUDIOPORT_STATE_UNINITIALIZED,
1148 dsAUDIOPORT_STATE_INITIALIZED,
1149 dsAUDIOPORT_STATE_MAX
1150 } dsAudioPortState_t;
1157 #define dsHAL_APIVER(major, minor) (uint32_t)((major << 16) | (minor & 0xFFFF))
1159 #define dsHAL_APIVER_MAJOR(x) ((x) >> 16) & (0x7FFF)
1161 #define dsHAL_APIVER_MINOR(x) (x & 0xFFFF)