• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* Copyright Altera Corporation (C) 2016. All rights reserved.
2  *
3  * This program is free software; you can redistribute it and/or modify
4  * it under the terms of the GNU General Public License, version 2,
5  * as published by the Free Software Foundation.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10  * GNU General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
14  *
15  * Author: Tien Hock Loh <thloh@altera.com>
16  */
17 
18 #ifndef __TSE_PCS_H__
19 #define __TSE_PCS_H__
20 
21 #include <linux/phy.h>
22 #include <linux/timer.h>
23 
24 struct tse_pcs {
25 	struct device *dev;
26 	void __iomem *tse_pcs_base;
27 	void __iomem *sgmii_adapter_base;
28 	struct timer_list aneg_link_timer;
29 	int autoneg;
30 };
31 
32 int tse_pcs_init(void __iomem *base, struct tse_pcs *pcs);
33 void tse_pcs_fix_mac_speed(struct tse_pcs *pcs, struct phy_device *phy_dev,
34 			   unsigned int speed);
35 
36 #endif /* __TSE_PCS_H__ */
37