[U-Boot] Support for Calao USB A9263 board based on AT91SAM9263 CPU

Jean-Christophe PLAGNIOL-VILLARD plagnioj at jcrosoft.com
Fri Jul 24 00:35:18 CEST 2009


On 17:30 Wed 22 Jul     , Thomas Petazzoni wrote:
> The Calao USB A9263 board is a board manufactured and sold by Calao
> Systems <http://www.calao-systems.com>. Its components are very
> similar to the AT91SAM9263EK board, so its configuration is based on
> the configuration of this board. There are however some differences:
> different clocks, no LCD, etc.
> 
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
> 
> ---
please no RE in the subject
> 
> This new version includes the following changes :
> 
>  * Copyright header on config.mk, by suggestion of Peter Tyser
> 
>  * Updated copyright informations in all new files
> 
>  * Use get_ram_size(), as suggested by Wolfgang Denk
> 
>  * Do some cleanup of useless comments, re-indent definitions to avoid
>    long lines, etc.
> 
>  * Add entry to MAINTAINERS
> 
> I'm still including the definition of ROUND() in the board
> configuration file, since Wolfgang's patch has yet been merged to the
> Git tree (and I don't think sending a patch that doesn't compile
> against the current Git tree is useful).
> 
>  MAINTAINERS                       |    4 
>  MAKEALL                           |    1 
>  Makefile                          |    3 
>  board/calao/usb-a9263/Makefile    |   58 +++++++++++
>  board/calao/usb-a9263/config.mk   |   24 ++++
>  board/calao/usb-a9263/partition.c |   38 +++++++
>  board/calao/usb-a9263/usb-a9263.c |  194 ++++++++++++++++++++++++++++++++++++++
>  include/configs/usb-a9263.h       |  185 ++++++++++++++++++++++++++++++++++++
>  8 files changed, 507 insertions(+)
> 
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 575a7ec..5c37647 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -624,6 +624,10 @@ Peter Pearse <peter.pearse at arm.com>
>  	versatile	ARM926EJ-S
>  	versatile	ARM926EJ-S
>  
> +Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
> +
> +	usb-a9263	ARM926EJS (AT91SAM9263 SoC)
> +
>  Dave Peverley <dpeverley at mpc-data.co.uk>
>  
>  	omap730p2	ARM926EJS
<snip>
> diff --git a/board/calao/usb-a9263/usb-a9263.c b/board/calao/usb-a9263/usb-a9263.c
> new file mode 100644
> index 0000000..7cf1925
> --- /dev/null
> +++ b/board/calao/usb-a9263/usb-a9263.c
> @@ -0,0 +1,194 @@
> +/*
> + * (C) Copyright 2007-2009
> + * Stelian Pop <stelian.pop at leadtechdesign.com>
> + * Lead Tech Design <www.leadtechdesign.com>
> + * Thomas Petazzoni, Free Electrons, <thomas.petazzoni at free-electrons.com>
> + *
> + * 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/sizes.h>
> +#include <asm/arch/at91sam9263.h>
> +#include <asm/arch/at91sam9263_matrix.h>
please
#include <asm/arch/at91sam9_matrix.h>
> +#include <asm/arch/at91sam9_smc.h>
> +#include <asm/arch/at91_common.h>
> +#include <asm/arch/at91_pmc.h>
> +#include <asm/arch/at91_rstc.h>
> +#include <asm/arch/clk.h>
> +#include <asm/arch/gpio.h>
> +#include <asm/arch/io.h>
> +#include <asm/arch/hardware.h>
> +#if defined(CONFIG_RESET_PHY_R) && defined(CONFIG_MACB)
> +#include <net.h>
> +#endif
> +#include <netdev.h>
> +
> +DECLARE_GLOBAL_DATA_PTR;
> +
> +/* ------------------------------------------------------------------------- */
> +/*
> + * Miscelaneous platform dependent initialisations
> + */
> +
> +
> +#include <asm/arch/at91sam9263.h>
no please do not include it here but in the correctly file need
> +
> +/* ARM asynchronous clock */
> +#define AT91_MAIN_CLOCK		12000000	/* 12 MHz crystal */
> +#define CONFIG_SYS_HZ		1000
> +
> +#define CONFIG_ARM926EJS	1	/* This is an ARM926EJS Core	*/
> +#define CONFIG_AT91SAM9263	1	/* It's an Atmel AT91SAM9263 SoC*/
> +#define CONFIG_CALAO_USB_A9263	1	/* on an Calao USB A 9263 Board	*/
> +#define CONFIG_ARCH_CPU_INIT
> +#undef CONFIG_USE_IRQ			/* we don't need IRQ/FIQ stuff	*/
> +
> +#define CONFIG_CMDLINE_TAG	1	/* enable passing of ATAGs	*/
> +#define CONFIG_SETUP_MEMORY_TAGS 1
> +#define CONFIG_INITRD_TAG	1
> +
> +#define CONFIG_SKIP_LOWLEVEL_INIT
> +#define CONFIG_SKIP_RELOCATE_UBOOT
> +
> +/*
> + * Hardware drivers
> + */
> +#define CONFIG_ATMEL_USART	1
> +#undef CONFIG_USART0
> +#undef CONFIG_USART1
> +#undef CONFIG_USART2
> +#define CONFIG_USART3		1	/* USART 3 is DBGU */
> +
> +/* LCD */
> +#undef CONFIG_LCD
> +
> +#define CONFIG_BOOTDELAY	3
> +
> +/*
> + * BOOTP options
> + */
> +#define CONFIG_BOOTP_BOOTFILESIZE	1
> +#define CONFIG_BOOTP_BOOTPATH		1
> +#define CONFIG_BOOTP_GATEWAY		1
> +#define CONFIG_BOOTP_HOSTNAME		1
> +
> +/*
> + * Command line configuration.
> + */
> +#include <config_cmd_default.h>
> +#undef CONFIG_CMD_BDI
> +#undef CONFIG_CMD_FPGA
> +#undef CONFIG_CMD_IMI
> +#undef CONFIG_CMD_IMLS
> +#undef CONFIG_CMD_LOADS
> +#undef CONFIG_CMD_SOURCE
> +
> +#define CONFIG_CMD_PING		1
> +#define CONFIG_CMD_DHCP		1
> +#define CONFIG_CMD_NAND		1
> +#define CONFIG_CMD_USB		1
> +
> +/* SDRAM */
> +#define CONFIG_NR_DRAM_BANKS		1
> +#define PHYS_SDRAM			0x20000000
> +#define PHYS_SDRAM_SIZE			0x04000000
> +
> +/* DataFlash */
> +#define CONFIG_ATMEL_DATAFLASH_SPI
> +#define CONFIG_HAS_DATAFLASH		1
> +#define CONFIG_SYS_SPI_WRITE_TOUT		(5*CONFIG_SYS_HZ)
> +#define CONFIG_SYS_MAX_DATAFLASH_BANKS		1
> +#define CONFIG_SYS_DATAFLASH_LOGIC_ADDR_CS0	0xC0000000
> +#define AT91_SPI_CLK			8000000
> +#define DATAFLASH_TCSS			(0x1c << 16)
> +#define DATAFLASH_TCHS			(0x1 << 24)
> +
> +/* no NOR flash */
> +#define CONFIG_SYS_NO_FLASH			1
> +
> +/* NAND flash */
> +#ifdef CONFIG_CMD_NAND
> +#define CONFIG_NAND_ATMEL
> +#define CONFIG_SYS_MAX_NAND_DEVICE		1
> +#define CONFIG_SYS_NAND_BASE			0x40000000
> +#define CONFIG_SYS_NAND_DBW_8			1
> +/* our ALE is AD21 */
> +#define CONFIG_SYS_NAND_MASK_ALE		(1 << 21)
> +/* our CLE is AD22 */
> +#define CONFIG_SYS_NAND_MASK_CLE		(1 << 22)
> +#define CONFIG_SYS_NAND_ENABLE_PIN		AT91_PIN_PD15
> +#define CONFIG_SYS_NAND_READY_PIN		AT91_PIN_PA22
> +#endif
> +
> +/* Ethernet */
> +#define CONFIG_MACB			1
> +#define CONFIG_RMII			1
> +#define CONFIG_NET_MULTI		1
> +#define CONFIG_NET_RETRY_COUNT		20
> +#define CONFIG_RESET_PHY_R		1
> +#define CONFIG_MACB_SEARCH_PHY		1
do you have multiple phy?
> +

> +#define CONFIG_CMDLINE_EDITING	1
> +#define CONFIG_AUTO_COMPLETE
> +#define CONFIG_SYS_HUSH_PARSER
> +#define CONFIG_SYS_PROMPT_HUSH_PS2	"> "
> +
> +#define ROUND(A, B)		(((A) + (B)) & ~((B) - 1))
no need please remove
> +/*
Best Regards,
J.


More information about the U-Boot mailing list