blob: 39ba482298e1964715853d9f221d0cd9bdb01657 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
/* include/linux/fec.h
*
* Copyright (c) 2009 Orex Computed Radiography
* Copyright (C) 2009-2010 Freescale Semiconductor, Inc.
* Baruch Siach <baruch@tkos.co.il>
*
* Header file for the FEC platform data
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
#ifndef __LINUX_FEC_H__
#define __LINUX_FEC_H__
#include <linux/etherdevice.h>
#include <linux/phy.h>
struct fec_platform_data {
phy_interface_t phy;
unsigned int phy_mask;
unsigned char mac[ETH_ALEN];
int (*init)(void);
int (*uninit)(void);
struct regulator *vddio_reg;
};
struct switch_platform_data {
int id;
int hash_table;
unsigned int *switch_hw;
struct fec_platform_data *fec_enet;
void (*request_intrs)(struct net_device *dev,
irqreturn_t (*)(int, void *),
void *irq_privatedata);
void (*set_mii)(struct net_device *dev);
void (*get_mac)(struct net_device *dev);
void (*enable_phy_intr)(void);
void (*disable_phy_intr)(void);
void (*phy_ack_intr)(void);
void (*localhw_setup)(void);
void (*uncache)(unsigned long addr);
void (*platform_flush_cache)(void);
};
#endif
|