|
@@ -1584,6 +1584,20 @@ rocker_world_port_attr_bridge_flags_get(const struct rocker_port *rocker_port,
|
|
|
return wops->port_attr_bridge_flags_get(rocker_port, p_brport_flags);
|
|
|
}
|
|
|
|
|
|
+static int
|
|
|
+rocker_world_port_attr_bridge_flags_support_get(const struct rocker_port *
|
|
|
+ rocker_port,
|
|
|
+ unsigned long *
|
|
|
+ p_brport_flags_support)
|
|
|
+{
|
|
|
+ struct rocker_world_ops *wops = rocker_port->rocker->wops;
|
|
|
+
|
|
|
+ if (!wops->port_attr_bridge_flags_support_get)
|
|
|
+ return -EOPNOTSUPP;
|
|
|
+ return wops->port_attr_bridge_flags_support_get(rocker_port,
|
|
|
+ p_brport_flags_support);
|
|
|
+}
|
|
|
+
|
|
|
static int
|
|
|
rocker_world_port_attr_bridge_ageing_time_set(struct rocker_port *rocker_port,
|
|
|
u32 ageing_time,
|
|
@@ -2053,6 +2067,10 @@ static int rocker_port_attr_get(struct net_device *dev,
|
|
|
err = rocker_world_port_attr_bridge_flags_get(rocker_port,
|
|
|
&attr->u.brport_flags);
|
|
|
break;
|
|
|
+ case SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS_SUPPORT:
|
|
|
+ err = rocker_world_port_attr_bridge_flags_support_get(rocker_port,
|
|
|
+ &attr->u.brport_flags_support);
|
|
|
+ break;
|
|
|
default:
|
|
|
return -EOPNOTSUPP;
|
|
|
}
|