mmc: core: SDXC speed class support
[linux-2.6.git] / include / linux / stmmac.h
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 <peppe.cavallaro@st.com>
24 *******************************************************************************/
25
26 #ifndef __STMMAC_PLATFORM_DATA
27 #define __STMMAC_PLATFORM_DATA
28
29 #include <linux/platform_device.h>
30
31 /* Platfrom data for platform device structure's platform_data field */
32
33 struct stmmac_mdio_bus_data {
34         int bus_id;
35         int (*phy_reset)(void *priv);
36         unsigned int phy_mask;
37         int *irqs;
38         int probed_phy_irq;
39 };
40
41 struct plat_stmmacenet_data {
42         int bus_id;
43         int phy_addr;
44         int interface;
45         struct stmmac_mdio_bus_data *mdio_bus_data;
46         int pbl;
47         int clk_csr;
48         int has_gmac;
49         int enh_desc;
50         int tx_coe;
51         int bugged_jumbo;
52         int pmt;
53         int force_sf_dma_mode;
54         void (*fix_mac_speed)(void *priv, unsigned int speed);
55         void (*bus_setup)(void __iomem *ioaddr);
56         int (*init)(struct platform_device *pdev);
57         void (*exit)(struct platform_device *pdev);
58         void *custom_cfg;
59         void *bsp_priv;
60 };
61 #endif