diff mbox series

[v2] board:pm9261 - Enable DM_ETH

Message ID 20210419133733.258334-1-iliev@ronetix.at
State Changes Requested
Delegated to: Eugen Hristev
Headers show
Series [v2] board:pm9261 - Enable DM_ETH | expand

Commit Message

Ilko Iliev April 19, 2021, 1:37 p.m. UTC
This patch remove the network support for PM9261 because
currently there is no DM suport for Davicom D9000.

Signed-off-by: Ilko Iliev <iliev@ronetix.at>
---
Changes for v2:
 - add Signed-off-by

 board/ronetix/pm9261/pm9261.c | 54 -----------------------------------
 configs/pm9261_defconfig      |  1 +
 include/configs/pm9261.h      |  9 ------
 3 files changed, 1 insertion(+), 63 deletions(-)

--
2.25.1

Comments

Eugen Hristev April 21, 2021, 6:50 a.m. UTC | #1
On 4/19/21 4:37 PM, Ilko Iliev wrote:
> This patch remove the network support for PM9261 because
> currently there is no DM suport for Davicom D9000.
> 
> Signed-off-by: Ilko Iliev <iliev@ronetix.at>
> ---

Hi,

If I look at the commit message, I would expect something is enabled, 
but in fact something is removed.
Could you update the short commit subject according to what you are 
doing in the commit itself ?

Also, if you are removing the dm9000, why do you still enable the DM_ETH 
? what is it used for ?

Eugen

> Changes for v2:
>   - add Signed-off-by
> 
>   board/ronetix/pm9261/pm9261.c | 54 -----------------------------------
>   configs/pm9261_defconfig      |  1 +
>   include/configs/pm9261.h      |  9 ------
>   3 files changed, 1 insertion(+), 63 deletions(-)
> 
> diff --git a/board/ronetix/pm9261/pm9261.c b/board/ronetix/pm9261/pm9261.c
> index 5be2c5e192..fe52c7c176 100644
> --- a/board/ronetix/pm9261/pm9261.c
> +++ b/board/ronetix/pm9261/pm9261.c
> @@ -20,10 +20,6 @@
>   #include <asm/arch/at91_matrix.h>
>   #include <asm/arch/clk.h>
>   #include <asm/arch/gpio.h>
> -#if defined(CONFIG_RESET_PHY_R) && defined(CONFIG_DRIVER_DM9000)
> -#include <net.h>
> -#endif
> -#include <netdev.h>
>   #include <asm/mach-types.h>
> 
>   DECLARE_GLOBAL_DATA_PTR;
> @@ -80,36 +76,6 @@ static void pm9261_nand_hw_init(void)
>   }
>   #endif
> 
> -
> -#ifdef CONFIG_DRIVER_DM9000
> -static void pm9261_dm9000_hw_init(void)
> -{
> -       struct at91_smc *smc = (struct at91_smc *)ATMEL_BASE_SMC;
> -
> -       /* Configure SMC CS2 for DM9000 */
> -       writel(AT91_SMC_SETUP_NWE(2) | AT91_SMC_SETUP_NCS_WR(0) |
> -               AT91_SMC_SETUP_NRD(2) | AT91_SMC_SETUP_NCS_RD(0),
> -               &smc->cs[2].setup);
> -
> -       writel(AT91_SMC_PULSE_NWE(4) | AT91_SMC_PULSE_NCS_WR(8) |
> -               AT91_SMC_PULSE_NRD(4) | AT91_SMC_PULSE_NCS_RD(8),
> -               &smc->cs[2].pulse);
> -
> -       writel(AT91_SMC_CYCLE_NWE(16) | AT91_SMC_CYCLE_NRD(16),
> -               &smc->cs[2].cycle);
> -
> -       writel(AT91_SMC_MODE_RM_NRD | AT91_SMC_MODE_WM_NWE |
> -               AT91_SMC_MODE_EXNW_DISABLE |
> -               AT91_SMC_MODE_BAT | AT91_SMC_MODE_DBW_16 |
> -               AT91_SMC_MODE_TDF_CYCLE(1),
> -               &smc->cs[2].mode);
> -
> -       /* Configure Interrupt pin as input, no pull-up */
> -       at91_periph_clk_enable(ATMEL_ID_PIOA);
> -       at91_set_pio_input(AT91_PIO_PORTA, 24, 0);
> -}
> -#endif
> -
>   int board_early_init_f(void)
>   {
>          return 0;
> @@ -132,13 +98,6 @@ int board_init(void)
>          return 0;
>   }
> 
> -#ifdef CONFIG_DRIVER_DM9000
> -int board_eth_init(struct bd_info *bis)
> -{
> -       return dm9000_initialize(bis);
> -}
> -#endif
> -
>   int dram_init(void)
>   {
>          /* dram_init must store complete ramsize in gd->ram_size */
> @@ -155,19 +114,6 @@ int dram_init_banksize(void)
>          return 0;
>   }
> 
> -#ifdef CONFIG_RESET_PHY_R
> -void reset_phy(void)
> -{
> -#ifdef CONFIG_DRIVER_DM9000
> -       /*
> -        * Initialize ethernet HW addr prior to starting Linux,
> -        * needed for nfsroot
> -        */
> -       eth_init();
> -#endif
> -}
> -#endif
> -
>   #ifdef CONFIG_DISPLAY_BOARDINFO
>   int checkboard (void)
>   {
> diff --git a/configs/pm9261_defconfig b/configs/pm9261_defconfig
> index e0a2ae18c6..774039e8bc 100644
> --- a/configs/pm9261_defconfig
> +++ b/configs/pm9261_defconfig
> @@ -50,6 +50,7 @@ CONFIG_NAND_ATMEL=y
>   CONFIG_DM_SPI_FLASH=y
>   CONFIG_SPI_FLASH_ATMEL=y
>   CONFIG_SPI_FLASH_DATAFLASH=y
> +CONFIG_DM_ETH=y
>   CONFIG_PINCTRL=y
>   CONFIG_PINCTRL_AT91=y
>   CONFIG_DM_SERIAL=y
> diff --git a/include/configs/pm9261.h b/include/configs/pm9261.h
> index 2cc47d1237..382d19a241 100644
> --- a/include/configs/pm9261.h
> +++ b/include/configs/pm9261.h
> @@ -173,15 +173,6 @@
>   #define CONFIG_SYS_MAX_FLASH_SECT              256
>   #define CONFIG_SYS_MAX_FLASH_BANKS             1
> 
> -/* Ethernet */
> -#define CONFIG_DRIVER_DM9000                   1
> -#define CONFIG_DM9000_BASE                     0x30000000
> -#define DM9000_IO                              CONFIG_DM9000_BASE
> -#define DM9000_DATA                            (CONFIG_DM9000_BASE + 4)
> -#define CONFIG_DM9000_USE_16BIT                        1
> -#define CONFIG_NET_RETRY_COUNT                 20
> -#define CONFIG_RESET_PHY_R                     1
> -
>   /* USB */
>   #define CONFIG_USB_ATMEL
>   #define CONFIG_USB_ATMEL_CLK_SEL_PLLB
> --
> 2.25.1
>
Ilko Iliev April 23, 2021, 9:19 a.m. UTC | #2
On 21.04.21 08:50, Eugen.Hristev@microchip.com wrote:
> On 4/19/21 4:37 PM, Ilko Iliev wrote:
>> This patch remove the network support for PM9261 because
>> currently there is no DM suport for Davicom D9000.
>>
>> Signed-off-by: Ilko Iliev <iliev@ronetix.at>
>> ---
> Hi,
>
> If I look at the commit message, I would expect something is enabled,
> but in fact something is removed.
> Could you update the short commit subject according to what you are
> doing in the commit itself ?
>
> Also, if you are removing the dm9000, why do you still enable the DM_ETH
> ? what is it used for ?
>
> Eugen

Hi,
The DM9000 is removed because there is no DM support.
DM_ETH is enabled, because of the warning that the board will be removed
without DM_ETH.
Is there a way to build U-BOOT without ETH support and without the 
warning for
missing DM_ETH?

Regards,
Ilko ILEV

>> Changes for v2:
>>    - add Signed-off-by
>>
>>    board/ronetix/pm9261/pm9261.c | 54 -----------------------------------
>>    configs/pm9261_defconfig      |  1 +
>>    include/configs/pm9261.h      |  9 ------
>>    3 files changed, 1 insertion(+), 63 deletions(-)
>>
>> diff --git a/board/ronetix/pm9261/pm9261.c b/board/ronetix/pm9261/pm9261.c
>> index 5be2c5e192..fe52c7c176 100644
>> --- a/board/ronetix/pm9261/pm9261.c
>> +++ b/board/ronetix/pm9261/pm9261.c
>> @@ -20,10 +20,6 @@
>>    #include <asm/arch/at91_matrix.h>
>>    #include <asm/arch/clk.h>
>>    #include <asm/arch/gpio.h>
>> -#if defined(CONFIG_RESET_PHY_R) && defined(CONFIG_DRIVER_DM9000)
>> -#include <net.h>
>> -#endif
>> -#include <netdev.h>
>>    #include <asm/mach-types.h>
>>
>>    DECLARE_GLOBAL_DATA_PTR;
>> @@ -80,36 +76,6 @@ static void pm9261_nand_hw_init(void)
>>    }
>>    #endif
>>
>> -
>> -#ifdef CONFIG_DRIVER_DM9000
>> -static void pm9261_dm9000_hw_init(void)
>> -{
>> -       struct at91_smc *smc = (struct at91_smc *)ATMEL_BASE_SMC;
>> -
>> -       /* Configure SMC CS2 for DM9000 */
>> -       writel(AT91_SMC_SETUP_NWE(2) | AT91_SMC_SETUP_NCS_WR(0) |
>> -               AT91_SMC_SETUP_NRD(2) | AT91_SMC_SETUP_NCS_RD(0),
>> -               &smc->cs[2].setup);
>> -
>> -       writel(AT91_SMC_PULSE_NWE(4) | AT91_SMC_PULSE_NCS_WR(8) |
>> -               AT91_SMC_PULSE_NRD(4) | AT91_SMC_PULSE_NCS_RD(8),
>> -               &smc->cs[2].pulse);
>> -
>> -       writel(AT91_SMC_CYCLE_NWE(16) | AT91_SMC_CYCLE_NRD(16),
>> -               &smc->cs[2].cycle);
>> -
>> -       writel(AT91_SMC_MODE_RM_NRD | AT91_SMC_MODE_WM_NWE |
>> -               AT91_SMC_MODE_EXNW_DISABLE |
>> -               AT91_SMC_MODE_BAT | AT91_SMC_MODE_DBW_16 |
>> -               AT91_SMC_MODE_TDF_CYCLE(1),
>> -               &smc->cs[2].mode);
>> -
>> -       /* Configure Interrupt pin as input, no pull-up */
>> -       at91_periph_clk_enable(ATMEL_ID_PIOA);
>> -       at91_set_pio_input(AT91_PIO_PORTA, 24, 0);
>> -}
>> -#endif
>> -
>>    int board_early_init_f(void)
>>    {
>>           return 0;
>> @@ -132,13 +98,6 @@ int board_init(void)
>>           return 0;
>>    }
>>
>> -#ifdef CONFIG_DRIVER_DM9000
>> -int board_eth_init(struct bd_info *bis)
>> -{
>> -       return dm9000_initialize(bis);
>> -}
>> -#endif
>> -
>>    int dram_init(void)
>>    {
>>           /* dram_init must store complete ramsize in gd->ram_size */
>> @@ -155,19 +114,6 @@ int dram_init_banksize(void)
>>           return 0;
>>    }
>>
>> -#ifdef CONFIG_RESET_PHY_R
>> -void reset_phy(void)
>> -{
>> -#ifdef CONFIG_DRIVER_DM9000
>> -       /*
>> -        * Initialize ethernet HW addr prior to starting Linux,
>> -        * needed for nfsroot
>> -        */
>> -       eth_init();
>> -#endif
>> -}
>> -#endif
>> -
>>    #ifdef CONFIG_DISPLAY_BOARDINFO
>>    int checkboard (void)
>>    {
>> diff --git a/configs/pm9261_defconfig b/configs/pm9261_defconfig
>> index e0a2ae18c6..774039e8bc 100644
>> --- a/configs/pm9261_defconfig
>> +++ b/configs/pm9261_defconfig
>> @@ -50,6 +50,7 @@ CONFIG_NAND_ATMEL=y
>>    CONFIG_DM_SPI_FLASH=y
>>    CONFIG_SPI_FLASH_ATMEL=y
>>    CONFIG_SPI_FLASH_DATAFLASH=y
>> +CONFIG_DM_ETH=y
>>    CONFIG_PINCTRL=y
>>    CONFIG_PINCTRL_AT91=y
>>    CONFIG_DM_SERIAL=y
>> diff --git a/include/configs/pm9261.h b/include/configs/pm9261.h
>> index 2cc47d1237..382d19a241 100644
>> --- a/include/configs/pm9261.h
>> +++ b/include/configs/pm9261.h
>> @@ -173,15 +173,6 @@
>>    #define CONFIG_SYS_MAX_FLASH_SECT              256
>>    #define CONFIG_SYS_MAX_FLASH_BANKS             1
>>
>> -/* Ethernet */
>> -#define CONFIG_DRIVER_DM9000                   1
>> -#define CONFIG_DM9000_BASE                     0x30000000
>> -#define DM9000_IO                              CONFIG_DM9000_BASE
>> -#define DM9000_DATA                            (CONFIG_DM9000_BASE + 4)
>> -#define CONFIG_DM9000_USE_16BIT                        1
>> -#define CONFIG_NET_RETRY_COUNT                 20
>> -#define CONFIG_RESET_PHY_R                     1
>> -
>>    /* USB */
>>    #define CONFIG_USB_ATMEL
>>    #define CONFIG_USB_ATMEL_CLK_SEL_PLLB
>> --
>> 2.25.1
>>
Eugen Hristev April 23, 2021, 9:38 a.m. UTC | #3
On 4/23/21 12:19 PM, Ilko Iliev wrote:
> On 21.04.21 08:50, Eugen.Hristev@microchip.com wrote:
>> On 4/19/21 4:37 PM, Ilko Iliev wrote:
>>> This patch remove the network support for PM9261 because
>>> currently there is no DM suport for Davicom D9000.
>>>
>>> Signed-off-by: Ilko Iliev <iliev@ronetix.at>
>>> ---
>> Hi,
>>
>> If I look at the commit message, I would expect something is enabled,
>> but in fact something is removed.
>> Could you update the short commit subject according to what you are
>> doing in the commit itself ?
>>
>> Also, if you are removing the dm9000, why do you still enable the DM_ETH
>> ? what is it used for ?
>>
>> Eugen
> 
> Hi,
> The DM9000 is removed because there is no DM support.
> DM_ETH is enabled, because of the warning that the board will be removed
> without DM_ETH.
> Is there a way to build U-BOOT without ETH support and without the
> warning for
> missing DM_ETH?

Hi,

We should be able to have the board without ETH at all, probably 
something else causes the warning trigger. Something out of date may be 
detected that requires DM_ETH


I noticed this in Makefile

$(call deprecated,CONFIG_DM_ETH,Ethernet drivers,v2020.07,$(CONFIG_NET))

it is likely that you have to remove CONFIG_NET first, and then you 
won't be prompted to have DM_ETH set.

Could you look at this please ?

Thanks


> 
> Regards,
> Ilko ILEV
> 
>>> Changes for v2:
>>>    - add Signed-off-by
>>>
>>>    board/ronetix/pm9261/pm9261.c | 54 
>>> -----------------------------------
>>>    configs/pm9261_defconfig      |  1 +
>>>    include/configs/pm9261.h      |  9 ------
>>>    3 files changed, 1 insertion(+), 63 deletions(-)
>>>
>>> diff --git a/board/ronetix/pm9261/pm9261.c 
>>> b/board/ronetix/pm9261/pm9261.c
>>> index 5be2c5e192..fe52c7c176 100644
>>> --- a/board/ronetix/pm9261/pm9261.c
>>> +++ b/board/ronetix/pm9261/pm9261.c
>>> @@ -20,10 +20,6 @@
>>>    #include <asm/arch/at91_matrix.h>
>>>    #include <asm/arch/clk.h>
>>>    #include <asm/arch/gpio.h>
>>> -#if defined(CONFIG_RESET_PHY_R) && defined(CONFIG_DRIVER_DM9000)
>>> -#include <net.h>
>>> -#endif
>>> -#include <netdev.h>
>>>    #include <asm/mach-types.h>
>>>
>>>    DECLARE_GLOBAL_DATA_PTR;
>>> @@ -80,36 +76,6 @@ static void pm9261_nand_hw_init(void)
>>>    }
>>>    #endif
>>>
>>> -
>>> -#ifdef CONFIG_DRIVER_DM9000
>>> -static void pm9261_dm9000_hw_init(void)
>>> -{
>>> -       struct at91_smc *smc = (struct at91_smc *)ATMEL_BASE_SMC;
>>> -
>>> -       /* Configure SMC CS2 for DM9000 */
>>> -       writel(AT91_SMC_SETUP_NWE(2) | AT91_SMC_SETUP_NCS_WR(0) |
>>> -               AT91_SMC_SETUP_NRD(2) | AT91_SMC_SETUP_NCS_RD(0),
>>> -               &smc->cs[2].setup);
>>> -
>>> -       writel(AT91_SMC_PULSE_NWE(4) | AT91_SMC_PULSE_NCS_WR(8) |
>>> -               AT91_SMC_PULSE_NRD(4) | AT91_SMC_PULSE_NCS_RD(8),
>>> -               &smc->cs[2].pulse);
>>> -
>>> -       writel(AT91_SMC_CYCLE_NWE(16) | AT91_SMC_CYCLE_NRD(16),
>>> -               &smc->cs[2].cycle);
>>> -
>>> -       writel(AT91_SMC_MODE_RM_NRD | AT91_SMC_MODE_WM_NWE |
>>> -               AT91_SMC_MODE_EXNW_DISABLE |
>>> -               AT91_SMC_MODE_BAT | AT91_SMC_MODE_DBW_16 |
>>> -               AT91_SMC_MODE_TDF_CYCLE(1),
>>> -               &smc->cs[2].mode);
>>> -
>>> -       /* Configure Interrupt pin as input, no pull-up */
>>> -       at91_periph_clk_enable(ATMEL_ID_PIOA);
>>> -       at91_set_pio_input(AT91_PIO_PORTA, 24, 0);
>>> -}
>>> -#endif
>>> -
>>>    int board_early_init_f(void)
>>>    {
>>>           return 0;
>>> @@ -132,13 +98,6 @@ int board_init(void)
>>>           return 0;
>>>    }
>>>
>>> -#ifdef CONFIG_DRIVER_DM9000
>>> -int board_eth_init(struct bd_info *bis)
>>> -{
>>> -       return dm9000_initialize(bis);
>>> -}
>>> -#endif
>>> -
>>>    int dram_init(void)
>>>    {
>>>           /* dram_init must store complete ramsize in gd->ram_size */
>>> @@ -155,19 +114,6 @@ int dram_init_banksize(void)
>>>           return 0;
>>>    }
>>>
>>> -#ifdef CONFIG_RESET_PHY_R
>>> -void reset_phy(void)
>>> -{
>>> -#ifdef CONFIG_DRIVER_DM9000
>>> -       /*
>>> -        * Initialize ethernet HW addr prior to starting Linux,
>>> -        * needed for nfsroot
>>> -        */
>>> -       eth_init();
>>> -#endif
>>> -}
>>> -#endif
>>> -
>>>    #ifdef CONFIG_DISPLAY_BOARDINFO
>>>    int checkboard (void)
>>>    {
>>> diff --git a/configs/pm9261_defconfig b/configs/pm9261_defconfig
>>> index e0a2ae18c6..774039e8bc 100644
>>> --- a/configs/pm9261_defconfig
>>> +++ b/configs/pm9261_defconfig
>>> @@ -50,6 +50,7 @@ CONFIG_NAND_ATMEL=y
>>>    CONFIG_DM_SPI_FLASH=y
>>>    CONFIG_SPI_FLASH_ATMEL=y
>>>    CONFIG_SPI_FLASH_DATAFLASH=y
>>> +CONFIG_DM_ETH=y
>>>    CONFIG_PINCTRL=y
>>>    CONFIG_PINCTRL_AT91=y
>>>    CONFIG_DM_SERIAL=y
>>> diff --git a/include/configs/pm9261.h b/include/configs/pm9261.h
>>> index 2cc47d1237..382d19a241 100644
>>> --- a/include/configs/pm9261.h
>>> +++ b/include/configs/pm9261.h
>>> @@ -173,15 +173,6 @@
>>>    #define CONFIG_SYS_MAX_FLASH_SECT              256
>>>    #define CONFIG_SYS_MAX_FLASH_BANKS             1
>>>
>>> -/* Ethernet */
>>> -#define CONFIG_DRIVER_DM9000                   1
>>> -#define CONFIG_DM9000_BASE                     0x30000000
>>> -#define DM9000_IO                              CONFIG_DM9000_BASE
>>> -#define DM9000_DATA                            (CONFIG_DM9000_BASE + 4)
>>> -#define CONFIG_DM9000_USE_16BIT                        1
>>> -#define CONFIG_NET_RETRY_COUNT                 20
>>> -#define CONFIG_RESET_PHY_R                     1
>>> -
>>>    /* USB */
>>>    #define CONFIG_USB_ATMEL
>>>    #define CONFIG_USB_ATMEL_CLK_SEL_PLLB
>>> -- 
>>> 2.25.1
>>>
> 
> -- 
> With best regards,
> Ilko Iliev
> Ronetix Development Tools GmbH
> Hirschstettner Str. 19/Z110
> 1220 Vienna, Austria
> Tel: +43 1 236 1101 - 10
> E-Mail: iliev@ronetix.at
> Web: www.ronetix.at
>
diff mbox series

Patch

diff --git a/board/ronetix/pm9261/pm9261.c b/board/ronetix/pm9261/pm9261.c
index 5be2c5e192..fe52c7c176 100644
--- a/board/ronetix/pm9261/pm9261.c
+++ b/board/ronetix/pm9261/pm9261.c
@@ -20,10 +20,6 @@ 
 #include <asm/arch/at91_matrix.h>
 #include <asm/arch/clk.h>
 #include <asm/arch/gpio.h>
-#if defined(CONFIG_RESET_PHY_R) && defined(CONFIG_DRIVER_DM9000)
-#include <net.h>
-#endif
-#include <netdev.h>
 #include <asm/mach-types.h>

 DECLARE_GLOBAL_DATA_PTR;
@@ -80,36 +76,6 @@  static void pm9261_nand_hw_init(void)
 }
 #endif

-
-#ifdef CONFIG_DRIVER_DM9000
-static void pm9261_dm9000_hw_init(void)
-{
-	struct at91_smc *smc = (struct at91_smc *)ATMEL_BASE_SMC;
-
-	/* Configure SMC CS2 for DM9000 */
-	writel(AT91_SMC_SETUP_NWE(2) | AT91_SMC_SETUP_NCS_WR(0) |
-		AT91_SMC_SETUP_NRD(2) | AT91_SMC_SETUP_NCS_RD(0),
-		&smc->cs[2].setup);
-
-	writel(AT91_SMC_PULSE_NWE(4) | AT91_SMC_PULSE_NCS_WR(8) |
-		AT91_SMC_PULSE_NRD(4) | AT91_SMC_PULSE_NCS_RD(8),
-		&smc->cs[2].pulse);
-
-	writel(AT91_SMC_CYCLE_NWE(16) | AT91_SMC_CYCLE_NRD(16),
-		&smc->cs[2].cycle);
-
-	writel(AT91_SMC_MODE_RM_NRD | AT91_SMC_MODE_WM_NWE |
-		AT91_SMC_MODE_EXNW_DISABLE |
-		AT91_SMC_MODE_BAT | AT91_SMC_MODE_DBW_16 |
-		AT91_SMC_MODE_TDF_CYCLE(1),
-		&smc->cs[2].mode);
-
-	/* Configure Interrupt pin as input, no pull-up */
-	at91_periph_clk_enable(ATMEL_ID_PIOA);
-	at91_set_pio_input(AT91_PIO_PORTA, 24, 0);
-}
-#endif
-
 int board_early_init_f(void)
 {
 	return 0;
@@ -132,13 +98,6 @@  int board_init(void)
 	return 0;
 }

-#ifdef CONFIG_DRIVER_DM9000
-int board_eth_init(struct bd_info *bis)
-{
-	return dm9000_initialize(bis);
-}
-#endif
-
 int dram_init(void)
 {
 	/* dram_init must store complete ramsize in gd->ram_size */
@@ -155,19 +114,6 @@  int dram_init_banksize(void)
 	return 0;
 }

-#ifdef CONFIG_RESET_PHY_R
-void reset_phy(void)
-{
-#ifdef CONFIG_DRIVER_DM9000
-	/*
-	 * Initialize ethernet HW addr prior to starting Linux,
-	 * needed for nfsroot
-	 */
-	eth_init();
-#endif
-}
-#endif
-
 #ifdef CONFIG_DISPLAY_BOARDINFO
 int checkboard (void)
 {
diff --git a/configs/pm9261_defconfig b/configs/pm9261_defconfig
index e0a2ae18c6..774039e8bc 100644
--- a/configs/pm9261_defconfig
+++ b/configs/pm9261_defconfig
@@ -50,6 +50,7 @@  CONFIG_NAND_ATMEL=y
 CONFIG_DM_SPI_FLASH=y
 CONFIG_SPI_FLASH_ATMEL=y
 CONFIG_SPI_FLASH_DATAFLASH=y
+CONFIG_DM_ETH=y
 CONFIG_PINCTRL=y
 CONFIG_PINCTRL_AT91=y
 CONFIG_DM_SERIAL=y
diff --git a/include/configs/pm9261.h b/include/configs/pm9261.h
index 2cc47d1237..382d19a241 100644
--- a/include/configs/pm9261.h
+++ b/include/configs/pm9261.h
@@ -173,15 +173,6 @@ 
 #define CONFIG_SYS_MAX_FLASH_SECT		256
 #define CONFIG_SYS_MAX_FLASH_BANKS		1

-/* Ethernet */
-#define CONFIG_DRIVER_DM9000			1
-#define CONFIG_DM9000_BASE			0x30000000
-#define DM9000_IO				CONFIG_DM9000_BASE
-#define DM9000_DATA				(CONFIG_DM9000_BASE + 4)
-#define CONFIG_DM9000_USE_16BIT			1
-#define CONFIG_NET_RETRY_COUNT			20
-#define CONFIG_RESET_PHY_R			1
-
 /* USB */
 #define CONFIG_USB_ATMEL
 #define CONFIG_USB_ATMEL_CLK_SEL_PLLB