ARM: Add support for EP93xx SoCs
Subsystems (3)
A message that is not in the archive (sent off-list or not yet received): [email protected]
PATCH 1/3 ARM: Add support for EP93xx SoCs
Add support for the Cirrus EP93xx platform
--- cpu/arm920t/ep93xx/Makefile | 56 ++++ cpu/arm920t/ep93xx/cpu.c | 51 +++ cpu/arm920t/ep93xx/led.c | 101 ++++++ cpu/arm920t/ep93xx/lowlevel_init.S | 65 ++++ cpu/arm920t/ep93xx/speed.c | 110 +++++++ cpu/arm920t/ep93xx/timer.c | 168 ++++++++++ cpu/arm920t/ep93xx/u-boot.lds | 59 ++++ include/asm-arm/arch-ep93xx/ep93xx.h | 595 ++++++++++++++++++++++++++++++++++ include/common.h | 3 +- 9 files changed, 1207 insertions(+), 1 deletions(-) create mode 100644 cpu/arm920t/ep93xx/Makefile create mode 100644 cpu/arm920t/ep93xx/cpu.c create mode 100644 cpu/arm920t/ep93xx/led.c create mode 100644 cpu/arm920t/ep93xx/lowlevel_init.S create mode 100644 cpu/arm920t/ep93xx/speed.c create mode 100644 cpu/arm920t/ep93xx/timer.c create mode 100644 cpu/arm920t/ep93xx/u-boot.lds create mode 100644 include/asm-arm/arch-ep93xx/ep93xx.h
cpu/arm920t/ep93xx/Makefile new file +56 -0
@@ -0,0 +1,56 @@ +# +# Cirrus Logic EP93xx CPU-specific Makefile +# +# Copyright (C) 2009 Matthias Kaehlcke <[email protected]> +# +# Copyright (C) 2004, 2005 +# Cory T. Tusar, Videon Central, Inc., <[email protected]> +# +# Copyright (C) 2006 +# Dominic Rath <[email protected]> +# +# Based on an original Makefile, which is +# +# (C) Copyright 2000, 2001, 2002 +# Wolfgang Denk, DENX Software Engineering, wd at 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., +# 675 Mass Ave, Cambridge, MA 02139, USA. +# +include $(TOPDIR)/config.mk + +LIB = $(obj)lib$(SOC).a + +COBJS = cpu.o led.o speed.o timer.o +SOBJS = lowlevel_init.o + +SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) +OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) + +all: $(obj).depend $(LIB) + +$(LIB): $(OBJS) + $(AR) $(ARFLAGS) $@ $(OBJS) + +######################################################################### + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +######################################################################### +
cpu/arm920t/ep93xx/cpu.c new file +51 -0
51 lines not on this page · raw message
cpu/arm920t/ep93xx/led.c new file +101 -0
101 lines not on this page · raw message
cpu/arm920t/ep93xx/lowlevel_init.S new file +65 -0
65 lines not on this page · raw message
cpu/arm920t/ep93xx/speed.c new file +110 -0
110 lines not on this page · raw message
cpu/arm920t/ep93xx/timer.c new file +168 -0
168 lines not on this page · raw message
cpu/arm920t/ep93xx/u-boot.lds new file +59 -0
59 lines not on this page · raw message
include/asm-arm/arch-ep93xx/ep93xx.h new file +595 -0
595 lines not on this page · raw message
include/common.h +2 -1
@@ -502,7 +502,8 @@ ulong get_PCI_freq (void);#endif #if defined(CONFIG_S3C24X0 ) || \ defined(CONFIG_LH7A40X ) || \ - defined(CONFIG_S3C6400 ) + defined(CONFIG_S3C6400 ) || \ + defined(CONFIG_EP93XX )ulong get_FCLK (void );ulong get_HCLK (void );ulong get_PCLK (void );
Signature · 1 line
1.6.5
PATCH 2/3 Add EP93xx ethernet driver
In reply to a message not in the archiveAdded ethernet driver for EP93xx SoCs
--- drivers/net/Makefile | 1 + drivers/net/ep93xx_eth.c | 653 ++++++++++++++++++++++++++++++++++++++++++++++ drivers/net/ep93xx_eth.h | 144 ++++++++++ include/common.h | 5 + include/netdev.h | 1 + 5 files changed, 804 insertions(+), 0 deletions(-) create mode 100644 drivers/net/ep93xx_eth.c create mode 100644 drivers/net/ep93xx_eth.h
drivers/net/Makefile +1 -0
@@ -37,6 +37,7 @@ COBJS-$(CONFIG_DNET) += dnet.o COBJS-$(CONFIG_E1000) += e1000.o COBJS-$(CONFIG_EEPRO100) += eepro100.o COBJS-$(CONFIG_ENC28J60) += enc28j60.o +COBJS-$(CONFIG_EP93XX) += ep93xx_eth.o COBJS-$(CONFIG_FEC_MXC) += fec_mxc.o COBJS-$(CONFIG_FSLDMAFEC) += fsl_mcdmafec.o mcfmii.o COBJS-$(CONFIG_FTMAC100) += ftmac100.o
drivers/net/ep93xx_eth.c new file +653 -0
653 lines not on this page · raw message
drivers/net/ep93xx_eth.h new file +144 -0
144 lines not on this page · raw message
include/common.h +5 -0
@@ -123,6 +123,11 @@ typedef volatile unsigned char vu_char; #define debugX(level,fmt,args...)#endif /* DEBUG */ +#define error(fmt, args...) do { \ + printf("ERROR: " fmt "\nat %s:%d/%s()\n", \ + ##args, __FILE__, __LINE__, __func__); \ +} while (0) +#ifndef BUG #define BUG () do { \ printf("BUG: failure at %s:%d/%s()!\n", __FILE__, __LINE__, __FUNCTION__); \
include/netdev.h +1 -0
@@ -49,6 +49,7 @@ int davinci_emac_initialize(void);int dnet_eth_initialize (int id,void *regs,unsigned int phy_addr);int e1000_initialize (bd_t *bis);int eepro100_initialize (bd_t *bis); +int ep93xx_eth_initialize (u8 dev_num,int base_addr);int eth_3com_initialize (bd_t * bis);int fec_initialize (bd_t *bis);int fecmxc_initialize (bd_t *bis);
Signature · 1 line
1.6.5
Ben Warren
AppliedPATCH 2/3 Add EP93xx ethernet driver
Hi Matthias,
Quoted 13 lines · Matthias Kaehlcke
Added ethernet driver for EP93xx SoCs
Signed-off-by Matthias Kaehlcke <[email protected]>--- drivers/net/Makefile | 1 + drivers/net/ep93xx_eth.c | 653 ++++++++++++++++++++++++++++++++++++++++++++++ drivers/net/ep93xx_eth.h | 144 ++++++++++ include/common.h | 5 + include/netdev.h | 1 + 5 files changed, 804 insertions(+), 0 deletions(-) create mode 100644 drivers/net/ep93xx_eth.c create mode 100644 drivers/net/ep93xx_eth.h
Applied to net repo.
Thanks a lot,
Ben
PATCH 2/3 Add EP93xx ethernet driver
Hi Ben,
El Sun, Jan 31, 2010 at 09:24:36PM -0800 Ben Warren ha dit:
Quoted 13 lines
Quoted 4 lines · Matthias Kaehlcke
Added ethernet driver for EP93xx SoCs
Signed-off-by Matthias Kaehlcke <[email protected]>---
Quoted 8 lines
drivers/net/Makefile | 1 + drivers/net/ep93xx_eth.c | 653 ++++++++++++++++++++++++++++++++++++++++++++++ drivers/net/ep93xx_eth.h | 144 ++++++++++ include/common.h | 5 + include/netdev.h | 1 + 5 files changed, 804 insertions(+), 0 deletions(-)create mode 100644
drivers/net/ep93xx_eth.c
create mode 100644drivers/net/ep93xx_eth.h
Quoted 2 lines
Applied to net repo.
Thanks a lot,
thanks to you for the reviews and the helpfull comments!
Signature · 10 lines
Matthias Kaehlcke
Embedded Linux Developer
Barcelona
La posibilidad de realizar un suenyo es lo
que hace que la vida sea interesante
.''`.
using free software / Debian GNU/Linux | http://debian.org : :' :
`. `'`
gpg --keyserver pgp.mit.edu --recv-keys 47D8E5D4 `-PATCH 3/3 Add support for EDB93xx boards
In reply to a message not in the archiveAdded support for the following EDB93xx boards:
EDB9301
EDB9302
EDB9302A
EDB9307
EDB9307A
EDB93012
EDB9315
EDB9315A
--- MAINTAINERS | 10 ++ MAKEALL | 8 ++ Makefile | 10 ++ board/edb93xx/Makefile | 50 ++++++++ board/edb93xx/config.mk | 33 +++++ board/edb93xx/early_udelay.h | 34 +++++ board/edb93xx/edb93xx.c | 109 +++++++++++++++++ board/edb93xx/flash_cfg.c | 38 ++++++ board/edb93xx/pll_cfg.c | 58 +++++++++ board/edb93xx/pll_cfg.h | 72 +++++++++++ board/edb93xx/sdram_cfg.c | 117 ++++++++++++++++++ board/edb93xx/sdram_cfg.h | 144 ++++++++++++++++++++++ include/configs/edb93xx.h | 273 ++++++++++++++++++++++++++++++++++++++++++ 13 files changed, 956 insertions(+), 0 deletions(-) create mode 100644 board/edb93xx/Makefile create mode 100644 board/edb93xx/config.mk create mode 100644 board/edb93xx/early_udelay.h create mode 100644 board/edb93xx/edb93xx.c create mode 100644 board/edb93xx/flash_cfg.c create mode 100644 board/edb93xx/pll_cfg.c create mode 100644 board/edb93xx/pll_cfg.h create mode 100644 board/edb93xx/sdram_cfg.c create mode 100644 board/edb93xx/sdram_cfg.h create mode 100644 include/configs/edb93xx.h
MAINTAINERS +10 -0
@@ -598,6 +598,16 @@ Gary Jennejohn <[email protected]> smdk2400 ARM920T trab ARM920T +Matthias Kaehlcke <[email protected]> + edb9301 ARM920T (EP9301) + edb9302 ARM920T (EP9302) + edb9302a ARM920T (EP9302) + edb9307 ARM920T (EP9307) + edb9307a ARM920T (EP9307) + edb9312 ARM920T (EP9312) + edb9315 ARM920T (EP9315) + edb9315a ARM920T (EP9315) + Konstantin Kletschke <[email protected]> scb9328 ARM920T
MAKEALL +8 -0
@@ -554,6 +554,14 @@ LIST_ARM9=" \ cp946es \ cp966 \ da830evm \ + edb9301 \ + edb9302 \ + edb9302a \ + edb9307 \ + edb9307a \ + edb9312 \ + edb9315 \ + edb9315a \ imx27lite \ lpd7a400 \ mv88f6281gtw_ge \
Makefile +10 -0
@@ -2412,6 +2412,16 @@ caddy2_config \ vme8349_config: unconfig @$(MKCONFIG) -t $(@:_config=) vme8349 ppc mpc83xx vme8349 esd +edb9301_config \ +edb9302_config \ +edb9302a_config \ +edb9307_config \ +edb9307a_config \ +edb9312_config \ +edb9315_config \ +edb9315a_config: unconfig + @$(MKCONFIG) -t $(@:_config=) edb93xx arm arm920t edb93xx NULL ep93xx + ######################################################################### ## MPC85xx Systems #########################################################################
board/edb93xx/Makefile new file +50 -0
50 lines not on this page · raw message
board/edb93xx/config.mk new file +33 -0
@@ -0,0 +1,33 @@ +LDSCRIPT := $(SRCTREE)/cpu/arm920t/ep93xx/u-boot.lds + +ifdef CONFIG_EDB9301 +TEXT_BASE = 0x05700000 +endif + +ifdef CONFIG_EDB9302 +TEXT_BASE = 0x05700000 +endif + +ifdef CONFIG_EDB9302A +TEXT_BASE = 0xc5700000 +endif + +ifdef CONFIG_EDB9307 +TEXT_BASE = 0x01f00000 +endif + +ifdef CONFIG_EDB9307A +TEXT_BASE = 0xc1f00000 +endif + +ifdef CONFIG_EDB9312 +TEXT_BASE = 0x01f00000 +endif + +ifdef CONFIG_EDB9315 +TEXT_BASE = 0x01f00000 +endif + +ifdef CONFIG_EDB9315A +TEXT_BASE = 0xc1f00000 +endif
board/edb93xx/early_udelay.h new file +34 -0
@@ -0,0 +1,34 @@ +/* +* Copyright (C) 2009 Matthias Kaehlcke <[email protected]> +* +* 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> + +/* delay execution before timers are initialized */ +static inline void early_udelay (uint32_t usecs) +{ +/* loop takes 4 cycles at 5.0ns (fastest case, running at 200MHz) */ + registeruint32_t loops = (usecs *1000 ) /20 ; + + __asm__volatile ("1:\n" +"subs %0, %1, #1\n" +"bne 1b" :"=r" (loops):"0" (loops)); +}
board/edb93xx/edb93xx.c new file +109 -0
109 lines not on this page · raw message
board/edb93xx/flash_cfg.c new file +38 -0
@@ -0,0 +1,38 @@ +/* +* Flash setup for Cirrus edb93xx boards +* +* Copyright (C) 2009 Matthias Kaehlcke <[email protected]> +* +* 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/ep93xx.h> +#include <asm/io.h> + +#define SMC_BCR6_VALUE (2 << SMC_BCR_IDCY_SHIFT | 5 << SMC_BCR_WST1_SHIFT | \ + SMC_BCR_BLE | 2 << SMC_BCR_WST2_SHIFT | \ + 1 << SMC_BCR_MW_SHIFT) + +void flash_cfg (void ) +{ +struct smc_regs *smc = (struct smc_regs *)SMC_BASE ; + +writel (SMC_BCR6_VALUE , &smc->bcr6); +}
board/edb93xx/pll_cfg.c new file +58 -0
58 lines not on this page · raw message
board/edb93xx/pll_cfg.h new file +72 -0
72 lines not on this page · raw message
board/edb93xx/sdram_cfg.c new file +117 -0
117 lines not on this page · raw message
board/edb93xx/sdram_cfg.h new file +144 -0
144 lines not on this page · raw message
include/configs/edb93xx.h new file +273 -0
273 lines not on this page · raw message
Signature · 1 line
1.6.5