/*
* This file is part of the libCEC(R) library.
*
- * libCEC(R) is Copyright (C) 2011-2012 Pulse-Eight Limited. All rights reserved.
+ * libCEC(R) is Copyright (C) 2011-2013 Pulse-Eight Limited. All rights reserved.
* libCEC(R) is an original work, containing original code.
*
* libCEC(R) is a trademark of Pulse-Eight Limited.
{
switch(reason)
{
- case VC_HDMI_UNPLUGGED:
- {
- m_callback->HandlePhysicalAddressChanged(0x1000);
- break;
- }
case VC_HDMI_ATTACHED:
{
uint16_t iNewAddress = GetPhysicalAddress();
m_callback->HandlePhysicalAddressChanged(iNewAddress);
break;
}
+ case VC_HDMI_UNPLUGGED:
case VC_HDMI_DVI:
case VC_HDMI_HDMI:
case VC_HDMI_HDCP_UNAUTH:
else
return;
}
- vc_tv_unregister_callback(rpi_tv_callback);
+ if (m_bInitialised)
+ vc_tv_unregister_callback(rpi_tv_callback);
UnregisterLogicalAddress();
return (data.initiator == data.destination) ? ADAPTER_MESSAGE_STATE_SENT_NOT_ACKED : ADAPTER_MESSAGE_STATE_ERROR;
}
- if (!data.opcode_set && data.initiator == data.destination)
+ if (!m_queue->Write(data, bIsReply))
{
- // registration of the logical address would have failed
- return ADAPTER_MESSAGE_STATE_SENT_NOT_ACKED;
+ if (!data.opcode_set)
+ {
+ return ADAPTER_MESSAGE_STATE_SENT_NOT_ACKED;
+ }
+
+ return ADAPTER_MESSAGE_STATE_SENT;
}
- return m_queue->Write(data, bIsReply) ? ADAPTER_MESSAGE_STATE_SENT_ACKED : ADAPTER_MESSAGE_STATE_SENT_NOT_ACKED;
+ return ADAPTER_MESSAGE_STATE_SENT_ACKED;
+
}
uint16_t CRPiCECAdapterCommunication::GetFirmwareVersion(void)