usb: chipidea: Only read/write OTGSC from one place
authorStephen Boyd <stephen.boyd@linaro.org>
Wed, 28 Dec 2016 22:56:50 +0000 (14:56 -0800)
committerPeter Chen <peter.chen@nxp.com>
Fri, 20 Jan 2017 03:24:15 +0000 (11:24 +0800)
commitf60f8ccd54e03c1afafb2b20ceb029a0eaf7a134
treeff45b666cf79b86b6ff83e3d89efd44aa1c0df50
parentef6a7bcfb01c9c8df172ad06fb547216ca788711
usb: chipidea: Only read/write OTGSC from one place

With the id and vbus detection done via extcon we need to make
sure we poll the status of OTGSC properly by considering what the
extcon is saying, and not just what the register is saying. Let's
move this hw_wait_reg() function to the only place it's used and
simplify it for polling the OTGSC register. Then we can make
certain we only use the hw_read_otgsc() API to read OTGSC, which
will make sure we properly handle extcon events.

Acked-by: Peter Chen <peter.chen@nxp.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: "Ivan T. Ivanov" <iivanov.xz@gmail.com>
Fixes: 3ecb3e09b042 ("usb: chipidea: Use extcon framework for VBUS and ID detect")
Signed-off-by: Stephen Boyd <stephen.boyd@linaro.org>
Signed-off-by: Peter Chen <peter.chen@nxp.com>
drivers/usb/chipidea/ci.h
drivers/usb/chipidea/core.c
drivers/usb/chipidea/otg.c