usb: chipidea: add flag CI_HDRC_DUAL_ROLE_NOT_OTG
authorPeter Chen <peter.chen@freescale.com>
Wed, 14 Aug 2013 09:44:08 +0000 (12:44 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 14 Aug 2013 19:37:19 +0000 (12:37 -0700)
commit577b232fc9caba1b6f7a3bb9901c00b10e0ca1ba
tree7c3fd6ed7f8405c3f5f59dc9d1b83b17739da689
parent3f124d233e97db96d9471d1fb346335d43d8650d
usb: chipidea: add flag CI_HDRC_DUAL_ROLE_NOT_OTG

Since we need otgsc to know vbus's status at some chipidea
controllers even it is peripheral-only mode. Besides, some
SoCs (eg, AR9331 SoC) don't have otgsc register even
the DCCPARAMS_DC and DCCPARAMS_HC are both 1 at CAP_DCCPARAMS.

We inroduce flag CI_HDRC_DUAL_ROLE_NOT_OTG to indicate if the
controller is dual role, but not supports OTG. If this flag is
not set, we follow the rule that if DCCPARAMS_DC and DCCPARAMS_HC
are both 1 at CAP_DCCPARAMS, then this controller is otg capable.

Signed-off-by: Peter Chen <peter.chen@freescale.com>
Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/chipidea/core.c
include/linux/usb/chipidea.h