From 587ca7619a150cef0ce0dd8fd08c367e502f0421 Mon Sep 17 00:00:00 2001 From: Haavard Skinnemoen Date: Wed, 18 Jul 2007 20:32:49 +0200 Subject: [AVR32] Initialize phy_mask for both macb devices The STK1000 uses pullups on the MDIO lines to the PHY, but they are too weak. This causes the PHY layer to detect PHYs on all possible MII addresses. Mask out all but the correct address to prevent this from happening. Signed-off-by: Haavard Skinnemoen --- arch/avr32/boards/atstk1000/atstk1002.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'arch/avr32/boards') diff --git a/arch/avr32/boards/atstk1000/atstk1002.c b/arch/avr32/boards/atstk1000/atstk1002.c index d88ac11..cb93eab 100644 --- a/arch/avr32/boards/atstk1000/atstk1002.c +++ b/arch/avr32/boards/atstk1000/atstk1002.c @@ -33,7 +33,19 @@ struct eth_addr { }; static struct eth_addr __initdata hw_addr[2]; -static struct eth_platform_data __initdata eth_data[2]; +static struct eth_platform_data __initdata eth_data[2] = { + { + /* + * The MDIO pullups on STK1000 are a bit too weak for + * the autodetection to work properly, so we have to + * mask out everything but the correct address. + */ + .phy_mask = ~(1U << 16), + }, + { + .phy_mask = ~(1U << 17), + }, +}; #ifndef CONFIG_BOARD_ATSTK1002_SW1_CUSTOM static struct spi_board_info spi0_board_info[] __initdata = { -- cgit v1.1