Commit 0dbda971 authored by Dmitry Baryshkov's avatar Dmitry Baryshkov Committed by Greg Kroah-Hartman

usb: typec: change altmode SVID to u16 entry

As stated in the changelog for the commit 7b458a4c ("usb: typec: Add
typec_port_register_altmodes()"), the code should be adjusted according
to the AltMode bindings. As the SVID is 16 bits wide (according to the
USB PD Spec), use fwnode_property_read_u16() to read it.
Acked-by: default avatarHans de Goede <hdegoede@redhat.com>
Reviewed-by: default avatarHeikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: default avatarDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20231204020303.2287338-3-dmitry.baryshkov@linaro.orgSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent d1756ac6
...@@ -136,7 +136,7 @@ static const struct software_node altmodes_node = { ...@@ -136,7 +136,7 @@ static const struct software_node altmodes_node = {
}; };
static const struct property_entry dp_altmode_properties[] = { static const struct property_entry dp_altmode_properties[] = {
PROPERTY_ENTRY_U32("svid", 0xff01), PROPERTY_ENTRY_U16("svid", 0xff01),
PROPERTY_ENTRY_U32("vdo", 0x0c0086), PROPERTY_ENTRY_U32("vdo", 0x0c0086),
{ } { }
}; };
......
...@@ -2231,7 +2231,8 @@ void typec_port_register_altmodes(struct typec_port *port, ...@@ -2231,7 +2231,8 @@ void typec_port_register_altmodes(struct typec_port *port,
struct typec_altmode_desc desc; struct typec_altmode_desc desc;
struct typec_altmode *alt; struct typec_altmode *alt;
size_t index = 0; size_t index = 0;
u32 svid, vdo; u16 svid;
u32 vdo;
int ret; int ret;
altmodes_node = device_get_named_child_node(&port->dev, "altmodes"); altmodes_node = device_get_named_child_node(&port->dev, "altmodes");
...@@ -2239,7 +2240,7 @@ void typec_port_register_altmodes(struct typec_port *port, ...@@ -2239,7 +2240,7 @@ void typec_port_register_altmodes(struct typec_port *port,
return; /* No altmodes specified */ return; /* No altmodes specified */
fwnode_for_each_child_node(altmodes_node, child) { fwnode_for_each_child_node(altmodes_node, child) {
ret = fwnode_property_read_u32(child, "svid", &svid); ret = fwnode_property_read_u16(child, "svid", &svid);
if (ret) { if (ret) {
dev_err(&port->dev, "Error reading svid for altmode %s\n", dev_err(&port->dev, "Error reading svid for altmode %s\n",
fwnode_get_name(child)); fwnode_get_name(child));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment