diff options
| -rw-r--r-- | drivers/net/macb.c | 8 | ||||
| -rw-r--r-- | drivers/net/macb.h | 6 | 
2 files changed, 14 insertions, 0 deletions
| diff --git a/drivers/net/macb.c b/drivers/net/macb.c index 6657d2292..9c98338f7 100644 --- a/drivers/net/macb.c +++ b/drivers/net/macb.c @@ -417,10 +417,18 @@ static int macb_init(struct eth_device *netdev, bd_t *bd)  	/* choose RMII or MII mode. This depends on the board */  #ifdef CONFIG_RMII +#ifdef CONFIG_AT91CAP9ADK +	macb_writel(macb, USRIO, MACB_BIT(RMII) | MACB_BIT(CLKEN)); +#else  	macb_writel(macb, USRIO, 0); +#endif +#else +#ifdef CONFIG_AT91CAP9ADK +	macb_writel(macb, USRIO, MACB_BIT(CLKEN));  #else  	macb_writel(macb, USRIO, MACB_BIT(MII));  #endif +#endif /* CONFIG_RMII */  	if (!macb_phy_init(macb))  		return -1; diff --git a/drivers/net/macb.h b/drivers/net/macb.h index c778e4ee4..f92a20c70 100644 --- a/drivers/net/macb.h +++ b/drivers/net/macb.h @@ -222,6 +222,12 @@  #define MACB_TX_PAUSE_ZERO_OFFSET		3  #define MACB_TX_PAUSE_ZERO_SIZE			1 +/* Bitfields in USRIO (AT91) */ +#define MACB_RMII_OFFSET			0 +#define MACB_RMII_SIZE				1 +#define MACB_CLKEN_OFFSET			1 +#define MACB_CLKEN_SIZE				1 +  /* Bitfields in WOL */  #define MACB_IP_OFFSET				0  #define MACB_IP_SIZE				16 |