> > On Friday, November 29, 2013 11:27 AM, Peter Chen wrote: > > > >> * init the sts flag to 0 (missed) > >> * set the sts flag only if not 0 > >> > > does PORTSC_STS bit as 1 or 0 affect your case? > > If not, please remove hw_write(ci, OP_DEVLC, DEVLC_STS, sts), > > since it is useless at current code logic. > > > > Peter > > Peter, > > in the switch statement sts is set to 1 therefore I think its used. > > case USBPHY_INTERFACE_MODE_SERIAL: > portsc = PORTSC_PTS(PTS_SERIAL); > lpm = DEVLC_PTS(PTS_SERIAL); > sts = 1; > break; > > Regards > Chris > > Yes, you are right. It is just not showed at the patch. Would you move the sts = 0 to sts declaration, it can reduce the code line. u32 portsc, lpm, sts = 0; > > > >> Signed-off-by: Chris Ruehl <chris.ruehl@xxxxxxxxxxxx> > >> --- > >> drivers/usb/chipidea/core.c | 8 ++++++-- > >> 1 file changed, 6 insertions(+), 2 deletions(-) > >> > >> diff --git a/drivers/usb/chipidea/core.c b/drivers/usb/chipidea/core.c > >> index 5075407..1a6010e 100644 > >> --- a/drivers/usb/chipidea/core.c > >> +++ b/drivers/usb/chipidea/core.c > >> @@ -245,6 +245,8 @@ static void hw_phymode_configure(struct ci_hdrc > *ci) > >> { > >> u32 portsc, lpm, sts; > >> > >> + sts = 0; > >> + > >> switch (ci->platdata->phy_mode) { > >> case USBPHY_INTERFACE_MODE_UTMI: > >> portsc = PORTSC_PTS(PTS_UTMI); > >> @@ -273,10 +275,12 @@ static void hw_phymode_configure(struct ci_hdrc > *ci) > >> > >> if (ci->hw_bank.lpm) { > >> hw_write(ci, OP_DEVLC, DEVLC_PTS(7) | DEVLC_PTW, lpm); > >> - hw_write(ci, OP_DEVLC, DEVLC_STS, sts); > >> + if (sts) > >> + hw_write(ci, OP_DEVLC, DEVLC_STS, sts); > >> } else { > >> hw_write(ci, OP_PORTSC, PORTSC_PTS(7) | PORTSC_PTW, portsc); > >> - hw_write(ci, OP_PORTSC, PORTSC_STS, sts); > >> + if ( sts ) > >> + hw_write(ci, OP_PORTSC, PORTSC_STS, sts); > >> } > >> } > >> > >> -- -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html