Add a field for auto cable plugin detection in TV Input HAL

Test: make vts -j8;

Bug: 28715954
Change-Id: I4eb39cd88d9df751867400d3ee344ff781e3bb21
This commit is contained in:
Shubang 2017-02-22 11:42:16 -08:00
parent 4cbf55579d
commit 4b43ed728f
2 changed files with 19 additions and 5 deletions

View file

@ -158,6 +158,7 @@ void TvInput::notify(struct tv_input_device* __unused, tv_input_event_t* event,
tvInputEvent.deviceInfo.type = static_cast<TvInputType>(
event->device_info.type);
tvInputEvent.deviceInfo.portId = event->device_info.hdmi.port_id;
tvInputEvent.deviceInfo.cableConnectionStatus = CableConnectionStatus::UNKNOWN;
// TODO: Ensure the legacy audio type code is the same once audio HAL default
// implementation is ready.
tvInputEvent.deviceInfo.audioType = static_cast<AudioDevice>(

View file

@ -40,14 +40,27 @@ enum TvInputType : int32_t {
DISPLAY_PORT = 10,
};
/*
* Status of cable connection.
* This status is for devices having availability to detect the cable in a mechanical way,
* regardless of whether the connected external device is electrically on or not.
* If the device does not have such capability, you must use UNKNOWN.
*/
enum CableConnectionStatus : int32_t {
UNKNOWN = 0,
CONNECTED = 1,
DISCONNECTED = 2,
};
struct TvInputDeviceInfo {
int32_t deviceId;
TvInputType type;
uint32_t portId; // HDMI port ID number. e.g. 2 for HDMI 2
AudioDevice audioType; // Audio device type. e.g AudioDevice::IN_HDMI
uint8_t[32] audioAddress; // Audio device address. "" if N/A. If the text
// length is less than 32, the remaining part
// must be filled with 0s.
uint32_t portId; // HDMI port ID number. e.g. 2 for HDMI 2
CableConnectionStatus cableConnectionStatus; // Cable connection status.
AudioDevice audioType; // Audio device type. e.g AudioDevice::IN_HDMI
uint8_t[32] audioAddress; // Audio device address. "" if N/A. If the text
// length is less than 32, the remaining part
// must be filled with 0s.
};
enum TvInputEventType : int32_t {