xref: /linux-6.15/include/linux/stmmac.h (revision 4e8cec26)
1 /*******************************************************************************
2 
3   Header file for stmmac platform data
4 
5   Copyright (C) 2009  STMicroelectronics Ltd
6 
7   This program is free software; you can redistribute it and/or modify it
8   under the terms and conditions of the GNU General Public License,
9   version 2, as published by the Free Software Foundation.
10 
11   This program is distributed in the hope it will be useful, but WITHOUT
12   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
14   more details.
15 
16   You should have received a copy of the GNU General Public License along with
17   this program; if not, write to the Free Software Foundation, Inc.,
18   51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
19 
20   The full GNU General Public License is included in this distribution in
21   the file called "COPYING".
22 
23   Author: Giuseppe Cavallaro <[email protected]>
24 *******************************************************************************/
25 
26 #ifndef __STMMAC_PLATFORM_DATA
27 #define __STMMAC_PLATFORM_DATA
28 
29 /* platfrom data for platfrom device structure's platfrom_data field */
30 
31 /* Private data for the STM on-board ethernet driver */
32 struct plat_stmmacenet_data {
33 	int bus_id;
34 	int pbl;
35 	int has_gmac;
36 	int enh_desc;
37 	void (*fix_mac_speed)(void *priv, unsigned int speed);
38 	void (*bus_setup)(unsigned long ioaddr);
39 #ifdef CONFIG_STM_DRIVERS
40 	struct stm_pad_config *pad_config;
41 #endif
42 	void *bsp_priv;
43 };
44 
45 struct plat_stmmacphy_data {
46 	int bus_id;
47 	int phy_addr;
48 	unsigned int phy_mask;
49 	int interface;
50 	int (*phy_reset)(void *priv);
51 	void *priv;
52 };
53 #endif
54 
55