From: Vijayavardhan Vennapusa Date: Mon, 5 Jun 2017 09:17:56 +0000 (+0530) Subject: Policy_engine: Add module parameter to disable PD X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=45d1d418d6490b2c8daad5de63b8623518afc617;p=sagit-ice-cold%2Fkernel_xiaomi_msm8998.git Policy_engine: Add module parameter to disable PD Currently power Delivery (PD) is enabled by default which sends PD Hard reset in SINK mode to negogiate PD contract with host machine after connect, if no capabilities message is received from other device. This impacts with compliance for example: PMI ignores type-c disconnects during PD Hard Reset. Add module parameter to disable PD so that it doesn't enable PD communication during USB3.1 compliance testing. Change-Id: Ia3e39cee1e65895402c18b380b650f0a34fb0cec Signed-off-by: Vijayavardhan Vennapusa --- diff --git a/drivers/usb/pd/policy_engine.c b/drivers/usb/pd/policy_engine.c index 0272800269eb..03aeec2e878c 100644 --- a/drivers/usb/pd/policy_engine.c +++ b/drivers/usb/pd/policy_engine.c @@ -34,6 +34,10 @@ static bool usb_compliance_mode; module_param(usb_compliance_mode, bool, S_IRUGO|S_IWUSR); MODULE_PARM_DESC(usb_compliance_mode, "Start USB stack for USB3.1 compliance testing"); +static bool disable_usb_pd; +module_param(disable_usb_pd, bool, S_IRUGO|S_IWUSR); +MODULE_PARM_DESC(disable_usb_pd, "Disable USB PD for USB3.1 compliance testing"); + enum usbpd_state { PE_UNKNOWN, PE_ERROR_RECOVERY, @@ -920,7 +924,7 @@ static void usbpd_set_state(struct usbpd *pd, enum usbpd_state next_state) break; } - if (!val.intval) + if (!val.intval || disable_usb_pd) break; pd_reset_protocol(pd);