[U-Boot-Users] [PATCH] Add support for hammerhead AVR32 board
Jean-Christophe PLAGNIOL-VILLARD
plagnioj at jcrosoft.com
Mon Mar 17 11:38:44 CET 2008
On 11:31 Mon 17 Mar , Alex wrote:
> Hi
>
> Sorry, as you might have guessed I did not run MAKEALL to check my patch :-(
> Worse, It would have broken existing code... Sorry again.
>
> I try to avoid such things in future.
>
> I corrected the patch. I tried to run MAKEALL, but it fails, as I don't have all those cross-compilers
> installed. Am I missing something? Do I need to install them, or what is the correct procedure?
>
> So instead of MAKEALL I compiled a few targets by hand.
>
> Alex
>
>
> diff -Naur old/u-boot-avr32/board/miromico/hammerhead/eth.c new/u-boot-avr32/board/miromico/hammerhead/eth.c
> --- old/u-boot-avr32/board/miromico/hammerhead/eth.c 1970-01-01 01:00:00.000000000 +0100
> +++ new/u-boot-avr32/board/miromico/hammerhead/eth.c 2008-03-14 16:06:35.000000000 +0100
> @@ -0,0 +1,37 @@
> +/*
> + * Copyright (C) 2008 Miromico AG
> + *
> + * Ethernet initialization for the Miromico Hammerhead AVR32 board
> + *
> + * Mostly copied form Atmel ATNGW100 sources
> + *
> + * See file CREDITS for list of people who contributed to this
> + * project.
> + *
> + * This program is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU General Public License as
> + * published by the Free Software Foundation; either version 2 of
> + * the License, or (at your option) any later version.
> + *
> + * This program is distributed in the hope that it will be useful,
> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> + * GNU General Public License for more details.
> + *
> + * You should have received a copy of the GNU General Public License
> + * along with this program; if not, write to the Free Software
> + * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> + * MA 02111-1307 USA
> + */
> +#include <common.h>
> +
> +#include <asm/arch/memory-map.h>
> +
> +extern int macb_eth_initialize(int id, void *regs, unsigned int phy_addr);
> +
> +#ifdef CONFIG_CMD_NET
Please move this to the Makefile
> +void board_eth_initialize(bd_t *bi)
> +{
> + macb_eth_initialize(0, (void *)MACB0_BASE, bi->bi_phy_id[0]);
> +}
> +#endif
> diff -Naur old/u-boot-avr32/cpu/at32ap/at32ap700x/gpio.c new/u-boot-avr32/cpu/at32ap/at32ap700x/gpio.c
> --- old/u-boot-avr32/cpu/at32ap/at32ap700x/gpio.c 2008-03-17 10:23:49.000000000 +0100
> +++ new/u-boot-avr32/cpu/at32ap/at32ap700x/gpio.c 2008-03-17 10:10:37.000000000 +0100
> @@ -142,3 +142,14 @@
> gpio_select_periph_A(GPIO_PIN_PA15, 0); /* DATA3 */
> }
> #endif
> +
> +#ifdef CONFIG_HAMMERHEAD
> +/*
> + * Hammerhead board uses GCLK3 (Periph A on PB29) as 25MHz clock output
> + * for ethernet PHY.
> + */
> +void gpio_enable_gclk3(void)
> +{
> + gpio_select_periph_A(GPIO_PIN_PB29, 0); /* GCLK3 */
> +}
> +#endif
I'll prefer a weak function
> diff -Naur old/u-boot-avr32/cpu/at32ap/cpu.c new/u-boot-avr32/cpu/at32ap/cpu.c
> --- old/u-boot-avr32/cpu/at32ap/cpu.c 2008-03-17 10:23:49.000000000 +0100
> +++ new/u-boot-avr32/cpu/at32ap/cpu.c 2008-03-14 15:43:09.000000000 +0100
> @@ -81,6 +81,16 @@
> #endif
> }
>
> +#ifdef CONFIG_HAMMERHEAD
> +static void gclk_init(void)
same I'll prefer a weak function
> +{
> + /* Hammerhead boards uses GCLK3 as 25MHz output to ethernet PHY */
> +
> + /* Enable GCLK3 with no input divider, from OSC0 (crystal) */
> + sm_writel( PM_GCCTRL3, SM_BIT(CEN) );
> +}
> +#endif
> +
Best Regards,
J.
More information about the U-Boot
mailing list