From 067446fbba86ba37990fab5c1b577761be2148e4 Mon Sep 17 00:00:00 2001 From: Junhan Bae Date: Wed, 20 Mar 2019 20:37:53 +0900 Subject: [PATCH] [RAMEN9610-13626][COMMON][9610] drivers : fix pd communication timing for mac Change-Id: I1a47f5803fba91e0050571be211427e3daaaf846 Signed-off-by: Junhan Bae --- drivers/ccic/s2mu106-usbpd.c | 9 +++++++++ drivers/ccic/usbpd_policy.c | 1 + 2 files changed, 10 insertions(+) diff --git a/drivers/ccic/s2mu106-usbpd.c b/drivers/ccic/s2mu106-usbpd.c index 1188c4096015..08ab1eb4562c 100644 --- a/drivers/ccic/s2mu106-usbpd.c +++ b/drivers/ccic/s2mu106-usbpd.c @@ -907,6 +907,15 @@ static int s2mu106_receive_message(void *data) if (ret < 0) dev_err(dev, "%s read msg header error\n", __func__); + if (pdic_data->header.spec_revision < 2 && + pdic_data->header.num_data_objs > 0 && + pdic_data->header.msg_type == 6) { + usleep_range(500, 900); + ret = s2mu106_read_msg_header(i2c, &pdic_data->header); + if (ret < 0) + dev_err(dev, "%s read msg header error\n", __func__); + } + obj_num = pdic_data->header.num_data_objs; if (obj_num > 0) { diff --git a/drivers/ccic/usbpd_policy.c b/drivers/ccic/usbpd_policy.c index 6cd419ed8895..c89a5d7b9a41 100644 --- a/drivers/ccic/usbpd_policy.c +++ b/drivers/ccic/usbpd_policy.c @@ -1149,6 +1149,7 @@ policy_state usbpd_policy_snk_ready(struct policy_data *policy) CHECK_MSG(pd_data, MSG_VCONN_SWAP, PE_VCS_Evaluate_Swap); CHECK_MSG(pd_data, MSG_GET_SRC_CAP, PE_DR_SNK_Give_Source_Cap); CHECK_MSG(pd_data, MSG_BIST, PE_BIST_Receive_Mode); + CHECK_MSG(pd_data, MSG_SRC_CAP, PE_SNK_Evaluate_Capability); #if 0 CHECK_MSG(pd_data, VDM_DISCOVER_IDENTITY, PE_UFP_VDM_Get_Identity); -- 2.20.1