Message ID | 20231121202925.2481471-3-dmitry.baryshkov@linaro.org (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | usb: typec: tcpm: Handle Accessory Modes | expand |
On Tue, Nov 21, 2023 at 10:27:00PM +0200, 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> Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> > --- > drivers/usb/typec/tcpm/tcpm.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/drivers/usb/typec/tcpm/tcpm.c b/drivers/usb/typec/tcpm/tcpm.c > index 6e843c511b85..ba2926846269 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,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"); > > -- > 2.42.0
diff --git a/drivers/usb/typec/tcpm/tcpm.c b/drivers/usb/typec/tcpm/tcpm.c index 6e843c511b85..ba2926846269 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,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");
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 | 9 +++++++++ 1 file changed, 9 insertions(+)