summaryrefslogtreecommitdiff
path: root/include/linux/fec.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/fec.h')
-rw-r--r--include/linux/fec.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/include/linux/fec.h b/include/linux/fec.h
index 5d3523d8dd0c..e2d160844bba 100644
--- a/include/linux/fec.h
+++ b/include/linux/fec.h
@@ -1,6 +1,7 @@
/* 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
@@ -12,10 +13,33 @@
#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 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