summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2016-04-18 01:54:15 +0300
committerDavid S. Miller <davem@davemloft.net>2016-04-18 01:54:15 +0300
commitccd37cffe39d7d4f1c1efcd42ec829ec16c7db66 (patch)
tree0ed8e7835063165c4c28e55059036dbb92e59336 /include
parentefde611b0afa47e64f2a329f4430830b91d77ea2 (diff)
parentd967ecbc0b875081624857f27df4ed23c5eca106 (diff)
downloadlinux-ccd37cffe39d7d4f1c1efcd42ec829ec16c7db66.tar.xz
Merge branch 'dsa-mv88e6xxx-switch-factorization'
Vivien Didelot says: ==================== net: dsa: mv88e6xxx: factorize switch info This patchset factorizes the mv88e6xxx code by sharing a new extendable info structure to store static data such as switch family, product number, number of ports, number of databases and the name. The next step is to add a "flags" bitmap member to the info structure in order to simplify the shared code with a feature-based logic instead of checking their family/ID. This is a step forward having a single mv88e6xxx driver supporting many similar devices, like any usual Linux driver. Changes v3 -> v4: - constify probed name in DSA - rebase patchset above conflicting commit 48ace4e Changes v2 -> v3: - update commit messages and add Andrew's tags - keep the info lookup code in a separated function - split the single switch ID reading in probe in a new commit Changes v1 -> v2: - define PORT_SWITCH_ID_PROD_NUM_* values - use plain struct mv88e6xxx_info - remove non used yet ps->rev ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r--include/net/dsa.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/include/net/dsa.h b/include/net/dsa.h
index 689ebd3542ba..c4bc42bd3538 100644
--- a/include/net/dsa.h
+++ b/include/net/dsa.h
@@ -217,8 +217,9 @@ struct dsa_switch_driver {
/*
* Probing and setup.
*/
- char *(*probe)(struct device *dsa_dev, struct device *host_dev,
- int sw_addr, void **priv);
+ const char *(*probe)(struct device *dsa_dev,
+ struct device *host_dev, int sw_addr,
+ void **priv);
int (*setup)(struct dsa_switch *ds);
int (*set_addr)(struct dsa_switch *ds, u8 *addr);
u32 (*get_phy_flags)(struct dsa_switch *ds, int port);