This patch adds support for the Keymile suen3 board which is based on the Marvell Kirkwood (88F6281) SoC. As this is a variant of the mgcoge2_arm_p1a board, this board also uses common code stored in board/keymile/km_arm/km_arm.c
Signed-off-by: Heiko Schocher <h...@denx.de> --- - changes since v1: added comments from Wolfgang Denk: get rid of flash_info_t define in board config (to get this working patch 1/2 is introduced/needed) - changes since v2: added comments from Wolfgang Denk - rearranged if/else in do_spi_toggle() - added I/O accessor functions for bootcounter - changes since v3: added comment Scott Wood - removed nand_init in do_spi_toggle() added comments from Prafulla Wadagaskar - km-arm.h renamed to km_arm.h - reworked eeprom_write_enable() (deleted it) (when reviewing this function, it cropped up, that this pin is connected through a gpio pin, not as in previous version, through the boco (a FPGA)) - moved set_sda(), set_scl(), get_sda(), get_scl() to km_arm.c - split patch in 4 patches (for each board an extra patch) - renamed sdramregs.txt in kwbimage.cfg, also license info added. MAINTAINERS | 1 + MAKEALL | 1 + Makefile | 3 + include/configs/suen3.h | 103 +++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 108 insertions(+), 0 deletions(-) create mode 100644 include/configs/suen3.h diff --git a/MAINTAINERS b/MAINTAINERS index eda15c8..ab27afc 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -411,6 +411,7 @@ Heiko Schocher <h...@denx.de> muas3001 MPC8270 municse MPC5200 sc3 PPC405GP + suen3 ARM926EJS (Kirkwood SoC) uc101 MPC5200 diff --git a/MAKEALL b/MAKEALL index 1c18734..7577ea5 100755 --- a/MAKEALL +++ b/MAKEALL @@ -580,6 +580,7 @@ LIST_ARM9=" \ spear310 \ spear320 \ spear600 \ + suen3 \ trab \ VCMA9 \ versatile \ diff --git a/Makefile b/Makefile index 990f932..3ea2b53 100644 --- a/Makefile +++ b/Makefile @@ -3050,6 +3050,9 @@ spear320_config : unconfig spear600_config : unconfig @$(MKCONFIG) -n $@ -t $(@:_config=) spear6xx arm arm926ejs $(@:_config=) spear spear +suen3_config: unconfig + @$(MKCONFIG) $(@:_config=) arm arm926ejs km_arm keymile kirkwood + SX1_stdout_serial_config \ SX1_config: unconfig @mkdir -p $(obj)include diff --git a/include/configs/suen3.h b/include/configs/suen3.h new file mode 100644 index 0000000..b2730a3 --- /dev/null +++ b/include/configs/suen3.h @@ -0,0 +1,103 @@ +/* + * (C) Copyright 2009 + * Marvell Semiconductor <www.marvell.com> + * Prafulla Wadaskar <prafu...@marvell.com> + * + * (C) Copyright 2009 + * Stefan Roese, DENX Software Engineering, s...@denx.de. + * + * 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., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301 USA + */ + +/* + * for linking errors see + * http://lists.denx.de/pipermail/u-boot/2009-July/057350.html + */ + +#ifndef _CONFIG_SUEN3_H +#define _CONFIG_SUEN3_H + +/* include common defines/options for all arm based Keymile boards */ +#include "km_arm.h" + +/* + * Version number information + */ +#define CONFIG_IDENT_STRING "\nKeymile SUEN3" + +#define CONFIG_HOSTNAME suen3 + +/* + * Environment variables configurations + */ +#define CONFIG_ENV_IS_IN_EEPROM /* use EEPROM for environment vars */ +#define CONFIG_SYS_DEF_EEPROM_ADDR 0x50 +#define CONFIG_ENV_EEPROM_IS_ON_I2C 1 +#define CONFIG_SYS_EEPROM_WREN 1 +#define CONFIG_ENV_OFFSET 0x0 /* no bracets! */ +#undef CONFIG_ENV_SIZE +#define CONFIG_ENV_SIZE (0x2000 - CONFIG_ENV_OFFSET) +#define CONFIG_I2C_ENV_EEPROM_BUS "pca9547:70:d\0" + +/* offset redund: (CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE) */ +#define CONFIG_SYS_REDUNDAND_ENVIRONMENT +#define CONFIG_ENV_OFFSET_REDUND 0x2000 /* no bracets! */ +#define CONFIG_ENV_SIZE_REDUND (CONFIG_ENV_SIZE) + +#define CONFIG_CMD_SF + +#define CONFIG_SPI_FLASH +#define CONFIG_HARD_SPI +#define CONFIG_KIRKWOOD_SPI +#define CONFIG_SPI_FLASH_STMICRO +#define CONFIG_ENV_SPI_BUS 0 +#define CONFIG_ENV_SPI_CS 0 +#define CONFIG_ENV_SPI_MAX_HZ 50000000 /* 50Mhz */ + +#define FLASH_GPIO_PIN 0x00010000 + +#define MTDIDS_DEFAULT "nand0=orion_nand" +/* test-only: partitioning needs some tuning, this is just for tests */ +#define MTDPARTS_DEFAULT "mtdparts=" \ + "orion_nand:" \ + "-(" CONFIG_KM_UBI_PARTITION_NAME ")" + +#define CONFIG_KM_DEF_ENV_UPDATE \ + "update=" \ + "spi on;sf probe 0;sf erase 0 50000;" \ + "sf write ${u-boot_addr_r} 0 ${filesize};" \ + "spi off\0" + +/* + * Default environment variables + */ +#define CONFIG_EXTRA_ENV_SETTINGS \ + CONFIG_KM_DEF_ENV \ + "memsize=0x8000000\0" \ + "newenv=setenv addr 0x100000 && " \ + "i2c dev 1; mw.b ${addr} 0 4 && " \ + "eeprom write " xstr(CONFIG_SYS_DEF_EEPROM_ADDR) \ + " ${addr} " xstr(CONFIG_ENV_OFFSET) " 4 && " \ + "eeprom write " xstr(CONFIG_SYS_DEF_EEPROM_ADDR) \ + " ${addr} " xstr(CONFIG_ENV_OFFSET_REDUND) " 4\0" \ + "rootpath=/opt/eldk/arm\0" \ + "EEprom_ivm=pca9544a:70:9\0" \ + "" + +#endif /* _CONFIG_SUEN3_H */ -- 1.6.2.5 -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot