UPSTREAM: usb: typec: tcpm: Parse Accessory Mode information

Some of the boards supported by the TCPM drivers can support USB-C
Accessory Modes (Analog Audio, Debug). Parse information about supported
modes from the device tree.

Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20231215173005.313422-3-dmitry.baryshkov@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 206108037
(cherry picked from commit e9158c7e55339737847cebbfa397c668713f1a15)
Signed-off-by: Kyle Tso <kyletso@google.com>
(cherry picked from https://android-review.googlesource.com/q/commit:33854a1fee6cc57f82c14ea0d584d1f425a5d95e)
Merged-In: Iece498046926d631d4a572152fbe41957b8354e4
Change-Id: Iece498046926d631d4a572152fbe41957b8354e4
This commit is contained in:
Dmitry Baryshkov 2023-12-15 19:30:05 +02:00 committed by Treehugger Robot
parent 3578913b2e
commit 4025820c61

View file

@ -6200,6 +6200,7 @@ static int tcpm_fw_get_caps(struct tcpm_port *port,
{
const char *opmode_str;
int ret;
int mode;
u32 mw, frs_current;
if (!fwnode)
@ -6218,6 +6219,14 @@ static int tcpm_fw_get_caps(struct tcpm_port *port,
if (ret < 0)
return ret;
mode = 0;
if (fwnode_property_read_bool(fwnode, "accessory-mode-audio"))
port->typec_caps.accessory[mode++] = TYPEC_ACCESSORY_AUDIO;
if (fwnode_property_read_bool(fwnode, "accessory-mode-debug"))
port->typec_caps.accessory[mode++] = TYPEC_ACCESSORY_DEBUG;
port->port_type = port->typec_caps.type;
port->pd_supported = !fwnode_property_read_bool(fwnode, "pd-disable");