Message ID | 20231120231757.2309482-3-dmitry.baryshkov@linaro.org (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | usb: typec: tcpm: Handle Accessory Modes | expand |
On 11/21/23 2:11 AM, Dmitry Baryshkov wrote: > 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. > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- > drivers/usb/typec/tcpm/tcpm.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/drivers/usb/typec/tcpm/tcpm.c b/drivers/usb/typec/tcpm/tcpm.c > index 6e843c511b85..6297f803de53 100644 > --- a/drivers/usb/typec/tcpm/tcpm.c > +++ b/drivers/usb/typec/tcpm/tcpm.c > @@ -6114,6 +6114,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) > @@ -6132,6 +6133,12 @@ static int tcpm_fw_get_caps(struct tcpm_port *port, > if (ret < 0) > return ret; > > + 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; > + Hm, I don't see where that mode variable is initialized? [...] MBR, Sergey
diff --git a/drivers/usb/typec/tcpm/tcpm.c b/drivers/usb/typec/tcpm/tcpm.c index 6e843c511b85..6297f803de53 100644 --- a/drivers/usb/typec/tcpm/tcpm.c +++ b/drivers/usb/typec/tcpm/tcpm.c @@ -6114,6 +6114,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) @@ -6132,6 +6133,12 @@ static int tcpm_fw_get_caps(struct tcpm_port *port, if (ret < 0) return ret; + 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");
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. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> --- drivers/usb/typec/tcpm/tcpm.c | 7 +++++++ 1 file changed, 7 insertions(+)