mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-22 14:41:27 +00:00
dsa: Rename dsa_resolve_tag_protocol() to _get ready for locking
dsa_resolve_tag_protocol() is used to find the tagging driver needed by a switch driver. When the tagging drivers become modules, it will be necassary to take a reference on the module to prevent it being unloaded. So rename this function to _get() to indicate it has some locking properties. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
409065b069
commit
c39e2a1d71
4 changed files with 5 additions and 4 deletions
|
@ -123,7 +123,7 @@ const char *dsa_tag_protocol_to_str(const struct dsa_device_ops *ops)
|
||||||
return ops->name;
|
return ops->name;
|
||||||
};
|
};
|
||||||
|
|
||||||
const struct dsa_device_ops *dsa_resolve_tag_protocol(int tag_protocol)
|
const struct dsa_device_ops *dsa_tag_driver_get(int tag_protocol)
|
||||||
{
|
{
|
||||||
const struct dsa_device_ops *ops;
|
const struct dsa_device_ops *ops;
|
||||||
|
|
||||||
|
|
|
@ -577,7 +577,7 @@ static int dsa_port_parse_cpu(struct dsa_port *dp, struct net_device *master)
|
||||||
enum dsa_tag_protocol tag_protocol;
|
enum dsa_tag_protocol tag_protocol;
|
||||||
|
|
||||||
tag_protocol = ds->ops->get_tag_protocol(ds, dp->index);
|
tag_protocol = ds->ops->get_tag_protocol(ds, dp->index);
|
||||||
tag_ops = dsa_resolve_tag_protocol(tag_protocol);
|
tag_ops = dsa_tag_driver_get(tag_protocol);
|
||||||
if (IS_ERR(tag_ops)) {
|
if (IS_ERR(tag_ops)) {
|
||||||
dev_warn(ds->dev, "No tagger for this switch\n");
|
dev_warn(ds->dev, "No tagger for this switch\n");
|
||||||
return PTR_ERR(tag_ops);
|
return PTR_ERR(tag_ops);
|
||||||
|
|
|
@ -84,7 +84,8 @@ struct dsa_slave_priv {
|
||||||
};
|
};
|
||||||
|
|
||||||
/* dsa.c */
|
/* dsa.c */
|
||||||
const struct dsa_device_ops *dsa_resolve_tag_protocol(int tag_protocol);
|
const struct dsa_device_ops *dsa_tag_driver_get(int tag_protocol);
|
||||||
|
|
||||||
bool dsa_schedule_work(struct work_struct *work);
|
bool dsa_schedule_work(struct work_struct *work);
|
||||||
const char *dsa_tag_protocol_to_str(const struct dsa_device_ops *ops);
|
const char *dsa_tag_protocol_to_str(const struct dsa_device_ops *ops);
|
||||||
|
|
||||||
|
|
|
@ -152,7 +152,7 @@ static int dsa_switch_setup_one(struct dsa_switch *ds,
|
||||||
enum dsa_tag_protocol tag_protocol;
|
enum dsa_tag_protocol tag_protocol;
|
||||||
|
|
||||||
tag_protocol = ops->get_tag_protocol(ds, dst->cpu_dp->index);
|
tag_protocol = ops->get_tag_protocol(ds, dst->cpu_dp->index);
|
||||||
tag_ops = dsa_resolve_tag_protocol(tag_protocol);
|
tag_ops = dsa_tag_driver_get(tag_protocol);
|
||||||
if (IS_ERR(tag_ops))
|
if (IS_ERR(tag_ops))
|
||||||
return PTR_ERR(tag_ops);
|
return PTR_ERR(tag_ops);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue