Message ID | 1291741587-12484-7-git-send-email-prafulla@marvell.com |
---|---|
State | Accepted |
Delegated to: | Prafulla Wadaskar |
Headers | show |
This patch series adds basic ARMADA100 support, with minimal drivers (UART, MFP) support and Aspenite-DB board support for simple boot Changelog v2: 1. This patch series is in sync latest u-boot 2. config.mk removed 3. CONFIG_SYS_NS16550_IER used for serial drivers 4. mv-common.h updated for aspenite support 5. c-struct used for dram.c 6. All review feedback for v1 implemented Changelog v3: 1. timer.c: timer variables in gt_t used insted of locally defined global variables 2. timer.c: register global pointer moved to respective functions 3. timer.c: Macro READ_TIMER converted to function read_timer() 4. armada100.h: c-struc in armada100.h fixed for wrong padding 5. macro defination CONFIG_SYS_NS16550_IER moved from ns16550.h to ns16550.c 6. Removed reordiring of header files in serial.c, the diff is only limited to include armada100.h 7. mv-common.h: CONFIG_ARCH_CPU_INIT moved out of #ifdef 8. aspenite.h: #define DEBUG removed Changelog v4: 1. mfp driver renamed as mvmfp 2. re-architected mvmfp driver as per review feedback These patches are tested on board Fo sucessfull build, these patches are dependent upon a patch. "ARM: make timer variables in gt_t available for all ARM platforms" ref: http://lists.denx.de/pipermail/u-boot/2010-December/082834.html Regards.. Prafulla . . Prafulla Wadaskar (7): arm: Add Support for Marvell ARMADA 100 Familiy SoCs gpio: Add Multi-Function-Pin configuration driver for Marvell SoCs add Multi Function Pin configuration support for ARMADA100 Serial: ns16550: Add support for CONFIG_SYS_NS16550_IER macro Serial: Add UART support for Marvell ARMADA 100 SoCs. mv-common.h: Add support for ARMADA100 Platforms Armada100: Add Board Support for Marvell Aspenite-DB MAINTAINERS | 1 + MAKEALL | 1 + arch/arm/cpu/arm926ejs/armada100/Makefile | 46 +++++ arch/arm/cpu/arm926ejs/armada100/cpu.c | 92 ++++++++++ arch/arm/cpu/arm926ejs/armada100/dram.c | 131 ++++++++++++++ arch/arm/cpu/arm926ejs/armada100/timer.c | 207 +++++++++++++++++++++++ arch/arm/include/asm/arch-armada100/armada100.h | 121 +++++++++++++ arch/arm/include/asm/arch-armada100/cpu.h | 53 ++++++ arch/arm/include/asm/arch-armada100/mfp.h | 67 ++++++++ board/Marvell/aspenite/Makefile | 52 ++++++ board/Marvell/aspenite/aspenite.c | 53 ++++++ boards.cfg | 1 + drivers/gpio/Makefile | 1 + drivers/gpio/mvmfp.c | 90 ++++++++++ drivers/serial/ns16550.c | 8 +- drivers/serial/serial.c | 5 +- include/configs/aspenite.h | 63 +++++++ include/configs/mv-common.h | 65 ++++++-- include/mvmfp.h | 100 +++++++++++ 19 files changed, 1137 insertions(+), 20 deletions(-) create mode 100644 arch/arm/cpu/arm926ejs/armada100/Makefile create mode 100644 arch/arm/cpu/arm926ejs/armada100/cpu.c create mode 100644 arch/arm/cpu/arm926ejs/armada100/dram.c create mode 100644 arch/arm/cpu/arm926ejs/armada100/timer.c create mode 100644 arch/arm/include/asm/arch-armada100/armada100.h create mode 100644 arch/arm/include/asm/arch-armada100/cpu.h create mode 100644 arch/arm/include/asm/arch-armada100/mfp.h create mode 100644 board/Marvell/aspenite/Makefile create mode 100644 board/Marvell/aspenite/aspenite.c create mode 100644 drivers/gpio/mvmfp.c create mode 100644 include/configs/aspenite.h create mode 100644 include/mvmfp.h
> -----Original Message----- > From: Prafulla Wadaskar [mailto:prafulla@marvell.com] > Sent: Tuesday, December 07, 2010 10:36 PM > To: u-boot@lists.denx.de > Cc: Lei Wen; Eric Miao; Yu Tang; Kiran Vedere; Manas Saksena; Prabhanjan > Sarnaik; Ashish Karkare; Prafulla Wadaskar; Mahavir Jain > Subject: [PATCH v4 7/7] Armada100: Add Board Support for Marvell Aspenite- > DB > > Aspenite is a Development Board for ASPEN/ARMADA168(88AP168) with > * Processor upto 1.2GHz > * Parallel 1Gb x8 DDR2-1066 MHz > * 16 Mb x16 NOR, 4Gb x8 SLC NAND, footprint for SPI NOR > * Footprints for eMMC/eSD NAND & MMC x8 card > * 4-in-1 card reader (xD, MMC/SD/MS Pro), CF True IDE socket > * SEAF memory board, subset of PISMO2 > With Peripherals: > * 4.3" WVGA 24-bit LCD > * Audio codecs (AC97 & I2S), TSI > * VGA camera > * Video in via 3 RCA jacks, and HDMI type C out > * Marvell 88W8688 802.11bg/BT module > * GPS RF IC > * Dual analog mics & speakers, headset jack, LED, ambient light > sensor > * USB2.0 HS host (A), OTG (micro AB) > * FE PHY, PCIE Mini Card slot > * GPIO, GPIO expander with DIP switches for easier selection UART > serial over USB, CIR > > This patch adds basic board support with DRAM and UART functionality > The patch is tested for boot from DRAM using XDB > > Signed-off-by: Mahavir Jain <mjain@marvell.com> > Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com> > --- > Change log for v2: > used mv-common.h > defined CONFIG_SYS_NS16550_IER macro in Soc heder file > removed config.mk > > Change log for v3: > DEBUG removed from aspenite.h > > Change log for v4: > name changes as per mvmfp > > MAINTAINERS | 1 + > MAKEALL | 1 + > board/Marvell/aspenite/Makefile | 52 ++++++++++++++++++++++++++++++ > board/Marvell/aspenite/aspenite.c | 53 +++++++++++++++++++++++++++++++ > boards.cfg | 1 + > include/configs/aspenite.h | 63 > +++++++++++++++++++++++++++++++++++++ > 6 files changed, 171 insertions(+), 0 deletions(-) > create mode 100644 board/Marvell/aspenite/Makefile > create mode 100644 board/Marvell/aspenite/aspenite.c > create mode 100644 include/configs/aspenite.h > Applied to u-boot-marvell.git master branch Regards.. Prafulla ..
diff --git a/MAINTAINERS b/MAINTAINERS index f47fca5..d7e47a6 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -836,6 +836,7 @@ Matt Waddel <matt.waddel@linaro.org> Prafulla Wadaskar <prafulla@marvell.com> + aspenite ARM926EJS (ARMADA100 88AP168 SoC) mv88f6281gtw_ge ARM926EJS (Kirkwood SoC) rd6281a ARM926EJS (Kirkwood SoC) sheevaplug ARM926EJS (Kirkwood SoC) diff --git a/MAKEALL b/MAKEALL index 767d561..e83c9d7 100755 --- a/MAKEALL +++ b/MAKEALL @@ -326,6 +326,7 @@ LIST_ARM9=" \ ap926ejs \ ap946es \ ap966 \ + aspenite \ cp920t \ cp922_XA10 \ cp926ejs \ diff --git a/board/Marvell/aspenite/Makefile b/board/Marvell/aspenite/Makefile new file mode 100644 index 0000000..cb1b65f --- /dev/null +++ b/board/Marvell/aspenite/Makefile @@ -0,0 +1,52 @@ +# +# (C) Copyright 2010 +# Marvell Semiconductor <www.marvell.com> +# Written-by: Prafulla Wadaskar <prafulla@marvell.com> +# Contributor: Mahavir Jain <mjain@marvell.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., 51 Franklin Street, Fifth Floor, Boston, +# MA 02110-1301 USA +# + +include $(TOPDIR)/config.mk + +LIB = $(obj)lib$(BOARD).o + +COBJS := aspenite.o + +SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS)) +SOBJS := $(addprefix $(obj),$(SOBJS)) + +$(LIB): $(obj).depend $(OBJS) $(SOBJS) + $(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS) + +clean: + rm -f $(SOBJS) $(OBJS) + +distclean: clean + rm -f $(LIB) core *.bak .depend + +######################################################################### + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +######################################################################### diff --git a/board/Marvell/aspenite/aspenite.c b/board/Marvell/aspenite/aspenite.c new file mode 100644 index 0000000..046ffd6 --- /dev/null +++ b/board/Marvell/aspenite/aspenite.c @@ -0,0 +1,53 @@ +/* + * (C) Copyright 2010 + * Marvell Semiconductor <www.marvell.com> + * Written-by: Prafulla Wadaskar <prafulla@marvell.com> + * Contributor: Mahavir Jain <mjain@marvell.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., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301 USA + */ + +#include <common.h> +#include <mvmfp.h> +#include <asm/arch/mfp.h> +#include <asm/arch/armada100.h> + +DECLARE_GLOBAL_DATA_PTR; + +int board_early_init_f(void) +{ + u32 mfp_cfg[] = { + /* Enable Console on UART1 */ + MFP107_UART1_RXD, + MFP108_UART1_TXD, + MFP_EOC /*End of configureation*/ + }; + /* configure MFP's */ + mfp_config(mfp_cfg); + return 0; +} + +int board_init(void) +{ + /* arch number of Board */ + gd->bd->bi_arch_number = MACH_TYPE_ASPENITE; + /* adress of boot parameters */ + gd->bd->bi_boot_params = armd1_sdram_base(0) + 0x100; + return 0; +} diff --git a/boards.cfg b/boards.cfg index 2209676..34cc6db 100644 --- a/boards.cfg +++ b/boards.cfg @@ -68,6 +68,7 @@ smdk2410 arm arm920t - samsung netstar arm arm925t voiceblue arm arm925t omap1510inn arm arm925t - ti +aspenite arm arm926ejs - Marvell armada100 afeb9260 arm arm926ejs - - at91 at91cap9adk arm arm926ejs - atmel at91 meesc arm arm926ejs - esd at91 diff --git a/include/configs/aspenite.h b/include/configs/aspenite.h new file mode 100644 index 0000000..706365f --- /dev/null +++ b/include/configs/aspenite.h @@ -0,0 +1,63 @@ +/* + * (C) Copyright 2010 + * Marvell Semiconductor <www.marvell.com> + * Written-by: Prafulla Wadaskar <prafulla@marvell.com> + * Contributor: Mahavir Jain <mjain@marvell.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., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301 USA + */ + +#ifndef __CONFIG_ASPENITE_H +#define __CONFIG_ASPENITE_H + +/* + * Version number information + */ +#define CONFIG_IDENT_STRING "\nMarvell-Aspenite DB" + +/* + * High Level Configuration Options + */ +#define CONFIG_SHEEVA_88SV331xV5 1 /* CPU Core subversion */ +#define CONFIG_ARMADA100 1 /* SOC Family Name */ +#define CONFIG_ARMADA168 1 /* SOC Used on this Board */ +#define CONFIG_MACH_ASPENITE /* Machine type */ +#define CONFIG_SKIP_LOWLEVEL_INIT /* disable board lowlevel_init */ + +/* + * Commands configuration + */ +#define CONFIG_SYS_NO_FLASH /* Declare no flash (NOR/SPI) */ +#include <config_cmd_default.h> +#define CONFIG_CMD_AUTOSCRIPT +#undef CONFIG_CMD_NET +#undef CONFIG_CMD_NFS +/* + * mv-common.h should be defined after CMD configs since it used them + * to enable certain macros + */ +#include "mv-common.h" + +/* + * Environment variables configurations + */ +#define CONFIG_ENV_IS_NOWHERE 1 /* if env in SDRAM */ +#define CONFIG_ENV_SIZE 0x20000 /* 64k */ + +#endif /* __CONFIG_ASPENITE_H */