usb: typec: ucsi: Workaround for missed op_mode change
EC firmware on Dell XPS & Latitude series does not set "Power Operation Mode Change" bit in "Connector Status change" field of MESSAGE IN Data while transitioning from type-C current to PD mode. Instead the "Negotiated Power Level Change" bit is set when the "Power Operation Mode" field shows the correct mode (i.e. PD). This patch adds a check for this bit also, to trigger an update of power operation mode in class driver, while handling GET_CONNECTOR_STATUS command. Signed-off-by: K V, Abhilash <abhilash.k.v@intel.com> Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> Link: https://lore.kernel.org/r/20200423132058.6972-3-heikki.krogerus@linux.intel.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
91813ef8da
Коммит
a0d4618788
|
@ -613,7 +613,8 @@ static void ucsi_handle_connector_change(struct work_struct *work)
|
|||
|
||||
role = !!(con->status.flags & UCSI_CONSTAT_PWR_DIR);
|
||||
|
||||
if (con->status.change & UCSI_CONSTAT_POWER_OPMODE_CHANGE)
|
||||
if (con->status.change & UCSI_CONSTAT_POWER_OPMODE_CHANGE ||
|
||||
con->status.change & UCSI_CONSTAT_POWER_LEVEL_CHANGE)
|
||||
ucsi_pwr_opmode_change(con);
|
||||
|
||||
if (con->status.change & UCSI_CONSTAT_POWER_DIR_CHANGE) {
|
||||
|
|
Загрузка…
Ссылка в новой задаче