Merge branch develop-3.10
[firefly-linux-kernel-4.4.55.git] / drivers / net / ethernet / rockchip / gmac / stmmac.h
index e0914aa198998ae1525904485c1ab60864c05f9b..810d2b342741ddb29cd96a22549156b103ede1fd 100755 (executable)
@@ -107,17 +107,46 @@ struct stmmac_priv {
        u32 adv_ts;
        int use_riwt;
        spinlock_t ptp_lock;
-       struct rk_gmac_platform_data *rk_pdata;
+       bool mdio_registered;
 };
 
-struct rk_gmac_platform_data {
-    int (*gmac_register_init)(void);
-    int (*gmac_io_init)(struct device *device);
-    int (*gmac_io_deinit)(struct device *device);
-    int(*gmac_speed_switch)(int speed);
+enum {
+       RK3288_GMAC,
+       RK312X_GMAC,
+       RK3368_GMAC
 };
 
-extern struct rk_gmac_platform_data rk_board_gmac_data;
+struct bsp_priv {
+       struct regmap *grf;
+       struct platform_device *pdev;
+       bool power_ctrl_by_pmu;
+       char pmu_regulator[32];
+       int power_io;
+       int power_io_level;
+       int reset_io;
+       int reset_io_level;
+       int phyirq_io;
+       int phyirq_io_level;
+       int phy_iface;
+       bool clock_input;
+       int chip;
+       int tx_delay;
+       int rx_delay;
+
+       struct clk *clk_mac;
+       struct clk *clk_mac_pll;
+       struct clk *gmac_clkin;
+       struct clk *mac_clk_rx;
+       struct clk *mac_clk_tx;
+       struct clk *clk_mac_ref;
+       struct clk *clk_mac_refout;
+       struct clk *aclk_mac;
+       struct clk *pclk_mac;
+       bool clk_enable;
+
+       int (*phy_power_on)(bool enable);
+       int (*gmac_clk_enable)(bool enable);
+};
 
 extern int phyaddr;