dptx: Added an offset argument for remote I2C reads.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
This commit is contained in:
Andrei-Liviu Simion 2014-10-25 12:50:18 -07:00 committed by Suneel Garapati
parent 10e6141d5b
commit c658c8e53e
2 changed files with 6 additions and 4 deletions

View file

@ -847,7 +847,8 @@ u32 XDptx_SendSbMsgRemoteDpcdRead(XDptx *InstancePtr, u8 LinkCountTotal,
u32 XDptx_SendSbMsgRemoteIicWrite(XDptx *InstancePtr, u8 LinkCountTotal,
u8 *RelativeAddress, u8 IicDeviceId, u8 BytesToWrite, u8 *WriteData);
u32 XDptx_SendSbMsgRemoteIicRead(XDptx *InstancePtr, u8 LinkCountTotal,
u8 *RelativeAddress, u8 IicDeviceId, u8 BytesToRead, u8 *ReadData);
u8 *RelativeAddress, u8 IicDeviceId, u8 Offset, u8 BytesToRead,
u8 *ReadData);
u32 XDptx_SendSbMsgLinkAddress(XDptx *InstancePtr, u8 LinkCountTotal,
u8 *RelativeAddress, XDptx_SbMsgLinkAddressReplyDeviceInfo *DeviceInfo);
u32 XDptx_SendSbMsgEnumPathResources(XDptx *InstancePtr, u8 LinkCountTotal,

View file

@ -1254,7 +1254,8 @@ u32 XDptx_SendSbMsgRemoteIicWrite(XDptx *InstancePtr, u8 LinkCountTotal,
*
*******************************************************************************/
u32 XDptx_SendSbMsgRemoteIicRead(XDptx *InstancePtr, u8 LinkCountTotal,
u8 *RelativeAddress, u8 IicDeviceId, u8 BytesToRead, u8 *ReadData)
u8 *RelativeAddress, u8 IicDeviceId, u8 Offset, u8 BytesToRead,
u8 *ReadData)
{
u32 Status;
XDptx_SidebandMsg Msg;
@ -1290,7 +1291,7 @@ u32 XDptx_SendSbMsgRemoteIicRead(XDptx *InstancePtr, u8 LinkCountTotal,
4) | 1;
Msg.Body.MsgData[2] = IicDeviceId; /* Write I2C device ID. */
Msg.Body.MsgData[3] = 1; /* Number of bytes to write. */
Msg.Body.MsgData[4] = 0; /* Write byte[0]. */
Msg.Body.MsgData[4] = Offset;
Msg.Body.MsgData[5] = (0 << 4) | 0;
Msg.Body.MsgData[6] = IicDeviceId; /* Read I2C device ID. */
Msg.Body.MsgData[7] = BytesToRead;
@ -1780,7 +1781,7 @@ u32 XDptx_GetRemoteEdid(XDptx *InstancePtr, u8 LinkCountTotal,
else {
Status = XDptx_SendSbMsgRemoteIicRead(InstancePtr,
LinkCountTotal, RelativeAddress,
XDPTX_EDID_ADDR, XDPTX_EDID_SIZE, Edid);
XDPTX_EDID_ADDR, 0, XDPTX_EDID_SIZE, Edid);
}
return Status;