]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - include/net/dsa.h
Merge branch 'upstream' of git://git.infradead.org/users/pcmoore/audit
[karo-tx-linux.git] / include / net / dsa.h
index 82a4c60111733e98310a12d569fb999c8e5ac412..26a0e86e611e8d3e76f726a6805a31464bcd63c8 100644 (file)
@@ -16,6 +16,7 @@
 #include <linux/timer.h>
 #include <linux/workqueue.h>
 #include <linux/of.h>
+#include <linux/of_gpio.h>
 #include <linux/phy.h>
 #include <linux/phy_fixed.h>
 #include <linux/ethtool.h>
@@ -64,6 +65,13 @@ struct dsa_chip_data {
         * NULL if there is only one switch chip.
         */
        s8              *rtable;
+
+       /*
+        * A switch may have a GPIO line tied to its reset pin. Parse
+        * this from the device tree, and use it before performing
+        * switch soft reset.
+        */
+       struct gpio_desc *reset;
 };
 
 struct dsa_platform_data {
@@ -108,13 +116,6 @@ struct dsa_switch_tree {
        s8                      cpu_switch;
        s8                      cpu_port;
 
-       /*
-        * Link state polling.
-        */
-       int                     link_poll_needed;
-       struct work_struct      link_poll_work;
-       struct timer_list       link_poll_timer;
-
        /*
         * Data for the individual switch chips.
         */
@@ -223,11 +224,6 @@ struct dsa_switch_driver {
        int     (*phy_write)(struct dsa_switch *ds, int port,
                             int regnum, u16 val);
 
-       /*
-        * Link state polling and IRQ handling.
-        */
-       void    (*poll_link)(struct dsa_switch *ds);
-
        /*
         * Link state adjustment (called from libphy)
         */