diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2011-08-14 10:05:29 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2012-10-05 12:32:37 +0200 |
commit | 258e096e130c80399221bfb98a7f0847fdcaa288 (patch) | |
tree | 801250e1072ecec7b756a71aff8b26f5348dc17c /drivers/net/fec_imx.h | |
parent | 3e1f8a05b9227310429552d2b3cb5a57ad075cf6 (diff) | |
download | barebox-258e096e130c80399221bfb98a7f0847fdcaa288.tar.gz barebox-258e096e130c80399221bfb98a7f0847fdcaa288.tar.xz |
net fec_imx: determine fec version based on device ids
This adds the device id mechanism to the i.MX fec driver and
uses it to determine the fec version. Also adds devicetree
probing support.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/net/fec_imx.h')
-rw-r--r-- | drivers/net/fec_imx.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/drivers/net/fec_imx.h b/drivers/net/fec_imx.h index d147dca113..1eb1eba5a1 100644 --- a/drivers/net/fec_imx.h +++ b/drivers/net/fec_imx.h @@ -122,6 +122,12 @@ struct buffer_descriptor { uint32_t data_pointer; /**< payload's buffer address */ }; +enum fec_type { + FEC_TYPE_IMX27, + FEC_TYPE_IMX28, + FEC_TYPE_IMX6, +}; + /** * @brief i.MX27-FEC private structure */ @@ -139,8 +145,24 @@ struct fec_priv { struct mii_bus miibus; void (*phy_init)(struct phy_device *dev); struct clk *clk; + enum fec_type type; }; +static inline int fec_is_imx27(struct fec_priv *priv) +{ + return priv->type == FEC_TYPE_IMX27; +} + +static inline int fec_is_imx28(struct fec_priv *priv) +{ + return priv->type == FEC_TYPE_IMX28; +} + +static inline int fec_is_imx6(struct fec_priv *priv) +{ + return priv->type == FEC_TYPE_IMX6; +} + /** * @brief Numbers of buffer descriptors for receiving * |