]>
Commit | Line | Data |
---|---|---|
1 | /* | |
2 | * TI DaVinci EMAC platform support | |
3 | * | |
4 | * Author: Kevin Hilman, Deep Root Systems, LLC | |
5 | * | |
6 | * 2007 (c) Deep Root Systems, LLC. This file is licensed under | |
7 | * the terms of the GNU General Public License version 2. This program | |
8 | * is licensed "as is" without any warranty of any kind, whether express | |
9 | * or implied. | |
10 | */ | |
11 | #ifndef _LINUX_DAVINCI_EMAC_H | |
12 | #define _LINUX_DAVINCI_EMAC_H | |
13 | ||
14 | #include <linux/if_ether.h> | |
15 | #include <linux/nvmem-consumer.h> | |
16 | ||
17 | struct mdio_platform_data { | |
18 | unsigned long bus_freq; | |
19 | }; | |
20 | ||
21 | struct emac_platform_data { | |
22 | char mac_addr[ETH_ALEN]; | |
23 | u32 ctrl_reg_offset; | |
24 | u32 ctrl_mod_reg_offset; | |
25 | u32 ctrl_ram_offset; | |
26 | u32 hw_ram_addr; | |
27 | u32 ctrl_ram_size; | |
28 | ||
29 | /* | |
30 | * phy_id can be one of the following: | |
31 | * - NULL : use the first phy on the bus, | |
32 | * - "" : force to 100/full, no mdio control | |
33 | * - "<bus>:<addr>" : use the specified bus and phy | |
34 | */ | |
35 | const char *phy_id; | |
36 | ||
37 | u8 rmii_en; | |
38 | u8 version; | |
39 | bool no_bd_ram; | |
40 | void (*interrupt_enable) (void); | |
41 | void (*interrupt_disable) (void); | |
42 | }; | |
43 | ||
44 | enum { | |
45 | EMAC_VERSION_1, /* DM644x */ | |
46 | EMAC_VERSION_2, /* DM646x */ | |
47 | }; | |
48 | ||
49 | void davinci_get_mac_addr(struct nvmem_device *nvmem, void *context); | |
50 | #endif |