X-Git-Url: http://plrg.eecs.uci.edu/git/?p=firefly-linux-kernel-4.4.55.git;a=blobdiff_plain;f=drivers%2Fmfd%2Ffusb302.c;h=2defbdea20b3fe5ada58d708e32f8803bfc09c18;hp=e4bcd93982b8891c4851ff27087f0fec0858a828;hb=44c76fdc010d9392f24c75dbd08e40c1ded0d5e1;hpb=c75676bb6f1a2dd45d3074dc854445ec37507a2b diff --git a/drivers/mfd/fusb302.c b/drivers/mfd/fusb302.c index e4bcd93982b8..2defbdea20b3 100644 --- a/drivers/mfd/fusb302.c +++ b/drivers/mfd/fusb302.c @@ -1277,9 +1277,6 @@ static void fusb_state_attach_wait_source(struct fusb30x_chip *chip, int evt) if ((chip->cc1 == cc1) && (chip->cc2 == cc2)) { chip->debounce_cnt++; - tcpm_set_polarity(chip, !(chip->cc_state & 0x01)); - platform_set_vbus_lvl_enable(chip, 1, 0); - tcpm_set_vconn(chip, 1); } else { chip->cc1 = cc1; chip->cc2 = cc2; @@ -1306,6 +1303,11 @@ static void fusb_state_attach_wait_source(struct fusb30x_chip *chip, int evt) static void fusb_state_attached_source(struct fusb30x_chip *chip, int evt) { + tcpm_set_polarity(chip, !(chip->cc_state & 0x01)); + extcon_set_state(chip->extcon, EXTCON_USB_HOST, 1); + platform_set_vbus_lvl_enable(chip, 1, 0); + tcpm_set_vconn(chip, 1); + chip->notify.is_cc_connected = 1; if (chip->cc_state & 0x01) chip->cc_polarity = 0;