public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH][AT91] Custom AFEB9260 board support
Date: Fri, 29 Aug 2008 02:25:20 +0200	[thread overview]
Message-ID: <20080829002520.GC30743@game.jcrosoft.org> (raw)
In-Reply-To: <12181821293881-git-send-email-slapin@ossfans.org>

On 11:55 Fri 08 Aug     , Sergey Lapin wrote:
> This patch provides support for AFEB9260 board, a product of
> OpenSource hardware and software. Some commertial projects
> are made with this design. A board is basically AT91SAM9260-EK
> with some modifications and different peripherals and different
> parts used. Main purpose of this project is to gain experience in
> hardware design.
> More info: http://groups.google.com/group/arm9fpga-evolution-board
> (In Russian only, sorry).
> Subversion repository: svn://194.85.238.22/home/users/george/svn/arm9eb
> 
> Signed-off-by: Sergey Lapin <slapin@ossfans.org>
> ---
Please add it in MAKEALL
>  Makefile                   |    3 +
>  board/afeb9260/Makefile    |   56 +++++++++++
>  board/afeb9260/afeb9260.c  |  230 ++++++++++++++++++++++++++++++++++++++++++++
>  board/afeb9260/config.mk   |    1 +
>  board/afeb9260/nand.c      |   79 +++++++++++++++
>  board/afeb9260/partition.c |   36 +++++++
>  include/configs/afeb9260.h |  169 ++++++++++++++++++++++++++++++++
>  7 files changed, 574 insertions(+), 0 deletions(-)
>  create mode 100644 board/afeb9260/Makefile
>  create mode 100644 board/afeb9260/afeb9260.c
>  create mode 100644 board/afeb9260/config.mk
>  create mode 100644 board/afeb9260/nand.c
>  create mode 100644 board/afeb9260/partition.c
>  create mode 100644 include/configs/afeb9260.h
> 
> diff --git a/Makefile b/Makefile
> index 3179c67..edef217 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -2387,6 +2387,9 @@ at91cap9adk_config	:	unconfig
>  at91sam9260ek_config	:	unconfig
>  	@$(MKCONFIG) $(@:_config=) arm arm926ejs at91sam9260ek atmel at91sam9
>  
> +afeb9260_config	:	unconfig
> +	@$(MKCONFIG) $(@:_config=) arm arm926ejs afeb9260 NULL at91sam9
> +
>  ########################################################################
>  ## ARM Integrator boards - see doc/README-integrator for more info.
>  integratorap_config	\
> diff --git a/board/afeb9260/Makefile b/board/afeb9260/Makefile
> new file mode 100644
> index 0000000..60c4304
> --- /dev/null
> +++ b/board/afeb9260/Makefile
> @@ -0,0 +1,56 @@
> +#
> +# (C) Copyright 2003-2008
> +# Wolfgang Denk, DENX Software Engineering, wd at denx.de.
> +#########################################################################
> diff --git a/board/afeb9260/afeb9260.c b/board/afeb9260/afeb9260.c
> new file mode 100644
> index 0000000..252a1ea
> --- /dev/null
> +++ b/board/afeb9260/afeb9260.c
> @@ -0,0 +1,230 @@
> +/*
> + * (C) Copyright 2008 Sergey Lapin <slapin@ossfans.org>
I'm not sure you can remove orignal copyright where yours fiels are nearly 80%
copy from at91sam9260ek
btw could you resend your patch generate with
git-format-patch -M -B -C --find-copies-harder
> + * 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/at91sam9260.h>
> +#include <asm/arch/at91sam9260_matrix.h>
> +#include <asm/arch/at91sam9_smc.h>
> +#include <asm/arch/at91_pmc.h>
> +#include <asm/arch/at91_rstc.h>
> +#include <asm/arch/gpio.h>
> +#include <asm/arch/io.h>
> +#if defined(CONFIG_RESET_PHY_R) && defined(CONFIG_MACB)
> +#include <net.h>
> +#endif
> +
> +DECLARE_GLOBAL_DATA_PTR;
> +
> +/* ------------------------------------------------------------------------- */
> +/*
> + * Miscelaneous platform dependent initialisations
> + */
> +
> +static void afeb9260_serial_hw_init(void)
> +{
> +#ifdef CONFIG_USART0
> +	at91_set_A_periph(AT91_PIN_PB4, 1);		/* TXD0 */
> +	at91_set_A_periph(AT91_PIN_PB5, 0);		/* RXD0 */
> +	at91_sys_write(AT91_PMC_PCER, 1 << AT91_ID_US0);
> +#endif
> +
> +#ifdef CONFIG_USART1
> +	at91_set_A_periph(AT91_PIN_PB6, 1);		/* TXD1 */
> +	at91_set_A_periph(AT91_PIN_PB7, 0);		/* RXD1 */
> +	at91_sys_write(AT91_PMC_PCER, 1 << AT91_ID_US1);
> +#endif
> +
> +#ifdef CONFIG_USART2
> +	at91_set_A_periph(AT91_PIN_PB8, 1);		/* TXD2 */
> +	at91_set_A_periph(AT91_PIN_PB9, 0);		/* RXD2 */
> +	at91_sys_write(AT91_PMC_PCER, 1 << AT91_ID_US2);
> +#endif
> +
> +#ifdef CONFIG_USART3	/* DBGU */
> +	at91_set_A_periph(AT91_PIN_PB14, 0);		/* DRXD */
> +	at91_set_A_periph(AT91_PIN_PB15, 1);		/* DTXD */
> +	at91_sys_write(AT91_PMC_PCER, 1 << AT91_ID_SYS);
> +#endif
> +}
> +
> +static void afeb9260_nand_hw_init(void)
> +{
> +	unsigned long csa;
> +
> +	/* Enable CS3 */
> +	csa = at91_sys_read(AT91_MATRIX_EBICSA);
> +	at91_sys_write(AT91_MATRIX_EBICSA,
> +		       csa | AT91_MATRIX_CS3A_SMC_SMARTMEDIA);
> +
> +	/* Configure SMC CS3 for NAND/SmartMedia */
> +	at91_sys_write(AT91_SMC_SETUP(3),
> +		       AT91_SMC_NWESETUP_(0) | AT91_SMC_NCS_WRSETUP_(0) |
> +		       AT91_SMC_NRDSETUP_(0) | AT91_SMC_NCS_RDSETUP_(0));
> +	at91_sys_write(AT91_SMC_PULSE(3),
> +		       AT91_SMC_NWEPULSE_(3) | AT91_SMC_NCS_WRPULSE_(3) |
> +		       AT91_SMC_NRDPULSE_(3) | AT91_SMC_NCS_RDPULSE_(3));
> +	at91_sys_write(AT91_SMC_CYCLE(3),
> +		       AT91_SMC_NWECYCLE_(5) | AT91_SMC_NRDCYCLE_(5));
> +	at91_sys_write(AT91_SMC_MODE(3),
> +		       AT91_SMC_READMODE | AT91_SMC_WRITEMODE |
> +		       AT91_SMC_EXNWMODE_DISABLE |
> +		       AT91_SMC_DBW_8 |
> +		       AT91_SMC_TDF_(2));
> +
> +	at91_sys_write(AT91_PMC_PCER, 1 << AT91SAM9260_ID_PIOC);
> +
> +	/* Configure RDY/BSY */
> +	at91_set_gpio_input(AT91_PIN_PC13, 1);
> +
> +	/* Enable NandFlash */
> +	at91_set_gpio_output(AT91_PIN_PC14, 1);
> +}
> +
> +}
> +#endif
> +
> +int board_init(void)
> +{
> +	/* Enable Ctrlc */
> +	console_init_f();
> +
> +	/* arch number of AT91SAM9260EK-Board */
> +	// gd->bd->bi_arch_number = CONFIG_MACH_AFEB9260
> +	gd->bd->bi_arch_number = 1859;
please update mach file
add no c++ comment
> +	/* adress of boot parameters */
> +	gd->bd->bi_boot_params = PHYS_SDRAM + 0x100;
> +
> +	afeb9260_serial_hw_init();
> +#ifdef CONFIG_CMD_NAND
> +	afeb9260_nand_hw_init();
> +#endif
> +	afeb9260_spi_hw_init();
> +#ifdef CONFIG_MACB
> +	afeb9260_macb_hw_init();
> +#endif
> +
> +	return 0;
> +}
> +#include <config.h>
> +#include <asm/hardware.h>
> +#include <dataflash.h>
> +
> +AT91S_DATAFLASH_INFO dataflash_info[CFG_MAX_DATAFLASH_BANKS];
> +
> +struct dataflash_addr cs[CFG_MAX_DATAFLASH_BANKS] = {
> +	{CFG_DATAFLASH_LOGIC_ADDR_CS0, 0},	/* Logical adress, CS */
> +	{CFG_DATAFLASH_LOGIC_ADDR_CS1, 1}
> +};
> +
> +/*define the area offsets*/
> +dataflash_protect_t area_list[NB_DATAFLASH_AREA] = {
> +	{0x00000000, 0x000041FF, FLAG_PROTECT_CLEAR,   0, "Bootstrap"},
                                                    ^^^
whitespaces pleaes remove

> +	{0x00004200, 0x000083FF, FLAG_PROTECT_CLEAR, 0, "Environment"},
> +	{0x00008400, 0x00041FFF, FLAG_PROTECT_CLEAR,   0, "U-Boot"},
                                                    ^^^
Ditto
> +};
> diff --git a/include/configs/afeb9260.h b/include/configs/afeb9260.h
> new file mode 100644
> index 0000000..6241687
> --- /dev/null
> +++ b/include/configs/afeb9260.h
> @@ -0,0 +1,169 @@
> +/*
> + * (C) Copyright 2008 Sergey Lapin
please add your e-mail
> + *
> + * Configuation settings for the AFEB9260 board.
> +
> +/*
> + * Hardware drivers
> + */
> +#define CONFIG_ATMEL_USART	1
> +#undef CONFIG_USART0
> +#undef CONFIG_USART1
> +#undef CONFIG_USART2
> +#define CONFIG_USART3		1	/* USART 3 is DBGU */
> +
> +#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_IMI
> +#undef CONFIG_CMD_AUTOSCRIPT
why do you undef autoscript?
> +#undef CONFIG_CMD_FPGA
> +#undef CONFIG_CMD_LOADS
> +#undef CONFIG_CMD_IMLS

Best regards,
J.

  parent reply	other threads:[~2008-08-29  0:25 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-08-08  7:55 [U-Boot] [PATCH][AT91] Custom AFEB9260 board support Sergey Lapin
2008-08-11 10:23 ` Sergey Lapin
2008-08-11 11:02   ` Jean-Christophe PLAGNIOL-VILLARD
2008-08-11 11:43     ` Sergey Lapin
2008-08-29  0:25 ` Jean-Christophe PLAGNIOL-VILLARD [this message]
2008-08-29  8:33   ` [U-Boot] [PATCH] " Sergey Lapin
2008-08-29  8:47     ` [U-Boot] [PATCH][Re-Submit] " Sergey Lapin
2008-08-29 17:48       ` Ben Warren
2008-08-29 20:03         ` Jean-Christophe PLAGNIOL-VILLARD
2008-08-29 20:23           ` Ben Warren
2008-10-26 10:43             ` [U-Boot] [PATCH][Re-Submit-again] " Sergey Lapin
2008-10-26 13:49               ` Jean-Christophe PLAGNIOL-VILLARD
2008-10-26 19:05                 ` Jean-Christophe PLAGNIOL-VILLARD
2008-10-26 19:26                   ` [U-Boot] [PATCH][Re-Submit-again2] " Sergey Lapin
2008-10-29  9:04                     ` Sergey Lapin
2008-10-30 15:42                       ` Sergey Lapin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080829002520.GC30743@game.jcrosoft.org \
    --to=plagnioj@jcrosoft.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox