forked from Minki/linux
net: dsa: sja1105: implement .devlink_info_get
Return the driver name and ASIC ID so that generic user space application are able to know they're looking at sja1105 devlink regions when pretty-printing them. Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
bf425b8205
commit
ff4cf8eae0
@ -255,6 +255,9 @@ int sja1105_devlink_param_get(struct dsa_switch *ds, u32 id,
|
||||
struct devlink_param_gset_ctx *ctx);
|
||||
int sja1105_devlink_param_set(struct dsa_switch *ds, u32 id,
|
||||
struct devlink_param_gset_ctx *ctx);
|
||||
int sja1105_devlink_info_get(struct dsa_switch *ds,
|
||||
struct devlink_info_req *req,
|
||||
struct netlink_ext_ack *extack);
|
||||
|
||||
/* From sja1105_spi.c */
|
||||
int sja1105_xfer_buf(const struct sja1105_private *priv,
|
||||
|
@ -214,6 +214,23 @@ static void sja1105_teardown_devlink_params(struct dsa_switch *ds)
|
||||
ARRAY_SIZE(sja1105_devlink_params));
|
||||
}
|
||||
|
||||
int sja1105_devlink_info_get(struct dsa_switch *ds,
|
||||
struct devlink_info_req *req,
|
||||
struct netlink_ext_ack *extack)
|
||||
{
|
||||
struct sja1105_private *priv = ds->priv;
|
||||
int rc;
|
||||
|
||||
rc = devlink_info_driver_name_put(req, "sja1105");
|
||||
if (rc)
|
||||
return rc;
|
||||
|
||||
rc = devlink_info_version_fixed_put(req,
|
||||
DEVLINK_INFO_VERSION_GENERIC_ASIC_ID,
|
||||
priv->info->name);
|
||||
return rc;
|
||||
}
|
||||
|
||||
int sja1105_devlink_setup(struct dsa_switch *ds)
|
||||
{
|
||||
int rc;
|
||||
|
@ -3316,6 +3316,7 @@ static const struct dsa_switch_ops sja1105_switch_ops = {
|
||||
.crosschip_bridge_leave = sja1105_crosschip_bridge_leave,
|
||||
.devlink_param_get = sja1105_devlink_param_get,
|
||||
.devlink_param_set = sja1105_devlink_param_set,
|
||||
.devlink_info_get = sja1105_devlink_info_get,
|
||||
};
|
||||
|
||||
static const struct of_device_id sja1105_dt_ids[];
|
||||
|
Loading…
Reference in New Issue
Block a user