Re: [U-Boot-Users] [PATCH 04/10 v2] [ARM] TQMA31: add new board with i.MX31 processor
In message <[EMAIL PROTECTED]> you wrote: > > > Yes, of course you do. If you copy code, you *must* honour existing > > copyrights and have not any right to remove these. > > hm, starting from how many lines of code? Copy-paste is one of the main > programming technics, as we all know:-) If you copy one line, you don't > have to transfer all copyrights over, do you? I don't know of any "official" rules, but anything above the 5...10 lines limit should be properly attributed. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED] A morsel of genuine history is a thing so rare as to be always valuable. - Thomas Jefferson - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 04/10 v2] [ARM] TQMA31: add new board with i.MX31 processor
Hi Guennadi, Guennadi Liakhovetski schrieb: > On Tue, 8 Jul 2008, Jens Gehrlein wrote: > >> diff --git a/board/tqc/tqma31/Makefile b/board/tqc/tqma31/Makefile >> new file mode 100644 >> index 000..f7e17c8 >> --- /dev/null >> +++ b/board/tqc/tqma31/Makefile >> @@ -0,0 +1,48 @@ >> +# >> +# Copyright (C) 2008, Guennadi Liakhovetski <[EMAIL PROTECTED]> >> +# Copyright (C) 2008, Jens Gehrlein <[EMAIL PROTECTED]> > > Thanks for the credit, but, although IANAL, I think, one does not _have_ > to preserve the copyright of the original file when it gets copied to a > new one. Otherwise most open-source files would have a vry long list > of Copyrights:-) Am I right? I didn't quite understand. So what should I remove: - your name? - my name? - all? - in all files (much work)? Thanks. Neither I'm a lawyer. I just had a look to other source files, were it's done similar. Kind regards, Jens - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] pci: Move PCI device configuration check into a separate weak function
Hi, Stefan. 2008/7/9 Stefan Roese <[EMAIL PROTECTED]>: > On Wednesday 09 July 2008, Nobuhiro Iwamatsu wrote: >> >> When PCI_BDF was 0,0,0, does the board of PPC have the device which >> >> do not want to initialize? >> > >> > This is the current situation, yes. At least on PPC4xx. With this new >> > patch all platforms can overwrite this default behavior without breaking >> > backward compatibility. >> >> OK, I see. >> >> > Does it work for you? >> >> Work fine. Thank you. > > OK. > >> But I have suggestion. >> >> If these cords depend on PPC4xx and other PPC platform, I think that move >> these code to PPC platform. >> Do you think this suggestion? > > I don't know if this current implementation only works for PPC. Its used on > all platforms using this PCI code right now. So I think we should keep this > version in this file as default behavior. OK, I understand. Acked-By: Nobuhiro Iwamatsu <[EMAIL PROTECTED]> Are you going to put this patch in 1.3.4? Best regatds, Nobuhiro - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH] Many spelling fixes in README.
Signed-off-by: Marcel Ziswiler <[EMAIL PROTECTED]> --- README | 141 1 files changed, 71 insertions(+), 70 deletions(-) diff --git a/README b/README index 62cdfd0..0cd01bc 100644 --- a/README +++ b/README @@ -74,7 +74,7 @@ git://www.denx.de/git/u-boot.git ; you can browse it online at http://www.denx.de/cgi-bin/gitweb.cgi?p=u-boot.git;a=summary The "snapshot" links on this page allow you to download tarballs of -any version you might be interested in. Ofifcial releases are also +any version you might be interested in. Official releases are also available for FTP download from the ftp://ftp.denx.de/pub/u-boot/ directory. @@ -94,7 +94,7 @@ Where we come from: * Provide extended interface to Linux boot loader * S-Record download * network boot - * PCMCIA / CompactFLash / ATA disk / SCSI ... boot + * PCMCIA / CompactFlash / ATA disk / SCSI ... boot - create ARMBoot project (http://sourceforge.net/projects/armboot) - add other CPU families (starting with ARM) - create U-Boot project (http://sourceforge.net/projects/u-boot) @@ -230,7 +230,7 @@ Example: For a TQM823L module type: cd u-boot make TQM823L_config -For the Cogent platform, you need to specify the cpu type as well; +For the Cogent platform, you need to specify the CPU type as well; e.g. "make cogent_mpc8xx_config". And also configure the cogent directory according to the instructions in cogent/README. @@ -278,7 +278,7 @@ The following options need to be configured: - Motherboard Options: (if CONFIG_CMA101 or CONFIG_CMA102 are defined) Define one or more of CONFIG_LCD_HEARTBEAT- update a character position on - the lcd display every second with + the LCD display every second with a "rotator" |\-/|\-/ - Board flavour: (if CONFIG_MPC8260ADS is defined) @@ -293,7 +293,7 @@ The following options need to be configured: Define exactly one of CONFIG_MPC8240, CONFIG_MPC8245 -- 8xx CPU Options: (if using an MPC8xx cpu) +- 8xx CPU Options: (if using an MPC8xx CPU) CONFIG_8xx_GCLK_FREQ- deprecated: CPU clock if get_gclk_freq() cannot work e.g. if there is no 32KHz @@ -346,7 +346,7 @@ The following options need to be configured: CONFIG_MEMSIZE_IN_BYTES [relevant for MIPS only] - When transfering memsize parameter to linux, some versions + When transferring memsize parameter to linux, some versions expect it to be in bytes, others in MB. Define CONFIG_MEMSIZE_IN_BYTES to make it in bytes. @@ -366,7 +366,8 @@ The following options need to be configured: OF_TBCLK - The timebase frequency. OF_STDOUT_PATH - The path to the console device - boards with QUICC Engines require OF_QE to set UCC mac addresses + boards with QUICC Engines require OF_QE to set UCC MAC + addresses CONFIG_OF_BOARD_SETUP @@ -375,7 +376,7 @@ The following options need to be configured: CONFIG_OF_BOOT_CPU - This define fills in the correct boot cpu in the boot + This define fills in the correct boot CPU in the boot param header, the default value is zero if undefined. - Serial Ports: @@ -445,7 +446,7 @@ The following options need to be configured: linux_logo.h for logo. Requires CONFIG_VIDEO_LOGO CONFIG_CONSOLE_EXTRA_INFO - addional board info beside + additional board info beside the logo When CONFIG_CFB_CONSOLE is defined, video console is @@ -515,7 +516,7 @@ The following options need to be configured: The value of these goes into the environment as "ramboot" and "nfsboot" respectively, and can be used as a convenience, when switching between booting from - ram and nfs. + RAM and NFS. - Pre-Boot Commands: CONFIG_PREBOOT @@ -735,11 +736,11 @@ The following options need to be configured: Support for Intel 8254x gigabit chips. CONFIG_E1000_FALLBACK_MAC - default MAC for empty eeprom after production. + default MAC for empty EEPROM after production. CONFIG_EEPRO100 Support for Intel 82557/82559/82559ER chips. - Optional CONFIG_EEPRO100_SROM_WRITE enables eeprom +
[U-Boot-Users] [PATCH] Minor spelling fix in comment.
Signed-off-by: Marcel Ziswiler <[EMAIL PROTECTED]> --- cpu/pxa/start.S |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/cpu/pxa/start.S b/cpu/pxa/start.S index 1cdb709..23005e2 100644 --- a/cpu/pxa/start.S +++ b/cpu/pxa/start.S @@ -128,7 +128,7 @@ relocate: /* relocate U-Boot to RAM */ copy_loop: ldmia r0!, {r3-r10} /* copy from source address [r0]*/ stmia r1!, {r3-r10} /* copy to target address [r1]*/ - cmp r0, r2 /* until source end addreee [r2]*/ + cmp r0, r2 /* until source end address [r2]*/ ble copy_loop #endif /* !CONFIG_SKIP_RELOCATE_UBOOT */ -- 1.5.4.1 - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] pci: Move PCI device configuration check into a separate weak function
On Wednesday 09 July 2008, Nobuhiro Iwamatsu wrote: > >> When PCI_BDF was 0,0,0, does the board of PPC have the device which > >> do not want to initialize? > > > > This is the current situation, yes. At least on PPC4xx. With this new > > patch all platforms can overwrite this default behavior without breaking > > backward compatibility. > > OK, I see. > > > Does it work for you? > > Work fine. Thank you. OK. > But I have suggestion. > > If these cords depend on PPC4xx and other PPC platform, I think that move > these code to PPC platform. > Do you think this suggestion? I don't know if this current implementation only works for PPC. Its used on all platforms using this PCI code right now. So I think we should keep this version in this file as default behavior. Best regards, Stefan = DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: [EMAIL PROTECTED] = - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] pci: Move PCI device configuration check into a separate weak function
Hi, Stefan. 2008/7/9 Stefan Roese <[EMAIL PROTECTED]>: > Hi Nobuhiro, > > On Wednesday 09 July 2008, Nobuhiro Iwamatsu wrote: >> When PCI_BDF was 0,0,0, does the board of PPC have the device which >> do not want to initialize? > > This is the current situation, yes. At least on PPC4xx. With this new patch > all platforms can overwrite this default behavior without breaking backward > compatibility. > OK, I see. > Does it work for you? Work fine. Thank you. But I have suggestion. If these cords depend on PPC4xx and other PPC platform, I think that move these code to PPC platform. Do you think this suggestion? Best regards, Nobuhiro - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH 3/3] ppc4xx: Initial framework of the AMCC PPC460SX redwood reference board.
From: Feng Kan <[EMAIL PROTECTED]> Add AMCC Redwood reference board that uses the latest PPC 464 CPU processor combined with a rich mix of peripheral controllers. The board will support PCIe, mutiple Gig ethernet ports, advanced hardware RAID assistance and IEEE 1588. Signed-off-by: Feng Kan <[EMAIL PROTECTED]> --- MAINTAINERS |3 + MAKEALL |1 + Makefile |3 + board/amcc/redwood/Makefile | 50 board/amcc/redwood/config.mk | 42 board/amcc/redwood/init.S | 77 +++ board/amcc/redwood/redwood.c | 492 + board/amcc/redwood/redwood.h | 50 board/amcc/redwood/u-boot.lds | 147 9 files changed, 865 insertions(+), 0 deletions(-) create mode 100644 board/amcc/redwood/Makefile create mode 100644 board/amcc/redwood/config.mk create mode 100644 board/amcc/redwood/init.S create mode 100644 board/amcc/redwood/redwood.c create mode 100644 board/amcc/redwood/redwood.h create mode 100644 board/amcc/redwood/u-boot.lds diff --git a/MAINTAINERS b/MAINTAINERS index a3d70b1..a4637fd 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -420,6 +420,9 @@ Guennadi Liakhovetski <[EMAIL PROTECTED]> linkstation MPC8241 +Feng Kan <[EMAIL PROTECTED]> + + redwood PPC4xx - Unknown / orphaned boards: diff --git a/MAKEALL b/MAKEALL index 32caab7..566e63a 100755 --- a/MAKEALL +++ b/MAKEALL @@ -221,6 +221,7 @@ LIST_4xx=" \ PPChameleonEVB \ quad100hd \ rainier \ + redwood \ sbc405 \ sc3 \ sequoia \ diff --git a/Makefile b/Makefile index 8bfc891..ff38e0c 100644 --- a/Makefile +++ b/Makefile @@ -1417,6 +1417,9 @@ rainier_nand_config: unconfig @echo "TEXT_BASE = 0x0100" > $(obj)board/amcc/sequoia/config.tmp @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk +redwood_config: unconfig + @$(MKCONFIG) $(@:_config=) ppc ppc4xx redwood amcc + sc3_config:unconfig @$(MKCONFIG) $(@:_config=) ppc ppc4xx sc3 diff --git a/board/amcc/redwood/Makefile b/board/amcc/redwood/Makefile new file mode 100644 index 000..a8bdb05 --- /dev/null +++ b/board/amcc/redwood/Makefile @@ -0,0 +1,50 @@ +# +# (C) Copyright 2008 +# Feng Kan, Applied Micro Circuits Corp., [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 $(TOPDIR)/config.mk + +LIB= $(obj)lib$(BOARD).a + +COBJS = $(BOARD).o +SOBJS = init.o + +SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) +OBJS := $(addprefix $(obj),$(COBJS)) +SOBJS := $(addprefix $(obj),$(SOBJS)) + +$(LIB):$(obj).depend $(OBJS) $(SOBJS) + $(AR) $(ARFLAGS) $@ $(OBJS) + +clean: + rm -f $(SOBJS) $(OBJS) + +distclean: clean + rm -f $(LIB) core *.bak .depend *~ + +# + +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +# diff --git a/board/amcc/redwood/config.mk b/board/amcc/redwood/config.mk new file mode 100644 index 000..531d9d3 --- /dev/null +++ b/board/amcc/redwood/config.mk @@ -0,0 +1,42 @@ +# +# (C) Copyright 2008 +# Feng Kan, Applied Micro Circuits Corp., [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 +
[U-Boot-Users] [PATCH 2/3] ppc4xx: Add initial 460SX reference board (redwood) config file and defines.
From: Feng Kan <[EMAIL PROTECTED]> Signed-off-by: Feng Kan <[EMAIL PROTECTED]> --- include/asm-ppc/ppc4xx-sdram.h |3 +- include/asm-ppc/processor.h|4 + include/configs/redwood.h | 186 include/ppc440.h | 20 +++-- include/ppc4xx.h |3 +- 5 files changed, 207 insertions(+), 9 deletions(-) create mode 100644 include/configs/redwood.h diff --git a/include/asm-ppc/ppc4xx-sdram.h b/include/asm-ppc/ppc4xx-sdram.h index 83931f1..6eb8209 100644 --- a/include/asm-ppc/ppc4xx-sdram.h +++ b/include/asm-ppc/ppc4xx-sdram.h @@ -282,7 +282,8 @@ * Memory Bank 0-7 configuration */ #if defined(CONFIG_440SPE) || \ -defined(CONFIG_460EX) || defined(CONFIG_460GT) +defined(CONFIG_460EX) || defined(CONFIG_460GT) || \ +defined(CONFIG_460SX) #define SDRAM_RXBAS_SDBA_MASK 0xFFE0 /* Base address */ #define SDRAM_RXBAS_SDBA_ENCODE(n) u32)(n))&0xFFE0)>>2) #define SDRAM_RXBAS_SDBA_DECODE(n) u32)(n))&0xFFE0)<<2) diff --git a/include/asm-ppc/processor.h b/include/asm-ppc/processor.h index 5b50679..7f1e34f 100644 --- a/include/asm-ppc/processor.h +++ b/include/asm-ppc/processor.h @@ -810,6 +810,10 @@ #define PVR_460EX_RA 0x130218A3 /* 460EX rev A without Security Engine */ #define PVR_460GT_SE_RA0x130218A0 /* 460GT rev A with Security Engine */ #define PVR_460GT_RA 0x130218A1 /* 460GT rev A without Security Engine */ +#define PVR_460SX_RA0x13541800 /* 460SX rev A */ +#define PVR_460SX_RA_V1 0x13541801 /* 460SX rev A Variant 1 Security disabled */ +#define PVR_460GX_RA0x13541802 /* 460GX rev A */ +#define PVR_460GX_RA_V1 0x13541803 /* 460GX rev A Variant 1 Security disabled */ #define PVR_6010x0001 #define PVR_6020x0005 #define PVR_6030x0003 diff --git a/include/configs/redwood.h b/include/configs/redwood.h new file mode 100644 index 000..8af9f48 --- /dev/null +++ b/include/configs/redwood.h @@ -0,0 +1,186 @@ +/* + * Configuration for AMCC 460SX Ref (redwood) + * + * (C) Copyright 2008 + * Feng Kan, Applied Micro Circuits Corp., [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 + */ +#ifndef __CONFIG_H +#define __CONFIG_H + +/*--- + * High Level Configuration Options + *--*/ +#define CONFIG_4xx 1 /* ... PPC4xx family*/ +#define CONFIG_440 1 /* ... PPC460 family*/ +#define CONFIG_460SX 1 /* ... PPC460 family*/ +#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_pre_init */ + +/*--- + * Include common defines/options for all AMCC boards + *--*/ +#define CONFIG_HOSTNAMEredwood + +#include "amcc-common.h" + +#define CONFIG_SYS_CLK_FREQ/* external freq to pll */ + +/*--- + * Base addresses -- Note these are effective addresses where the + * actual resources get mapped (not physical addresses) + *--*/ +#define CFG_FLASH_BASE 0xfff0 /* start of FLASH */ +#define CFG_PERIPHERAL_BASE0xa000 /* internal peripherals */ +#define CFG_ISRAM_BASE 0x9000 /* internal SRAM*/ + +#define CFG_PCI_BASE 0xd000 /* internal PCI regs*/ + +#define CFG_PCIE_MEMBASE0x9000 /* mapped PCIe memory */ +#define CFG_PCIE0_MEMBASE 0x9000 /* mapped PCIe memory */ +#define CFG_PCIE1_MEMBASE 0xa000 /* mapped PCIe memory */ +#define CFG_PCIE_MEMSIZE0x0100 + +#define CFG_PCIE0_XCFGBASE 0xb000 +#define CFG_PCIE1_XCFGBASE 0xb200 +#define CFG_PCIE2_XCFGBASE 0xb400 +#define CFG_PCIE0_CFGBASE 0xb600 +#define CFG_PCIE1_CF
[U-Boot-Users] [PATCH 1/3] ppc4xx: Add initial 460SX defines for the cpu/ppc4xx directory.
From: Feng Kan <[EMAIL PROTECTED]> Signed-off-by: Feng Kan <[EMAIL PROTECTED]> --- cpu/ppc4xx/44x_spd_ddr2.c |3 ++- cpu/ppc4xx/cpu.c | 33 + cpu/ppc4xx/speed.c|3 ++- cpu/ppc4xx/start.S| 19 +-- 4 files changed, 54 insertions(+), 4 deletions(-) diff --git a/cpu/ppc4xx/44x_spd_ddr2.c b/cpu/ppc4xx/44x_spd_ddr2.c index c28fc46..582d5ed 100644 --- a/cpu/ppc4xx/44x_spd_ddr2.c +++ b/cpu/ppc4xx/44x_spd_ddr2.c @@ -52,7 +52,8 @@ #if defined(CONFIG_SPD_EEPROM) && \ (defined(CONFIG_440SP) || defined(CONFIG_440SPE) || \ -defined(CONFIG_460EX) || defined(CONFIG_460GT)) +defined(CONFIG_460EX) || defined(CONFIG_460GT) || \ +defined(CONFIG_460SX)) /*-+ * Defines diff --git a/cpu/ppc4xx/cpu.c b/cpu/ppc4xx/cpu.c index 39f439d..ef32bc6 100644 --- a/cpu/ppc4xx/cpu.c +++ b/cpu/ppc4xx/cpu.c @@ -184,6 +184,19 @@ static char *bootstrap_str[] = { static char bootstrap_char[] = { 'A', 'B', 'C', 'D', 'E', 'G', 'F', 'H' }; #endif +#if defined(CONFIG_460SX) +#define SDR0_PINSTP_SHIFT 29 +static char *bootstrap_str[] = { + "EBC (8 bits)", + "EBC (16 bits)", + "EBC (32 bits)", + "NAND (8 bits)", + "I2C (Addr 0x54)", /* A8 */ + "I2C (Addr 0x52)", /* A4 */ +}; +static char bootstrap_char[] = { 'A', 'B', 'C', 'D', 'E', 'G' }; +#endif + #if defined(CONFIG_405EZ) #define SDR0_PINSTP_SHIFT 28 static char *bootstrap_str[] = { @@ -509,6 +522,26 @@ int checkcpu (void) strcpy(addstr, "Security/Kasumi support"); break; + case PVR_460SX_RA: + puts("SX Rev. A"); + strcpy(addstr, "Security support"); + break; + + case PVR_460SX_RA_V1: + puts("SX Rev. A"); + strcpy(addstr, "No Security support"); + break; + + case PVR_460GX_RA: + puts("GX Rev. A"); + strcpy(addstr, "Security support"); + break; + + case PVR_460GX_RA_V1: + puts("GX Rev. A"); + strcpy(addstr, "No Security support"); + break; + default: printf (" UNKNOWN (PVR=%08x)", pvr); break; diff --git a/cpu/ppc4xx/speed.c b/cpu/ppc4xx/speed.c index ef47ffc..336ca02 100644 --- a/cpu/ppc4xx/speed.c +++ b/cpu/ppc4xx/speed.c @@ -205,7 +205,8 @@ ulong get_PCI_freq (void) #elif defined(CONFIG_440) -#if defined(CONFIG_460EX) || defined(CONFIG_460GT) +#if defined(CONFIG_460EX) || defined(CONFIG_460GT) || \ +defined(CONFIG_460SX) static u8 pll_fwdv_multi_bits[] = { /* values for: 1 - 16 */ 0x00, 0x01, 0x0f, 0x04, 0x09, 0x0a, 0x0d, 0x0e, 0x03, 0x0c, diff --git a/cpu/ppc4xx/start.S b/cpu/ppc4xx/start.S index 426bf3c..97411bd 100644 --- a/cpu/ppc4xx/start.S +++ b/cpu/ppc4xx/start.S @@ -677,7 +677,8 @@ _start: /* not all PPC's have internal SRAM usable as L2-cache */ #if defined(CONFIG_440GX) || \ defined(CONFIG_440SP) || defined(CONFIG_440SPE) || \ -defined(CONFIG_460EX) || defined(CONFIG_460GT) +defined(CONFIG_460EX) || defined(CONFIG_460GT) || \ +defined(CONFIG_460SX) mtdcr l2_cache_cfg,r0 /* Ensure L2 Cache is off */ #endif @@ -720,6 +721,19 @@ _start: lis r1,0x4000 /* BAS = 8000_ */ ori r1,r1,0x4580/* 16k */ mtdcr isram0_sb0cr,r1 +#elif defined(CONFIG_460SX) + lis r1,0x /* BAS = _ */ + ori r1,r1,0x0B84/* first 128k */ + mtdcr isram0_sb0cr,r1 + lis r1,0x0001 + ori r1,r1,0x0B84/* second 128k */ + mtdcr isram0_sb1cr,r1 + lis r1, 0x0002 + ori r1,r1, 0x0B84 /* third 128k */ + mtdcr isram0_sb2cr,r1 + lis r1, 0x0003 + ori r1,r1, 0x0B84 /* fourth 128k */ + mtdcr isram0_sb3cr,r1 #elif defined(CONFIG_440GP) ori r1,r1,0x0380/* 8k rw */ mtdcr isram0_sb0cr,r1 @@ -1415,7 +1429,8 @@ relocate_code: #if defined(CONFIG_440EP) || defined(CONFIG_440GR) || \ defined(CONFIG_440EPX) || defined(CONFIG_440GRX) || \ defined(CONFIG_440SP) || defined(CONFIG_440SPE) || \ -defined(CONFIG_460EX) || defined(CONFIG_460GT) +defined(CONFIG_460EX) || defined(CONFIG_460GT) || \ +defined(CONFIG_460SX) /* * On some 440er platforms the cache is enabled in the first TLB (Boot-CS) * to speed up the boot process. Now this cache needs to be disabled. -- 1.5.6.1 - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, re
Re: [U-Boot-Users] [PATCH] pci: Move PCI device configuration check into a separate weak function
Hi Nobuhiro, On Wednesday 09 July 2008, Nobuhiro Iwamatsu wrote: > When PCI_BDF was 0,0,0, does the board of PPC have the device which > do not want to initialize? This is the current situation, yes. At least on PPC4xx. With this new patch all platforms can overwrite this default behavior without breaking backward compatibility. Does it work for you? Best regards, Stefan = DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: [EMAIL PROTECTED] = - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH, resend] Support dynamic/patched NAND ENV offset
Hi again! On Tue, Jul 08, 2008 at 11:05:10AM -0500, Scott Wood wrote: >> Therefore, I still believe that such a feature is useful and should be >> merged into u-boot. If there are problems with my particular >> implementation, I'm happy to address them. > > Can you base it off of the testing branch of the u-boot-nand-flash repo? I just tried it, and the patch actually applies cleanly to the nand-flash/testing branch. So feel free to go ahead and merge :) >> I also have another patchset for what I call 'dynpart' support, i.e. the >> dynamic calculation of a unit-specific partition table that ensures the >> net size of partitions are as per spec, no matter how many of the >> factory default blocks are located where. So it would even support >> NAND devices with a worse spec than the ones that we were using. I'll base that also on top of nand-flash/testing and submit later. Will probably need some generalization for the board-level integration. Cheers, -- - Harald Welte <[EMAIL PROTECTED]> http://openmoko.org/ Software for the world's first truly open Free Software mobile phone - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] pci: Move PCI device configuration check into a separate weak function
Hi, Stefan. 2008/7/8 Stefan Roese <[EMAIL PROTECTED]>: > This patch moves the check, if a device should be skipped in PCI PNP > configuration into the function pci_skip_dev(). This function is defined > as weak so that it can be overwritten by a platform specific one if > needed. The check if the device should get printed in the PCI summary upon > bootup (when CONFIG_PCI_SCAN_SHOW is defined) is moved to the function > pci_print_dev() which is also defined as weak too. > > Signed-off-by: Stefan Roese <[EMAIL PROTECTED]> > --- > drivers/pci/pci.c | 70 ++-- > 1 files changed, 46 insertions(+), 24 deletions(-) > > diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c > index b3ae3b1..16180cb 100644 > --- a/drivers/pci/pci.c > +++ b/drivers/pci/pci.c > @@ -411,6 +411,40 @@ void pci_cfgfunc_do_nothing(struct pci_controller *hose, > extern int pciauto_config_device(struct pci_controller *hose, pci_dev_t dev); > extern void pciauto_config_init(struct pci_controller *hose); > > +int __pci_skip_dev(struct pci_controller *hose, pci_dev_t dev) > +{ > + /* > +* Check if pci device should be skipped in configuration > +*/ > + if (dev == PCI_BDF(hose->first_busno, 0, 0)) { > +#if defined(CONFIG_PCI_CONFIG_HOST_BRIDGE) /* don't skip host bridge */ > + /* > +* Only skip configuration if "pciconfighost" is not set > +*/ > + if (getenv("pciconfighost") == NULL) > + return 1; > +#else > + return 1; > +#endif > + } > + > + return 0; > +} > +int pci_skip_dev(struct pci_controller *hose, pci_dev_t dev) > + __attribute__((weak, alias("__pci_skip_dev"))); > + > +#ifdef CONFIG_PCI_SCAN_SHOW > +int __pci_print_dev(struct pci_controller *hose, pci_dev_t dev) > +{ > + if (dev == PCI_BDF(hose->first_busno, 0, 0)) > + return 0; > + > + return 1; > +} > +int pci_print_dev(struct pci_controller *hose, pci_dev_t dev) > + __attribute__((weak, alias("__pci_print_dev"))); > +#endif /* CONFIG_PCI_SCAN_SHOW */ When PCI_BDF was 0,0,0, does the board of PPC have the device which do not want to initialize? Best regards, Nobuhiro -- Nobuhiro Iwamatsu - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH] [resubmit] AX88180: new gigabit network driver
Signed-off-by: Louis Su <[EMAIL PROTECTED]> --- drivers/net/Makefile |1 + drivers/net/ax88180.c | 727 + drivers/net/ax88180.h | 412 3 files changed, 1140 insertions(+), 0 deletions(-) create mode 100644 drivers/net/ax88180.c create mode 100644 drivers/net/ax88180.h diff --git a/drivers/net/Makefile b/drivers/net/Makefile index 84be288..3a574e0 100644 --- a/drivers/net/Makefile +++ b/drivers/net/Makefile @@ -26,6 +26,7 @@ include $(TOPDIR)/config.mk LIB:= $(obj)libnet.a COBJS-$(CONFIG_DRIVER_3C589) += 3c589.o +COBJS-$(CONFIG_DRIVER_AX88180) += ax88180.o COBJS-$(CONFIG_BCM570x) += bcm570x.o bcm570x_autoneg.o 5701rls.o COBJS-$(CONFIG_BFIN_MAC) += bfin_mac.o COBJS-$(CONFIG_DRIVER_CS8900) += cs8900.o diff --git a/drivers/net/ax88180.c b/drivers/net/ax88180.c new file mode 100644 index 000..1457355 --- /dev/null +++ b/drivers/net/ax88180.c @@ -0,0 +1,727 @@ +/* + * ax88180: ASIX AX88180 Non-PCI Gigabit Ethernet u-boot driver + * + * This program is free software; you can distribute it and/or modify + * it under the terms of the GNU General Public License (Version 2) as + * published by the Free Software Foundation. + * This program is distributed in the hope 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. + */ + +/* + * + * ASIX AX88180 Non-PCI 16/32-bit Gigabit Ethernet Linux Driver + * + * The AX88180 Ethernet controller is a high performance and highly + * integrated local CPU bus Ethernet controller with embedded 40K bytes + * SRAM and supports both 16-bit and 32-bit SRAM-Like interfaces for any + * embedded systems. + * The AX88180 is a single chip 10/100/1000Mbps Gigabit Ethernet + * controller that supports both MII and RGMII interfaces and is + * compliant to IEEE 802.3, IEEE 802.3u and IEEE 802.3z standards. + * + * Please visit ASIX's web site (http://www.asix.com.tw) for more + * details. + * + * Module Name : ax88180.c + * Date: 2008-07-07 + * History + * 09/06/2006 : New release for AX88180 US2 chip. + * 07/07/2008 : Fix up the coding style and using inline functions + * instead of macros + * + */ +#include +#include +#include +#include +#include "ax88180.h" + +/* + * === + * Local SubProgram Declaration + * === + */ +static void ax88180_rx_handler (struct eth_device *dev); +static int ax88180_phy_initial (struct eth_device *dev); +static void ax88180_meidia_config (struct eth_device *dev); +static unsigned long get_CicadaPHY_meida_mode (struct eth_device *dev); +static unsigned long get_MarvellPHY_meida_mode (struct eth_device *dev); +static unsigned short ax88180_mdio_read (struct eth_device *dev, +unsigned long regaddr); +static void ax88180_mdio_write (struct eth_device *dev, + unsigned long regaddr, unsigned short regdata); + +/* + * === + * Local SubProgram Bodies + * === + */ +static int ax88180_mdio_check_complete (struct eth_device *dev) +{ + int us_cnt = 1; + unsigned short tmpval; + + /* MDIO read/write should not take more than 10 ms */ + while (--us_cnt) { + tmpval = INW (dev, MDIOCTRL); + if (((tmpval & READ_PHY) == 0) && ((tmpval & WRITE_PHY) == 0)) + break; + } + + return us_cnt; +} + +static unsigned short +ax88180_mdio_read (struct eth_device *dev, unsigned long regaddr) +{ + struct ax88180_private *priv = (struct ax88180_private *)dev->priv; + unsigned long tmpval = 0; + + OUTW (dev, (READ_PHY | (regaddr << 8) | priv->PhyAddr), MDIOCTRL); + + if (ax88180_mdio_check_complete (dev)) + tmpval = INW (dev, MDIODP); + else + printf ("Failed to read PHY register!\n"); + + return (unsigned short)(tmpval & 0x); +} + +static void +ax88180_mdio_write (struct eth_device *dev, unsigned long regaddr, + unsigned short regdata) +{ + struct ax88180_private *priv = (struct ax88180_private *)dev->priv; + + OUTW (dev, regdata, MDIODP); + + OUTW (dev, (WRITE_PHY | (regaddr << 8) | priv->PhyAddr), MDIOCTRL); + +
[U-Boot-Users] [resubmit] AX88180: new gigabit network driver
Dear Ben, Please review the resubmitted patch; This patch fix up following issues: 1. coding style 2. eliminate macros 3. use debug instead of PRINTK Thanks, Louis - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] No ethernet link on Lubbock board.
Victor wrote: > This is a problem I've been fighting to for a long time. I'm sure it > would be something stupid I haven't noticed, but I don't know what > else to try. My Linux OS is working flawlessly with a correct eth0 > device, so at least I know it's not (or should not) a hardware > problem. > > No, it looks like the driver has some badly circular logic > Everything else works as expected, but the LAN91C96 driver does not > enable the board network interface. > > So even after the message "Using MAC Address 00:02:b3:00:8f:xx" (assuming "xx" is really "01" or something real) it doesn't work? I think it should. > Environment: > Hardware: Lubbock Board from Intel, wired to an IBM Laptop. > U-boot version: 1.3.3 (tried with 1.3.1, 1.20, same results) > mac address: tried with the one generated by the eth_gen_tool, and the > original hardware one. > Default 'lubbock.h' file, heavy edited one, etc... No luck. > > $ printenv: > U-Boot 1.3.3 (Jul 8 2008 - 19:07:01) > > DRAM: 64 MB > Flash: 64 MB > Hit any key to stop autoboot: 0 > $ printenv > baudrate=115200 > netmask=255.255.0.0 > bootdelay=5 > serverip=192.168.1.1 > ipaddr=192.168.1.2 > bootcmd=bootm 20 > bootargs=ip=192.168.1.2:192.168.1.1:192.168.1.1:255.255.255.0:pxa:eth0:off > mem=64M root=/dev/nfs nfsroot=192.168.1.1:/rootfs/nfs init=/sbin/init > console=ttyS0,115200 > ethaddr=00:02:b3:00:8f:xx > stdin=serial > stdout=serial > stderr=serial > > Something odd I noticed: > > $ tftpboot > > Warning: MAC addresses don't match: > HW MAC address: 01:00:01:00:01:00 > "ethaddr" value: 00:02:B3:00:8F:xx > Using MAC Address 00:02:B3:00:8F:xx > > Linux detects the correct Mac Address without any configuration, why > u-boot reads 01:00:01:00:01:00? > > Probably the number that's initialized in the device. It's a bogus MAC address, but you're really reading uninitialized data. The problem is this: tftpboot calls smc_open(), which calls smc_get_ethaddr(), which in turn reads the environment and reads the MAC address registers in the device, comparing them. It then writes the appropriate MAC address to the device's address registers... See the problem? the device's registers aren't non-volatile. What you really want to do is read only from the environment and program the device with that value. The problem really stems from the fact that get_rom_mac() always returns 1. If I had time and hardware I'd help fix this. I would think that things should work as-is, though, and that you should be able to just ignore the warning. Sorry if this is confusing. regards, Ben - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 1/2] fdt_support: fdt_fixup_dr_usb: add support for phy_type fixups
Anton Vorontsov wrote: > Currently U-Boot can only fixup the usb dr_mode, but some boards (namely > MPC8315E-RDB) can use two PHY types: ULPI (stand-alone OTG port) or UTMI > (connected to the four-ports hub, usb host only). > > This patch implements support for passing Dual-Role USB controller's > device tree property phy_type through the usb_phy_type environment > variable. > > Signed-off-by: Anton Vorontsov <[EMAIL PROTECTED]> > --- > common/fdt_support.c | 30 +++--- > 1 files changed, 23 insertions(+), 7 deletions(-) > > diff --git a/common/fdt_support.c b/common/fdt_support.c > index 3828228..24bbed0 100644 > --- a/common/fdt_support.c > +++ b/common/fdt_support.c Hi Anton, Kim, This looks good to me. Anton, I presume this is additional functionality for the next window, not a bug fix for the current (closed) window? Kim, would you like to apply this as well as [PATCH 2/2] through the 83xx repository so the two halves go in at the same time? Acked-by: Gerald Van Baren <[EMAIL PROTECTED]> Thanks, gvb - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH, resend] Support dynamic/patched NAND ENV offset
On Tue, Jul 08, 2008 at 11:12:31PM +0200, Wolfgang Denk wrote: > In message <[EMAIL PROTECTED]> you wrote: > > > > > I also have another patchset for what I call 'dynpart' support, i.e. the > > > dynamic calculation of a unit-specific partition table that ensures the > > > net size of partitions are as per spec, no matter how many of the > > > factory default blocks are located where. So it would even support > > > NAND devices with a worse spec than the ones that we were using. > > > > Interesting... Would such a patch eliminate the need for this one, by > > making the environment a dynamic partition? Is there any (plan for) > > Linux support? > > What's the relation of this to the mtdparts handling in U-Boot and > Linux? see my other mail in this thread (just posted). More precisely, the flow of events in a full dynenv + dynpart setup (like the three openmoko devices so far) is: 1) u-boot creates a bad block table as part of the production process of the device 2) afterwards, the device-unique partition table is created (net partition sizes as per board-level spec), including an environment partition. 3) the standard regular partition table is stored in the environment 4) the environment including the mtdparts variable is saved to the env partition 5) the nand flash offset to the environment partition is stored in the out-of-band area of the first (known-always-good) nand flash block During boot, the regular mechanism of passing 'mtdparts' to the kernel is used. This was the most elegant scheme that I could come up with to support a large number of factory-bad blocks at any given location in the flash while still keeping the amount of overhead per partition low. Cheers, -- - Harald Welte <[EMAIL PROTECTED]> http://openmoko.org/ Software for the world's first truly open Free Software mobile phone - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH, resend] Support dynamic/patched NAND ENV offset
On Tue, Jul 08, 2008 at 11:05:10AM -0500, Scott Wood wrote: >> Therefore, I still believe that such a feature is useful and should be >> merged into u-boot. If there are problems with my particular >> implementation, I'm happy to address them. > > Can you base it off of the testing branch of the u-boot-nand-flash repo? Will do. Probably by tomorrow. >> I also have another patchset for what I call 'dynpart' support, i.e. the >> dynamic calculation of a unit-specific partition table that ensures the >> net size of partitions are as per spec, no matter how many of the >> factory default blocks are located where. So it would even support >> NAND devices with a worse spec than the ones that we were using. > > Interesting... Would such a patch eliminate the need for this one, by > making the environment a dynamic partition? Is there any (plan for) > Linux support? no, the dynamic partition table is calculated once and then stored in the environment. Therefore, the environment has to be either stored outside the NAND flash, or located by the OOB marker. Therefore, the dynpart patch bases on top of the dynenv patch. Linux has no need to support it, since it gets the device-unique partition table passed by the standard commandline mtdparts mechanism. -- - Harald Welte <[EMAIL PROTECTED]> http://openmoko.org/ Software for the world's first truly open Free Software mobile phone - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 04/10 v2] [ARM] TQMA31: add new board with i.MX31 processor
On Wed, 9 Jul 2008, Wolfgang Denk wrote: > In message <[EMAIL PROTECTED]> you wrote: > > > > > +# Copyright (C) 2008, Guennadi Liakhovetski <[EMAIL PROTECTED]> > > > +# Copyright (C) 2008, Jens Gehrlein <[EMAIL PROTECTED]> > > > > Thanks for the credit, but, although IANAL, I think, one does not _have_ > > to preserve the copyright of the original file when it gets copied to a > > Yes, of course you do. If you copy code, you *must* honour existing > copyrights and have not any right to remove these. hm, starting from how many lines of code? Copy-paste is one of the main programming technics, as we all know:-) If you copy one line, you don't have to transfer all copyrights over, do you? Thanks Guennadi --- Guennadi Liakhovetski, Ph.D. DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: [EMAIL PROTECTED] - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 04/10 v2] [ARM] TQMA31: add new board with i.MX31 processor
In message <[EMAIL PROTECTED]> you wrote: > > > +# Copyright (C) 2008, Guennadi Liakhovetski <[EMAIL PROTECTED]> > > +# Copyright (C) 2008, Jens Gehrlein <[EMAIL PROTECTED]> > > Thanks for the credit, but, although IANAL, I think, one does not _have_ > to preserve the copyright of the original file when it gets copied to a Yes, of course you do. If you copy code, you *must* honour existing copyrights and have not any right to remove these. > new one. Otherwise most open-source files would have a vry long list > of Copyrights:-) Am I right? No, you are fundamentally wrong. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED] Brain off-line, please wait. - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH v2] Add MVBC_P board
Kim Phillips wrote: On Tue, 08 Jul 2008 20:48:43 +0200 André Schwarz <[EMAIL PROTECTED]> wrote: ok - would you accept that ? Mostly I touch as less common code as possible - usually it will be rejected. Houston? now that I think about it, the gpio struct discrepancies among 83xx, 5xxx, and potentially others could use a clean up..you shouldn't have to #ifdef in your fpga.c file. patches welcome ;) Kim But we should do one thing after the other or my head will explode... :-( I'll do a common fpga.c within company subdir and fix all pending issues. As soon as the gpios are generalized I'll submit a patch and use it. Is this acceptable ? regards, André MATRIX VISION GmbH, Talstraße 16, DE-71570 Oppenweiler - Registergericht: Amtsgericht Stuttgart, HRB 271090 Geschäftsführer: Gerhard Thullner, Werner Armingeon, Uwe Furtner - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] Add MVBC_P board
Kim Phillips wrote: On Tue, 08 Jul 2008 16:35:00 +0200 Andre Schwarz <[EMAIL PROTECTED]> wrote: Kim, I forgot to mention that both fpga.c are _not_ the same. They are using different FPGA sizes _and_ different I/Os on different cpu. the size is a one-line thing that can be easily and understandably #ifdeffed. The gpio struct difference can be fixed like this: static u32 get_dvo() { #ifdef CONFIG_MPC83XX volatile immap_t *im = (volatile immap_t *)CFG_IMMR; volatile gpio83xx_t *gpio = (volatile gpio83xx_t *)&im->gpio[0]; return gpio->dat; #else #ifdef CONFIG_MPC5XXX struct mpc5xxx_gpio *gpio = (struct mpc5xxx_gpio*)MPC5XXX_GPIO; return gpio->simple_dvo; #endif #endif } ...and subsequently use get_dvo() later in the file. ok - you're right. Will fix it along with other out_* issues. It's not possible for me to use a common file for the short term. Maybe later when the FPGA interface got mature ... I really think code maintenance will suffer if you don't do it now; afaict, the file is functionally equal modulo the size one-liner. Kim yes - thanks for persuading :-) MATRIX VISION GmbH, Talstraße 16, DE-71570 Oppenweiler - Registergericht: Amtsgericht Stuttgart, HRB 271090 Geschäftsführer: Gerhard Thullner, Werner Armingeon, Uwe Furtner - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 04/10 v2] [ARM] TQMA31: add new board with i.MX31 processor
On Tue, 8 Jul 2008, Jens Gehrlein wrote: > diff --git a/board/tqc/tqma31/Makefile b/board/tqc/tqma31/Makefile > new file mode 100644 > index 000..f7e17c8 > --- /dev/null > +++ b/board/tqc/tqma31/Makefile > @@ -0,0 +1,48 @@ > +# > +# Copyright (C) 2008, Guennadi Liakhovetski <[EMAIL PROTECTED]> > +# Copyright (C) 2008, Jens Gehrlein <[EMAIL PROTECTED]> Thanks for the credit, but, although IANAL, I think, one does not _have_ to preserve the copyright of the original file when it gets copied to a new one. Otherwise most open-source files would have a vry long list of Copyrights:-) Am I right? Thanks Guennadi --- Guennadi Liakhovetski, Ph.D. Freelance Open-Source Software Developer - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] cpu/mpc85xx/fdt.c forcing incorrect UART clock into fdt.
I was updating a sbc8560 from u-boot v1.2.0 to git-current, and found that I'd loose the kernel serial console when the 8250 driver took over from udbg0 when using u-boot 1.3.x (booting via tftp'ing the dtb and the uImage separately) I eventually tracked it down to mpc85xx/fdt.c stomping on the contents of the UART clockrate in the dtb. Since the sbc8560 is sort of different -- in that it has external UARTs (instead of SOC/CPM), I'm guessing few other boards see this problem, because bi_busfreq is really their correct UART clk. I fixed it with this simple patch, but I was wondering whether it would be better to alternatively just check if the dtb value is zero, and then only insert a value; otherwise leave it alone... Paul. diff --git a/cpu/mpc85xx/fdt.c b/cpu/mpc85xx/fdt.c index 92952e6..bd43073 100644 --- a/cpu/mpc85xx/fdt.c +++ b/cpu/mpc85xx/fdt.c @@ -224,7 +224,7 @@ void ft_cpu_setup(void *blob, bd_t *bd) #ifdef CFG_NS16550 do_fixup_by_compat_u32(blob, "ns16550", - "clock-frequency", bd->bi_busfreq, 1); + "clock-frequency", CFG_NS16550_CLK, 1); #endif #ifdef CONFIG_CPM2 - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH v2] Add MVBC_P board
On Tue, 08 Jul 2008 20:48:43 +0200 André Schwarz <[EMAIL PROTECTED]> wrote: > ok - would you accept that ? > Mostly I touch as less common code as possible - usually it will be > rejected. Houston? now that I think about it, the gpio struct discrepancies among 83xx, 5xxx, and potentially others could use a clean up..you shouldn't have to #ifdef in your fpga.c file. patches welcome ;) Kim - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] Add MVBC_P board
On Tue, 08 Jul 2008 16:35:00 +0200 Andre Schwarz <[EMAIL PROTECTED]> wrote: > Kim, > > I forgot to mention that both fpga.c are _not_ the same. > They are using different FPGA sizes _and_ different I/Os on different cpu. the size is a one-line thing that can be easily and understandably #ifdeffed. The gpio struct difference can be fixed like this: static u32 get_dvo() { #ifdef CONFIG_MPC83XX volatile immap_t *im = (volatile immap_t *)CFG_IMMR; volatile gpio83xx_t *gpio = (volatile gpio83xx_t *)&im->gpio[0]; return gpio->dat; #else #ifdef CONFIG_MPC5XXX struct mpc5xxx_gpio *gpio = (struct mpc5xxx_gpio*)MPC5XXX_GPIO; return gpio->simple_dvo; #endif #endif } ...and subsequently use get_dvo() later in the file. > It's not possible for me to use a common file for the short term. > Maybe later when the FPGA interface got mature ... I really think code maintenance will suffer if you don't do it now; afaict, the file is functionally equal modulo the size one-liner. Kim - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH, resend] Support dynamic/patched NAND ENV offset
In message <[EMAIL PROTECTED]> you wrote: > > > I also have another patchset for what I call 'dynpart' support, i.e. the > > dynamic calculation of a unit-specific partition table that ensures the > > net size of partitions are as per spec, no matter how many of the > > factory default blocks are located where. So it would even support > > NAND devices with a worse spec than the ones that we were using. > > Interesting... Would such a patch eliminate the need for this one, by > making the environment a dynamic partition? Is there any (plan for) > Linux support? What's the relation of this to the mtdparts handling in U-Boot and Linux? Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED] Mistakes are often the stepping stones to utter failure. - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 0/2] Coldfire Ethernet initialization changes
Liew Tsi Chung wrote: > Ben, > > >>> -#if defined(CONFIG_FSLDMAFEC) >>> +#if defined(CONFIG_FSLDMAFEC) || #if defined(CONFIG_MCFFEC) >>> +/* Default initializations for MCFFEC controllers. To override, >>> + * create a board-specific function called: >>> + * int board_eth_init(bd_t *bis) >>> + */ >>> + >>> extern int mcdmafec_initialize(bd_t *bis); >>> +extern int mcffec_initialize(bd_t*); >>> >>> > > >> Does it work after you fix this up? >> > Yes. > Great! Thanks for checking it out. I'll update the repo tonight. regards, Ben - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] Doubt about the u-boot application
On 13:20 Tue 08 Jul , Kamat, Shilpa wrote: >Hi, > > > >We are using the u-boot application to boot up from a NAND flash on a STB >board with a linux kernel image. The entire process seems to be going in a >loop with the foll message: > >"Loading boot sector - OK " How could we suppose to help you? Please be more specific CPU, arch, board U-Boot version etc And please do not post as HTML Best Regards, J. - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 0/2] Coldfire Ethernet initialization changes
Ben, >> -#if defined(CONFIG_FSLDMAFEC) >> +#if defined(CONFIG_FSLDMAFEC) || #if defined(CONFIG_MCFFEC) >> +/* Default initializations for MCFFEC controllers. To override, >> + * create a board-specific function called: >> + * int board_eth_init(bd_t *bis) >> + */ >> + >> extern int mcdmafec_initialize(bd_t *bis); >> +extern int mcffec_initialize(bd_t*); >> >Does it work after you fix this up? Yes. Thanks. Regards, TsiChung - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] ARM: Fix for wrong patch version applied for Lyrtech SFF-SDR board (ARM926EJS)
On 11:02 Tue 08 Jul , Hugo Villeneuve wrote: > ARM: Fix for incorrect version of patch applied when > adding support for the Lyrtech SFF-SDR board. > > Signed-off-by: Hugo Villeneuve <[EMAIL PROTECTED]> > Signed-off-by: Philip Balister, OpenSDR <[EMAIL PROTECTED]> > > --- Wolfgang, please apply directly Best Regards, J. - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] PHY lib
Hi Michal, Michal Simek wrote: > Hi Ben, > > >> Hi Michal, >> >> Michal Simek wrote: >> >>> Hi Ben and others, >>> >>> do you have any plan to start with PHY libs? >>> I saw to tsec driver - there are some phy description. >>> I would like to use phy description for one eth driver which I do. >>> >>> >>> >> I'm finally finding time to work on refactoring U-boot's networking >> support, one of the parts of which is a proper PHY library. For several >> reasons, it pulls a lot from the TSEC driver. Cutting and pasting the >> PHY descriptions from TSEC is probably a good idea (in as much as >> cutting and pasting is a good idea :)). >> > > That's great. What next changes do you plan? > Thanks for information. > > So many things... Here are what I see as the low-hanging fruit: 1. Move all ethernet initializations into cpu_eth_init()/board_eth_init(). You can see this is underway. 2. Get rid of the CONFIG_NET_MULTI option. The trick here is to keep the code size of single-controller boards as small as possible. 3. PHY library. With these implemented, I think we can start to look at more interesting problems. Feel free to brainstorm here! regards, Ben - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH V2] Round the serial port clock divisor value returned by calc_divisor()
Round the serial port clock divisor value returned by calc_divisor(). Signed-off-by: Hugo Villeneuve <[EMAIL PROTECTED]> Signed-off-by: John Roberts <[EMAIL PROTECTED]> --- Rounding is important, especially when using high baud rates values like 115200bps. When using the non-rounded value, some boards will work and some won't. drivers/serial/serial.c |6 +- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/drivers/serial/serial.c b/drivers/serial/serial.c index 76425d8..1192f07 100644 --- a/drivers/serial/serial.c +++ b/drivers/serial/serial.c @@ -144,8 +144,12 @@ static int calc_divisor (NS16550_t port) #else #define MODE_X_DIV 16 #endif - return (CFG_NS16550_CLK / MODE_X_DIV / gd->baudrate); + /* Compute divisor value. Normally, we should simply return: +* CFG_NS16550_CLK) / MODE_X_DIV / gd->baudrate +* but we need to round that value by adding 0.5 or 8/16. +* Rounding is especially important at high baud rates. */ + return (((16 * CFG_NS16550_CLK) / MODE_X_DIV / gd->baudrate) + 8) / 16; } #if !defined(CONFIG_SERIAL_MULTI) - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] Round the serial port clock divisor value returned by calc_divisor()
Jerry Van Baren wrote: > Hugo Villeneuve wrote: >> Jerry Van Baren wrote: >>> Hugo Villeneuve wrote: Round the serial port clock divisor value returned by calc_divisor(). Signed-off-by: Hugo Villeneuve <[EMAIL PROTECTED]> --- Rounding is important, especially when using high baud rates values like 115200bps. When using the non-rounded value, some boards will work and some won't. drivers/serial/serial.c |7 ++- 1 files changed, 6 insertions(+), 1 deletions(-) diff --git a/drivers/serial/serial.c b/drivers/serial/serial.c index 76425d8..7e315ad 100644 --- a/drivers/serial/serial.c +++ b/drivers/serial/serial.c @@ -124,6 +124,8 @@ static NS16550_t serial_ports[4] = { static int calc_divisor (NS16550_t port) { + u32 divisor_x10; + #ifdef CONFIG_OMAP1510 /* If can't cleanly clock 115200 set div to 1 */ if ((CFG_NS16550_CLK == 1200) && (gd->baudrate == 115200)) { @@ -144,8 +146,11 @@ static int calc_divisor (NS16550_t port) #else #define MODE_X_DIV 16 #endif - return (CFG_NS16550_CLK / MODE_X_DIV / gd->baudrate); + /* Compute divisor value with rounding by adding 0.5 */ + divisor_x10 = (10 * CFG_NS16550_CLK) / MODE_X_DIV / gd->baudrate; + + return (divisor_x10 + 5) / 10; } #if !defined(CONFIG_SERIAL_MULTI) >>> Hi Hugo, >>> >>> Will a real rounding work? Work better? If I got my mental math >>> and parenthesis right and the resulting math doesn't overflow your >>> registers, the following will add 1/2 the baud rate scaled by the >>> MODE_X_DIV and then perform the divide which will do full rounding. >>> >>> return (((CFG_NS16550_CLK + ((gd->baudrate / 2)* MODE_X_DIV)) > oops, I missed a space ^ >>> / MODE_X_DIV) / gd->baudrate); >> I tested it and it works for me. >> But maybe the code is less obvious that way? > > Obviousness is relative. :-) > This will be more accurate, but accuracy is relative too. :-/ It > only has to be close. > > Since CFG_NS16550_CLK is very likely a multiple of MODE_X_DIV or it > doesn't matter if it isn't because it is much, much larger than > MODE_X_DIV, the formula could be simplified slightly without > substantially hurting the accuracy... > > return (((CFG_NS16550_CLK + (gd->baudrate / 2)) > / MODE_X_DIV) / gd->baudrate); > > A slight bit of added perceived complexity may be coming from my > addition of parenthesis to emphasize the evaluation order. The > following (should be) equivalent and reads better to my brain. > > return (CFG_NS16550_CLK + (gd->baudrate / 2)) / > (MODE_X_DIV * gd->baudrate); > > >>> Alternately, I prefer to scale up by 16 and then divide by 8 since >>> processors can do that very efficiently ( << 4 followed by >> 3). >>> Right. >> >> I prefer the second solution for its simplicity, but the first one >> also works. > > Bottom line: it's your call IMHO. Ok then, let´s use the second solution, updated patch will follow. Hugo V. Hugo Villeneuve Hardware developer | Concepteur matériel Lyrtech Phone/Tél. : (1) (418) 877-4644 #2395 Toll-free/Sans frais - Canada & USA : (1) (888) 922-4644 #2395 Fax/Téléc. : (1) (418) 877-7710 www.lyrtech.com Infinite possibilities...TM - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH v2] Add MVBC_P board
Grant Likely wrote: On Tue, Jul 8, 2008 at 10:16 AM, Andre Schwarz <[EMAIL PROTECTED]> wrote: The MVBC_P is a MPC5200B based camera system with Intel Gigabit ethernet controller (using e1000) and custom Altera Cyclone-II FPGA on PCI. Please see doc/README.mvbc_p for details. Signed-off-by: Andre Schwarz <[EMAIL PROTECTED]> --- Grant, I've modified the patch to meet the requested changes on the list from Kim and Wolfgang. - Add MK_STR define inside header and use it for environment - get rid of sync instruction by using out_* accessors - get rid of various ifdefs since they are not used anyway - get rid of unused function hw_watchdog_reset() +static void sdram_start (int hi_addr) +{ + long hi_bit = hi_addr ? 0x0100 : 0; + + /* unlock mode register */ + *(vu_long *)MPC5XXX_SDRAM_CTRL = SDRAM_CONTROL | 0x8000 | hi_bit; + __asm__ volatile ("sync"); All of these should also use out_be32(). ok - that's "common" code on each 52xx board. It's the same old problem that widely existing u-boot code is not acceptable for patches ;-) I'll fix this also - no problem. + + /* precharge all banks */ + *(vu_long *)MPC5XXX_SDRAM_CTRL = SDRAM_CONTROL | 0x8002 | hi_bit; + __asm__ volatile ("sync"); + + /* precharge all banks */ + *(vu_long *)MPC5XXX_SDRAM_CTRL = SDRAM_CONTROL | 0x8002 | hi_bit; + __asm__ volatile ("sync"); + + /* auto refresh */ + *(vu_long *)MPC5XXX_SDRAM_CTRL = SDRAM_CONTROL | 0x8004 | hi_bit; + __asm__ volatile ("sync"); + + /* set mode register */ + *(vu_long *)MPC5XXX_SDRAM_MODE = SDRAM_MODE; + __asm__ volatile ("sync"); + + /* normal operation */ + *(vu_long *)MPC5XXX_SDRAM_CTRL = SDRAM_CONTROL | hi_bit; + __asm__ volatile ("sync"); +} + +phys_addr_t initdram (int board_type) +{ + ulong dramsize = 0; + ulong test1, + test2; + + /* setup SDRAM chip selects */ + *(vu_long *)MPC5XXX_SDRAM_CS0CFG = 0x001e; + __asm__ volatile ("sync"); Ditto. + + /* setup config registers */ + *(vu_long *)MPC5XXX_SDRAM_CONFIG1 = SDRAM_CONFIG1; + *(vu_long *)MPC5XXX_SDRAM_CONFIG2 = SDRAM_CONFIG2; + __asm__ volatile ("sync"); + + /* find RAM size using SDRAM CS0 only */ + sdram_start(0); + test1 = get_ram_size((long *)CFG_SDRAM_BASE, 0x8000); + sdram_start(1); + test2 = get_ram_size((long *)CFG_SDRAM_BASE, 0x8000); + if (test1 > test2) { + sdram_start(0); + dramsize = test1; + } else + dramsize = test2; + + if (dramsize < (1 << 20)) + dramsize = 0; + + /* set SDRAM CS0 size according to the amount of RAM found */ + if (dramsize > 0) { + *(vu_long *)MPC5XXX_SDRAM_CS0CFG = 0x13 + + __builtin_ffs(dramsize >> 20) - 1; + } else { + *(vu_long *)MPC5XXX_SDRAM_CS0CFG = 0; + } + return dramsize; +} + +void mvbc_init_gpio(void) +{ + struct mpc5xxx_gpio *gpio = (struct mpc5xxx_gpio*)MPC5XXX_GPIO; + + printf("Ports : 0x%08x\n", gpio->port_config); + printf("PORCFG: 0x%08x\n", *(vu_long*)MPC5XXX_CDM_PORCFG); + + out_be32(&gpio->simple_ddr, SIMPLE_DDR); + out_be32(&gpio->simple_dvo, SIMPLE_DVO); + out_be32(&gpio->simple_ode, SIMPLE_ODE); + out_be32(&gpio->simple_gpioe, SIMPLE_GPIOEN); + + out_be32(&gpio->sint_ode, SINT_ODE); + out_be32(&gpio->sint_ddr, SINT_DDR); + out_be32(&gpio->sint_dvo, SINT_DVO); + out_be32(&gpio->sint_inten, SINT_INTEN); + out_be32(&gpio->sint_itype, SINT_ITYPE); + out_be32(&gpio->sint_gpioe, SINT_GPIOEN); + + out_8((unsigned char *)MPC5XXX_WU_GPIO_ODE, WKUP_ODE); + out_8((unsigned char *)MPC5XXX_WU_GPIO_DIR, WKUP_DIR); + out_8((unsigned char *)MPC5XXX_WU_GPIO_DATA_O, WKUP_DO); + out_8((unsigned char *)MPC5XXX_WU_GPIO_ENABLE, WKUP_EN); + + printf("simple_gpioe: 0x%08x\n", gpio->simple_gpioe); + printf("sint_gpioe : 0x%08x\n", gpio->sint_gpioe); +} + +void reset_environment(void) +{ + char *s, sernr[64]; + + printf("\n*** RESET ENVIRONMENT ***\n"); + memset(sernr, 0, sizeof(sernr)); + s = getenv("serial#"); + if (s) { + printf("found serial# : %s\n", s); + strncpy(sernr, s, 64); + } + gd->env_valid = 0; + env_relocate(); + if (s) + setenv("serial#", sernr); +} + +int misc_init_r(void) +{ + char *s = getenv("reset_env"); + + if (!s) { + if ((*(vu_char *)MPC5XXX_WU_GPIO_DATA_I) & WKUP_6) + return 0; Ditto + udelay(5); + if ((*(vu_char *)MPC5XXX_WU_GPIO_DATA_I) & WKUP_6) + return 0; + udelay(5); + if ((*(vu_char *)MPC5XXX_WU_GPIO_DATA_I) & WKUP_6)
Re: [U-Boot-Users] [PATCH 0/2] Coldfire Ethernet initialization changes
Liew Tsi Chung wrote: > Ben, > > >> I'm pushing these patches to a 'testing' branch on the net repo. >> > Please clone it as follows: > >> $ git clone git://git.denx.de/u-boot-net.git $ cd u-boot-net $ git >> > checkout testing > There is no testing branch in u-boot-net, so I applied the two patches > you sent on top of current u-boot-net tree (commit > 63676841ca2d603b13765f3f7b72ff1a61c23f90 - Jun 18. Remove duplicate code > in cpu/arm926ejs/davinci/lxt972.c). > > There is a testing branch in the repo: http://git.denx.de/?p=u-boot/u-boot-net.git;a=shortlog;h=refs/heads/testing I just don't know how to use git properly... > Only one conflict and error: > The first patch - CONFIG_FSLDMAFEC for 547x_8x and is correct. > Then, the second patch - CONFIG_MCFFEC, appended #if after ||, either > remove CONFIG_MCFFEC for 547x_8x or remove "#if ". > > Oh yeah, duh! I need to free up some space on my hard drive so I can have more tools... > -#if defined(CONFIG_FSLDMAFEC) > +#if defined(CONFIG_FSLDMAFEC) || #if defined(CONFIG_MCFFEC) > +/* Default initializations for MCFFEC controllers. To override, > + * create a board-specific function called: > + * int board_eth_init(bd_t *bis) > + */ > + > extern int mcdmafec_initialize(bd_t *bis); > +extern int mcffec_initialize(bd_t*); > Does it work after you fix this up? thanks a lot! Ben - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] Round the serial port clock divisor value returned by calc_divisor()
Hugo Villeneuve wrote: > Jerry Van Baren wrote: >> Hugo Villeneuve wrote: >>> Round the serial port clock divisor value returned by calc_divisor(). >>> >>> Signed-off-by: Hugo Villeneuve <[EMAIL PROTECTED]> >>> >>> --- >>> >>> Rounding is important, especially when using high baud rates >>> values like 115200bps. When using the non-rounded value, some >>> boards will work and some won't. >>> >>> drivers/serial/serial.c |7 ++- >>> 1 files changed, 6 insertions(+), 1 deletions(-) >>> >>> diff --git a/drivers/serial/serial.c b/drivers/serial/serial.c index >>> 76425d8..7e315ad 100644 --- a/drivers/serial/serial.c >>> +++ b/drivers/serial/serial.c >>> @@ -124,6 +124,8 @@ static NS16550_t serial_ports[4] = { >>> >>> static int calc_divisor (NS16550_t port) >>> { >>> + u32 divisor_x10; >>> + >>> #ifdef CONFIG_OMAP1510 >>> /* If can't cleanly clock 115200 set div to 1 */ >>> if ((CFG_NS16550_CLK == 1200) && (gd->baudrate == 115200)) { >>> @@ -144,8 +146,11 @@ static int calc_divisor (NS16550_t port) #else >>> #define MODE_X_DIV 16 >>> #endif >>> - return (CFG_NS16550_CLK / MODE_X_DIV / gd->baudrate); >>> >>> + /* Compute divisor value with rounding by adding 0.5 */ >>> + divisor_x10 = (10 * CFG_NS16550_CLK) / MODE_X_DIV / gd->baudrate; + >>> + return (divisor_x10 + 5) / 10; >>> } >>> >>> #if !defined(CONFIG_SERIAL_MULTI) >> Hi Hugo, >> >> Will a real rounding work? Work better? If I got my mental math and >> parenthesis right and the resulting math doesn't overflow your >> registers, the following will add 1/2 the baud rate scaled by the >> MODE_X_DIV and then perform the divide which will do full rounding. >> >> return (((CFG_NS16550_CLK + ((gd->baudrate / 2)* MODE_X_DIV)) oops, I missed a space ^ >> / MODE_X_DIV) / gd->baudrate); > I tested it and it works for me. > But maybe the code is less obvious that way? Obviousness is relative. :-) This will be more accurate, but accuracy is relative too. :-/ It only has to be close. Since CFG_NS16550_CLK is very likely a multiple of MODE_X_DIV or it doesn't matter if it isn't because it is much, much larger than MODE_X_DIV, the formula could be simplified slightly without substantially hurting the accuracy... return (((CFG_NS16550_CLK + (gd->baudrate / 2)) / MODE_X_DIV) / gd->baudrate); A slight bit of added perceived complexity may be coming from my addition of parenthesis to emphasize the evaluation order. The following (should be) equivalent and reads better to my brain. return (CFG_NS16550_CLK + (gd->baudrate / 2)) / (MODE_X_DIV * gd->baudrate); >> Alternately, I prefer to scale up by 16 and then divide by 8 since >> processors can do that very efficiently ( << 4 followed by >> 3). > Right. > > I prefer the second solution for its simplicity, but the first one also works. Bottom line: it's your call IMHO. Best regards, gvb - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 0/2] Coldfire Ethernet initialization changes
Ben, > I'm pushing these patches to a 'testing' branch on the net repo. Please clone it as follows: > $ git clone git://git.denx.de/u-boot-net.git $ cd u-boot-net $ git checkout testing There is no testing branch in u-boot-net, so I applied the two patches you sent on top of current u-boot-net tree (commit 63676841ca2d603b13765f3f7b72ff1a61c23f90 - Jun 18. Remove duplicate code in cpu/arm926ejs/davinci/lxt972.c). Only one conflict and error: The first patch - CONFIG_FSLDMAFEC for 547x_8x and is correct. Then, the second patch - CONFIG_MCFFEC, appended #if after ||, either remove CONFIG_MCFFEC for 547x_8x or remove "#if ". -#if defined(CONFIG_FSLDMAFEC) +#if defined(CONFIG_FSLDMAFEC) || #if defined(CONFIG_MCFFEC) +/* Default initializations for MCFFEC controllers. To override, + * create a board-specific function called: + * int board_eth_init(bd_t *bis) + */ + extern int mcdmafec_initialize(bd_t *bis); +extern int mcffec_initialize(bd_t*); Thanks! Regards, TsiChung -Original Message- From: Ben Warren [mailto:[EMAIL PROTECTED] Sent: Thursday, July 03, 2008 2:07 AM To: Liew Tsi Chung; u-boot-users@lists.sourceforge.net Cc: Ben Warren Subject: [PATCH 0/2] Coldfire Ethernet initialization changes These two patches move the default initialization of Coldfire FEC controllers to cpu_eth_init() in the CPU directories. I don't have a Coldfire cross compiler set up nor do I have any hardware, so I'm looking for volunteers to do the following: 1. Run 'MAKEALL coldfire' to check for compile-time errors 2. Try the code out on real hardware I'm pushing these patches to a 'testing' branch on the net repo. Please clone it as follows: $ git clone git://git.denx.de/u-boot-net.git $ cd u-boot-net $ git checkout testing thanks! Ben - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] Round the serial port clock divisor value returned by calc_divisor()
Jerry Van Baren wrote: > Hugo Villeneuve wrote: >> Round the serial port clock divisor value returned by calc_divisor(). >> >> Signed-off-by: Hugo Villeneuve <[EMAIL PROTECTED]> >> >> --- >> >> Rounding is important, especially when using high baud rates >> values like 115200bps. When using the non-rounded value, some >> boards will work and some won't. >> >> drivers/serial/serial.c |7 ++- >> 1 files changed, 6 insertions(+), 1 deletions(-) >> >> diff --git a/drivers/serial/serial.c b/drivers/serial/serial.c index >> 76425d8..7e315ad 100644 --- a/drivers/serial/serial.c >> +++ b/drivers/serial/serial.c >> @@ -124,6 +124,8 @@ static NS16550_t serial_ports[4] = { >> >> static int calc_divisor (NS16550_t port) >> { >> +u32 divisor_x10; >> + >> #ifdef CONFIG_OMAP1510 >> /* If can't cleanly clock 115200 set div to 1 */ >> if ((CFG_NS16550_CLK == 1200) && (gd->baudrate == 115200)) { >> @@ -144,8 +146,11 @@ static int calc_divisor (NS16550_t port) #else >> #define MODE_X_DIV 16 >> #endif >> -return (CFG_NS16550_CLK / MODE_X_DIV / gd->baudrate); >> >> +/* Compute divisor value with rounding by adding 0.5 */ >> +divisor_x10 = (10 * CFG_NS16550_CLK) / MODE_X_DIV / gd->baudrate; + >> +return (divisor_x10 + 5) / 10; >> } >> >> #if !defined(CONFIG_SERIAL_MULTI) > > Hi Hugo, > > Will a real rounding work? Work better? If I got my mental math and > parenthesis right and the resulting math doesn't overflow your > registers, the following will add 1/2 the baud rate scaled by the > MODE_X_DIV and then perform the divide which will do full rounding. > > return (((CFG_NS16550_CLK + ((gd->baudrate / 2)* MODE_X_DIV)) > / MODE_X_DIV) / gd->baudrate); I tested it and it works for me. But maybe the code is less obvious that way? > Alternately, I prefer to scale up by 16 and then divide by 8 since > processors can do that very efficiently ( << 4 followed by >> 3). Right. I prefer the second solution for its simplicity, but the first one also works. Hugo. Hugo Villeneuve Hardware developer | Concepteur matériel Lyrtech Phone/Tél. : (1) (418) 877-4644 #2395 Toll-free/Sans frais - Canada & USA : (1) (888) 922-4644 #2395 Fax/Téléc. : (1) (418) 877-7710 www.lyrtech.com Infinite possibilities...TM - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] No ethernet link on Lubbock board.
2008/7/8 Jerry Van Baren <[EMAIL PROTECTED]>: > Victor wrote: >> >> This is a problem I've been fighting to for a long time. I'm sure it >> would be something stupid I haven't noticed, but I don't know what >> else to try. My Linux OS is working flawlessly with a correct eth0 >> device, so at least I know it's not (or should not) a hardware >> problem. >> >> Everything else works as expected, but the LAN91C96 driver does not >> enable the board network interface. >> >> Environment: >> Hardware: Lubbock Board from Intel, wired to an IBM Laptop. >> U-boot version: 1.3.3 (tried with 1.3.1, 1.20, same results) >> mac address: tried with the one generated by the eth_gen_tool, and the >> original hardware one. >> Default 'lubbock.h' file, heavy edited one, etc... No luck. >> >> $ printenv: >> U-Boot 1.3.3 (Jul 8 2008 - 19:07:01) >> >> DRAM: 64 MB >> Flash: 64 MB >> Hit any key to stop autoboot: 0 >> $ printenv >> baudrate=115200 >> netmask=255.255.0.0 >> bootdelay=5 >> serverip=192.168.1.1 >> ipaddr=192.168.1.2 >> bootcmd=bootm 20 >> bootargs=ip=192.168.1.2:192.168.1.1:192.168.1.1:255.255.255.0:pxa:eth0:off >> mem=64M root=/dev/nfs nfsroot=192.168.1.1:/rootfs/nfs init=/sbin/init >> console=ttyS0,115200 >> ethaddr=00:02:b3:00:8f:xx > > ^^ > Hmmm, what base are we using here? Base 26? > :-D >> >> stdin=serial >> stdout=serial >> stderr=serial >> >> Something odd I noticed: >> >> $ tftpboot >> >> Warning: MAC addresses don't match: >>HW MAC address: 01:00:01:00:01:00 >>"ethaddr" value: 00:02:B3:00:8F:xx >> Using MAC Address 00:02:B3:00:8F:xx > > I'm assuming you didn't hand edit in the "xx" out of paranoia. Yeah, I did hand edit it. Paranoia? Just a habit, don't know why... > >> Linux detects the correct Mac Address without any configuration, why >> u-boot reads 01:00:01:00:01:00? > > Beats me. > >> Any idea? > > Try a valid MAC address? As I said, i tried the ones generated by gen_eth_addr with no luck. > > Good luck, > gvb > - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] Round the serial port clock divisor value returned by calc_divisor()
Hugo Villeneuve wrote: > Round the serial port clock divisor value returned by > calc_divisor(). > > Signed-off-by: Hugo Villeneuve <[EMAIL PROTECTED]> > > --- > > Rounding is important, especially when using high baud rates > values like 115200bps. When using the non-rounded value, some > boards will work and some won't. > > drivers/serial/serial.c |7 ++- > 1 files changed, 6 insertions(+), 1 deletions(-) > > diff --git a/drivers/serial/serial.c b/drivers/serial/serial.c > index 76425d8..7e315ad 100644 > --- a/drivers/serial/serial.c > +++ b/drivers/serial/serial.c > @@ -124,6 +124,8 @@ static NS16550_t serial_ports[4] = { > > static int calc_divisor (NS16550_t port) > { > + u32 divisor_x10; > + > #ifdef CONFIG_OMAP1510 > /* If can't cleanly clock 115200 set div to 1 */ > if ((CFG_NS16550_CLK == 1200) && (gd->baudrate == 115200)) { > @@ -144,8 +146,11 @@ static int calc_divisor (NS16550_t port) > #else > #define MODE_X_DIV 16 > #endif > - return (CFG_NS16550_CLK / MODE_X_DIV / gd->baudrate); > > + /* Compute divisor value with rounding by adding 0.5 */ > + divisor_x10 = (10 * CFG_NS16550_CLK) / MODE_X_DIV / gd->baudrate; > + > + return (divisor_x10 + 5) / 10; > } > > #if !defined(CONFIG_SERIAL_MULTI) Hi Hugo, Will a real rounding work? Work better? If I got my mental math and parenthesis right and the resulting math doesn't overflow your registers, the following will add 1/2 the baud rate scaled by the MODE_X_DIV and then perform the divide which will do full rounding. return (((CFG_NS16550_CLK + ((gd->baudrate / 2)* MODE_X_DIV)) / MODE_X_DIV) / gd->baudrate); Alternately, I prefer to scale up by 16 and then divide by 8 since processors can do that very efficiently ( << 4 followed by >> 3). Best regards, gvb - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] No ethernet link on Lubbock board.
Victor wrote: > This is a problem I've been fighting to for a long time. I'm sure it > would be something stupid I haven't noticed, but I don't know what > else to try. My Linux OS is working flawlessly with a correct eth0 > device, so at least I know it's not (or should not) a hardware > problem. > > Everything else works as expected, but the LAN91C96 driver does not > enable the board network interface. > > Environment: > Hardware: Lubbock Board from Intel, wired to an IBM Laptop. > U-boot version: 1.3.3 (tried with 1.3.1, 1.20, same results) > mac address: tried with the one generated by the eth_gen_tool, and the > original hardware one. > Default 'lubbock.h' file, heavy edited one, etc... No luck. > > $ printenv: > U-Boot 1.3.3 (Jul 8 2008 - 19:07:01) > > DRAM: 64 MB > Flash: 64 MB > Hit any key to stop autoboot: 0 > $ printenv > baudrate=115200 > netmask=255.255.0.0 > bootdelay=5 > serverip=192.168.1.1 > ipaddr=192.168.1.2 > bootcmd=bootm 20 > bootargs=ip=192.168.1.2:192.168.1.1:192.168.1.1:255.255.255.0:pxa:eth0:off > mem=64M root=/dev/nfs nfsroot=192.168.1.1:/rootfs/nfs init=/sbin/init > console=ttyS0,115200 > ethaddr=00:02:b3:00:8f:xx ^^ Hmmm, what base are we using here? Base 26? :-D > stdin=serial > stdout=serial > stderr=serial > > Something odd I noticed: > > $ tftpboot > > Warning: MAC addresses don't match: > HW MAC address: 01:00:01:00:01:00 > "ethaddr" value: 00:02:B3:00:8F:xx > Using MAC Address 00:02:B3:00:8F:xx I'm assuming you didn't hand edit in the "xx" out of paranoia. > Linux detects the correct Mac Address without any configuration, why > u-boot reads 01:00:01:00:01:00? Beats me. > Any idea? Try a valid MAC address? Good luck, gvb - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] No ethernet link on Lubbock board.
This is a problem I've been fighting to for a long time. I'm sure it would be something stupid I haven't noticed, but I don't know what else to try. My Linux OS is working flawlessly with a correct eth0 device, so at least I know it's not (or should not) a hardware problem. Everything else works as expected, but the LAN91C96 driver does not enable the board network interface. Environment: Hardware: Lubbock Board from Intel, wired to an IBM Laptop. U-boot version: 1.3.3 (tried with 1.3.1, 1.20, same results) mac address: tried with the one generated by the eth_gen_tool, and the original hardware one. Default 'lubbock.h' file, heavy edited one, etc... No luck. $ printenv: U-Boot 1.3.3 (Jul 8 2008 - 19:07:01) DRAM: 64 MB Flash: 64 MB Hit any key to stop autoboot: 0 $ printenv baudrate=115200 netmask=255.255.0.0 bootdelay=5 serverip=192.168.1.1 ipaddr=192.168.1.2 bootcmd=bootm 20 bootargs=ip=192.168.1.2:192.168.1.1:192.168.1.1:255.255.255.0:pxa:eth0:off mem=64M root=/dev/nfs nfsroot=192.168.1.1:/rootfs/nfs init=/sbin/init console=ttyS0,115200 ethaddr=00:02:b3:00:8f:xx stdin=serial stdout=serial stderr=serial Something odd I noticed: $ tftpboot Warning: MAC addresses don't match: HW MAC address: 01:00:01:00:01:00 "ethaddr" value: 00:02:B3:00:8F:xx Using MAC Address 00:02:B3:00:8F:xx Linux detects the correct Mac Address without any configuration, why u-boot reads 01:00:01:00:01:00? Any idea? I will thank a lubbock.h file in case you got one with ethernet working, just to try it out. Thanks a lot. - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH] Round the serial port clock divisor value returned by calc_divisor()
Round the serial port clock divisor value returned by calc_divisor(). Signed-off-by: Hugo Villeneuve <[EMAIL PROTECTED]> --- Rounding is important, especially when using high baud rates values like 115200bps. When using the non-rounded value, some boards will work and some won't. drivers/serial/serial.c |7 ++- 1 files changed, 6 insertions(+), 1 deletions(-) diff --git a/drivers/serial/serial.c b/drivers/serial/serial.c index 76425d8..7e315ad 100644 --- a/drivers/serial/serial.c +++ b/drivers/serial/serial.c @@ -124,6 +124,8 @@ static NS16550_t serial_ports[4] = { static int calc_divisor (NS16550_t port) { + u32 divisor_x10; + #ifdef CONFIG_OMAP1510 /* If can't cleanly clock 115200 set div to 1 */ if ((CFG_NS16550_CLK == 1200) && (gd->baudrate == 115200)) { @@ -144,8 +146,11 @@ static int calc_divisor (NS16550_t port) #else #define MODE_X_DIV 16 #endif - return (CFG_NS16550_CLK / MODE_X_DIV / gd->baudrate); + /* Compute divisor value with rounding by adding 0.5 */ + divisor_x10 = (10 * CFG_NS16550_CLK) / MODE_X_DIV / gd->baudrate; + + return (divisor_x10 + 5) / 10; } #if !defined(CONFIG_SERIAL_MULTI) - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH 1/2] fdt_support: fdt_fixup_dr_usb: add support for phy_type fixups
Currently U-Boot can only fixup the usb dr_mode, but some boards (namely MPC8315E-RDB) can use two PHY types: ULPI (stand-alone OTG port) or UTMI (connected to the four-ports hub, usb host only). This patch implements support for passing Dual-Role USB controller's device tree property phy_type through the usb_phy_type environment variable. Signed-off-by: Anton Vorontsov <[EMAIL PROTECTED]> --- common/fdt_support.c | 30 +++--- 1 files changed, 23 insertions(+), 7 deletions(-) diff --git a/common/fdt_support.c b/common/fdt_support.c index 3828228..24bbed0 100644 --- a/common/fdt_support.c +++ b/common/fdt_support.c @@ -422,23 +422,39 @@ void fdt_fixup_ethernet(void *fdt, bd_t *bd) void fdt_fixup_dr_usb(void *blob, bd_t *bd) { char *mode; + char *type; const char *compat = "fsl-usb2-dr"; - const char *prop = "dr_mode"; + const char *prop_mode = "dr_mode"; + const char *prop_type = "phy_type"; int node_offset; int err; mode = getenv("usb_dr_mode"); - if (!mode) + type = getenv("usb_phy_type"); + if (!mode && !type) return; node_offset = fdt_node_offset_by_compatible(blob, 0, compat); - if (node_offset < 0) + if (node_offset < 0) { printf("WARNING: could not find compatible node %s: %s.\n", compat, fdt_strerror(node_offset)); + return; + } - err = fdt_setprop(blob, node_offset, prop, mode, strlen(mode) + 1); - if (err < 0) - printf("WARNING: could not set %s for %s: %s.\n", - prop, compat, fdt_strerror(err)); + if (mode) { + err = fdt_setprop(blob, node_offset, prop_mode, mode, + strlen(mode) + 1); + if (err < 0) + printf("WARNING: could not set %s for %s: %s.\n", + prop_mode, compat, fdt_strerror(err)); + } + + if (type) { + err = fdt_setprop(blob, node_offset, prop_type, type, + strlen(type) + 1); + if (err < 0) + printf("WARNING: could not set %s for %s: %s.\n", + prop_type, compat, fdt_strerror(err)); + } } #endif /* CONFIG_HAS_FSL_DR_USB */ -- 1.5.5.4 - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH 2/2] 83xx: mpc8315erdb: add support for switching between ULPI/UTMI USB PHYs
Freescale ships MPC8315E-RDB boards either with TSEC1 and USB UTMI support, or without TSEC1 but with USB ULPI PHY support in addition. With this patch user can specify desired USB PHY. Also, it seems that we can't distinguish the two boards in software, so user have to set `mpc8315erdb' environment variable to either 'tsec1' (TSEC1 enabled) or `ulpi' (board with ULPI PHY, TSEC1 disabled), so that Linux will not probe for TSEC1. Signed-off-by: Anton Vorontsov <[EMAIL PROTECTED]> --- board/freescale/mpc8315erdb/mpc8315erdb.c | 38 +++- include/configs/MPC8315ERDB.h |2 + 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/board/freescale/mpc8315erdb/mpc8315erdb.c b/board/freescale/mpc8315erdb/mpc8315erdb.c index 7af36dd..7555ffb 100644 --- a/board/freescale/mpc8315erdb/mpc8315erdb.c +++ b/board/freescale/mpc8315erdb/mpc8315erdb.c @@ -25,9 +25,8 @@ #include #include -#if defined(CONFIG_OF_LIBFDT) #include -#endif +#include #include #include @@ -122,11 +121,46 @@ void pci_init_board(void) } #if defined(CONFIG_OF_BOARD_SETUP) +void fdt_tsec1_fixup(void *fdt, bd_t *bd) +{ + char *mpc8315erdb = getenv("mpc8315erdb"); + const char disabled[] = "disabled"; + const char *path; + int ret; + + if (!mpc8315erdb) { + if (!strcmp(mpc8315erdb, "tsec1")) { + return; + } else if (strcmp(mpc8315erdb, "ulpi")) { + printf("WARNING: wrong `mpc8315erdb' environment " + "variable specified: `%s'. Should be `ulpi' " + "or `tsec1'.\n", mpc8315erdb); + return; + } + } + + ret = fdt_path_offset(fdt, "/aliases"); + if (ret < 0) { + printf("WARNING: can't find /aliases node\n"); + return; + } + + path = fdt_getprop(fdt, ret, "ethernet0", NULL); + if (!path) { + printf("WARNING: can't find ethernet0 alias\n"); + return; + } + + do_fixup_by_path(fdt, path, "status", disabled, sizeof(disabled), 1); +} + void ft_board_setup(void *blob, bd_t *bd) { ft_cpu_setup(blob, bd); #ifdef CONFIG_PCI ft_pci_setup(blob, bd); #endif + fdt_fixup_dr_usb(blob, bd); + fdt_tsec1_fixup(blob, bd); } #endif diff --git a/include/configs/MPC8315ERDB.h b/include/configs/MPC8315ERDB.h index 095f665..6b019f8 100644 --- a/include/configs/MPC8315ERDB.h +++ b/include/configs/MPC8315ERDB.h @@ -321,6 +321,8 @@ #define CONFIG_NET_MULTI 1 #endif +#define CONFIG_HAS_FSL_DR_USB + /* * TSEC */ -- 1.5.5.4 - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH v2] Add MVBC_P board
On Tue, Jul 8, 2008 at 10:16 AM, Andre Schwarz <[EMAIL PROTECTED]> wrote: > The MVBC_P is a MPC5200B based camera system with Intel Gigabit ethernet > controller (using e1000) and custom Altera Cyclone-II FPGA on PCI. > Please see doc/README.mvbc_p for details. > > Signed-off-by: Andre Schwarz <[EMAIL PROTECTED]> > --- > > Grant, > > I've modified the patch to meet the requested changes on the list from Kim > and Wolfgang. > - Add MK_STR define inside header and use it for environment > - get rid of sync instruction by using out_* accessors > - get rid of various ifdefs since they are not used anyway > - get rid of unused function hw_watchdog_reset() > +static void sdram_start (int hi_addr) > +{ > + long hi_bit = hi_addr ? 0x0100 : 0; > + > + /* unlock mode register */ > + *(vu_long *)MPC5XXX_SDRAM_CTRL = SDRAM_CONTROL | 0x8000 | hi_bit; > + __asm__ volatile ("sync"); All of these should also use out_be32(). > + > + /* precharge all banks */ > + *(vu_long *)MPC5XXX_SDRAM_CTRL = SDRAM_CONTROL | 0x8002 | hi_bit; > + __asm__ volatile ("sync"); > + > + /* precharge all banks */ > + *(vu_long *)MPC5XXX_SDRAM_CTRL = SDRAM_CONTROL | 0x8002 | hi_bit; > + __asm__ volatile ("sync"); > + > + /* auto refresh */ > + *(vu_long *)MPC5XXX_SDRAM_CTRL = SDRAM_CONTROL | 0x8004 | hi_bit; > + __asm__ volatile ("sync"); > + > + /* set mode register */ > + *(vu_long *)MPC5XXX_SDRAM_MODE = SDRAM_MODE; > + __asm__ volatile ("sync"); > + > + /* normal operation */ > + *(vu_long *)MPC5XXX_SDRAM_CTRL = SDRAM_CONTROL | hi_bit; > + __asm__ volatile ("sync"); > +} > + > +phys_addr_t initdram (int board_type) > +{ > + ulong dramsize = 0; > + ulong test1, > + test2; > + > + /* setup SDRAM chip selects */ > + *(vu_long *)MPC5XXX_SDRAM_CS0CFG = 0x001e; > + __asm__ volatile ("sync"); Ditto. > + > + /* setup config registers */ > + *(vu_long *)MPC5XXX_SDRAM_CONFIG1 = SDRAM_CONFIG1; > + *(vu_long *)MPC5XXX_SDRAM_CONFIG2 = SDRAM_CONFIG2; > + __asm__ volatile ("sync"); > + > + /* find RAM size using SDRAM CS0 only */ > + sdram_start(0); > + test1 = get_ram_size((long *)CFG_SDRAM_BASE, 0x8000); > + sdram_start(1); > + test2 = get_ram_size((long *)CFG_SDRAM_BASE, 0x8000); > + if (test1 > test2) { > + sdram_start(0); > + dramsize = test1; > + } else > + dramsize = test2; > + > + if (dramsize < (1 << 20)) > + dramsize = 0; > + > + /* set SDRAM CS0 size according to the amount of RAM found */ > + if (dramsize > 0) { > + *(vu_long *)MPC5XXX_SDRAM_CS0CFG = 0x13 + > + __builtin_ffs(dramsize >> 20) - 1; > + } else { > + *(vu_long *)MPC5XXX_SDRAM_CS0CFG = 0; > + } > + return dramsize; > +} > + > +void mvbc_init_gpio(void) > +{ > + struct mpc5xxx_gpio *gpio = (struct mpc5xxx_gpio*)MPC5XXX_GPIO; > + > + printf("Ports : 0x%08x\n", gpio->port_config); > + printf("PORCFG: 0x%08x\n", *(vu_long*)MPC5XXX_CDM_PORCFG); > + > + out_be32(&gpio->simple_ddr, SIMPLE_DDR); > + out_be32(&gpio->simple_dvo, SIMPLE_DVO); > + out_be32(&gpio->simple_ode, SIMPLE_ODE); > + out_be32(&gpio->simple_gpioe, SIMPLE_GPIOEN); > + > + out_be32(&gpio->sint_ode, SINT_ODE); > + out_be32(&gpio->sint_ddr, SINT_DDR); > + out_be32(&gpio->sint_dvo, SINT_DVO); > + out_be32(&gpio->sint_inten, SINT_INTEN); > + out_be32(&gpio->sint_itype, SINT_ITYPE); > + out_be32(&gpio->sint_gpioe, SINT_GPIOEN); > + > + out_8((unsigned char *)MPC5XXX_WU_GPIO_ODE, WKUP_ODE); > + out_8((unsigned char *)MPC5XXX_WU_GPIO_DIR, WKUP_DIR); > + out_8((unsigned char *)MPC5XXX_WU_GPIO_DATA_O, WKUP_DO); > + out_8((unsigned char *)MPC5XXX_WU_GPIO_ENABLE, WKUP_EN); > + > + printf("simple_gpioe: 0x%08x\n", gpio->simple_gpioe); > + printf("sint_gpioe : 0x%08x\n", gpio->sint_gpioe); > +} > + > +void reset_environment(void) > +{ > + char *s, sernr[64]; > + > + printf("\n*** RESET ENVIRONMENT ***\n"); > + memset(sernr, 0, sizeof(sernr)); > + s = getenv("serial#"); > + if (s) { > + printf("found serial# : %s\n", s); > + strncpy(sernr, s, 64); > + } > + gd->env_valid = 0; > + env_relocate(); > + if (s) > + setenv("serial#", sernr); > +} > + > +int misc_init_r(void) > +{ > + char *s = getenv("reset_env"); > + > + if (!s) { > + if ((*(vu_char *)MPC5XXX_WU_GPIO_DATA_I) & WKUP_6) > + return 0; Ditto > + udelay(5); > + if ((*(vu_char *)MPC5XXX_WU_GPIO_DATA_I) & WKUP_6) > + return 0; > + udelay(5); > + if ((
[U-Boot-Users] [PATCH v2] Add MVBC_P board
The MVBC_P is a MPC5200B based camera system with Intel Gigabit ethernet controller (using e1000) and custom Altera Cyclone-II FPGA on PCI. Please see doc/README.mvbc_p for details. Signed-off-by: Andre Schwarz <[EMAIL PROTECTED]> --- Grant, I've modified the patch to meet the requested changes on the list from Kim and Wolfgang. - Add MK_STR define inside header and use it for environment - get rid of sync instruction by using out_* accessors - get rid of various ifdefs since they are not used anyway - get rid of unused function hw_watchdog_reset() Hope this helps in applying this patch. regards, Andre MATRIX VISION GmbH, Talstraße 16, DE-71570 Oppenweiler - Registergericht: Amtsgericht Stuttgart, HRB 271090 Geschäftsführer: Gerhard Thullner, Werner Armingeon, Uwe Furtner CREDITS|2 +- MAINTAINERS|1 + MAKEALL|1 + Makefile |8 + board/mvbc_p/Makefile | 50 ++ board/mvbc_p/config.mk | 30 board/mvbc_p/fpga.c| 177 + board/mvbc_p/fpga.h| 34 board/mvbc_p/mvbc_p.c | 333 board/mvbc_p/mvbc_p.h | 72 + board/mvbc_p/mvbc_p_autoscript | 44 ++ doc/README.mvbc_p | 74 + include/configs/MVBC_P.h | 316 ++ 13 files changed, 1141 insertions(+), 1 deletions(-) diff --git a/CREDITS b/CREDITS index aa57682..b1c10fd 100644 --- a/CREDITS +++ b/CREDITS @@ -426,7 +426,7 @@ D: FADS823 configuration, MPC823 video support, I2C, wireless keyboard, lots mor N: Andre Schwarz E: [EMAIL PROTECTED] -D: Support for Matrix Vision boards (MVBLM7) +D: Support for Matrix Vision boards (MVBLM7/MVBC_P) N: Robert Schwebel E: [EMAIL PROTECTED] diff --git a/MAINTAINERS b/MAINTAINERS index a3d70b1..9af5730 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -373,6 +373,7 @@ Peter De Schrijver <[EMAIL PROTECTED]> Andre Schwarz <[EMAIL PROTECTED]> + mvbc_p MPC5200 mvblm7 MPC8343 Timur Tabi <[EMAIL PROTECTED]> diff --git a/MAKEALL b/MAKEALL index 9f80b3d..75261c1 100755 --- a/MAKEALL +++ b/MAKEALL @@ -48,6 +48,7 @@ LIST_5xxx=" \ mecp5200\ motionpro \ munices \ + MVBC_P \ o2dnt \ pf5200 \ PM520 \ diff --git a/Makefile b/Makefile index ac3f98f..c8bc307 100644 --- a/Makefile +++ b/Makefile @@ -743,6 +743,14 @@ uc101_config: unconfig motionpro_config: unconfig @$(MKCONFIG) motionpro ppc mpc5xxx motionpro +MVBC_P_config: unconfig + @mkdir -p $(obj)include + @mkdir -p $(obj)board/mvbc_p + @ >$(obj)include/config.h + @[ -z "$(findstring MVBC_P,$@)" ] || \ + { echo "#define CONFIG_MVBC_P">>$(obj)include/config.h; \ + } + @$(MKCONFIG) -n $@ -a MVBC_P ppc mpc5xxx mvbc_p # ## MPC512x Systems diff --git a/board/mvbc_p/Makefile b/board/mvbc_p/Makefile new file mode 100644 index 000..7ae34cf --- /dev/null +++ b/board/mvbc_p/Makefile @@ -0,0 +1,50 @@ +# +# (C) Copyright 2003 +# Wolfgang Denk, DENX Software Engineering, [EMAIL PROTECTED] +# +# (C) Copyright 2004-2008 +# Matrix-Vision GmbH, [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 $(TOPDIR)/config.mk + +LIB= $(obj)lib$(BOARD).a + +COBJS := $(BOARD).o fpga.o + +SRCS:= $(SOBJS:.o=.S) $(COBJS:.o=.c) +OBJS:= $(addprefix $(obj),$(COBJS)) +SOBJS := $(addprefix $(obj),$(SOBJS)) + +$(LIB): $(obj).depend $(OBJS) + $(AR) $(ARFLAGS) $@ $(OBJS) + +clean: + rm -f $(SOBJS) $(OBJS) + +distclean: clean + rm -f $(LIB) core *.bak .depend + +# + +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend diff --git a/board/mvbc_p/config.mk b/board/mvbc_p/config.mk new file mode 100644 index 000..1c2a13e --- /dev/null +++ b/board/mvbc_p/config.mk @@ -0,0 +1,30 @@ +# +# (C
Re: [U-Boot-Users] [PATCH, resend] Support dynamic/patched NAND ENV offset
Harald Welte wrote: > On Mon, Jul 07, 2008 at 01:47:24PM -0500, Scott Wood wrote: >> It works if you allow room for bad blocks within each partition, and treat >> the environment as its own partition. Current u-boot supports skipping bad >> blocks within a desginated environment region. > > which wastes a lot of space, if you have something like a 128kByte > erase-block-size (like most 2kByte page size NAND's today)... so if you > want to have redundancy and use some spare blocks you will end up with > something on the order of 512kByte of wasted flash space to store a > couple of hundreds of bytes environment. Not very elegant. > > Furthermore, if you want to make sure it always works with any of your > components that are within the spec of the manufacturer, then you will > waste even more. The problem is that a new virgin component e.g. a > 64MByte flash from Samsung can have already as many as 1.3MBytes of bad > blocks. Fair enough... > Therefore, I still believe that such a feature is useful and should be > merged into u-boot. If there are problems with my particular > implementation, I'm happy to address them. Can you base it off of the testing branch of the u-boot-nand-flash repo? > I also have another patchset for what I call 'dynpart' support, i.e. the > dynamic calculation of a unit-specific partition table that ensures the > net size of partitions are as per spec, no matter how many of the > factory default blocks are located where. So it would even support > NAND devices with a worse spec than the ones that we were using. Interesting... Would such a patch eliminate the need for this one, by making the environment a dynamic partition? Is there any (plan for) Linux support? -Scott - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 04/10 v2] [ARM] TQMA31: add new board with i.MX31 processor
> Thank you very much for catching all these silly mistakes. > > A last question: > When I want to "reply all", your e-mail address doesn't appear in the > to-field. I have to add the address manually. Is this intended? wierd, in the mail i'm not in the CC but in the FROM Best Regards, J. - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH] PPC4xx: Add MII mode support to the EMAC RGMII Bridge
This patch adds support for placing the RGMII bridge on the PPC405EX(r) into MII/GMII mode and allows a board-specific configuration to specify the bridge mode at compile-time. Signed-off-by: Grant Erickson <[EMAIL PROTECTED]> --- cpu/ppc4xx/4xx_enet.c | 80 ++-- include/configs/kilauea.h |1 + include/configs/makalu.h |1 + include/ppc4xx_enet.h | 16 - 4 files changed, 86 insertions(+), 12 deletions(-) diff --git a/cpu/ppc4xx/4xx_enet.c b/cpu/ppc4xx/4xx_enet.c index c40e0ca..638e155 100644 --- a/cpu/ppc4xx/4xx_enet.c +++ b/cpu/ppc4xx/4xx_enet.c @@ -465,30 +465,88 @@ int ppc_4xx_eth_setup_bridge(int devnum, bd_t * bis) #if defined(CONFIG_405EX) int ppc_4xx_eth_setup_bridge(int devnum, bd_t * bis) { - u32 gmiifer = 0; + u32 rgmiifer = 0; /* -* Right now only 2*RGMII is supported. Please extend when needed. -* sr - 2007-09-19 +* The 405EX(r)'s RGMII bridge can operate in one of several +* modes, only one of which (2 x RGMII) allows the +* simultaneous use of both EMACs on the 405EX. */ - switch (1) { - case 1: + + switch (CONFIG_EMAC_PHY_MODE) { + + case EMAC_PHY_MODE_NONE: + /* No ports */ + rgmiifer |= RGMII_FER_DIS << 0; + rgmiifer |= RGMII_FER_DIS << 4; + out_be32((void *)RGMII_FER, rgmiifer); + bis->bi_phymode[0] = BI_PHYMODE_NONE; + bis->bi_phymode[1] = BI_PHYMODE_NONE; + break; + case EMAC_PHY_MODE_NONE_RGMII: + /* 1 x RGMII port on channel 0 */ + rgmiifer |= RGMII_FER_RGMII << 0; + rgmiifer |= RGMII_FER_DIS << 4; + out_be32((void *)RGMII_FER, rgmiifer); + bis->bi_phymode[0] = BI_PHYMODE_RGMII; + bis->bi_phymode[1] = BI_PHYMODE_NONE; + break; + case EMAC_PHY_MODE_RGMII_NONE: + /* 1 x RGMII port on channel 1 */ + rgmiifer |= RGMII_FER_DIS << 0; + rgmiifer |= RGMII_FER_RGMII << 4; + out_be32((void *)RGMII_FER, rgmiifer); + bis->bi_phymode[0] = BI_PHYMODE_NONE; + bis->bi_phymode[1] = BI_PHYMODE_RGMII; + break; + case EMAC_PHY_MODE_RGMII_RGMII: /* 2 x RGMII ports */ - out_be32((void *)RGMII_FER, 0x0055); + rgmiifer |= RGMII_FER_RGMII << 0; + rgmiifer |= RGMII_FER_RGMII << 4; + out_be32((void *)RGMII_FER, rgmiifer); bis->bi_phymode[0] = BI_PHYMODE_RGMII; bis->bi_phymode[1] = BI_PHYMODE_RGMII; break; - case 2: - /* 2 x SMII ports */ + case EMAC_PHY_MODE_NONE_GMII: + /* 1 x GMII port on channel 0 */ + rgmiifer |= RGMII_FER_GMII << 0; + rgmiifer |= RGMII_FER_DIS << 4; + out_be32((void *)RGMII_FER, rgmiifer); + bis->bi_phymode[0] = BI_PHYMODE_GMII; + bis->bi_phymode[1] = BI_PHYMODE_NONE; + break; + case EMAC_PHY_MODE_NONE_MII: + /* 1 x MII port on channel 0 */ + rgmiifer |= RGMII_FER_MII << 0; + rgmiifer |= RGMII_FER_DIS << 4; + out_be32((void *)RGMII_FER, rgmiifer); + bis->bi_phymode[0] = BI_PHYMODE_MII; + bis->bi_phymode[1] = BI_PHYMODE_NONE; + break; + case EMAC_PHY_MODE_GMII_NONE: + /* 1 x GMII port on channel 1 */ + rgmiifer |= RGMII_FER_DIS << 0; + rgmiifer |= RGMII_FER_GMII << 4; + out_be32((void *)RGMII_FER, rgmiifer); + bis->bi_phymode[0] = BI_PHYMODE_NONE; + bis->bi_phymode[1] = BI_PHYMODE_GMII; + break; + case EMAC_PHY_MODE_MII_NONE: + /* 1 x MII port on channel 1 */ + rgmiifer |= RGMII_FER_DIS << 0; + rgmiifer |= RGMII_FER_MII << 4; + out_be32((void *)RGMII_FER, rgmiifer); + bis->bi_phymode[0] = BI_PHYMODE_NONE; + bis->bi_phymode[1] = BI_PHYMODE_MII; break; default: break; } /* Ensure we setup mdio for this devnum and ONLY this devnum */ - gmiifer = in_be32((void *)RGMII_FER); - gmiifer |= (1 << (19-devnum)); - out_be32((void *)RGMII_FER, gmiifer); + rgmiifer = in_be32((void *)RGMII_FER); + rgmiifer |= (1 << (19-devnum)); + out_be32((void *)RGMII_FER, rgmiifer); return ((int)0x0); } diff --git a/include/configs/kilauea.h b/include/configs/kilauea.h index f3d048c..dc246fd 100644 --- a/include/configs/kilauea.h +++ b/include/configs/kilauea.h @@ -375,6 +375,7 @@ *---
Re: [U-Boot-Users] [PATCH 04/10 v2] [ARM] TQMA31: add new board with i.MX31 processor
Wolfgang Denk schrieb: > In message <[EMAIL PROTECTED]> you wrote: >> +/* Timer tick */ >> +#define CFG_HZ 32768 > > CFG_HZ is a constant and has to be 1000. I know, we had a discussion earlier about that issue (see "i.MX31: question about CFG_HZ and CKIL" of 7th May). The situation is as follows: The TQMA31, as well as the mx32ads use the General Purpose Timer 1, which is feeded by a 32768 clock (possibly imx31_litekit and imx31_phycore with 32000 Hz? I don't know.). The prescale divider can only be an integer. 32768/1000 = non-integer. The counter is just read. There are no real interrupts (I mention it, because you wrote about this earlier). The origin source code is from U-Boot V2, I suppose. Guennadi used it for the mx31ads. Currently, I see only one way to solve this: 1. Patch the common file cpu/arm1136/mx31/interrupts.c, function interrupt_init(), so that the prescaler divides by 33. Alternatively, also make the divider a board specific define. 2. Patch all mx31 board config header files with CFG_HZ 1000. 3. All mx31 boards have to be tested. The following is impossible: - changing the HW - using an internal clock, because maximum is 1000 Hz * 4096 = 4096000 Hz (the maximum divider is 4096). All internal clocks are much higher. Please for correction if I'm wrong. What do you suggest to do and who does it? And while we are at the timers: The udelay function is the next problem: udelay cannot go below 1/(32768 Hz) = 30.5 micros The current function inserts a theoretical nop if the requested usec value is below 1000. Therefore, IMHO, this timer is relatively imprecise, because the resulting delay is below 1 microsecond. IMHO, this all because of that slow input clock. Kind regards, Jens - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH] ARM: Fix for wrong patch version applied for Lyrtech SFF-SDR board (ARM926EJS)
ARM: Fix for incorrect version of patch applied when adding support for the Lyrtech SFF-SDR board. Signed-off-by: Hugo Villeneuve <[EMAIL PROTECTED]> Signed-off-by: Philip Balister, OpenSDR <[EMAIL PROTECTED]> --- CREDITS |5 + board/davinci/sffsdr/Makefile|2 +- board/davinci/sffsdr/config.mk | 11 +- board/davinci/sffsdr/dv_board.c | 212 -- board/davinci/sffsdr/sffsdr.c| 310 ++ include/configs/davinci_sffsdr.h | 69 +++-- 6 files changed, 342 insertions(+), 267 deletions(-) diff --git a/CREDITS b/CREDITS index aa57682..3b6e57d 100644 --- a/CREDITS +++ b/CREDITS @@ -537,3 +537,8 @@ N: Timo Tuunainen E: [EMAIL PROTECTED] D: Support for Artila M-501 starter kit W: http://www.sysart.fi/ + +N: Philip Balister +E: [EMAIL PROTECTED] +D: Port to Lyrtech SFFSDR development board. +W: www.opensdr.com diff --git a/board/davinci/sffsdr/Makefile b/board/davinci/sffsdr/Makefile index 579efe2..fb31ee4 100644 --- a/board/davinci/sffsdr/Makefile +++ b/board/davinci/sffsdr/Makefile @@ -27,7 +27,7 @@ include $(TOPDIR)/config.mk LIB= $(obj)lib$(BOARD).a -COBJS := dv_board.o +COBJS := $(BOARD).o SOBJS := board_init.o SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) diff --git a/board/davinci/sffsdr/config.mk b/board/davinci/sffsdr/config.mk index e8a329c..f3b23d1 100644 --- a/board/davinci/sffsdr/config.mk +++ b/board/davinci/sffsdr/config.mk @@ -3,8 +3,10 @@ # Gary Jennejohn, DENX Software Engineering, <[EMAIL PROTECTED]> # David Mueller, ELSOFT AG, <[EMAIL PROTECTED]> # +# Copyright (C) 2008 Lyrtech +# Copyright (C) 2008 Philip Balister, OpenSDR <[EMAIL PROTECTED]> +# # Lyrtech SFF SDR board (ARM926EJS) cpu -# see http://www.lyrtech.com/ for more information on Lyrtech # # SFF SDR board has 1 bank of 128 MB DDR RAM # Physical Address: @@ -16,9 +18,6 @@ # Integrity kernel is expected to be at 8000', entry 8000'00D0, # up to 81FF' (uses up to 32 MB of memory for text, heap, etc). # -# we load ourself to 8400' -# -# - -# Provide at least 32MB spacing between us and the Integrity kernel image +# we load ourself to 8400' to provide at least 32MB spacing +# between us and the Integrity kernel image TEXT_BASE = 0x8400 diff --git a/board/davinci/sffsdr/dv_board.c b/board/davinci/sffsdr/dv_board.c deleted file mode 100644 index 0771b5b..000 --- a/board/davinci/sffsdr/dv_board.c +++ /dev/null @@ -1,212 +0,0 @@ -/* - * Copyright (C) 2007 Sergey Kubushyn <[EMAIL PROTECTED]> - * - * Parts are shamelessly stolen from various TI sources, original copyright - * follows: - * - - * - * Copyright (C) 2004 Texas Instruments. - * - * - * 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 -#include -#include -#include - -DECLARE_GLOBAL_DATA_PTR; - -extern voidtimer_init(void); -extern int eth_hw_init(void); -extern phy_t phy; - - -/* Works on Always On power domain only (no PD argument) */ -void lpsc_on(unsigned int id) -{ - dv_reg_pmdstat, mdctl; - - if (id >= DAVINCI_LPSC_GEM) - return; /* Don't work on DSP Power Domain */ - - mdstat = REG_P(PSC_MDSTAT_BASE + (id * 4)); - mdctl = REG_P(PSC_MDCTL_BASE + (id * 4)); - - while (REG(PSC_PTSTAT) & 0x01); - - if ((*mdstat & 0x1f) == 0x03) - return; /* Already on and enabled */ - - *mdctl |= 0x03; - - /* Special treatment for some modules as for sprue14 p.7.4.2 */ - if ((id == DAVINCI_LPSC_VPSSSLV) || - (id == DAVINCI_LPSC_EMAC) || - (id == DAVINCI_LPSC_EMAC_WRAPPER) || - (id == DAVINCI_LPSC_MDIO) || - (id == DAVINCI_LPSC_USB) || - (id == DAVINCI_LPSC_ATA) || - (id == DAVINCI_LPSC_VLYNQ) || - (id == DAVINCI_LPSC_UHPI) || - (id == DAVINCI_LPSC_DDR_EMIF) || - (id == DAVINCI_LPSC_AEMIF) || - (id == DAVINCI_LPSC_MMC_SD) || - (id == DAVINCI_LPSC_MEMSTICK) || - (id == DAVINCI_LPSC_McBSP) || - (id == DA
[U-Boot-Users] [PATCH 10/10 v2] [ARM] TQMA31: new kernel param. to pass the eth MAC addr to the Linux eth chip driver
Some Linux drivers like the smc911x driver, as used on TQMA31, rely on the MAC address in the appropriate register, but U-Boot resets the controller after every transfer. A patch for the Linux driver is necessary to extract the MAC address from the kernel boot parameter line and set the MAC address register accordingly. This patch adds the kernel parameter "ethaddr" to the U-Boot default environment so that the user cannot forget it. Signed-off-by: Jens Gehrlein <[EMAIL PROTECTED]> --- Replaced whitespaces by tab. Fixed typos in patch description. include/configs/TQMA31.h |1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/include/configs/TQMA31.h b/include/configs/TQMA31.h index c753ccc..f79cdd3 100644 --- a/include/configs/TQMA31.h +++ b/include/configs/TQMA31.h @@ -271,6 +271,7 @@ "console=ttymxc0,115200\0" \ "bootargs_nfs=setenv bootargs ${bootargs} " \ "root=/dev/nfs rw " \ + "ethaddr=${ethaddr} " \ "ip=${ipaddr}:${serverip}:${gatewayip}:"\ "${netmask}:${hostname}:${netdev}:off " \ "panic=1 " \ - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] ARM: Add support for Lyrtech SFF-SDR board (ARM926EJS)
[EMAIL PROTECTED] wrote: > In message <[EMAIL PROTECTED]> you wrote: >> >> Wolfgang and/or Jean-Christophe, >> I can see that you have applied V2 of my patch, but the latest patch >> that I sent with all the errors and the style issues fixed was V8. >> I will re-send > > I dodn't find this in my list, then. Sorry. > >> the patch V8 in a few minutes so can you please use this latest >> version in stead? > > Please make sure to rebase the patch so it applies against the > *current* version in the git repository, i. e. just esending an old > patch that is based on previous versions is not useful. Understood, I´m rebasing right now :) Hugo V. Hugo Villeneuve Hardware developer | Concepteur matériel Lyrtech Phone/Tél. : (1) (418) 877-4644 #2395 Toll-free/Sans frais - Canada & USA : (1) (888) 922-4644 #2395 Fax/Téléc. : (1) (418) 877-7710 www.lyrtech.com Infinite possibilities...TM - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 04/10 v3] [ARM] TQMA31: add new board with i.MX31 processor
In message <[EMAIL PROTECTED]> you wrote: > > +/* Timer tick */ > +#define CFG_HZ 32768 CFG_HZ shall be always 1000. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED] Never put off until tomorrow what you can put off indefinitely. - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] ARM: Add support for Lyrtech SFF-SDR board (ARM926EJS)
In message <[EMAIL PROTECTED]> you wrote: > > Wolfgang and/or Jean-Christophe, > I can see that you have applied V2 of my patch, but the latest patch that I > sent with all the errors and the style issues fixed was V8. I will re-send I dodn't find this in my list, then. Sorry. > the patch V8 in a few minutes so can you please use this latest version in > stead? Please make sure to rebase the patch so it applies against the *current* version in the git repository, i. e. just esending an old patch that is based on previous versions is not useful. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED] Politician: An eel in the fundamental mud upon which the superstructure of organized society is reared. When he wriggles he mistakes the agitation of his tail for the trembling of the edifice. As compared with the statesman, he suffers the disadvantage of being alive. - Ambrose Bierce - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] Add MVBC_P board
Kim, I forgot to mention that both fpga.c are _not_ the same. They are using different FPGA sizes _and_ different I/Os on different cpu. It's not possible for me to use a common file for the short term. Maybe later when the FPGA interface got mature ... regards, Andre Kim Phillips schrieb: > On Fri, 04 Jul 2008 09:42:24 +0200 > Andre Schwarz <[EMAIL PROTECTED]> wrote: > > Hello Andre, > > >> board/mvbc_p/fpga.c| 177 >> board/mvbc_p/fpga.h| 34 >> > > couldn't help but notice this file is equal to board/mvblm7/fpga.c. > Perhaps it's time to add your board/$(VENDOR)/common directory and put > both this file and its header there. This way you can make your code > more maintainable by avoiding duplicating it all over the place. > > >> +@$(MKCONFIG) -n $@ -a MVBC_P ppc mpc5xxx mvbc_p >> > > assuming $VENDOR == matrix-vision or something (your choice), you'd > have to modify the above line like so: > > - @$(MKCONFIG) -n $@ -a MVBC_P ppc mpc5xxx mvbc_p > + @$(MKCONFIG) -n $@ -a MVBC_P ppc mpc5xxx mvbc_p matrix-vision > > to enable building your (now a single copy) fpga.c. > > >> +#ifdef CONFIG_OF_LIBFDT >> +#include >> +#endif >> > > it'd be nice to get rid of ifdeffing CONFIG_OF_LIBFDT all over the > place, assuming, of course, you won't be supporting booting a > non-fdt-aware OS. > > >> +gpio->simple_ddr = SIMPLE_DDR; >> +gpio->simple_dvo = SIMPLE_DVO; >> +gpio->simple_ode = SIMPLE_ODE; >> +gpio->simple_gpioe = SIMPLE_GPIOEN; >> + >> +gpio->sint_ode = SINT_ODE; >> +gpio->sint_ddr = SINT_DDR; >> +gpio->sint_dvo = SINT_DVO; >> +gpio->sint_inten = SINT_INTEN; >> +gpio->sint_itype = SINT_ITYPE; >> +gpio->sint_gpioe = SINT_GPIOEN; >> + >> +*(vu_char *)MPC5XXX_WU_GPIO_ODE = WKUP_ODE; >> +*(vu_char *)MPC5XXX_WU_GPIO_DIR = WKUP_DIR; >> +*(vu_char *)MPC5XXX_WU_GPIO_DATA_O = WKUP_DO | ARB_X_EN; >> +*(vu_char *)MPC5XXX_WU_GPIO_ENABLE = WKUP_EN; >> + >> +printf("simple_gpioe: 0x%08x\n", gpio->simple_gpioe); >> +printf("sint_gpioe : 0x%08x\n", gpio->sint_gpioe); >> +__asm__ volatile ("sync"); >> +} >> > > same comment Wolfgang made; use in_* out_* accessor fns. > > >> +void hw_watchdog_reset(void) >> +{ >> +*(u8*) (0xff05) = 0; >> > > is this a magic number/needs a #define somewhere? > > >> +#define MV_FPGA_DATA"0xff86" >> +#define MV_FPGA_SIZE"0x3c886" >> +#define MV_KERNEL_ADDR "0xffc0" >> +#define MV_INITRD_ADDR "0xff90" >> +#define MV_INITRD_LENGTH"0x0030" >> +#define MV_SCRATCH_ADDR "0x" >> +#define MV_SCRATCH_LENGTH MV_INITRD_LENGTH >> +#define MV_AUTOSCR_ADDR "0xff84" >> +#define MV_AUTOSCR_ADDR2"0xff85" >> +#define MV_DTB_ADDR "0xfffc" >> > > please use MK_STR (see other config files, e.g. MPC8313). > > >> + >> +#define CONFIG_SHOW_BOOT_PROGRESS 1 >> + >> +#define MV_KERNEL_ADDR_RAM "0x0010" >> +#define MV_DTB_ADDR_RAM "0x0060" >> +#define MV_INITRD_ADDR_RAM "0x0100" >> + >> +/* pass open firmware flat tree */ >> +#define CONFIG_OF_LIBFDT1 >> +#define CONFIG_OF_BOARD_SETUP 1 >> + >> +#define OF_CPU "PowerPC,[EMAIL PROTECTED]" >> +#define OF_SOC "[EMAIL PROTECTED]" >> +#define OF_TBCLK(bd->bi_busfreq / 4) >> > > I thought we had done away with the above three (FLAT_TREE now > obsolete). Oh, I see now: 5xxx still uses it in LIBFDT code. Bad 5xxx! > > Kim > MATRIX VISION GmbH, Talstraße 16, DE-71570 Oppenweiler - Registergericht: Amtsgericht Stuttgart, HRB 271090 Geschäftsführer: Gerhard Thullner, Werner Armingeon, Uwe Furtner - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 04/10 v2] [ARM] TQMA31: add new board with i.MX31 processor
In message <[EMAIL PROTECTED]> you wrote: > > +/* Timer tick */ > +#define CFG_HZ 32768 CFG_HZ is a constant and has to be 1000. Best regards, Wolfgang Denk -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED] Hokey religions and ancient weapons are no substitute for a good blaster at your side. - Han Solo - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH 09/10 v2] [ARM] TQMA31: add FPGA configuration flash
Signed-off-by: Jens Gehrlein <[EMAIL PROTECTED]> --- Fixed whitespace, tabs isssues. Thank you Jean-Christophe. board/tqc/tqma31/tqma31.c |6 ++ include/asm-arm/arch-mx31/mx31-regs.h |1 + include/configs/TQMA31.h |7 +-- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/board/tqc/tqma31/tqma31.c b/board/tqc/tqma31/tqma31.c index 05bc000..cea53c4 100644 --- a/board/tqc/tqma31/tqma31.c +++ b/board/tqc/tqma31/tqma31.c @@ -36,6 +36,12 @@ static void setup_chipselects (void) __REG (CSCR_L(0)) = CSCR_L_OEA_10 | CSCR_L_EBWA_3 | CSCR_L_EBWN_3 \ | CSCR_L_EBC_ONLY_WA | CSCR_L_DSZ_16_MUM0 | CSCR_L_CSEN; + /* FPGA configuration flash on CS1 */ + __REG (CSCR_U(1)) = CSCR_U_CNC_3 | CSCR_U_WSC_13 | CSCR_U_EDC_4; + __REG (CSCR_A(1)) = CSCR_A_RWA_2 | CSCR_A_RWN_2 | CSCR_A_LBN_2_MUM0; + __REG (CSCR_L(1)) = CSCR_L_OEA_10 | CSCR_L_EBWA_3 | CSCR_L_EBWN_3 \ + | CSCR_L_EBC_ONLY_WA | CSCR_L_DSZ_16_MUM0 | CSCR_L_CSEN; + /* Ethernet controller on CS4 */ __REG (CSCR_U(4)) = CSCR_U_CNC_1 | CSCR_U_WSC_22 | CSCR_U_EDC_4; __REG (CSCR_A(4)) = CSCR_A_RWA_2 | CSCR_A_RWN_15; diff --git a/include/asm-arm/arch-mx31/mx31-regs.h b/include/asm-arm/arch-mx31/mx31-regs.h index 407b2c6..69d7614 100644 --- a/include/asm-arm/arch-mx31/mx31-regs.h +++ b/include/asm-arm/arch-mx31/mx31-regs.h @@ -84,6 +84,7 @@ #define CSCR_U_WSC_9 0x0900 #define CSCR_U_WSC_12 0x0C00 #define CSCR_U_WSC_22 0x1600 +#define CSCR_U_WSC_13 0x0D00 #define CSCR_U_EDC_4 0x0004 #define CSCR_U_EDC_13 0x000D diff --git a/include/configs/TQMA31.h b/include/configs/TQMA31.h index c2a8b72..c753ccc 100644 --- a/include/configs/TQMA31.h +++ b/include/configs/TQMA31.h @@ -89,18 +89,21 @@ #define CFG_FLASH_BASE CS0_BASE /* Max number of memory banks */ -#define CFG_MAX_FLASH_BANKS4 +#define CFG_MAX_FLASH_BANKS5 /* * Bank start addresses. * 4 x 32 MiB is the maximum for user and U-Boot code. Please adapt the list * as well as CFG_MAX_FLASH_BANKS to your TQM. Also consider dual die chips * or single die chips, e.g. one dual die chip represents two banks. + * The fifth bank is a separate chip for the FPGA configuration. It's + * controlled by chipselect 1. */ #define CFG_FLASH_BANKS_LIST {CFG_FLASH_BASE, \ CFG_FLASH_BASE + 32 * 1024 * 1024, \ CFG_FLASH_BASE + 64 * 1024 * 1024, \ - CFG_FLASH_BASE + 96 * 1024 * 1024} + CFG_FLASH_BASE + 96 * 1024 * 1024, \ + CS1_BASE} /* Max number of sectors on one chip */ #define CFG_MAX_FLASH_SECT 259 - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH 01/10 v2] [ARM] MXC: insert bus busy check in i2c_probe
On fast CPUs the time between two chip queries can become too short to issue clear start and stop conditions. The bus seems to be blocked. This cannot be compensated by just waiting for completed byte transfer. The patch introduces polling of the bus busy bit in the I2C controller's status register before the next bus access is possible. Signed-off-by: Jens Gehrlein <[EMAIL PROTECTED]> --- Changed timeout value from 100 ms to 1 ms. drivers/i2c/mxc_i2c.c | 10 ++ 1 files changed, 10 insertions(+), 0 deletions(-) diff --git a/drivers/i2c/mxc_i2c.c b/drivers/i2c/mxc_i2c.c index a218329..a50a371 100644 --- a/drivers/i2c/mxc_i2c.c +++ b/drivers/i2c/mxc_i2c.c @@ -115,6 +115,16 @@ static int rx_byte(void) int i2c_probe(uchar chip) { int ret; + int timeout = 1000; + + /* Check if bus is busy before probing next chip */ + while ((__REG16(I2C_BASE + I2SR) & I2SR_IBB) && --timeout) + udelay(1); + + if (timeout == 0) { + printf ("\nerror: bus blocked\n"); + return -1; + } __REG16(I2C_BASE + I2CR) = 0; /* Reset module */ __REG16(I2C_BASE + I2CR) = I2CR_IEN; - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH 04/10 v3] [ARM] TQMA31: add new board with i.MX31 processor
Signed-off-by: Jens Gehrlein <[EMAIL PROTECTED]> --- Fixed the following issues (compared to v1): a) Myself: added NFS mount option "rw" to default environment b) Magnus: added prefix $(obj) in front of .depend in Makefile. Thank you for catching that. c) Jean-Christophe: used $(BOARD) in Makefile, fixed whitespace, tabs, special character, patched mach-types.h d) Heiko: removed defines for default netmask, ipaddr, serverip MAINTAINERS |4 MAKEALL |1 Makefile |3 board/tqc/tqma31/Makefile | 48 board/tqc/tqma31/config.mk|2 board/tqc/tqma31/lowlevel_init.S | 375 + board/tqc/tqma31/tqma31.c | 89 board/tqc/tqma31/u-boot.lds | 72 ++ include/asm-arm/arch-mx31/mx31-regs.h | 42 include/asm-arm/mach-types.h | 13 + include/configs/TQMA31.h | 266 +++ 11 files changed, 915 insertions(+), 0 deletions(-) create mode 100644 board/tqc/tqma31/Makefile create mode 100644 board/tqc/tqma31/config.mk create mode 100644 board/tqc/tqma31/lowlevel_init.S create mode 100644 board/tqc/tqma31/tqma31.c create mode 100644 board/tqc/tqma31/u-boot.lds create mode 100644 include/configs/TQMA31.h diff --git a/MAINTAINERS b/MAINTAINERS index a3d70b1..dff1757 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -591,6 +591,10 @@ Michael Schwingen <[EMAIL PROTECTED]> actux3 xscale actux4 xscale +Jens Gehrlein <[EMAIL PROTECTED]> + + TQMA31 i.MX31 + # # x86 Systems: # # # diff --git a/MAKEALL b/MAKEALL index 32caab7..4e442c5 100755 --- a/MAKEALL +++ b/MAKEALL @@ -524,6 +524,7 @@ LIST_ARM11="\ imx31_litekit \ imx31_phycore \ mx31ads \ + TQMA31 \ " # diff --git a/Makefile b/Makefile index 8bfc891..e3ade25 100644 --- a/Makefile +++ b/Makefile @@ -2664,6 +2664,9 @@ imx31_phycore_config : unconfig mx31ads_config : unconfig @$(MKCONFIG) $(@:_config=) arm arm1136 mx31ads NULL mx31 +TQMA31_config : unconfig + @$(MKCONFIG) $(@:_config=) arm arm1136 tqma31 tqc mx31 + # # i386 # diff --git a/board/tqc/tqma31/Makefile b/board/tqc/tqma31/Makefile new file mode 100644 index 000..a2a9eb3 --- /dev/null +++ b/board/tqc/tqma31/Makefile @@ -0,0 +1,48 @@ +# +# Copyright (C) 2008, Guennadi Liakhovetski <[EMAIL PROTECTED]> +# Copyright (C) 2008, Jens Gehrlein <[EMAIL PROTECTED]> +# +# 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 $(TOPDIR)/config.mk + +LIB= $(obj)lib$(BOARD).a + +COBJS := $(BOARD).o +SOBJS := lowlevel_init.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 $(obj).depend + +# + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +# diff --git a/board/tqc/tqma31/config.mk b/board/tqc/tqma31/config.mk new file mode 100644 index 000..19df69e --- /dev/null +++ b/board/tqc/tqma31/config.mk @@ -0,0 +1,2 @@ +TEXT_BASE = 0x8ff0 + diff --git a/board/tqc/tqma31/lowlevel_init.S b/board/tqc/tqma31/lowlevel_init.S new file mode 100644 index 000..7e0a80e --- /dev/null +++ b/board/tqc/tqma31/lowlevel_init.S @@ -0,0 +1,375 @@ +/* + * Copyright (C) 2008, Guennadi Liakhovetski <[EMAIL PROTECTED]> + * Copyright (C) 2008, Jens Gehrlein <[EMAIL PROTECTED]> + * + * This
Re: [U-Boot-Users] [PATCH] add 'license' command to u-boot commandline
Hi, >> On Mon, Jul 07, 2008 at 04:53:14PM +0200, Wolfgang Denk wrote: >> > I support this, but then we should *always* print this message, not >> > only "when it starts in an interactive mode" (or some guys could try >> > to get away by disabling interactive mode). >> >> Such a restriction is (fortunately) not enforcable by the license, which > > It may not be enforcable by the license, but bu the Copyright holders > of the code. > >> only covers interactive interfaces. Otherwise, it would make u-boot useless >> for environments where interactive mode would interfere with other uses of >> the serial port (or when no suitable device exists). > > Of course it must not interfere with such situations. We have > standard ways to silence console output, and I did not mean to mess > with these. But if there is console output, a "GPL" message would > probably be a Good Thing. Just to confirm, this was also my original intention. If we output an "U-Boot ver. x.y.z" we can surely also output "U-Boot is Free Software licensed under the GPL". >> Personally, I'd rather stay far away from invoking any clauses of a >> non-changeable license that dictate technical decisions such as which bytes >> to include in the final image. > > The GPL does not dictate anything - you have always the freedom to > write anything from scratch or buy the source code for any proprie- > tary boot loader that comes under another license. But U-Boot *is* > licensed under GPL, and this is what makes it strong. Over the years, > and spending more and more time on stupid email discussions with > companies who think they can ignore a "free" license (while being > empatic with their own closed source stuff), I came to beliving that > a clearly visible label "This box runs Free Software" is a really, > really good idea. Full ack. Cheers Detlev -- A stated design goal of Motif was to give the X Window System the window management capabilities of HP's circa-1988 window manager and the visual elegance of Microsoft Windows. We kid you not. -- The UNIX Haters Handbook -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-40 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED] - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [GIT PULL] MIPS updates
Please pull MIPS update to pick up the following patch. The following changes since commit c956717ab25c962ef49d49064dfc73f4edcba1fb: Wolfgang Denk (1): Merge branch 'master' of /home/wd/git/u-boot/custodians are available in the git repository at: git://git.denx.de/u-boot-mips.git master Jason McMullan (1): mips: When booting Linux images, add 'ethaddr' and 'eth1addr' to the environment lib_mips/bootm.c | 11 +++ 1 files changed, 11 insertions(+), 0 deletions(-) diff --git a/lib_mips/bootm.c b/lib_mips/bootm.c index f813fc5..8fe3782 100644 --- a/lib_mips/bootm.c +++ b/lib_mips/bootm.c @@ -54,6 +54,7 @@ void do_bootm_linux (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[], char*commandline = getenv ("bootargs"); charenv_buf[12]; int ret; + const char *cp; /* find kernel entry point */ if (images->legacy_hdr_valid) { @@ -113,6 +114,16 @@ void do_bootm_linux (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[], sprintf (env_buf, "0x%X", (uint) (gd->bd->bi_flashsize)); linux_env_set ("flash_size", env_buf); + cp = getenv("ethaddr"); + if (cp != NULL) { + linux_env_set("ethaddr", cp); + } + + cp = getenv("eth1addr"); + if (cp != NULL) { + linux_env_set("eth1addr", cp); + } + if (!images->autostart) return ; - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] mips: When booting Linux images, add'ethaddr' and 'eth1addr' to the environment
McMullan, Jason wrote: > On Sun, 2008-07-06 at 14:59 +0900, Shinya Kuribayashi wrote: >> Jason McMullan wrote: >>> Add 'ethaddr' and 'eth1addr' to the Linux kernel environment if >>> they are set in the U-Boot environment. >> Looking closely into linux/arch/*, I found that mips is the only >> architecture which supports the 'ethaddr' kernel parameter. Is this >> right? What I want to make sure is whether 'ethaddr' is an unusual >> kernel parameter or not. > > On our devices, the U-Boot environment is the only place the ethernet > MAC address is stored. > > Since the infrastructure for passing environment variables up to the > MIPS Linux kernel existed anyways, I decided that it would be a better > plan to use that machanism than to have the kernel dig through the > duplicate U-Boot environments. Thanks for the explanations. As Linux/MIPS kernel supports this parameter anyway, it's good for U-Boot to support that, too. Applied, will send to Wolfgang asap. Shinya - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] ARM: Add support for Lyrtech SFF-SDR board (ARM926EJS)
[EMAIL PROTECTED] wrote: > In message > <[EMAIL PROTECTED]> you > wrote: >> ARM: This patch adds support for the Lyrtech SFF-SDR >> board, based on the TI DaVinci architecture (ARM926EJS). >> >> Signed-off-by: Hugo Villeneuve <[EMAIL PROTECTED]> >> Signed-off-by: Philip Balister <[EMAIL PROTECTED]> --- >> >> MAKEALL |1 + >> Makefile |3 + >> board/davinci/sffsdr/Makefile | 52 + >> board/davinci/sffsdr/board_init.S | 29 + >> board/davinci/sffsdr/config.mk| 24 >> board/davinci/sffsdr/dv_board.c | 212 >> + >> board/davinci/sffsdr/u-boot.lds | 52 + >> include/asm-arm/mach-types.h | 13 +++ >> include/configs/davinci_sffsdr.h | 177 >> +++ 9 files changed, 563 insertions(+), >> 0 deletions(-) > > Applied [with minor fix in the board Makefile], thanks. > Wolfgang Denk Wolfgang and/or Jean-Christophe, I can see that you have applied V2 of my patch, but the latest patch that I sent with all the errors and the style issues fixed was V8. I will re-send the patch V8 in a few minutes so can you please use this latest version instead? Thank-you, Hugo V. Hugo Villeneuve Hardware developer | Concepteur matériel Lyrtech Phone/Tél. : (1) (418) 877-4644 #2395 Toll-free/Sans frais - Canada & USA : (1) (888) 922-4644 #2395 Fax/Téléc. : (1) (418) 877-7710 www.lyrtech.com Infinite possibilities...TM - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [RFC][FSL DDR 0/8] Freescale DDR rewrit
> >> >> < more than one DDR module? > >> > >> I'm not sure I follow exactly what you are asking? Do you mean using > >> different DDR modules on different chip selects of the same > >> controller? or something else? > >> > >> - k > > Kumar - the current SPD DDR code assumes a single DIMM with a single > > fixed I2C address. Does your RFC add support for more than one DIMM > > on the same controller? > > Yes it should. The 8641 HPCN has 2-dimm slots per controller and both > dimm slots are supported. > > - k OK Thanks. David. - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [cfi-flash] Please pull git://www.denx.de/git/u-boot-cfi-flash.git
The following changes since commit c956717ab25c962ef49d49064dfc73f4edcba1fb: Wolfgang Denk (1): Merge branch 'master' of /home/wd/git/u-boot/custodians are available in the git repository at: git://www.denx.de/git/u-boot-cfi-flash.git master Stefan Roese (1): jedec_flash: Fix AM29DL800BB device ID drivers/mtd/jedec_flash.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [RFC][FSL DDR 0/8] Freescale DDR rewrit
On Jul 8, 2008, at 2:32 AM, David Saada wrote: > >> > < more than one DDR module? >> >> I'm not sure I follow exactly what you are asking? Do you mean using >> different DDR modules on different chip selects of the same >> controller? or something else? >> >> - k > Kumar - the current SPD DDR code assumes a single DIMM with a single > fixed I2C address. Does your RFC add support for more than one DIMM > on the same controller? Yes it should. The 8641 HPCN has 2-dimm slots per controller and both dimm slots are supported. - k - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH 1/1] microblaze: Add FIS support for Microblaze CPU
From: Michal Simek <[EMAIL PROTECTED]> Signed-off-by: Michal Simek <[EMAIL PROTECTED]> --- lib_microblaze/bootm.c | 444 ++-- 1 files changed, 430 insertions(+), 14 deletions(-) diff --git a/lib_microblaze/bootm.c b/lib_microblaze/bootm.c index 30a03ef..c8fcf21 100644 --- a/lib_microblaze/bootm.c +++ b/lib_microblaze/bootm.c @@ -1,5 +1,5 @@ /* - * (C) Copyright 2007 Michal Simek + * (C) Copyright 2007-2008 Michal Simek * (C) Copyright 2004 Atmark Techno, Inc. * * Michal SIMEK <[EMAIL PROTECTED]> @@ -15,7 +15,7 @@ * * 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 + * 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 @@ -30,24 +30,46 @@ #include #include +#if defined(CONFIG_OF_LIBFDT) +#include +#include +#include + +static int boot_get_fdt (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[], + bootm_headers_t *images, char **of_flat_tree, ulong *of_size); +static image_header_t *image_get_fdt (ulong fdt_addr); +#endif + DECLARE_GLOBAL_DATA_PTR; extern int do_reset (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]); void do_bootm_linux (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[], -bootm_headers_t *images) + bootm_headers_t *images) { - /* First parameter is mapped to $r5 for kernel boot args */ - void(*theKernel) (char *); + void(*theKernel) (char *, ulong, ulong); char*commandline = getenv ("bootargs"); + ulong rd_data_start, rd_data_end; ulong ep = 0; + int ret; + +#if defined(CONFIG_OF_LIBFDT) + char*of_flat_tree = NULL; + ulong of_size = 0; +#endif + + /* find flattened device tree */ + ret = boot_get_fdt (cmdtp, flag, argc, argv, images, + &of_flat_tree, &of_size); + if (ret) + goto error; /* find kernel entry point */ if (images->legacy_hdr_valid) { - ep = image_get_ep (&images->legacy_hdr_os_copy); + ep = image_get_ep (images->legacy_hdr_os); #if defined(CONFIG_FIT) } else if (images->fit_uname_os) { - int ret = fit_image_get_entry (images->fit_hdr_os, + ret = fit_image_get_entry (images->fit_hdr_os, images->fit_noffset_os, &ep); if (ret) { puts ("Can't get entry point property!\n"); @@ -58,19 +80,33 @@ void do_bootm_linux (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[], puts ("Could not find kernel entry point!\n"); goto error; } - theKernel = (void (*)(char *))ep; + theKernel = (void (*)(char *, ulong, ulong))ep; + + /* find ramdisk */ + ret = boot_get_ramdisk (argc, argv, images, IH_ARCH_MICROBLAZE, + &rd_data_start, &rd_data_end); + if (ret) + goto error; show_boot_progress (15); + if (!(ulong) of_flat_tree) + of_flat_tree = simple_strtoul (argv[3], NULL, 16); + + /* +* Linux Kernel Parameters (passing device tree): +* r5: pointer to command line +* r6: pointer to ramdisk +* r7: pointer to the fdt, followed by the board info data +*/ + #ifdef DEBUG - printf ("## Transferring control to Linux (at address %08lx) ...\n", - (ulong) theKernel); + printf ("## Transferring control to Linux (at address %08lx) " \ + "ramdisk 0x%08x, FDT 0x%08x...\n", + (ulong) theKernel, rd_data_start, (ulong) of_flat_tree); #endif + theKernel (commandline, rd_data_start, (ulong) of_flat_tree); - if (!images->autostart) - return ; - - theKernel (commandline); /* does not return */ return; @@ -79,3 +115,383 @@ error: do_reset (cmdtp, flag, argc, argv); return; } + +#if defined(CONFIG_FIT) +static void fdt_error (const char *msg) +{ + puts ("ERROR: "); + puts (msg); + puts (" - must RESET the board to recover.\n"); +} + +/** + * fit_check_fdt - verify FIT format FDT subimage + * @fit_hdr: pointer to the FIT header + * fdt_noffset: FDT subimage node offset within FIT image + * @verify: data CRC verification flag + * + * fit_check_fdt() verifies integrity of the FDT subimage and from + * specified FIT image. + * + * returns: + * 1, on success + * 0, on failure + */ +static int fit_check_fdt (const void *fit, int fdt_noffset, int verify) +{ + fit_image_print (fit, fdt_noffset, " "); + + if (verify) { + puts ("
[U-Boot-Users] microblaze: FIS bootm update
Hi Jerry, here is the update of do_bootm_linux for Microblaze CPU. This code is based on ppc. You can see the code is almost similar. Could you check it? Maybe is the right time to move this part to different location. Thanks, Michal Simek - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 04/10 v2] [ARM] TQMA31: add new board with i.MX31 processor
Hello Jens, Jens Gehrlein wrote: > Heiko Schocher schrieb: >> Hello Jens, >> >> one comment to your patch: >> >> Jens Gehrlein wrote: >> >>> Signed-off-by: Jens Gehrlein <[EMAIL PROTECTED]> >>> --- >>> >>> Fixed two bugs: >>> a) added NFS mount option "rw" to default environment >>> b) added prefix $(obj) in front of .depend in Makefile. Thank you >>> Magnus for catching that. >>> >> [...] >>> + >>> +/*** >>> >>> + * Environment >>> + >>> **/ >>> >>> + >>> +#define CONFIG_BOOTDELAY4 >>> + >>> +/* Default values */ >>> +#define CONFIG_NETMASK255.255.255.0 >>> +#define CONFIG_IPADDR172.20.5.100 >>> +#define CONFIG_SERVERIP172.20.5.121 >>> >> Please delete this block. We do not accept such settings in default >> config files. > > To understand you properly: do you mean the defines for netmask, ipaddr > and serverip, i.e. bootdelay and headerline are okay? I ask, because you > quoted the upper lines, too. Yes, I only meant netmask, ipaddr and serverip. bye Heiko -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 04/10 v2] [ARM] TQMA31: add new board with i.MX31 processor
Hi Jean-Christophe, Jean-Christophe PLAGNIOL-VILLARD schrieb: >> +COBJS := tqma31.o > why not use $(BOARD)? > COBJS := $(BOARD).o Okay. >> +SOBJS := lowlevel_init.o >> + >> +SRCS:= $(SOBJS:.o=.S) $(COBJS:.o=.c) >> +OBJS:= $(addprefix $(obj),$(COBJS)) >> +SOBJS := $(addprefix $(obj),$(SOBJS)) >> + >> +#elif defined CONFIG_MX31_CPU_532_MHZ >> +/* Platform clocks */ >> +REG CCM_PDR0, PDR0_CSI_PODF(0x1ff) /* camera sensor interface */ >> \ >> +| PDR0_PER_PODF(8-1)/* periph. if derived from USB >> clock */ \ >> +| PDR0_HSP_PODF(4-1)/* IPU 133 MHz */ >> \ > Please use tab instead of whitespace >> +| PDR0_NFC_PODF(7-1)/* NAND FC 19 MHz */ >> \ > Please use tab instead of whitespace >> +| PDR0_IPG_PODF(2-1)/* peripherals 66.5 MHz */ >> \ > Please use tab instead of whitespace >> +| PDR0_MAX_PODF(4-1)/* AHB 133 MHz */ >> \ > Please use tab instead of whitespace >> +| PDR0_MCU_PODF(1-1)/* core 532 MHz */ Okay. >> +/* MCU PLL */ >> +REG CCM_MPCTL, PLL_PD(1-1) | PLL_MFD(52-1) | PLL_MFI(10) | >> PLL_MFN(12) >> +#else >> +#error Please define CPU core frequency (CONFIG_CPU_399_MHZ or >> CONFIG_CPU_532_MHZ)! >> +#endif /* CONFIG_CPU_xxx_MHZ */ >> + >> +/* Serial PLL. Default: 1, 4, 12, 1 */ >> +REG CCM_SPCTL, PLL_PD(2-1) | PLL_MFD(5-1) | PLL_MFI(12) | PLL_MFN(1) >> +.endm /* init_sdram */ >> + >> + >> +/* setup SDRAM on CSD0 */ >> +.macro init_sdram >> +/* >> + * Enhanced SDRAM Miscellaneous Register >> + * Latency Hiding Enable >> + * LPDDR delay line measure unit is enabled >> + * LPDDR Delay Line is not reset >> + * Enable Mobile DDR SDRAM operation >> + * Soft Reset is disabled >> + */ >> +REG ESDMISC, 0x0004 >> + >> +/* >> + * Enhanced SDRAM Configuration Register 0 >> + * tXP 4 clock delay before new COMMAND issued to LPDDR >> + * tWTR tLPDDR WRITE to READ Command Delay = 2 clock >> + * tRP SDRAM Row Precharge Delay = 3 clock >> + * tMRD–SDRAM Load Mode Register to ACTIVE Command = 3 clock > you have a nice char here '<96>' in vim Uups. Well catched. Got this code from my colleague and missed that. Thank you. >> + >> + >> +/* > Please use tab instead of whitespace >> + * Enhanced SDRAM Control Register 0 > Please use tab instead of whitespace >> + * Enhanced SDRAM Controller Enable = 1 >> + * SDRAM Controller Operating Mode = 010 Auto-Refresh Command >> + * Supervisor Protect = 0 User mode accesses are allowed to this >> + * chip select region >> + * ROW Row Address Width. = 011 14 Row Addresses >> + * COL Column Address Width = 01 9 Col Addresses >> + * DSIZ SDRAM Memory Data Width = 00 00 16-bit memory width >> + * aligned to D[31:16] >> + * SREFR SDRAM Refresh Rate = 000 Refresh Disabled >> + * (bit field reset value) >> + * PWDT Power Down = 00 Disabled (bit field reset value) Run Mode >> + * FP Full Page = 0 0 Burst Length of the external memory device >> + * is not set to Full Page >> + * BL Burst Length = 0 >> + * PRCT Precharge Timer 00 Disabled (Bit field reset value) >> + */ >> +REG ESDCTL0, 0xa220 >> +REG 0x8000, 0x12344321 >> +REG 0x8000, 0x12344321 >> + >> +/* >> + * Enhanced SDRAM Control Register 0 >> + * Enhanced SDRAM Controller Enable = 1 > Please use tab instead of whitespace >> + * SDRAM Controller Operating Mode = 001 Precharge Command > Please use tab instead of whitespace >> + * Supervisor Protect = 0 User mode accesses are allowed to this > Please use tab instead of whitespace >> + * chip select region >> + * ROW Row Address Width. = 011 14 Row Addresses > Please use tab instead of whitespace >> + * COL Column Address Width = 01 9 Col Addresses > Please use tab instead of whitespace >> + * DSIZ SDRAM Memory Data Width = 00 00 16-bit memory width > Please use tab instead of whitespace >> + * aligned to D[31:16] >> + * SREFR SDRAM Refresh Rate = 000 Refresh Disabled > Please use tab instead of whitespace >> + * (bit field reset value) >> + * PWDT Power Down = 00 Disabled (bit field reset value) Run Mode > Please use tab instead of whitespace >> + * FP Full Page = 0 0 Burst Length of the external memory device > Please use tab instead of whitespace >> + * is not set to Full Page. >> + * BL Burst Length = 0 > Please use tab instead of whitespace >> + * PRCT Precharge Timer 00 Dis
[U-Boot-Users] U-Boot-V2: Fix appearance of board files
This patch fixes the appearance of two board files in the Doxygen generated documentation. Signed-off-by: Juergen Beisert <[EMAIL PROTECTED]> --- Documentation/boards.dox |5 + board/phycore_mcf54xx/phyCore_MCF54xx.dox |2 +- 2 files changed, 6 insertions(+), 1 deletion(-) Index: u-boot-v2/Documentation/boards.dox === --- u-boot-v2.orig/Documentation/boards.dox +++ u-boot-v2/Documentation/boards.dox @@ -21,6 +21,11 @@ Blackfin type: x86 type: +coldfire/m68k type: + +- @subpage phycore_mcf54xx +- @subpage kp_ukd_r1 + */ /* TODO Index: u-boot-v2/board/phycore_mcf54xx/phyCore_MCF54xx.dox === --- u-boot-v2.orig/board/phycore_mcf54xx/phyCore_MCF54xx.dox +++ u-boot-v2/board/phycore_mcf54xx/phyCore_MCF54xx.dox @@ -1,5 +1,5 @@ -/** @page phycore_mcf54xx Phytec's phyCORE Baseboard +/** @page phycore_mcf54xx Phytec's phyCORE-MCF54x5 This target is based on a PhyTec PhyCore MCF54x5 CPU module. The card is shipped with: -- Dipl.-Ing. Juergen Beisert | http://www.pengutronix.de Pengutronix - Linux Solutions for Science and Industry Handelsregister: Amtsgericht Hildesheim, HRA 2686 Vertretung Sued/Muenchen, Germany Phone: +49-8766-939 228 | Fax: +49-5121-206917-9 - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 04/10 v2] [ARM] TQMA31: add new board with i.MX31 processor
Hi Heiko, Heiko Schocher schrieb: > Hello Jens, > > one comment to your patch: > > Jens Gehrlein wrote: > >> Signed-off-by: Jens Gehrlein <[EMAIL PROTECTED]> >> --- >> >> Fixed two bugs: >> a) added NFS mount option "rw" to default environment >> b) added prefix $(obj) in front of .depend in Makefile. Thank you Magnus for >> catching that. >> > [...] >> + >> +/*** >> + * Environment >> + >> **/ >> + >> +#define CONFIG_BOOTDELAY4 >> + >> +/* Default values */ >> +#define CONFIG_NETMASK 255.255.255.0 >> +#define CONFIG_IPADDR 172.20.5.100 >> +#define CONFIG_SERVERIP 172.20.5.121 >> > Please delete this block. We do not accept such settings in default > config files. To understand you properly: do you mean the defines for netmask, ipaddr and serverip, i.e. bootdelay and headerline are okay? I ask, because you quoted the upper lines, too. Kind regards, Jens - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 05/10] [ARM] TQMA31: add support for I2C, I2C temperature sensor and I2C-EEPROM
Jean-Christophe PLAGNIOL-VILLARD schrieb: >> #if defined(CONFIG_DISPLAY_CPUINFO) >> int print_cpuinfo (void) >> { >> diff --git a/drivers/i2c/mxc_i2c.c b/drivers/i2c/mxc_i2c.c >> index 6f9306f..68d2720 100644 >> --- a/drivers/i2c/mxc_i2c.c >> +++ b/drivers/i2c/mxc_i2c.c >> @@ -209,4 +209,17 @@ int i2c_write(uchar chip, uint addr, int alen, uchar >> *buf, int len) >> return 0; >> } >> >> +int i2c_get_bus_speed(void) >> +{ >> +return -1; >> +} >> + >> +int i2c_set_bus_speed (unsigned int speed) >> +{ >> +if (speed != CFG_I2C_SPEED) >> +return -1; >> + >> +return 0; >> +} > why do you refuse to change the i2c bus speed? Those two routines were missing at all before I started the board BSP. I just added them to compile the U-Boot successfully. Or did I miss something (e.g. overlaying-of-functions-technique or so)? I copied the source code from another driver (can't remember from where). It's no real excuse, I know. So, shall I change it or can I leave it for now? >> +#define CFG_I2C_SPEED 10 > please use tab instead of whitespace >> +#define CFG_I2C_SLAVE 0 > please use tab instead of whitespace Will do. Thank you. Kind regards, Jens - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 09/10] [ARM] TQMA31: add FPGA configuration flash
> /* > * Bank start addresses. > * 4 x 32 MiB is the maximum for user and U-Boot code. Please adapt the list > * as well as CFG_MAX_FLASH_BANKS to your TQM. Also consider dual die chips > * or single die chips, e.g. one dual die chip represents two banks. > + * The fifth bank is a separate chip for the FPGA configuration. It's > + * controlled by chipselect 1. > */ same commnets as patch 04 > #define CFG_FLASH_BANKS_LIST {CFG_FLASH_BASE,\ > CFG_FLASH_BASE + 32*1024*1024, \ > CFG_FLASH_BASE + 64*1024*1024, \ > - CFG_FLASH_BASE + 96*1024*1024} > + CFG_FLASH_BASE + 96*1024*1024, \ > + CS1_BASE} > > /* Max number of sectors on one chip */ > #define CFG_MAX_FLASH_SECT 259 > Best Regards, J. - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 05/10] [ARM] TQMA31: add support for I2C, I2C temperature sensor and I2C-EEPROM
> #if defined(CONFIG_DISPLAY_CPUINFO) > int print_cpuinfo (void) > { > diff --git a/drivers/i2c/mxc_i2c.c b/drivers/i2c/mxc_i2c.c > index 6f9306f..68d2720 100644 > --- a/drivers/i2c/mxc_i2c.c > +++ b/drivers/i2c/mxc_i2c.c > @@ -209,4 +209,17 @@ int i2c_write(uchar chip, uint addr, int alen, uchar > *buf, int len) > return 0; > } > > +int i2c_get_bus_speed(void) > +{ > + return -1; > +} > + > +int i2c_set_bus_speed (unsigned int speed) > +{ > + if (speed != CFG_I2C_SPEED) > + return -1; > + > + return 0; > +} why do you refuse to change the i2c bus speed? > + > #endif /* CONFIG_HARD_I2C */ > diff --git a/include/asm-arm/arch-mx31/mx31-regs.h > b/include/asm-arm/arch-mx31/mx31-regs.h > index ea15108..c0e516f 100644 > --- a/include/asm-arm/arch-mx31/mx31-regs.h > +++ b/include/asm-arm/arch-mx31/mx31-regs.h > @@ -168,6 +168,9 @@ > > extern u32 mx31_get_ipg_clk(void); > extern void mx31_gpio_mux(unsigned long mode); > +extern void mx31_pad_ctl (u32 field, u32 val); > > #endif /* __ASM_ARCH_MX31_H */ > diff --git a/include/configs/TQMA31.h b/include/configs/TQMA31.h > index 255355d..f96fd74 100644 > --- a/include/configs/TQMA31.h > +++ b/include/configs/TQMA31.h > @@ -154,6 +154,43 @@ > > > > /*** > + * I2C > + > **/ > + > +/* Use the processor internal controller */ > +#define CONFIG_HARD_I2C > +#define CONFIG_I2C_MXC > + > +/* Configure I2C1 */ > +#define CFG_I2C_MX31_PORT1 > + > +#define CFG_I2C_SPEED10 please use tab instead of whitespace > +#define CFG_I2C_SLAVE0 please use tab instead of whitespace > + > +/* Don't probe these addrs */ > +#define CFG_I2C_NOPROBES {0x00} > + Best Regards, J. - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 04/10 v2] [ARM] TQMA31: add new board with i.MX31 processor
On 11:33 Tue 08 Jul , Jens Gehrlein wrote: > Signed-off-by: Jens Gehrlein <[EMAIL PROTECTED]> > --- > > Fixed two bugs: > a) added NFS mount option "rw" to default environment > b) added prefix $(obj) in front of .depend in Makefile. Thank you Magnus for > catching that. > > > MAINTAINERS |4 > MAKEALL |1 > Makefile |3 > board/tqc/tqma31/Makefile | 48 > board/tqc/tqma31/config.mk|2 > board/tqc/tqma31/lowlevel_init.S | 375 > + > board/tqc/tqma31/tqma31.c | 95 > board/tqc/tqma31/u-boot.lds | 72 ++ > include/asm-arm/arch-mx31/mx31-regs.h | 42 > include/configs/TQMA31.h | 271 > 10 files changed, 913 insertions(+), 0 deletions(-) > create mode 100644 board/tqc/tqma31/Makefile > create mode 100644 board/tqc/tqma31/config.mk > create mode 100644 board/tqc/tqma31/lowlevel_init.S > create mode 100644 board/tqc/tqma31/tqma31.c > create mode 100644 board/tqc/tqma31/u-boot.lds > create mode 100644 include/configs/TQMA31.h > > + > +COBJS:= tqma31.o why not use $(BOARD)? COBJS := $(BOARD).o > +SOBJS:= lowlevel_init.o > + > +SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) > +OBJS := $(addprefix $(obj),$(COBJS)) > +SOBJS:= $(addprefix $(obj),$(SOBJS)) > + > +#elif defined CONFIG_MX31_CPU_532_MHZ > + /* Platform clocks */ > + REG CCM_PDR0, PDR0_CSI_PODF(0x1ff) /* camera sensor interface */ > \ > + | PDR0_PER_PODF(8-1)/* periph. if derived from USB > clock */ \ > + | PDR0_HSP_PODF(4-1)/* IPU 133 MHz */ > \ Please use tab instead of whitespace > + | PDR0_NFC_PODF(7-1)/* NAND FC 19 MHz */ > \ Please use tab instead of whitespace > + | PDR0_IPG_PODF(2-1)/* peripherals 66.5 MHz */ > \ Please use tab instead of whitespace > + | PDR0_MAX_PODF(4-1)/* AHB 133 MHz */ > \ Please use tab instead of whitespace > + | PDR0_MCU_PODF(1-1)/* core 532 MHz */ > + /* MCU PLL */ > + REG CCM_MPCTL, PLL_PD(1-1) | PLL_MFD(52-1) | PLL_MFI(10) | > PLL_MFN(12) > +#else > +#error Please define CPU core frequency (CONFIG_CPU_399_MHZ or > CONFIG_CPU_532_MHZ)! > +#endif /* CONFIG_CPU_xxx_MHZ */ > + > + /* Serial PLL. Default: 1, 4, 12, 1 */ > + REG CCM_SPCTL, PLL_PD(2-1) | PLL_MFD(5-1) | PLL_MFI(12) | PLL_MFN(1) > +.endm /* init_sdram */ > + > + > +/* setup SDRAM on CSD0 */ > +.macro init_sdram > + /* > + * Enhanced SDRAM Miscellaneous Register > + * Latency Hiding Enable > + * LPDDR delay line measure unit is enabled > + * LPDDR Delay Line is not reset > + * Enable Mobile DDR SDRAM operation > + * Soft Reset is disabled > + */ > + REG ESDMISC, 0x0004 > + > + /* > + * Enhanced SDRAM Configuration Register 0 > + * tXP 4 clock delay before new COMMAND issued to LPDDR > + * tWTR tLPDDR WRITE to READ Command Delay = 2 clock > + * tRP SDRAM Row Precharge Delay = 3 clock > + * tMRDSDRAM Load Mode Register to ACTIVE Command = 3 clock you have a nice char here '<96>' in vim > + * tWR SDRAM WRITE to PRECHARGE Command = 3 clock > + * tRAS SDRAM ACTIVE to PRECHARGE Command = 6 clock > + * tRRD ACTIVE Bank A to ACTIVE Bank B Command = 2 clock > + * tCAS CAS Latency = 3 clock > + * tRCD SDRAM Row to Column Delay = 3 clock > + * tRC SDRAM Row Cycle Delay = 13 clocks > + */ > + REG ESDCFG0, 0x006ac73c > + > + /* > + * Enhanced SDRAM Control Register 0 > + * Enhanced SDRAM Controller Enable = 1 > + * SDRAM Controller Operating Mode = 001 Precharge Command > + * Supervisor Protect = 0 User mode accesses are allowed to this > + * chip select region > + * ROW Row Address Width. = 011 14 Row Addresses > + * COL Column Address Width = 01 9 Col Addresses > + * DSIZ SDRAM Memory Data Width = 00 00 16-bit memory width > + * aligned to D[31:16] > + * SREFR SDRAM Refresh Rate = 000 Refresh Disabled > + * (bit field reset value) > + * PWDT Power Down = 00 Disabled (bit field reset value) Run Mode > + * FP Full Page = 0 0 Burst Length of the external memory device > + * is not set to Full Page > + * BL Burst Length = 0 > + * PRCT Precharge Timer 00 Disabled (Bit field reset value) > + */ > + REG ESDCTL0, 0x9220 > + REG 0x8f00, 0x12344321 > + > + > + /* Please use tab instead of whitespace > +
Re: [U-Boot-Users] PATCH: drivers/mtd/jedec_flash.c (typo)
On Monday 07 July 2008, Jerry Hicks wrote: > We were using a custom driver written by Andy Lowe of Montavista. > He had a #define local to our flash.c implementation when I noticed > the discrepancy between his local definition and the one in the u-boot > header. > > On our hardware it works with 0x22CB but not with 0x22C8. > > The current documentation from Spansion also shows it as 0x22CB. > > http://www.spansion.com/datasheets/21519c4.pdf I created an "official" patch for this and applied it to the cfi_flash repository. I'll send the pull request soon. Thanks. Best regards, Stefan = DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: [EMAIL PROTECTED] = - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH] jedec_flash: Fix AM29DL800BB device ID
As pointed out by Jerry Hicks, this patch corrects the device ID of the Spansion AM29DL800BB NOR device. Verified against latest Spansion datasheet (rev C4 from Dezember 2006). Signed-off-by: Stefan Roese <[EMAIL PROTECTED]> --- drivers/mtd/jedec_flash.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/mtd/jedec_flash.c b/drivers/mtd/jedec_flash.c index b958d17..9845e93 100644 --- a/drivers/mtd/jedec_flash.c +++ b/drivers/mtd/jedec_flash.c @@ -42,7 +42,7 @@ #define MANUFACTURER_SST 0x00BF /* AMD */ -#define AM29DL800BB0x22C8 +#define AM29DL800BB0x22CB #define AM29DL800BT0x224A #define AM29F800BB 0x2258 -- 1.5.6.2 - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 04/10 v2] [ARM] TQMA31: add new board with i.MX31 processor
Hello Jens, one comment to your patch: Jens Gehrlein wrote: > Signed-off-by: Jens Gehrlein <[EMAIL PROTECTED]> > --- > > Fixed two bugs: > a) added NFS mount option "rw" to default environment > b) added prefix $(obj) in front of .depend in Makefile. Thank you Magnus for > catching that. > [...] > + > +/*** > + * Environment > + > **/ > + > +#define CONFIG_BOOTDELAY 4 > + > +/* Default values */ > +#define CONFIG_NETMASK 255.255.255.0 > +#define CONFIG_IPADDR172.20.5.100 > +#define CONFIG_SERVERIP 172.20.5.121 > Please delete this block. We do not accept such settings in default config files. bye, Heiko -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] V2 status, (Was Re: V2: Error in recent check-in)
On Tue, Jul 08, 2008 at 12:36:13AM -0700, Chris Zankel wrote: > I really like the structure of V2 but my fear is that there's not > enough man power behind it. It depends on how far people's interest will go in the future. It turned out to be relatively easy to port things over to a solid design once a feature is really needed by somebody. > We are using Phytec's i.MX27 board, so we are 'stuck' with that > version. Consider it a feature, you can help lowering the (ifdef) entropy in the universe :-) Which functionality are you missing? > I'm sorry if this questions has been asked before, but do you see more > momentum to push for V2? It depends on community and customer interest. > It's probably too early to ask for a separate V2 mailing list? Yes; at the moment it's probably better to leave the traffic here. It still can be split up once it goes up significantly. rsc -- Dipl.-Ing. Robert Schwebel | http://www.pengutronix.de Pengutronix - Linux Solutions for Science and Industry Handelsregister: Amtsgericht Hildesheim, HRA 2686 Hannoversche Str. 2, 31134 Hildesheim, Germany Phone: +49-5121-206917-0 | Fax: +49-5121-206917-9 - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH] pci: Move PCI device configuration check into a separate weak function
This patch moves the check, if a device should be skipped in PCI PNP configuration into the function pci_skip_dev(). This function is defined as weak so that it can be overwritten by a platform specific one if needed. The check if the device should get printed in the PCI summary upon bootup (when CONFIG_PCI_SCAN_SHOW is defined) is moved to the function pci_print_dev() which is also defined as weak too. Signed-off-by: Stefan Roese <[EMAIL PROTECTED]> --- drivers/pci/pci.c | 70 ++-- 1 files changed, 46 insertions(+), 24 deletions(-) diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c index b3ae3b1..16180cb 100644 --- a/drivers/pci/pci.c +++ b/drivers/pci/pci.c @@ -411,6 +411,40 @@ void pci_cfgfunc_do_nothing(struct pci_controller *hose, extern int pciauto_config_device(struct pci_controller *hose, pci_dev_t dev); extern void pciauto_config_init(struct pci_controller *hose); +int __pci_skip_dev(struct pci_controller *hose, pci_dev_t dev) +{ + /* +* Check if pci device should be skipped in configuration +*/ + if (dev == PCI_BDF(hose->first_busno, 0, 0)) { +#if defined(CONFIG_PCI_CONFIG_HOST_BRIDGE) /* don't skip host bridge */ + /* +* Only skip configuration if "pciconfighost" is not set +*/ + if (getenv("pciconfighost") == NULL) + return 1; +#else + return 1; +#endif + } + + return 0; +} +int pci_skip_dev(struct pci_controller *hose, pci_dev_t dev) + __attribute__((weak, alias("__pci_skip_dev"))); + +#ifdef CONFIG_PCI_SCAN_SHOW +int __pci_print_dev(struct pci_controller *hose, pci_dev_t dev) +{ + if (dev == PCI_BDF(hose->first_busno, 0, 0)) + return 0; + + return 1; +} +int pci_print_dev(struct pci_controller *hose, pci_dev_t dev) + __attribute__((weak, alias("__pci_print_dev"))); +#endif /* CONFIG_PCI_SCAN_SHOW */ + int pci_hose_scan_bus(struct pci_controller *hose, int bus) { unsigned int sub_bus, found_multi=0; @@ -423,21 +457,10 @@ int pci_hose_scan_bus(struct pci_controller *hose, int bus) for (dev = PCI_BDF(bus,0,0); dev < PCI_BDF(bus,PCI_MAX_PCI_DEVICES-1,PCI_MAX_PCI_FUNCTIONS-1); -dev += PCI_BDF(0,0,1)) - { - /* Skip our host bridge */ - if ( dev == PCI_BDF(hose->first_busno,0,0) ) { -#if defined(CONFIG_PCI_CONFIG_HOST_BRIDGE) /* don't skip host bridge */ - /* -* Only skip hostbridge configuration if "pciconfighost" is not set -*/ - if (getenv("pciconfighost") == NULL) { - continue; /* Skip our host bridge */ - } -#else - continue; /* Skip our host bridge */ -#endif - } +dev += PCI_BDF(0,0,1)) { + + if (pci_skip_dev(hose, dev)) + continue; if (PCI_FUNC(dev) && !found_multi) continue; @@ -473,15 +496,14 @@ int pci_hose_scan_bus(struct pci_controller *hose, int bus) hose->fixup_irq(hose, dev); #ifdef CONFIG_PCI_SCAN_SHOW - /* Skip our host bridge */ - if ( dev != PCI_BDF(hose->first_busno,0,0) ) { - unsigned char int_line; - - pci_hose_read_config_byte(hose, dev, PCI_INTERRUPT_LINE, - &int_line); - printf("%02x %02x %04x %04x %04x %02x\n", - PCI_BUS(dev), PCI_DEV(dev), vendor, device, class, - int_line); + if (pci_print_dev(hose, dev)) { + unsigned char int_line; + + pci_hose_read_config_byte(hose, dev, PCI_INTERRUPT_LINE, + &int_line); + printf("%02x %02x %04x %04x %04x %02x\n", + PCI_BUS(dev), PCI_DEV(dev), vendor, device, class, + int_line); } #endif } -- 1.5.6.2 - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH 04/10 v2] [ARM] TQMA31: add new board with i.MX31 processor
Signed-off-by: Jens Gehrlein <[EMAIL PROTECTED]> --- Fixed two bugs: a) added NFS mount option "rw" to default environment b) added prefix $(obj) in front of .depend in Makefile. Thank you Magnus for catching that. MAINTAINERS |4 MAKEALL |1 Makefile |3 board/tqc/tqma31/Makefile | 48 board/tqc/tqma31/config.mk|2 board/tqc/tqma31/lowlevel_init.S | 375 + board/tqc/tqma31/tqma31.c | 95 board/tqc/tqma31/u-boot.lds | 72 ++ include/asm-arm/arch-mx31/mx31-regs.h | 42 include/configs/TQMA31.h | 271 10 files changed, 913 insertions(+), 0 deletions(-) create mode 100644 board/tqc/tqma31/Makefile create mode 100644 board/tqc/tqma31/config.mk create mode 100644 board/tqc/tqma31/lowlevel_init.S create mode 100644 board/tqc/tqma31/tqma31.c create mode 100644 board/tqc/tqma31/u-boot.lds create mode 100644 include/configs/TQMA31.h diff --git a/MAINTAINERS b/MAINTAINERS index a3d70b1..dff1757 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -591,6 +591,10 @@ Michael Schwingen <[EMAIL PROTECTED]> actux3 xscale actux4 xscale +Jens Gehrlein <[EMAIL PROTECTED]> + + TQMA31 i.MX31 + # # x86 Systems: # # # diff --git a/MAKEALL b/MAKEALL index 32caab7..4e442c5 100755 --- a/MAKEALL +++ b/MAKEALL @@ -524,6 +524,7 @@ LIST_ARM11="\ imx31_litekit \ imx31_phycore \ mx31ads \ + TQMA31 \ " # diff --git a/Makefile b/Makefile index 8bfc891..e3ade25 100644 --- a/Makefile +++ b/Makefile @@ -2664,6 +2664,9 @@ imx31_phycore_config : unconfig mx31ads_config : unconfig @$(MKCONFIG) $(@:_config=) arm arm1136 mx31ads NULL mx31 +TQMA31_config : unconfig + @$(MKCONFIG) $(@:_config=) arm arm1136 tqma31 tqc mx31 + # # i386 # diff --git a/board/tqc/tqma31/Makefile b/board/tqc/tqma31/Makefile new file mode 100644 index 000..f7e17c8 --- /dev/null +++ b/board/tqc/tqma31/Makefile @@ -0,0 +1,48 @@ +# +# Copyright (C) 2008, Guennadi Liakhovetski <[EMAIL PROTECTED]> +# Copyright (C) 2008, Jens Gehrlein <[EMAIL PROTECTED]> +# +# 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 $(TOPDIR)/config.mk + +LIB= $(obj)lib$(BOARD).a + +COBJS := tqma31.o +SOBJS := lowlevel_init.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 $(obj).depend + +# + +# defines $(obj).depend target +include $(SRCTREE)/rules.mk + +sinclude $(obj).depend + +# diff --git a/board/tqc/tqma31/config.mk b/board/tqc/tqma31/config.mk new file mode 100644 index 000..19df69e --- /dev/null +++ b/board/tqc/tqma31/config.mk @@ -0,0 +1,2 @@ +TEXT_BASE = 0x8ff0 + diff --git a/board/tqc/tqma31/lowlevel_init.S b/board/tqc/tqma31/lowlevel_init.S new file mode 100644 index 000..50db3a1 --- /dev/null +++ b/board/tqc/tqma31/lowlevel_init.S @@ -0,0 +1,375 @@ +/* + * Copyright (C) 2008, Guennadi Liakhovetski <[EMAIL PROTECTED]> + * Copyright (C) 2008, Jens Gehrlein <[EMAIL PROTECTED]> + * + * 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
Re: [U-Boot-Users] [PATCH][RFC] pci: Add check PCI bridge class (Re: [PATCH][RFC] pci: Remove CONFIG_PCI_SKIP_HOST_BRIDGE and Add check PCI class of host bridge)
Hi Nobuhiro, On Tuesday 08 July 2008, Nobuhiro Iwamatsu wrote: > > c) CONFIG_PCI_CONFIG_HOST_BRIDGE is defined and the env variable > > "pciconfighost" is defined too > > > > If I understand you correctly, then you have some PCI devices at BDF == > > 0,0,0 that need to be configured (and not skipped). Correct? If this is > > correct, wouldn't it be enough for you to use "solution" c) from above? > > Yes, Your indication is right. And there was the part which I did not > understand. > But, I think that there is still a problem only by these measures. > > For example, BDF == 0,0,0 are not displayed when I validated > CONFIG_PCI_SCAN_SHOW. Right, this is a problem. > 475 #ifdef CONFIG_PCI_SCAN_SHOW > 476 /* Skip our host bridge */ > 477 if ( dev != PCI_BDF(hose->first_busno,0,0) ) { > 478 unsigned char int_line; > 479 > 480 pci_hose_read_config_byte(hose, dev, > PCI_INTERRUPT_LINE, 481 &int_line); > 482 printf("%02x %02x %04x %04x %04x %02x\n", > 483PCI_BUS(dev), PCI_DEV(dev), vendor, device, class, > 484int_line); > 485 } > 486 #endif > > I think that it is a problem to handle only "BDF == 0,0,0". > I think that I had better check it in Class ID. > (Of cource, I understand that my implementation is mean.) Yes, switching to this class-ID check would be probably "cleaner". The main problem I see with this is, that we could break backward compatibility. I really don't know if all boards currently using this "Host-Bridge-Skipping" implementation have the class-ID set to 0x0680 (Other bridge type). So I suggest the following solution: I'll prepare a patch to move this "Skip-device-check" into a separate weak function with the current behavior. You (and others) can then define a custom "Skip-device-check" function in your platform code that overrides this default function. I'll send this patch to the list in a short while. Please try it out and let me know if this works for you. Best regards, Stefan = DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: [EMAIL PROTECTED] = - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH 07/10] [ARM] TQMA31: adjust voltage regulators in PMIC MC13738
Hi Magnus, Magnus Lilja schrieb: > Hi, > > Jens Gehrlein wrote: >> +static int adjust_voltages (void) >> +{ >> +u32 reg; >> +u32 val; >> +static struct spi_slave *slave = NULL; >> + >> +slave = spi_setup_slave(1, 0, 100, >> +SPI_MODE_2 | SPI_CS_HIGH); >> +if (!slave) >> +return -1; >> + >> +if (spi_claim_bus(slave)) >> +return -1; >> + >> +/* Set PMIC arbitration switchers */ >> +val = 0x20; >> +reg = 0x1400 | val | 0x8000; > > It seems like it's time to create a MC13783 header file containing some > helper macros and symbolic names to the 13783's registers so we can write: > reg = MC13783_READ_CMD(MC_REG_FOO); > ... > val = something_symbolic | something_symbolic2; > reg = MC13783_WRITE_CMD(MC_REG_FOO, val); > ... > etc.. > > > Also, I'm pretty sure some other i.MX31 boards could benefit from changing > some voltages in U-boot so perhaps we could have a mc13783-reg.c (-reg as in > regulators) file containing stuff like mc13783_set_regulator(MC_VRFDIG, > VRFDIG_1V8)? Basically, I agree. But would you accept the current patch for now? The new routines and macros later could be implemented later. Kind regards, Jens - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] Debugging U-boot using Trace32 in Linux..
On Tuesday 08 July 2008, Yi-Neng Lin wrote: > Can anyone here give me a pointer about this? Did anyone succeeded in > debugging with Trace32 in Linux? Thanks a lot. I did this a year ago, but I used the native Linux version. Yes it exists and has the same features, but is a bit worse than the windows one to use, because of the multiple windows. If I recall correctly The software was shipped on the same cd as the windows version, but isn't available for download. http://lauterbach.com/updatelinux.html Regards Markus - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [PATCH] Add MVBC_P board
Kim, thanks for the hints. Kim Phillips schrieb: > On Fri, 04 Jul 2008 09:42:24 +0200 > Andre Schwarz <[EMAIL PROTECTED]> wrote: > > Hello Andre, > > >> board/mvbc_p/fpga.c| 177 >> board/mvbc_p/fpga.h| 34 >> > > couldn't help but notice this file is equal to board/mvblm7/fpga.c. > Perhaps it's time to add your board/$(VENDOR)/common directory and put > both this file and its header there. This way you can make your code > more maintainable by avoiding duplicating it all over the place. > > yes. >> +@$(MKCONFIG) -n $@ -a MVBC_P ppc mpc5xxx mvbc_p >> > > assuming $VENDOR == matrix-vision or something (your choice), you'd > have to modify the above line like so: > > - @$(MKCONFIG) -n $@ -a MVBC_P ppc mpc5xxx mvbc_p > + @$(MKCONFIG) -n $@ -a MVBC_P ppc mpc5xxx mvbc_p matrix-vision > > to enable building your (now a single copy) fpga.c. > > Of course you're right - but I'd like to add all boards first in order _not_ to mix patches for different boards. Maybe we can do this _after_ adding this board ? If this is not ok I'll fix it right now ... >> +#ifdef CONFIG_OF_LIBFDT >> +#include >> +#endif >> > > it'd be nice to get rid of ifdeffing CONFIG_OF_LIBFDT all over the > place, assuming, of course, you won't be supporting booting a > non-fdt-aware OS. > > ok. >> +gpio->simple_ddr = SIMPLE_DDR; >> +gpio->simple_dvo = SIMPLE_DVO; >> +gpio->simple_ode = SIMPLE_ODE; >> +gpio->simple_gpioe = SIMPLE_GPIOEN; >> + >> +gpio->sint_ode = SINT_ODE; >> +gpio->sint_ddr = SINT_DDR; >> +gpio->sint_dvo = SINT_DVO; >> +gpio->sint_inten = SINT_INTEN; >> +gpio->sint_itype = SINT_ITYPE; >> +gpio->sint_gpioe = SINT_GPIOEN; >> + >> +*(vu_char *)MPC5XXX_WU_GPIO_ODE = WKUP_ODE; >> +*(vu_char *)MPC5XXX_WU_GPIO_DIR = WKUP_DIR; >> +*(vu_char *)MPC5XXX_WU_GPIO_DATA_O = WKUP_DO | ARB_X_EN; >> +*(vu_char *)MPC5XXX_WU_GPIO_ENABLE = WKUP_EN; >> + >> +printf("simple_gpioe: 0x%08x\n", gpio->simple_gpioe); >> +printf("sint_gpioe : 0x%08x\n", gpio->sint_gpioe); >> +__asm__ volatile ("sync"); >> +} >> > > same comment Wolfgang made; use in_* out_* accessor fns. > > yes - as already mentioned I'll wait for some more feedback before re-submitting a modified patch. >> +void hw_watchdog_reset(void) >> +{ >> +*(u8*) (0xff05) = 0; >> > > is this a magic number/needs a #define somewhere? > ok. > >> +#define MV_FPGA_DATA"0xff86" >> +#define MV_FPGA_SIZE"0x3c886" >> +#define MV_KERNEL_ADDR "0xffc0" >> +#define MV_INITRD_ADDR "0xff90" >> +#define MV_INITRD_LENGTH"0x0030" >> +#define MV_SCRATCH_ADDR "0x" >> +#define MV_SCRATCH_LENGTH MV_INITRD_LENGTH >> +#define MV_AUTOSCR_ADDR "0xff84" >> +#define MV_AUTOSCR_ADDR2"0xff85" >> +#define MV_DTB_ADDR "0xfffc" >> > > please use MK_STR (see other config files, e.g. MPC8313). > > hmm... Is there a functional difference/advantage or simply coding style ? >> + >> +#define CONFIG_SHOW_BOOT_PROGRESS 1 >> + >> +#define MV_KERNEL_ADDR_RAM "0x0010" >> +#define MV_DTB_ADDR_RAM "0x0060" >> +#define MV_INITRD_ADDR_RAM "0x0100" >> + >> +/* pass open firmware flat tree */ >> +#define CONFIG_OF_LIBFDT1 >> +#define CONFIG_OF_BOARD_SETUP 1 >> + >> +#define OF_CPU "PowerPC,[EMAIL PROTECTED]" >> +#define OF_SOC "[EMAIL PROTECTED]" >> +#define OF_TBCLK(bd->bi_busfreq / 4) >> > > I thought we had done away with the above three (FLAT_TREE now > obsolete). Oh, I see now: 5xxx still uses it in LIBFDT code. Bad 5xxx! > > Kim > As always I have to rely on some recent board implementation since I don't have time to dig into each line of code involved. Wouldn't it be a good thing if the custodian removes all #defines as soon as it gets obsolete ? regards, Andre MATRIX VISION GmbH, Talstraße 16, DE-71570 Oppenweiler - Registergericht: Amtsgericht Stuttgart, HRB 271090 Geschäftsführer: Gerhard Thullner, Werner Armingeon, Uwe Furtner - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] [PATCH] at91: Fix to enable using Teridian MII phy (78Q21x3) with at91sam9260
On the at91sam9260ep development board there is an EEPROM connected to the TWI interface (PA23, PA24 Peripheral A multiplexing), so we cannot use these pins as ETX2, ETX3. This patch configures PA10, PA11 pins for ETX2, ETX3 instead of PA23, PA24 pins. Signed-off-by: Anatolij Gustschin <[EMAIL PROTECTED]> --- Hi Manuel, Wolfgang Denk asked you in another email for a proper patch to fix this issue so that this could be reviewed on the list and applied by AT91 custodian. Now I created this patch and a patch description, but I'm not familiar with at91sam9260 and also do not have an at91sam9260ep board and cannot test it. Could you please test this patch and probably fix the patch description. I composed this description from info in your mails, but I'm not sure if it is really correct. Also add your "Signed-off-by" line. board/atmel/at91sam9260ek/at91sam9260ek.c |9 + 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/board/atmel/at91sam9260ek/at91sam9260ek.c b/board/atmel/at91sam9260ek/at91sam9260ek.c index 836a0c4..06d8512 100644 --- a/board/atmel/at91sam9260ek/at91sam9260ek.c +++ b/board/atmel/at91sam9260ek/at91sam9260ek.c @@ -188,8 +188,17 @@ static void at91sam9260ek_macb_hw_init(void) at91_set_B_periph(AT91_PIN_PA25, 0);/* ERX2 */ at91_set_B_periph(AT91_PIN_PA26, 0);/* ERX3 */ at91_set_B_periph(AT91_PIN_PA27, 0);/* ERXCK */ +#if defined(CONFIG_AT91SAM9260EK) + /* +* use PA10, PA11 for ETX2, ETX3. +* PA23 and PA24 are for TWI EEPROM +*/ + at91_set_B_periph(AT91_PIN_PA10, 0);/* ETX2 */ + at91_set_B_periph(AT91_PIN_PA11, 0);/* ETX3 */ +#else at91_set_B_periph(AT91_PIN_PA23, 0);/* ETX2 */ at91_set_B_periph(AT91_PIN_PA24, 0);/* ETX3 */ +#endif at91_set_B_periph(AT91_PIN_PA22, 0);/* ETXER */ #endif -- Best regards, Anatolij DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: [EMAIL PROTECTED] - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] Doubt about the u-boot application
Hi, We are using the u-boot application to boot up from a NAND flash on a STB board with a linux kernel image. The entire process seems to be going in a loop with the foll message: "Loading boot sector - OK " Please let us know how what the problem could be. Regards, Shilpa This e-mail message may contain proprietary, confidential or legally privileged information for the sole use of the person or entity to whom this message was originally addressed. Any review, e-transmission dissemination or other use of or taking of any action in reliance upon this information by persons or entities other than the intended recipient is prohibited. If you have received this e-mail in error kindly delete this e-mail from your records. If it appears that this mail has been forwarded to you without proper authority, please notify us immediately at [EMAIL PROTECTED] and delete this mail. - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] Debugging U-boot using Trace32 in Linux..
Hi Yi-Neng, you are wrong :) I'm using Lauterbach Trace32 under Linux with success. Ask to your FAE or Lauterbach technical support to have a linux release. Anyway, for debug u-boot I use a script like the attachment. ciao ciao luigi On mar, 2008-07-08 at 11:41 +0800, Yi-Neng Lin wrote: > Hi there, > Recently I've been trying to debug U-boot using Trace32 in my Fedora > Linux. Since the software does not have a linux version, I tried to use > WINE, a windows emulator, to execute the binaries. But it just does not > work (via parallel port). > > Can anyone here give me a pointer about this? Did anyone succeeded in > debugging with Trace32 in Linux? Thanks a lot. > > Yi-Neng > > - > Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! > Studies have shown that voting for your favorite open source project, > along with a healthy diet, reduces your potential for chronic lameness > and boredom. Vote Now at http://www.sourceforge.net/community/cca08 > ___ U-Boot-Users mailing list > U-Boot-Users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/u-boot-users -- __ Luigi Mantellini .'__'. R&D - Software (.' '.)Industrie Dial Face S.p.A. ( :==: )Via Canzo, 4 ('.__.')20068 Peschiera Borromeo (MI), Italy '.__.' Tel.: +39 02 5167 2813 Fax: +39 02 5167 2459 Ind. Dial Face Email: [EMAIL PROTECTED] www.idf-hit.com GPG fingerprint: 3DD1 7B71 FBDF 6376 1B4A B003 175F E979 907E 1650 ;-- ; ; U-BOOT Debugging scrit for TRACE32 RTOS debugger ; ;-- &UBOOT_BASE=0xBFC0 &UBOOT_ELF="/mnt/devel/onu/u-boot/u-boot" &UBOOT_DIR="/mnt/devel/onu/u-boot/" &UBOOT_DIR_STRIPPART=5 ; &UBOOT_PRE_INRAM=relocate_code ; 0xBFC004C0 screen.on ; Debugger Reset winpage.reset area.reset WINPOS 0. 26. 75. 8. 0. 0. W000 area print "resetting..." System.Down TASK.RESet Break.Delete MAP.RESet sYmbol.RESet MMU.RESet GROUP.RESet ; Setup of ICD print "initializing..." SYStem.CPU MIPS4KEC SYStem.Option Endianess Big TrOnchip.UseWatch ON ; use watchpoints as onchip breakpoint SYStem.Option UnProtect ON ; give Debugger global write permissions SYStem.Option MMU ON ; enable space ids to virtual addresses SYStem.Up SETUP.IMASKASM ON ; block interrupts on assembler steps SETUP.IMASKHLL OFF ; allow interrupts on HLL steps ; Target Setup ; print "Target initialization.." ; do bl2000_init ; Load the Linux kernel ; If you are using a flashed kernel, or if you're loading your ; kernel via TFTP, use the boot monitor to do so. ; Load the Linux symbols then with the command ; Data.LOAD.Elf vmlinux /gnu /nocode ; Use the next lines only to load the kernel into ; RAM using the debugger. print "Load u-boot symbols" d.load.elf &UBOOT_ELF 0 /nocode /strippart &UBOOT_DIR_STRIPPART /sourcepath &UBOOT_DIR ; Ok, we're done, let's start Linux Register.Set PC reset break.d /ALL break.set board_init_f /ONCHIP break.set relocate_code /ONCHIP Go print "starting u-boot... (please wait)" wait !run() print "scanning mmu... (please wait)" MMU.SCANALL print "done." ; done with loading and starting Linux break.d /ALL ; Before to jump into the RAM break.set board_init_f /ONCHIP break.set relocate_code /ONCHIP GO wait !run() Data.list &relocate=r(A2) SYMbol.reloc &relocate-&UBOOT_BASE print "Relocate from " &UBOOT_BASE " to " &relocate break.d /ALL break.set board_init_r /ONCHIP Data.list board_init_r GO ; cleanup symbol type definition sYmbol.CLEANUP - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
[U-Boot-Users] V2 status, (Was Re: V2: Error in recent check-in)
Nishanth Menon wrote: > Please sign-off on your patch.. :) Sure. It wasn't really a patch, though... > glad to see another u-boot v2 interest folk :) I really like the structure of V2 but my fear is that there's not enough man power behind it. We are using Phytec's i.MX27 board, so we are 'stuck' with that version. I'm sorry if this questions has been asked before, but do you see more momentum to push for V2? It's probably too early to ask for a separate V2 mailing list? > folks on the list have been bashing my head with it ;)... happy hacking... Thanks. I'd like to help but unfortunately, I'm just too busy to help out at this point. :-( Cheers! -Chris - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] V2: Error in recent check-in
Hi Chris, On Mon, Jul 07, 2008 at 07:47:33PM -0700, Chris Zankel wrote: > Hi Sascha, > > You misspelled 'CONFIG' in your last check-in: > 7c37b54184893d4fe4e23933e6a8deae1c9d62a2. This effectively disabled > /dev/env0 (wonder if you tried it ;-) Not at runtime. Applied, thanks. Sascha -- Pengutronix e.K. - Linux Solutions for Science and Industry --- Kontakt-Informationen finden Sie im Header dieser Mail oder auf der Webseite -> http://www.pengutronix.de/impressum/ <- - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] Custodianship updates
> -Original Message- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] > Sent: 08 July 2008 00:25 > To: u-boot-users@lists.sourceforge.net > Cc: Peter Pearse; Jean-Christophe PLAGNIOL-VILLARD; John > Rigby; Grant Likely > Subject: Custodianship updates > > Hello everybody, > > as many of you will have seen, there have been a few areas in > U-Boot where processing of patches and new code submissions > did not work as quickly and smoothly as we all would have liked. > > I'm all the more happy to be able to announce updates for two > (IMHO both important) areas: > > * ARM: Peter Pearse has been trying his best to do a good job to > maintain the (huge!) ARM part of the U-Boot project, but he did not > find enough free resources to do this on a regular base. I know all > too well how that feels, as I'm in the very same situation too > often myself. > > But now we have the chance that Jean-Christophe Plagniol-Villard > volunteers to help out, and given from the previous activities he > has shown on the mailing list I think that he is very capable of > doing that job. ACK > > Peter has agreed that Jean-Christophe takes over the custodianship > for ARM. If there are no objections (or better suggestions) I would > install this change more or less immediately. > Regards Peter - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Re: [U-Boot-Users] [RFC][FSL DDR 0/8] Freescale DDR rewrit
> < more than one DDR module? > > I'm not sure I follow exactly what you are asking? Do you mean using > different DDR modules on different chip selects of the same > controller? or something else? > > - k Kumar - the current SPD DDR code assumes a single DIMM with a single fixed I2C address. Does your RFC add support for more than one DIMM on the same controller? > Yes, it should. > jdl John - thanks, just wanted to elaborate to receive Kumar's ack. Thanks, David. - Sponsored by: SourceForge.net Community Choice Awards: VOTE NOW! Studies have shown that voting for your favorite open source project, along with a healthy diet, reduces your potential for chronic lameness and boredom. Vote Now at http://www.sourceforge.net/community/cca08 ___ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users