Re: [U-Boot] OMAP3: Pending patches
Dear Wolfgang, Wolfgang Denk wrote: Dear Dirk Behme, In message 49f9f000.2060...@googlemail.com you wrote: Short status update after recent ARM pull request Thanks for keeping the summary up to date. This is really helpful in this complicated situation. 1. OMAP3: Beagle: Set pinmux conditionally for Rev C boards http://lists.denx.de/pipermail/u-boot/2009-April/051013.html ... Applied to u-boot-arm next. I cherry-picked it form there. It's in the master branch of the master repo now. [Well, give me 10 minutes until it makes it to the public server.] 2. OMAP3: Remove legacy NAND defines http://lists.denx.de/pipermail/u-boot/2009-April/050882.html Applied to u-boot-arm next. Request to move to master by Wolfgang. Copied to u-boot-arm master and part of above ARM pull request (still in u-boot-arm next, too?) That should not matter. git will sort this out. 3. OMAP3: Fix timer handling to 1ms and CONFIG_SYS_HZ to 1000 http://lists.denx.de/pipermail/u-boot/2009-April/051178.html Pending Applied to master branch in master repo now. http://lists.denx.de/pipermail/u-boot/2009-April/051518.html 4. OMAP3: Fix changed mmc init command http://lists.denx.de/pipermail/u-boot/2009-April/051179.html Applied to u-boot-arm master. ... and part of above ARM pull request. 5. OMAP3: Remove unused board-types http://lists.denx.de/pipermail/u-boot/2009-April/051338.html 6. OMAP3: Print correct silicon revision http://lists.denx.de/pipermail/u-boot/2009-April/051339.html Patches 5 6 replaced by update which includes switch to checkboard and print_cpuinfo: OMAP3: Board specific updates (3 patches) http://lists.denx.de/pipermail/u-boot/2009-April/051505.html http://lists.denx.de/pipermail/u-boot/2009-April/051506.html http://lists.denx.de/pipermail/u-boot/2009-April/051507.html All three patches applied to u-boot-arm master and part of above pull request. So all the above is in mainline now and can be deleted from this list. Wow. That was tough. Thank you for all your help! Best regards Dirk ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Zoom2 initial support rebased to arm/next
Dear Tom, dear Jean-Christophe, Tom wrote: Dirk Behme wrote: Hi Tom, Tom wrote: Here is the changes to Zoom2 to rebase onto the arm/next branch I'm not sure and and didn't test it, but it seems to me that we might get some conflicts with patches in arm/master branch and these against arm/next. With Premi's patch that removes unused board-types http://git.denx.de/?p=u-boot/u-boot-arm.git;a=commit;h=90006e9b33bcdbf241b0295d186e3634137907a9 it might conflict with your patch that still assumes the struct elements and macros are still there (?). Best regards Dirk Yes, I think so. My rebase to arm/next was because the arm led patch that was part of the patch set against master was pushed there. I think the changes in the above patch are straightforward so should be easy to fix the conflicts when the merge happens. Can this wait till after the whole patch set is pushed to arm/next ? Yes. But somebody should help Jean-Christophe with merge resolve then. Now that all other OMAP3 patches are in mainline, easiest would be something like: 1) Update u-boot-arm master and next against mainline 2) Move the three (*) patches from u-boot-arm next to u-boot-arm master as proposed by Wolfgang [bottom of 1]. 3) With (1) and (2) we have all OMAP3 patches and already applied Zoom2 patches in one git. Now we will be able to update the remaining 5 Zoom2 patches against it. What do you think? Any easier way? Best regards Dirk [1] http://lists.denx.de/pipermail/u-boot/2009-May/051863.html (*) Already applied Zoom2 patches at u-boot-arm next: - ZOOM1 Remove more legacy NAND defines. - LED Add documentation describing the status_led and colour led API. - ARM Add blue colour LED to status_led. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] Physician Directory
Practicing Physicians in the US MDs in many different specialties you can sort by many different fields like primary or secondary specialty This week only you pay only: $398 ~ If you order by the end of the week you can take all the items below for fr ee !!! ** Hospitals + Nursing Homes == Visiting Nurses RN's ++ Chiropractors contact:: wha...@listimpactmed.com exp. May 1 Forward email to rem...@listimpactmed.com to purge you from our records ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 1/8] Add simple hwconfig infrastructure
Dear Anton, In message 20090430231220.ga17...@oksana.dev.rtsoft.ru you wrote: Suggestion: instead of set hwconfig dr_usb,dr_usb_mode:peripheral,dr_usb_phy_type:ulpi use: set hwconfig dr_usb:mode=peripheral,phy_type=ulpi What do you think? At first sight this looks great. But where should we stop? at a semicolon :-) i. e. something like this: set hwconfig dr_usb:mode=peripheral,phy_type=ulpi;next_option:on;other_option:off I wonder if we want multi-level nesting capability, i.e. dr_usb { mode = peripheral; phy { type = ulpi; clock = 48; }; }; I don't think we should go that far. Or we can stop at one nesting level capability, just as you describe. Your suggestion is quite easy to implement, but full fledged parser is needed for the most generic case. I think this should remain what it was introduced as: a *simple* hwconfig infrastructure. If you need more capabilities, then we should just use existing code: use a device tree. OK, then you have to provide the information in a separate flash sector instead of the environment, but in the long run this is the way to go anyway - if you do it right you will need just a single copy of the device tree for both U-Boot and Linux. So if you need something small and *simple* now, then use hwconfig, but without all theoretically possible bells and whistles; if you need the full-blown thing, trhen use a device tree. 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: w...@denx.de I've seen it. It's rubbish. - Marvin the Paranoid Android ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Disable features
Dear Derek Ou, In message 49fa2ffd.3000...@siconix.com you wrote: Yes, CONFIG_RESET_PHY_R is defined by default. And I can see it linking to the eth_init and then macb_init which results in the auto-negotiation. I am going to comment it out and test it. But what is the use for this config? Why does ATMEL define it in many of their boards? It makes no sense to me to reset the PHY when no network command is being used. I imagine this might be a workaround for broken Linux drivers which do not correctly initialize the hardware themself. I guess Jean-Cristophe knows this better than we. Jean-Cristophe ? 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: w...@denx.de Just think, with VLSI we can have 100 ENIACS on a chip! - Alan Perlis ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] Patch at91: add support for the PM9263 board breaks all arm926ejs boards
Hi, commit f0a2c7b4b64eacd06bb272856bcc056be8719f5a: Author: Ilko Iliev il...@ronetix.at 2009-04-16 21:30:48 Committer: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com 2009-04-16 21:30:48 at91: add support for the PM9263 board of Ronetix GmbH breaks out-of-tree building for all arm926ejs boards: Example: ... Configuring for afeb9260 board... make: *** /work/wd/tmp-arm/cpu/arm926ejs/at91/: No such file or directory. Stop. make: *** [/work/wd/tmp-arm/cpu/arm926ejs/at91/u-boot.lds] Error 2 The problem comes from the changes to cpu/arm926ejs/at91/Makefile which introduce manipulation of the linker script. I have to admit that I don't think such a step is necessary, or even a good idea. I recommend to remove this and stick with a static configuration like all other boards, too. Please fix ASAP! Thanks. 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: w...@denx.de There are two kinds of people, those who do the work and those who take the credit. Try to be in the first group; there is less competition there.- Indira Gandhi ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Disable features
On 09:36 Fri 01 May , Wolfgang Denk wrote: Dear Derek Ou, In message 49fa2ffd.3000...@siconix.com you wrote: Yes, CONFIG_RESET_PHY_R is defined by default. And I can see it linking to the eth_init and then macb_init which results in the auto-negotiation. I am going to comment it out and test it. But what is the use for this config? Why does ATMEL define it in many of their boards? It makes no sense to me to reset the PHY when no network command is being used. I imagine this might be a workaround for broken Linux drivers which do not correctly initialize the hardware themself. correct IIRC if you do not do it the net drivers will have no mac address and you will not be alllow to use nfs as rootfs Best Regards, J. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Kconfig menu layout (multiple ways to show the same Kconfig configs?)
On Wed, Apr 22, 2009 at 07:44:48AM -0500, Kumar Gala wrote: On Apr 21, 2009, at 3:52 PM, Wolfgang Denk wrote: Dear Kumar Gala, In message 93A8F58D-8C13-4F72-AFF3- cf4fdf9a3...@kernel.crashing.org you wrote: In my experience, I tend to search for board names first. So back to the root of my question, do we just have one really long list of board names? I'm not an expert for the capabilities of Kconfig, but one looong list with hundrets of entries clearly makes no sense. We obviously need sum grouping / structuring. IMHO there should be several options: - for those who look for a board name, we should support this, probably wih an initial selection by the first letter (case insensitive) of the board name. like this: = board name = M = MPC837XERDB - alternatively, it should be possible to restrict the choice by selecting first processor architecture (ARM, PowerPC, MIPS, ...), then CPU (family) name, then board names. like this: = Architecture = PPC = MPC83xx = MPC837XERDB Sam, We are looking at moving u-boot to use Kconfig and was wondering if you could possible tell us if its possible to represent the same Kconfig 'config' options via two different menu schemes. We have a list of boards that will be 'config' options. We'd like to have it in one 'menu' that is just a long list of boards. The other would be a smaller subset that you filter based on selecting an Arch Subarch. is something like this possible? Hi Kumar. Was my input useable or just pure rubbish? Sam ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [patch u-boot git arm/next] davinci: display correct clock info
On 18:23 Thu 30 Apr , David Brownell wrote: On Wednesday 29 April 2009, Jean-Christophe PLAGNIOL-VILLARD wrote: cpu.c will be better Here's a followup patch that applies on top of this one, and creates the cpu.c you wanted. please move this === CUT HERE From: David Brownell dbrown...@users.sourceforge.net Move the clock-rate dumping code into the cpu/.../davinci area where it should have been, enabled by CONFIG_DISPLAY_CPUINFO, updating the format and showing the DSP clock (where relevant). Switch boards to use the cpuinfo() hook for this stuff. Remove a few now-obsolete PLL #defines. Signed-off-by: David Brownell dbrown...@users.sourceforge.net --- HERE it will help to not manually fix the patch applied to arm/next Best Regards, J. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Disable features
Dear Jean-Christophe PLAGNIOL-VILLARD, In message 20090501120400.gb3...@game.jcrosoft.org you wrote: It makes no sense to me to reset the PHY when no network command is being used. I imagine this might be a workaround for broken Linux drivers which do not correctly initialize the hardware themself. correct IIRC if you do not do it the net drivers will have no mac address and you will not be alllow to use nfs as rootfs That's a bug in the Linux drivers in the first place, and a bug in the ARM Linux kernel's boot interface in the second place. But then, I also see no correlation between setting a MAC address and waiting for autonegotiation to complte. We should be able to do the former without doing the latter. In any case, the behavious is wrong and should be fixed. See also http://www.denx.de/wiki/view/DULG/EthernetDoesNotWorkInLinux 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: w...@denx.de The only person who always got his work done by Friday was Robinson Crusoe. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] at91: remove lowlevel_init.S
actually no boards use the default lowlevel_init.S so remove it btw the u-boot.lds is not anymore need to be generated Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com --- Makefile|1 - cpu/arm926ejs/at91/.gitignore |5 --- cpu/arm926ejs/at91/Makefile |6 +--- cpu/arm926ejs/at91/config.mk|2 +- cpu/arm926ejs/at91/lowlevel_init.S | 45 --- cpu/arm926ejs/at91/{u-boot.lds.S = u-boot.lds} |5 --- 6 files changed, 2 insertions(+), 62 deletions(-) delete mode 100644 cpu/arm926ejs/at91/.gitignore delete mode 100644 cpu/arm926ejs/at91/lowlevel_init.S rename cpu/arm926ejs/at91/{u-boot.lds.S = u-boot.lds} (93%) diff --git a/Makefile b/Makefile index c52894c..8a0784c 100644 --- a/Makefile +++ b/Makefile @@ -3523,7 +3523,6 @@ clean: $(obj)board/armltd/{integratorap,integratorcp}/u-boot.lds \ $(obj)board/bf5{18f,26,27,33,38f,48,61}-ez{brd,kit}/u-boot.lds \ $(obj)board/bf5{33,37}-stamp/u-boot.lds\ - $(obj)cpu/arm926ejs/at91/u-boot.lds\ $(obj)cpu/blackfin/bootrom-asm-offsets.[chs] @rm -f $(obj)include/bmp_logo.h @rm -f $(obj)nand_spl/{u-boot-spl,u-boot-spl.map,System.map} diff --git a/cpu/arm926ejs/at91/.gitignore b/cpu/arm926ejs/at91/.gitignore deleted file mode 100644 index 8a8c3b8..000 --- a/cpu/arm926ejs/at91/.gitignore +++ /dev/null @@ -1,5 +0,0 @@ -# -# Generated files -# - -/u-boot.lds diff --git a/cpu/arm926ejs/at91/Makefile b/cpu/arm926ejs/at91/Makefile index fbc82d1..e300d97 100644 --- a/cpu/arm926ejs/at91/Makefile +++ b/cpu/arm926ejs/at91/Makefile @@ -58,19 +58,15 @@ COBJS-$(CONFIG_AT91_LED)+= led.o COBJS-y += clock.o COBJS-y += cpu.o COBJS-y+= timer.o -SOBJS = lowlevel_init.o SRCS:= $(SOBJS:.o=.S) $(COBJS-y:.o=.c) OBJS:= $(addprefix $(obj),$(SOBJS) $(COBJS-y)) -all: $(obj).depend $(LIB) $(obj)u-boot.lds +all: $(obj).depend $(LIB) $(LIB):$(OBJS) $(AR) $(ARFLAGS) $@ $(OBJS) -$(obj)u-boot.lds: u-boot.lds.S - $(CPP) $(CPPFLAGS) -D__ASSEMBLY__ -DCONFIG_BOARDDIR=$(BOARDDIR) -P $^ $@ - # # defines $(obj).depend target diff --git a/cpu/arm926ejs/at91/config.mk b/cpu/arm926ejs/at91/config.mk index 147bd4c..06177e6 100644 --- a/cpu/arm926ejs/at91/config.mk +++ b/cpu/arm926ejs/at91/config.mk @@ -1,2 +1,2 @@ PLATFORM_CPPFLAGS += $(call cc-option,-mtune=arm926ejs,) -LDSCRIPT := $(OBJTREE)/cpu/arm926ejs/at91/u-boot.lds +LDSCRIPT := $(SRCTREE)/cpu/arm926ejs/at91/u-boot.lds diff --git a/cpu/arm926ejs/at91/lowlevel_init.S b/cpu/arm926ejs/at91/lowlevel_init.S deleted file mode 100644 index 54b3f3d..000 --- a/cpu/arm926ejs/at91/lowlevel_init.S +++ /dev/null @@ -1,45 +0,0 @@ -/* - * AT91CAP9/SAM9 setup stuff - * - * (C) Copyright 2007-2008 - * Stelian Pop stelian@leadtechdesign.com - * Lead Tech Design www.leadtechdesign.com - * - * See file CREDITS for list of people who contributed to this - * project. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA - */ - -#include config.h -#include version.h - -#ifndef CONFIG_SKIP_LOWLEVEL_INIT - -.globl lowlevel_init -.weak lowlevel_init -.set lowlevel_init,function -lowlevel_init: - - /* -* Clocks/SDRAM initialization is handled by at91bootstrap, -* no need to do it here... -*/ - mov pc, lr - - .ltorg - -#endif /* CONFIG_SKIP_LOWLEVEL_INIT */ diff --git a/cpu/arm926ejs/at91/u-boot.lds.S b/cpu/arm926ejs/at91/u-boot.lds similarity index 93% rename from cpu/arm926ejs/at91/u-boot.lds.S rename to cpu/arm926ejs/at91/u-boot.lds index 4e82bca..62a3e95 100644 --- a/cpu/arm926ejs/at91/u-boot.lds.S +++ b/cpu/arm926ejs/at91/u-boot.lds @@ -21,8 +21,6 @@ * MA 02111-1307 USA */ -#include config.h - OUTPUT_FORMAT(elf32-littlearm, elf32-littlearm, elf32-littlearm) /*OUTPUT_FORMAT(elf32-arm, elf32-arm, elf32-arm)*/ OUTPUT_ARCH(arm) @@ -35,9 +33,6 @@ SECTIONS .text : { cpu/arm926ejs/start.o (.text) -#ifndef CONFIG_SKIP_LOWLEVEL_INIT - board/CONFIG_BOARDDIR/lowlevel_init.o
Re: [U-Boot] U-boot -printk kernel crash dump using md on PDK
Hi Magnus, I tend to load my kernels to 0x8100 and not 0x80008000 but I don't know if that really matters. Other than that I think 'run bootcmd_net' should work. Oops i realized i top posted:( I am re-posting again. i checked in the kernel code rpm/BUILD/linux/arch/arm/mach-mx3/Makefile.boot. which probably expects the uboot load the kernel at address 0x80008000(zreladdr) which is probably the kernel image relocated address zreladdr-y := 0x80008000 params_phys-y := 0x8100 (boot arg location which i verified doing a md on u-boot). initrd_phys-y := 0x8080 Are these the correct params or is there any other place you look at for verifying if the u-boot and kernel match on the values of loadaddr, bootarg location ? Thanks ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] U-boot -printk kernel crash dump using md on PDK
Hi 2009/5/1 alfred steele alfred.jaq...@gmail.com: Hi Magnus, I tend to load my kernels to 0x8100 and not 0x80008000 but I don't know if that really matters. Other than that I think 'run bootcmd_net' should work. Oops i realized i top posted:( I am re-posting again. i checked in the kernel code rpm/BUILD/linux/arch/arm/mach-mx3/Makefile.boot. which probably expects the uboot load the kernel at address 0x80008000(zreladdr) which is probably the kernel image relocated address zreladdr-y := 0x80008000 params_phys-y := 0x8100 (boot arg location which i verified doing a md on u-boot). initrd_phys-y := 0x8080 Are these the correct params or is there any other place you look at for verifying if the u-boot and kernel match on the values of loadaddr, bootarg location ? Yes, those values are correct. The boot_params address is also in arch/arm/mach-mx3/mx31pdk.c (mx3_3stack.c if you use Freescale's BSP). /Magnus ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] U-boot -printk kernel crash dump using md on PDK
Yes, those values are correct. The boot_params address is also in arch/arm/mach-mx3/mx31pdk.c (mx3_3stack.c if you use Freescale's BSP). Where do i get the latest version of Freescale BSP? i know this is not the correct forum...but still Thanks, Alfred ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] at91: remove lowlevel_init.S
Dear Jean-Christophe PLAGNIOL-VILLARD, In message 1241185086-11754-1-git-send-email-plagn...@jcrosoft.com you wrote: actually no boards use the default lowlevel_init.S so remove it btw the u-boot.lds is not anymore need to be generated Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com I understand this patch is supposed to fix the bug introduced by commit f0a2c7b4b64eacd0? You should note this in the message. 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: w...@denx.de There are no data that cannot be plotted on a straight line if the axis are chosen correctly. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] U-boot -printk kernel crash dump using md on PDK
Dear alfred steele, In message 528f13590905010838g1a1dc360gfd5fd4a64e84d...@mail.gmail.com you wrote: Where do i get the latest version of Freescale BSP? i know this is not the correct forum...but still From Freescale? Try www.freescale.com ... 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: w...@denx.de When a program is being tested, it is too late to make design changes. -- Geoffrey James, The Tao of Programming ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 4/6] fsl_esdhc: Add device tree fixups
On Fri, May 01, 2009 at 12:20:51AM +0400, Anton Vorontsov wrote: Sometimes errors happen even during copy-paste procedure. Or for example HW designers have made some minor (they thought) change, and didn't bother to bump the revision. Later we observe that the change is the cause of some errata, but we can't deal with it because device-tree isn't specific enough. Of course this is just my imagination, but theoretically possible? It's possible -- but not likely enough to warrant using the chip name if a usable block number is available (it's more likely that a future rev of the same chip number will have a different logic block version). PVR or information elsewhere in the device tree could be used in such cases. Note that it can even happen at board level. Accessing power management controller registers (which are SoC-internal) on early revs of the 8313erdb would lock the board (unless JTAG is plugged in or a resistor modification is made), at no fault of the 8313e chip itself. But we don't put the board name in all of the compatibles... -Scott ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] at91: remove lowlevel_init.S
On 17:46 Fri 01 May , Wolfgang Denk wrote: Dear Jean-Christophe PLAGNIOL-VILLARD, In message 1241185086-11754-1-git-send-email-plagn...@jcrosoft.com you wrote: actually no boards use the default lowlevel_init.S so remove it btw the u-boot.lds is not anymore need to be generated Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com I understand this patch is supposed to fix the bug introduced by commit f0a2c7b4b64eacd0? at the same time but it's a side effect I just notice that noone use the default lowlevel_init.S which force the norflash boot to add an entry in the lds to force the weak function overwrite so I fix this Best Regards, J. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] U-boot -printk kernel crash dump using md on PDK
--- On Fri, 5/1/09, alfred steele alfred.jaq...@gmail.com wrote: Where do i get the latest version of Freescale BSP? i know this is not the correct forum...but still http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX31PDKnodeId=0162468rH311432973ZrDRfpsp=1tab=Design_Tools_Tab (Click on IMX31_PDK_14_LINUX_BSP_R14 ) Regards, Fabio Estevam ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] U-boot -printk kernel crash dump using md on PDK
--- On Fri, 5/1/09, alfred steele alfred.jaq...@gmail.com wrote: Where do i get the latest version of Freescale BSP? i know this is not the correct forum...but still http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX31PDKnodeId=0162468rH311432973ZrDRfpsp=1tab=Design_Tools_Tab (Click on IMX31_PDK_14_LINUX_BSP_R14 ) Regards, Fabio Estevam ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [RFC PATCH 2/6] integratorap: split timer support
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com Cc: Peter Pearse peter.pea...@arm.com --- board/armltd/integratorap/Makefile |1 + board/armltd/integratorap/integratorap.c | 135 --- board/armltd/integratorap/timer.c| 171 ++ 3 files changed, 172 insertions(+), 135 deletions(-) create mode 100644 board/armltd/integratorap/timer.c diff --git a/board/armltd/integratorap/Makefile b/board/armltd/integratorap/Makefile index a6193c7..1af37f3 100644 --- a/board/armltd/integratorap/Makefile +++ b/board/armltd/integratorap/Makefile @@ -34,6 +34,7 @@ SOBJS-y := lowlevel_init.o COBJS-y:= integratorap.o COBJS-y+= flash.o COBJS-$(CONFIG_PCI) += pci.o +COBJS-y += timer.o SRCS := $(SOBJS-y:.o=.S) $(COBJS-y:.o=.c) COBJS := $(addprefix $(obj),$(COBJS-y)) diff --git a/board/armltd/integratorap/integratorap.c b/board/armltd/integratorap/integratorap.c index d458fe6..b20b129 100644 --- a/board/armltd/integratorap/integratorap.c +++ b/board/armltd/integratorap/integratorap.c @@ -149,141 +149,6 @@ extern void dram_query(void); return 0; } -/* The Integrator/AP timer1 is clocked at 24MHz - * can be divided by 16 or 256 - * and is a 16-bit counter - */ -/* U-Boot expects a 32 bit timer running at CONFIG_SYS_HZ*/ -static ulong timestamp;/* U-Boot ticks since startup */ -static ulong total_count = 0; /* Total timer count */ -static ulong lastdec; /* Timer reading at last call */ -static ulong div_clock = 256; /* Divisor applied to the timer clock */ -static ulong div_timer = 1; /* Divisor to convert timer reading -* change to U-Boot ticks -*/ -/* CONFIG_SYS_HZ = CONFIG_SYS_HZ_CLOCK/(div_clock * div_timer) */ - -#define TIMER_LOAD_VAL 0xL -#define READ_TIMER ((*(volatile ulong *)(CONFIG_SYS_TIMERBASE+4)) 0xL) - -/* all function return values in U-Boot ticks i.e. (1/CONFIG_SYS_HZ) sec - * - unless otherwise stated - */ - -/* starts a counter - * - the Integrator/AP timer issues an interrupt - * each time it reaches zero - */ -int timer_init (void) -{ - /* Load timer with initial value */ - *(volatile ulong *)(CONFIG_SYS_TIMERBASE + 0) = TIMER_LOAD_VAL; - /* Set timer to be -* enabled 1 -* free-running 0 -* XX 00 -* divider 256 10 -* XX 00 -*/ - *(volatile ulong *)(CONFIG_SYS_TIMERBASE + 8) = 0x0088; - total_count = 0; - /* init the timestamp and lastdec value */ - reset_timer_masked(); - - div_timer = CONFIG_SYS_HZ_CLOCK / CONFIG_SYS_HZ; - div_timer /= div_clock; - - return (0); -} - -/* - * timer without interrupts - */ -void reset_timer (void) -{ - reset_timer_masked (); -} - -ulong get_timer (ulong base_ticks) -{ - return get_timer_masked () - base_ticks; -} - -void set_timer (ulong ticks) -{ - timestamp = ticks; - total_count = ticks * div_timer; - reset_timer_masked(); -} - -/* delay x useconds */ -void udelay (unsigned long usec) -{ - ulong tmo, tmp; - - /* Convert to U-Boot ticks */ - tmo = usec * CONFIG_SYS_HZ; - tmo /= (100L); - - tmp = get_timer_masked(); /* get current timestamp */ - tmo += tmp; /* wake up timestamp */ - - while (get_timer_masked () tmo) { /* loop till event */ - /*NOP*/; - } -} - -void reset_timer_masked (void) -{ - /* reset time */ - lastdec = READ_TIMER; /* capture current decrementer value */ - timestamp = 0; /* start advancing time stamp from 0 */ -} - -/* converts the timer reading to U-Boot ticks */ -/* the timestamp is the number of ticks since reset*/ -/* This routine does not detect wraps unless called regularly - ASSUMES a call at least every 16 seconds to detect every reload */ -ulong get_timer_masked (void) -{ - ulong now = READ_TIMER; /* current count */ - - if (now lastdec) { - /* Must have wrapped */ - total_count += lastdec + TIMER_LOAD_VAL + 1 - now; - } else { - total_count += lastdec - now; - } - lastdec = now; - timestamp = total_count/div_timer; - - return timestamp; -} - -/* waits specified delay value and resets timestamp */ -void udelay_masked (unsigned long usec) -{ - udelay(usec); -} - -/* - * This function is derived from PowerPC code (read timebase as long long). - * On ARM it just returns the timer value. - */ -unsigned long long get_ticks(void) -{ - return get_timer(0); -} - -/* - * Return the timebase clock frequency - * i.e. how often the timer decrements - */ -ulong get_tbclk (void) -{ - return CONFIG_SYS_HZ_CLOCK/div_clock; -}
[U-Boot] [RFC PATCH 4/6] integratorap/cp/versatile: remove non used functions
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com Cc: Peter Pearse peter.pea...@arm.com --- board/armltd/integratorap/integratorap.c | 28 board/armltd/integratorcp/integratorcp.c | 21 - board/armltd/versatile/versatile.c |7 --- 3 files changed, 0 insertions(+), 56 deletions(-) diff --git a/board/armltd/integratorap/integratorap.c b/board/armltd/integratorap/integratorap.c index b20b129..f58956e 100644 --- a/board/armltd/integratorap/integratorap.c +++ b/board/armltd/integratorap/integratorap.c @@ -38,8 +38,6 @@ DECLARE_GLOBAL_DATA_PTR; -void flash__init (void); -void ether__init (void); void peripheral_power_enable (void); #if defined(CONFIG_SHOW_BOOT_PROGRESS) @@ -51,13 +49,6 @@ void show_boot_progress(int progress) #define COMP_MODE_ENABLE ((unsigned int)0xEAEF) -static inline void delay (unsigned long loops) -{ - __asm__ volatile (1:\n - subs %0, %1, #1\n - bne 1b:=r (loops):0 (loops)); -} - /* * Miscellaneous platform dependent initialisations */ @@ -79,11 +70,9 @@ extern void cm_remap(void); icache_enable (); - flash__init (); return 0; } - int misc_init_r (void) { #ifdef CONFIG_PCI @@ -93,23 +82,6 @@ int misc_init_r (void) return (0); } - -/** - Routine: - Description: -**/ -void flash__init (void) -{ -} -/* - Routine:ether__init - Description: take the Ethernet controller out of reset and wait - for the EEPROM load to complete. -*/ -void ether__init (void) -{ -} - /** Routine: Description: diff --git a/board/armltd/integratorcp/integratorcp.c b/board/armltd/integratorcp/integratorcp.c index 16620bb..5897147 100644 --- a/board/armltd/integratorcp/integratorcp.c +++ b/board/armltd/integratorcp/integratorcp.c @@ -37,8 +37,6 @@ DECLARE_GLOBAL_DATA_PTR; -void flash__init (void); -void ether__init (void); void peripheral_power_enable (void); #if defined(CONFIG_SHOW_BOOT_PROGRESS) @@ -71,12 +69,9 @@ extern void cm_remap(void); icache_enable (); - flash__init (); - ether__init (); return 0; } - int misc_init_r (void) { setenv(verify, n); @@ -87,22 +82,6 @@ int misc_init_r (void) Routine: Description: **/ -void flash__init (void) -{ -} -/* - Routine:ether__init - Description: take the Ethernet controller out of reset and wait - for the EEPROM load to complete. -*/ -void ether__init (void) -{ -} - -/** - Routine: - Description: -**/ int dram_init (void) { gd-bd-bi_dram[0].start = PHYS_SDRAM_1; diff --git a/board/armltd/versatile/versatile.c b/board/armltd/versatile/versatile.c index 0f35caa..197bc89 100644 --- a/board/armltd/versatile/versatile.c +++ b/board/armltd/versatile/versatile.c @@ -46,13 +46,6 @@ void show_boot_progress(int progress) #define COMP_MODE_ENABLE ((unsigned int)0xEAEF) -static inline void delay (unsigned long loops) -{ - __asm__ volatile (1:\n - subs %0, %1, #1\n - bne 1b:=r (loops):0 (loops)); -} - /* * Miscellaneous platform dependent initialisations */ -- 1.6.1.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [RFC PATCH 1/6] integratorap: split pci support
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com Cc: Peter Pearse peter.pea...@arm.com --- board/armltd/integratorap/Makefile | 19 +- board/armltd/integratorap/integratorap.c | 946 ++-- .../armltd/integratorap/{integratorap.c = pci.c} | 262 +-- 3 files changed, 302 insertions(+), 925 deletions(-) rewrite board/armltd/integratorap/integratorap.c (63%) rename board/armltd/integratorap/{integratorap.c = pci.c} (69%) diff --git a/board/armltd/integratorap/Makefile b/board/armltd/integratorap/Makefile index 79f501a..a6193c7 100644 --- a/board/armltd/integratorap/Makefile +++ b/board/armltd/integratorap/Makefile @@ -29,18 +29,21 @@ include $(TOPDIR)/config.mk LIB= $(obj)lib$(BOARD).a -COBJS := integratorap.o flash.o -SOBJS := lowlevel_init.o +SOBJS-y:= lowlevel_init.o -SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) -OBJS := $(addprefix $(obj),$(COBJS)) -SOBJS := $(addprefix $(obj),$(SOBJS)) +COBJS-y:= integratorap.o +COBJS-y+= flash.o +COBJS-$(CONFIG_PCI) += pci.o -$(LIB):$(obj).depend $(OBJS) $(SOBJS) - $(AR) $(ARFLAGS) $@ $(OBJS) $(SOBJS) +SRCS := $(SOBJS-y:.o=.S) $(COBJS-y:.o=.c) +COBJS := $(addprefix $(obj),$(COBJS-y)) +SOBJS := $(addprefix $(obj),$(SOBJS-y)) + +$(LIB):$(obj).depend $(COBJS) $(SOBJS) + $(AR) $(ARFLAGS) $@ $(COBJS) $(SOBJS) clean: - rm -f $(SOBJS) $(OBJS) + rm -f $(SOBJS) $(COBJS) distclean: clean rm -f $(LIB) core *.bak $(obj).depend diff --git a/board/armltd/integratorap/integratorap.c b/board/armltd/integratorap/integratorap.c dissimilarity index 63% index 5ececd6..d458fe6 100644 --- a/board/armltd/integratorap/integratorap.c +++ b/board/armltd/integratorap/integratorap.c @@ -1,656 +1,290 @@ -/* - * (C) Copyright 2002 - * Sysgo Real-Time Solutions, GmbH www.elinos.com - * Marius Groeger mgroe...@sysgo.de - * - * (C) Copyright 2002 - * David Mueller, ELSOFT AG, d.muel...@elsoft.ch - * - * (C) Copyright 2003 - * Texas Instruments, www.ti.com - * Kshitij Gupta kshi...@ti.com - * - * (C) Copyright 2004 - * ARM Ltd. - * Philippe Robin, philippe.ro...@arm.com - * - * See file CREDITS for list of people who contributed to this - * project. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA - */ - -#include common.h - -#ifdef CONFIG_PCI -#include pci.h -#endif - -#include netdev.h - -DECLARE_GLOBAL_DATA_PTR; - -void flash__init (void); -void ether__init (void); -void peripheral_power_enable (void); - -#if defined(CONFIG_SHOW_BOOT_PROGRESS) -void show_boot_progress(int progress) -{ - printf(Boot reached stage %d\n, progress); -} -#endif - -#define COMP_MODE_ENABLE ((unsigned int)0xEAEF) - -static inline void delay (unsigned long loops) -{ - __asm__ volatile (1:\n - subs %0, %1, #1\n - bne 1b:=r (loops):0 (loops)); -} - -/* - * Miscellaneous platform dependent initialisations - */ - -int board_init (void) -{ - /* arch number of Integrator Board */ - gd-bd-bi_arch_number = MACH_TYPE_INTEGRATOR; - - /* adress of boot parameters */ - gd-bd-bi_boot_params = 0x0100; - - gd-flags = 0; - -#ifdef CONFIG_CM_REMAP -extern void cm_remap(void); - cm_remap(); /* remaps writeable memory to 0x */ -#endif - - icache_enable (); - - flash__init (); - return 0; -} - - -int misc_init_r (void) -{ -#ifdef CONFIG_PCI - pci_init(); -#endif - setenv(verify, n); - return (0); -} - -/* - * Initialize PCI Devices, report devices found. - */ -#ifdef CONFIG_PCI - -#ifndef CONFIG_PCI_PNP - -static struct pci_config_table pci_integrator_config_table[] = { - { PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, 0x0f, PCI_ANY_ID, - pci_cfgfunc_config_device, { PCI_ENET0_IOADDR, - PCI_ENET0_MEMADDR, - PCI_COMMAND_MEMORY | PCI_COMMAND_MASTER }}, - { } -}; -#endif - -/* V3 access routines */ -#define _V3Write16(o,v) (*(volatile unsigned short *)(PCI_V3_BASE + (unsigned int)(o)) = (unsigned short)(v)) -#define _V3Read16(o) (*(volatile unsigned short *)(PCI_V3_BASE + (unsigned int)(o))) - -#define _V3Write32(o,v) (*(volatile unsigned int *)(PCI_V3_BASE + (unsigned
[U-Boot] [RFC PATCH 3/6] integratorcp: split timer support
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com Cc: Peter Pearse peter.pea...@arm.com --- board/armltd/integratorcp/Makefile |5 +- board/armltd/integratorcp/integratorcp.c | 140 .../integratorcp/{integratorcp.c = timer.c} | 103 -- 3 files changed, 4 insertions(+), 244 deletions(-) copy board/armltd/integratorcp/{integratorcp.c = timer.c} (68%) diff --git a/board/armltd/integratorcp/Makefile b/board/armltd/integratorcp/Makefile index 92a1a07..5e3c646 100644 --- a/board/armltd/integratorcp/Makefile +++ b/board/armltd/integratorcp/Makefile @@ -25,9 +25,12 @@ include $(TOPDIR)/config.mk LIB= $(obj)lib$(BOARD).a -COBJS := integratorcp.o flash.o SOBJS := lowlevel_init.o +COBJS := integratorcp.o +COBJS += flash.o +COBJS += timer.o + SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) OBJS := $(addprefix $(obj),$(COBJS)) SOBJS := $(addprefix $(obj),$(SOBJS)) diff --git a/board/armltd/integratorcp/integratorcp.c b/board/armltd/integratorcp/integratorcp.c index 0d3afd8..16620bb 100644 --- a/board/armltd/integratorcp/integratorcp.c +++ b/board/armltd/integratorcp/integratorcp.c @@ -34,7 +34,6 @@ */ #include common.h -#include div64.h DECLARE_GLOBAL_DATA_PTR; @@ -138,142 +137,3 @@ extern void dram_query(void); return 0; } - -/* The Integrator/CP timer1 is clocked at 1MHz - * can be divided by 16 or 256 - * and can be set up as a 32-bit timer - */ -/* U-Boot expects a 32 bit timer, running at CONFIG_SYS_HZ */ -/* Keep total timer count to avoid losing decrements div_timer */ -static unsigned long long total_count = 0; -static unsigned long long lastdec; /* Timer reading at last call */ -static unsigned long long div_clock = 1; /* Divisor applied to timer clock */ -static unsigned long long div_timer = 1; /* Divisor to convert timer reading - * change to U-Boot ticks - */ -/* CONFIG_SYS_HZ = CONFIG_SYS_HZ_CLOCK/(div_clock * div_timer) */ -static ulong timestamp;/* U-Boot ticks since startup */ - -#define TIMER_LOAD_VAL ((ulong)0x) -#define READ_TIMER (*(volatile ulong *)(CONFIG_SYS_TIMERBASE+4)) - -/* all function return values in U-Boot ticks i.e. (1/CONFIG_SYS_HZ) sec - * - unless otherwise stated - */ - -/* starts up a counter - * - the Integrator/CP timer can be set up to issue an interrupt */ -int timer_init (void) -{ - /* Load timer with initial value */ - *(volatile ulong *)(CONFIG_SYS_TIMERBASE + 0) = TIMER_LOAD_VAL; - /* Set timer to be -* enabled 1 -* periodic 1 -* no interrupts 0 -* X 0 -* divider 100 == less rounding error -* 32 bit1 -* wrapping 0 -*/ - *(volatile ulong *)(CONFIG_SYS_TIMERBASE + 8) = 0x00C2; - /* init the timestamp */ - total_count = 0ULL; - reset_timer_masked(); - - div_timer = (unsigned long long)(CONFIG_SYS_HZ_CLOCK / CONFIG_SYS_HZ); - div_timer /= div_clock; - - return (0); -} - -/* - * timer without interrupts - */ -void reset_timer (void) -{ - reset_timer_masked (); -} - -ulong get_timer (ulong base_ticks) -{ - return get_timer_masked () - base_ticks; -} - -void set_timer (ulong ticks) -{ - timestamp = ticks; - total_count = (unsigned long long)ticks * div_timer; -} - -/* delay usec useconds */ -void udelay (unsigned long usec) -{ - ulong tmo, tmp; - - /* Convert to U-Boot ticks */ - tmo = usec * CONFIG_SYS_HZ; - tmo /= (100L); - - tmp = get_timer_masked(); /* get current timestamp */ - tmo += tmp; /* form target timestamp */ - - while (get_timer_masked () tmo) {/* loop till event */ - /*NOP*/; - } -} - -void reset_timer_masked (void) -{ - /* capure current decrementer value*/ - lastdec = (unsigned long long)READ_TIMER; - /* start advancing time stamp from 0 */ - timestamp = 0L; -} - -/* converts the timer reading to U-Boot ticks */ -/* the timestamp is the number of ticks since reset*/ -ulong get_timer_masked (void) -{ - /* get current count */ - unsigned long long now = (unsigned long long)READ_TIMER; - - if(now lastdec) { - /* Must have wrapped */ - total_count += lastdec + TIMER_LOAD_VAL + 1 - now; - } else { - total_count += lastdec - now; - } - lastdec = now; - - /* Reuse now */ - now = total_count; - do_div(now, div_timer); - timestamp = now; - - return timestamp; -} - -/* waits specified delay value and resets timestamp */ -void udelay_masked (unsigned long usec) -{ - udelay(usec); -} - -/* - * This function is derived from
[U-Boot] [RFC PATCH 5/6] integratorap/cp: use cfi driver
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com Cc: Peter Pearse peter.pea...@arm.com --- board/armltd/integratorap/Makefile |1 - board/armltd/integratorap/flash.c | 473 -- board/armltd/integratorcp/Makefile |1 - board/armltd/integratorcp/flash.c | 564 include/configs/integratorap.h |8 +- include/configs/integratorcp.h |4 +- 6 files changed, 7 insertions(+), 1044 deletions(-) delete mode 100644 board/armltd/integratorap/flash.c delete mode 100644 board/armltd/integratorcp/flash.c diff --git a/board/armltd/integratorap/Makefile b/board/armltd/integratorap/Makefile index 1af37f3..da82f5c 100644 --- a/board/armltd/integratorap/Makefile +++ b/board/armltd/integratorap/Makefile @@ -32,7 +32,6 @@ LIB = $(obj)lib$(BOARD).a SOBJS-y:= lowlevel_init.o COBJS-y:= integratorap.o -COBJS-y+= flash.o COBJS-$(CONFIG_PCI) += pci.o COBJS-y += timer.o diff --git a/board/armltd/integratorap/flash.c b/board/armltd/integratorap/flash.c deleted file mode 100644 index 0492be7..000 --- a/board/armltd/integratorap/flash.c +++ /dev/null @@ -1,473 +0,0 @@ -/* - * (C) Copyright 2001 - * Kyle Harris, Nexus Technologies, Inc. khar...@nexus-tech.net - * - * (C) Copyright 2001-2004 - * Wolfgang Denk, DENX Software Engineering, w...@denx.de. - * - * (C) Copyright 2003 - * Texas Instruments, www.ti.com - * Kshitij Gupta kshi...@ti.com - * - * See file CREDITS for list of people who contributed to this - * project. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA - */ - -#include common.h -#include linux/byteorder/swab.h - -#define PHYS_FLASH_SECT_SIZE 0x0002 /* 256 KB sectors (x2) */ -flash_info_t flash_info[CONFIG_SYS_MAX_FLASH_BANKS]; /* info for FLASH chips */ - -/* Board support for 1 or 2 flash devices */ -#undef FLASH_PORT_WIDTH32 -#define FLASH_PORT_WIDTH16 - -#ifdef FLASH_PORT_WIDTH16 -#define FLASH_PORT_WIDTH ushort -#define FLASH_PORT_WIDTHV vu_short -#define SWAP(x)__swab16(x) -#else -#define FLASH_PORT_WIDTH ulong -#define FLASH_PORT_WIDTHV vu_long -#define SWAP(x)__swab32(x) -#endif - -#define FPWFLASH_PORT_WIDTH -#define FPWV FLASH_PORT_WIDTHV - -#define mb() __asm__ __volatile__ ( : : : memory) - - -/* Flash Organization Structure */ -typedef struct OrgDef { - unsigned int sector_number; - unsigned int sector_size; -} OrgDef; - - -/* Flash Organizations */ -OrgDef OrgIntel_28F256L18T[] = { - {4, 32 * 1024}, /* 4 * 32kBytes sectors */ - {255, 128 * 1024}, /* 255 * 128kBytes sectors */ -}; - - -/*--- - * Functions - */ -unsigned long flash_init (void); -static ulong flash_get_size (FPW * addr, flash_info_t * info); -static int write_data (flash_info_t * info, ulong dest, FPW data); -static void flash_get_offsets (ulong base, flash_info_t * info); -void inline spin_wheel (void); -void flash_print_info (flash_info_t * info); -void flash_unprotect_sectors (FPWV * addr); -int flash_erase (flash_info_t * info, int s_first, int s_last); -int write_buff (flash_info_t * info, uchar * src, ulong addr, ulong cnt); - -/*--- - */ - -unsigned long flash_init (void) -{ - int i; - ulong size = 0; - for (i = 0; i CONFIG_SYS_MAX_FLASH_BANKS; i++) { - switch (i) { - case 0: - flash_get_size ((FPW *) PHYS_FLASH_1, flash_info[i]); - flash_get_offsets (PHYS_FLASH_1, flash_info[i]); - break; - default: - panic (configured too many flash banks!\n); - break; - } - size += flash_info[i].size; - } - - /* Protect monitor and environment sectors -*/ - flash_protect (FLAG_PROTECT_SET, - CONFIG_SYS_FLASH_BASE, - CONFIG_SYS_FLASH_BASE + monitor_flash_len - 1, flash_info[0]); - - return size; -} -
[U-Boot] [RFC PATCH 6/6] integrator: merge integratorap and integratorcp
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com Cc: Peter Pearse peter.pea...@arm.com --- Makefile |4 +- board/armltd/integrator/.gitignore |5 + board/armltd/{integratorap = integrator}/Makefile |4 +- board/armltd/integrator/config.mk |7 + .../integratorap.c = integrator/integrator.c} | 10 +- .../{integratorap = integrator}/lowlevel_init.S |0 board/armltd/{integratorap = integrator}/pci.c|0 board/armltd/integrator/split_by_variant.sh| 239 board/armltd/{integratorcp = integrator}/timer.c | 67 -- .../u-boot.lds.template|0 board/armltd/integratorap/config.mk| 11 - board/armltd/integratorap/split_by_variant.sh | 131 --- board/armltd/integratorap/timer.c | 171 -- board/armltd/integratorcp/Makefile | 53 - board/armltd/integratorcp/config.mk| 11 - board/armltd/integratorcp/integratorcp.c | 118 -- board/armltd/integratorcp/lowlevel_init.S | 214 -- board/armltd/integratorcp/split_by_variant.sh | 114 -- board/armltd/integratorcp/u-boot.lds.template | 53 - 19 files changed, 310 insertions(+), 902 deletions(-) create mode 100644 board/armltd/integrator/.gitignore rename board/armltd/{integratorap = integrator}/Makefile (95%) create mode 100644 board/armltd/integrator/config.mk rename board/armltd/{integratorap/integratorap.c = integrator/integrator.c} (93%) rename board/armltd/{integratorap = integrator}/lowlevel_init.S (100%) rename board/armltd/{integratorap = integrator}/pci.c (100%) create mode 100755 board/armltd/integrator/split_by_variant.sh rename board/armltd/{integratorcp = integrator}/timer.c (76%) rename board/armltd/{integratorap = integrator}/u-boot.lds.template (100%) delete mode 100644 board/armltd/integratorap/config.mk delete mode 100755 board/armltd/integratorap/split_by_variant.sh delete mode 100644 board/armltd/integratorap/timer.c delete mode 100644 board/armltd/integratorcp/Makefile delete mode 100644 board/armltd/integratorcp/config.mk delete mode 100644 board/armltd/integratorcp/integratorcp.c delete mode 100644 board/armltd/integratorcp/lowlevel_init.S delete mode 100755 board/armltd/integratorcp/split_by_variant.sh delete mode 100644 board/armltd/integratorcp/u-boot.lds.template diff --git a/Makefile b/Makefile index 8a0784c..535b556 100644 --- a/Makefile +++ b/Makefile @@ -2764,7 +2764,7 @@ ap720t_config \ ap920t_config \ ap926ejs_config\ ap946es_config: unconfig - @board/armltd/integratorap/split_by_variant.sh $@ + @board/armltd/integrator/split_by_variant.sh ap $@ integratorcp_config\ cp_config \ @@ -2776,7 +2776,7 @@ cp966_config \ cp922_config \ cp922_XA10_config \ cp1026_config: unconfig - @board/armltd/integratorcp/split_by_variant.sh $@ + @board/armltd/integrator/split_by_variant.sh cp $@ davinci_dvevm_config : unconfig @$(MKCONFIG) $(@:_config=) arm arm926ejs dvevm davinci davinci diff --git a/board/armltd/integrator/.gitignore b/board/armltd/integrator/.gitignore new file mode 100644 index 000..8a8c3b8 --- /dev/null +++ b/board/armltd/integrator/.gitignore @@ -0,0 +1,5 @@ +# +# Generated files +# + +/u-boot.lds diff --git a/board/armltd/integratorap/Makefile b/board/armltd/integrator/Makefile similarity index 95% rename from board/armltd/integratorap/Makefile rename to board/armltd/integrator/Makefile index da82f5c..d14f6fc 100644 --- a/board/armltd/integratorap/Makefile +++ b/board/armltd/integrator/Makefile @@ -31,7 +31,7 @@ LIB = $(obj)lib$(BOARD).a SOBJS-y:= lowlevel_init.o -COBJS-y:= integratorap.o +COBJS-y:= integrator.o COBJS-$(CONFIG_PCI) += pci.o COBJS-y += timer.o @@ -46,7 +46,7 @@ clean: rm -f $(SOBJS) $(COBJS) distclean: clean - rm -f $(LIB) core *.bak $(obj).depend + rm -f $(LIB) core *.bak $(obj).depend $(obj)u-boot.lds # diff --git a/board/armltd/integrator/config.mk b/board/armltd/integrator/config.mk new file mode 100644 index 000..4c56aaf --- /dev/null +++ b/board/armltd/integrator/config.mk @@ -0,0 +1,7 @@ +# +# image should be loaded at 0x0100 +# + +TEXT_BASE = 0x0100 + +LDSCRIPT := $(obj)board/$(BOARDDIR)/u-boot.lds diff --git a/board/armltd/integratorap/integratorap.c b/board/armltd/integrator/integrator.c similarity index 93% rename from board/armltd/integratorap/integratorap.c rename to board/armltd/integrator/integrator.c index f58956e..b49be77 100644 --- a/board/armltd/integratorap/integratorap.c +++ b/board/armltd/integrator/integrator.c @@ -34,7 +34,9 @@ */
Re: [U-Boot] [PATCH 4/6] fsl_esdhc: Add device tree fixups
On Fri, May 01, 2009 at 10:59:13AM -0500, Scott Wood wrote: It's possible -- but not likely enough to warrant using the chip name if a usable block number is available (it's more likely that a future rev of the same chip number will have a different logic block version). PVR or information elsewhere in the device tree could be used in such cases. I meant SVR, not PVR, of course. -Scott ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] at91: remove lowlevel_init.S
Dear Jean-Christophe PLAGNIOL-VILLARD, In message 1241185086-11754-1-git-send-email-plagn...@jcrosoft.com you wrote: actually no boards use the default lowlevel_init.S so remove it btw the u-boot.lds is not anymore need to be generated Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com --- Makefile|1 - cpu/arm926ejs/at91/.gitignore |5 --- cpu/arm926ejs/at91/Makefile |6 +--- cpu/arm926ejs/at91/config.mk|2 +- cpu/arm926ejs/at91/lowlevel_init.S | 45 --- cpu/arm926ejs/at91/{u-boot.lds.S = u-boot.lds} |5 --- 6 files changed, 2 insertions(+), 62 deletions(-) delete mode 100644 cpu/arm926ejs/at91/.gitignore delete mode 100644 cpu/arm926ejs/at91/lowlevel_init.S rename cpu/arm926ejs/at91/{u-boot.lds.S = u-boot.lds} (93%) This patch may be fixing the out-of-tree build problem introduced with commit f0a2c7b4 at91: add support for the PM9263 board, but it causes a LOT of new issues: Configuring for integratorap board... Variant:: Core module CM720T with core arm720t In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from start.S:29: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from interrupts.c:32: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from cpu.c:36: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from start.S:29: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor make[1]: *** [/work/wd/tmp-arm/cpu/arm720t/start.o] Error 1 make: *** [/work/wd/tmp-arm/cpu/arm720t/start.o] Error 2 make: *** Waiting for unfinished jobs arm-linux-size: '/work/wd/tmp-arm/u-boot': No such file Configuring for armadillo board... In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from start.S:29: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from interrupts.c:32: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from cpu.c:36: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from start.S:29: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor make[1]: *** [/work/wd/tmp-arm/cpu/arm720t/start.o] Error 1 make: *** [/work/wd/tmp-arm/cpu/arm720t/start.o] Error 2 make: *** Waiting for unfinished jobs arm-linux-size: '/work/wd/tmp-arm/u-boot': No such file Configuring for B2 board... In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from cache.c:29: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from B2.c:28: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from cpu.c:33: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from flash.c:25: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from interrupts.c:28: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from cache.c:29: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor and so on and on and on... 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: w...@denx.de A Puritan is someone who is deathly afraid that someone, somewhere, is having fun. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] at91: remove lowlevel_init.S
Dear Jean-Christophe, in message 20090501175234.6a4c18342...@gemini.denx.de I wrote: In message 1241185086-11754-1-git-send-email-plagn...@jcrosoft.com you wrote: actually no boards use the default lowlevel_init.S so remove it btw the u-boot.lds is not anymore need to be generated Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com --- Makefile|1 - cpu/arm926ejs/at91/.gitignore |5 --- cpu/arm926ejs/at91/Makefile |6 +--- cpu/arm926ejs/at91/config.mk|2 +- cpu/arm926ejs/at91/lowlevel_init.S | 45 --- cpu/arm926ejs/at91/{u-boot.lds.S = u-boot.lds} |5 --- 6 files changed, 2 insertions(+), 62 deletions(-) delete mode 100644 cpu/arm926ejs/at91/.gitignore delete mode 100644 cpu/arm926ejs/at91/lowlevel_init.S rename cpu/arm926ejs/at91/{u-boot.lds.S = u-boot.lds} (93%) This patch may be fixing the out-of-tree build problem introduced with commit f0a2c7b4 at91: add support for the PM9263 board, but it causes a LOT of new issues: Configuring for integratorap board... Variant:: Core module CM720T with core arm720t In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, from start.S:29: /work/wd/tmp-arm/include2/asm/arch/hardware.h:48:2: error: #error Unsupported AT91 processor In file included from /work/wd/tmp-arm/include2/asm/hardware.h:16, ... Sorry, this is actually yet another bug. Ouch. ARM tree is in a TERRIBLE state. 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: w...@denx.de No user-servicable parts inside. Refer to qualified service personnel. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH 1/9 v2] MPC85xx: Add QE clk support for mpc85xx platforms
Signed-off-by: Haiying Wang haiying.w...@freescale.com Acked-by: Timur Tabi ti...@freescale.com --- v2 change: Fix the indention issue pointed by Scott, and add Acked-by. cpu/mpc85xx/cpu.c|4 cpu/mpc85xx/speed.c | 13 + include/asm-ppc/immap_85xx.h |2 ++ include/e500.h |1 + 4 files changed, 20 insertions(+), 0 deletions(-) diff --git a/cpu/mpc85xx/cpu.c b/cpu/mpc85xx/cpu.c index ef976a4..b812d88 100644 --- a/cpu/mpc85xx/cpu.c +++ b/cpu/mpc85xx/cpu.c @@ -184,6 +184,10 @@ int checkcpu (void) printf(CPM: %s MHz\n, strmhz(buf1, sysinfo.freqSystemBus)); #endif +#ifdef CONFIG_QE + printf( QE:%-4s MHz\n, strmhz(buf1, sysinfo.freqQE)); +#endif + puts(L1:D-cache 32 kB enabled\n I-cache 32 kB enabled\n); return 0; diff --git a/cpu/mpc85xx/speed.c b/cpu/mpc85xx/speed.c index b0f47e0..16dbe76 100644 --- a/cpu/mpc85xx/speed.c +++ b/cpu/mpc85xx/speed.c @@ -40,6 +40,9 @@ void get_sys_info (sys_info_t * sysInfo) uint plat_ratio,e500_ratio,half_freqSystemBus; uint lcrr_div; int i; +#ifdef CONFIG_QE + u32 qe_ratio; +#endif plat_ratio = (gur-porpllsr) 0x003e; plat_ratio = 1; @@ -65,6 +68,12 @@ void get_sys_info (sys_info_t * sysInfo) } #endif +#ifdef CONFIG_QE + qe_ratio = ((gur-porpllsr) MPC85xx_PORPLLSR_QE_RATIO) +MPC85xx_PORPLLSR_QE_RATIO_SHIFT; + sysInfo-freqQE = qe_ratio * CONFIG_SYS_CLK_FREQ; +#endif + #if defined(CONFIG_SYS_LBC_LCRR) /* We will program LCRR to this value later */ lcrr_div = CONFIG_SYS_LBC_LCRR LCRR_CLKDIV; @@ -112,6 +121,10 @@ int get_clocks (void) gd-mem_clk = sys_info.freqDDRBus; gd-lbc_clk = sys_info.freqLocalBus; +#ifdef CONFIG_QE + gd-qe_clk = sys_info.freqQE; + gd-brg_clk = gd-qe_clk / 2; +#endif /* * The base clock for I2C depends on the actual SOC. Unfortunately, * there is no pattern that can be used to determine the frequency, so diff --git a/include/asm-ppc/immap_85xx.h b/include/asm-ppc/immap_85xx.h index 0810b8e..a4d25cd 100644 --- a/include/asm-ppc/immap_85xx.h +++ b/include/asm-ppc/immap_85xx.h @@ -1581,6 +1581,8 @@ typedef struct ccsr_gur { #define MPC85xx_PORPLLSR_DDR_RATIO 0x3e00 #define MPC85xx_PORPLLSR_DDR_RATIO_SHIFT 9 #endif +#define MPC85xx_PORPLLSR_QE_RATIO 0x3e00 +#define MPC85xx_PORPLLSR_QE_RATIO_SHIFT25 uintporbmsr;/* 0xe0004 - POR boot mode status register */ #define MPC85xx_PORBMSR_HA 0x0007 uintporimpscr; /* 0xe0008 - POR I/O impedance status and control register */ diff --git a/include/e500.h b/include/e500.h index 4c5eeb7..84b580d 100644 --- a/include/e500.h +++ b/include/e500.h @@ -18,6 +18,7 @@ typedef struct unsigned long freqSystemBus; unsigned long freqDDRBus; unsigned long freqLocalBus; + unsigned long freqQE; } MPC85xx_SYS_INFO; #endif /* _ASMLANGUAGE */ -- 1.6.0.2 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] ARM DaVinci: Changing ALE Mask Value
On Wed, Apr 29, 2009 at 09:47:09AM -0400, s-paul...@ti.com wrote: The ALE mask used by DaVinci SOCs is wrong. The patch changes the mask value from '0xa' to '0x8'. This is the mask we use for all TI releases. Signed-off-by: Sandeep Paulraj s-paul...@ti.com --- Applied to u-boot-nand-flash. -Scott ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [STATUS] v2009.06-rc1 is out
Hi everybody... v2009.06-rc1 has just been released. Please help testing, and submit fixes to the remaining problems. Things still missing should be submitted ASAP. I would like to have a -rc2 by the end of next week, and strictly only bug fixes after this. v2009.06-rc1 will also be the base for the next branch which I will create soon. Please use the next branch as base for any new work. Note: Please keep in mind that it will be rebased against master every now and then without warning. 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: w...@denx.de Conceptual integrity in turn dictates that the design must proceed from one mind, or from a very small number of agreeing resonant minds. - Frederick Brooks Jr., The Mythical Man Month ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] Add +size syntax to nand commands to pad lengths to page sizes.
This change implements the suggestion from an earlier thread for how to handle padding of non-page sized writes to NAND flashes. See http://lists.denx.de/pipermail/u-boot/2009-February/047795.html for the original discussion. Note that validity of tail page's memory is the reponsibility of the caller. Signed-off-by: Josh Karabin gkara...@vocollect.com --- common/cmd_nand.c | 41 +++-- 1 files changed, 31 insertions(+), 10 deletions(-) diff --git a/common/cmd_nand.c b/common/cmd_nand.c index 1992531..f094101 100644 --- a/common/cmd_nand.c +++ b/common/cmd_nand.c @@ -102,9 +102,11 @@ static inline int str2long(char *p, ulong *num) } static int -arg_off_size(int argc, char *argv[], nand_info_t *nand, ulong *off, size_t *size) +arg_off_size(int argc, char *argv[], nand_info_t *nand, ulong *off, + size_t *size, int *plussed) { int idx = nand_curr_device; + char *ps = argv[1]; #if defined(CONFIG_CMD_MTDPARTS) struct mtd_device *dev; struct part_info *part; @@ -119,8 +121,12 @@ arg_off_size(int argc, char *argv[], nand_info_t *nand, ulong *off, size_t *size } *off = part-offset; if (argc = 2) { - if (!(str2long(argv[1], (ulong *)size))) { - printf('%s' is not a number\n, argv[1]); + if (plussed *ps == '+') { + *plussed = 1; + ps++; + } + if (!(str2long(ps, (ulong *)size))) { + printf('%s' is not a number\n, ps); return -1; } if (*size part-size) @@ -145,8 +151,12 @@ arg_off_size(int argc, char *argv[], nand_info_t *nand, ulong *off, size_t *size } if (argc = 2) { - if (!(str2long(argv[1], (ulong *)size))) { - printf('%s' is not a number\n, argv[1]); + if (plussed *ps == '+') { + *plussed = 1; + ps++; + } + if (!(str2long(ps, (ulong *)size))) { + printf('%s' is not a number\n, ps); return -1; } } else { @@ -317,7 +327,7 @@ int do_nand(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[]) printf(\nNAND %s: , scrub ? scrub : erase); /* skip first two or three arguments, look for offset and size */ - if (arg_off_size(argc - o, argv + o, nand, off, size) != 0) + if (arg_off_size(argc - o, argv + o, nand, off, size, NULL) != 0) return 1; memset(opts, 0, sizeof(opts)); @@ -378,8 +388,18 @@ int do_nand(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[]) read = strncmp(cmd, read, 4) == 0; /* 1 = read, 0 = write */ printf(\nNAND %s: , read ? read : write); - if (arg_off_size(argc - 3, argv + 3, nand, off, size) != 0) + if (read arg_off_size(argc - 3, argv + 3, nand, off, size, NULL) != 0) return 1; + else if (!read) { + int plussed = 0; + if (arg_off_size(argc - 3, argv + 3, nand, off, size, plussed) != 0) + return 1; + if (plussed) { + int tailsize = size (nand-writesize - 1); + memset ((u_char *)addr + size, 0xff, nand-writesize - tailsize); + size += nand-writesize - tailsize; + } + } s = strchr(cmd, '.'); if (!s || !strcmp(s, .jffs2) || @@ -457,7 +477,7 @@ int do_nand(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[]) } if (strcmp(cmd, unlock) == 0) { - if (arg_off_size(argc - 2, argv + 2, nand, off, size) 0) + if (arg_off_size(argc - 2, argv + 2, nand, off, size, NULL) 0) return 1; if (!nand_unlock(nand, off, size)) { @@ -481,9 +501,10 @@ U_BOOT_CMD(nand, 5, 1, do_nand, info - show available NAND devices\n nand device [dev] - show or set current device\n nand read - addr off|partition size\n - nand write - addr off|partition size\n + nand write - addr off|partition [+]size\n read/write 'size' bytes starting at offset 'off'\n - to/from memory address 'addr', skipping bad blocks.\n + to/from memory address 'addr', skipping bad blocks,\n + rounding up to a page size if '+' is specified.\n nand erase [clean] [off
Re: [U-Boot] U-boot -printk kernel crash dump using md on PDK
(Click on IMX31_PDK_14_LINUX_BSP_R14 ) Thanks Fabio. Do you know what the load address and entry point for creating a uImage are for the mx31 pdk board and where to load the uImage to. Itried 0x8100 and 0x80008000 and i am still unable to load the kernel off u-boot.? Best Regards, Alfred ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Question about M29W128G CFI QRY bug
Stefan Roese wrote: On Wednesday 15 April 2009, Stefan Roese wrote: I don't like both versions. We should implement something which doesn't change the current behavior probably needed on some other boards. So how about something like this: I took your proposal and tried to implement it, hit a snag with flash_write_cmd currently being a private function of cfi-flash.c so, here is my 'counter-offer' pasted at the end of the message. Thanks. Looks good. I'll take it and prepare a proper patch. Hmm. After looking a bit closer this doesn't seem to be this easy. I would like to add this function prototype to include/flash.h where other defines and function prototypes are collected right now. But this breaks some other boards implementing their own flash driver in their board directories, like AP1000, cpci5200, G2000, ppmc8260 and sbc405 (maintainers added to CC). All those boards should be able to use the common CFI flash driver. I would really like to see those boards converted to this driver. It should be pretty easy. So maintainers from the boards mentioned above, if you need any help with this just let me know. Hi Stefan, Would I be foolish to hope that this can be merged in for 2009.06? :) Thanks - Richard ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Ping on Coldfire patch status
Richard Retanubun wrote: Liew Tsi Chung-R5AAHP wrote: Richard, Sorry for the late reply. I was time off last week .. mandatory. I'm ok Hi TC, Thanks for the reply, sorry If I made you reply from vacation :( with three out of four patches (Activate timer, watchdog and compiler warning patches). I can place these patches before the next merging window. As for the I2C, re-order the value may not be the best solution. I had this calculation a while back, try it and let me know what you think. Which calculation do you want me to try? The drawback is ... It is slower than fix value. Hi TC and John, sorry if I'm being neurotic :) any chance the patches in the original thread be merged in on 2009.06 ? I don't mind if the i2c one is not pulled in. Thanks, - Richard ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [STATUS] v2009.06-rc1 is out
Wolfgang Denk wrote: Please use the next branch as base for any new work. Note: Please keep in mind that it will be rebased against master every now and then without warning. It is difficult to use as a base a branch that is itself being rebased. Why not just merge unless there's something that absolutely cannot stay in the history? Will you be pulling things into the next branch periodically (by request?), or is it just for things that aren't going into custodian next branches? When the next merge window opens, will next beecome master, or is it just an integration test as in linux-next? -Scott ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH V2] arm: timer and interrupt init rework
actually the timer init use the interrupt_init as init callback which make the interrupt and timer implementation difficult to follow so now rename it as int timer_init(void) and use interrupt_init for interrupt btw also remane the corresponding file to the functionnality implemented as ixp arch implement two timer - one based on interrupt - so all the timer related code is moved to timer.c as some timer need interrupt and we need delay in the board init the new init sequence is now interrupt_init (if used) timer_init board_init Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com --- board/armltd/integratorap/integratorap.c |2 +- board/armltd/integratorcp/integratorcp.c |2 +- board/atmel/at91cap9adk/at91cap9adk.c|1 - board/davinci/common/misc.h |1 - board/m501sk/m501sk.c|2 - board/netstar/netstar.c |2 +- board/voiceblue/voiceblue.c |2 +- cpu/arm1136/mx31/Makefile|3 +- cpu/arm1136/mx31/{interrupts.c = timer.c} |3 +- cpu/arm1136/omap24xx/Makefile|3 +- cpu/arm1136/omap24xx/{interrupts.c = timer.c} |3 +- cpu/arm1176/s3c64xx/Makefile |2 +- cpu/arm1176/s3c64xx/{interrupts.c = timer.c}|2 +- cpu/arm720t/interrupts.c | 46 ++ cpu/arm920t/at91rm9200/Makefile |2 +- cpu/arm920t/at91rm9200/{interrupts.c = timer.c} |2 +- cpu/arm920t/imx/Makefile |4 +- cpu/arm920t/imx/{interrupts.c = timer.c}|2 +- cpu/arm920t/ks8695/Makefile |3 +- cpu/arm920t/ks8695/{interrupts.c = timer.c} | 12 ++--- cpu/arm920t/s3c24x0/Makefile |5 ++- cpu/arm920t/s3c24x0/{interrupts.c = timer.c}|2 +- cpu/arm925t/Makefile |5 ++- cpu/arm925t/{interrupts.c = timer.c}|2 +- cpu/arm926ejs/Makefile |2 +- cpu/arm926ejs/interrupts.c | 57 -- cpu/arm_cortexa8/omap3/Makefile |8 +++- cpu/arm_cortexa8/omap3/{interrupts.c = timer.c} |2 +- cpu/ixp/Makefile |6 +-- cpu/ixp/interrupts.c | 55 - cpu/ixp/timer.c | 54 cpu/lh7a40x/Makefile |2 +- cpu/lh7a40x/{interrupts.c = timer.c}|2 +- cpu/pxa/Makefile |8 +++- cpu/pxa/{interrupts.c = timer.c}|7 ++- cpu/s3c44b0/Makefile |5 ++- cpu/s3c44b0/{interrupts.c = timer.c}|2 +- cpu/sa1100/Makefile |4 +- cpu/sa1100/{interrupts.c = timer.c} |5 +- include/asm-arm/u-boot-arm.h |3 + include/configs/ixdpg425.h |1 + include/configs/pdnb3.h |1 + lib_arm/board.c |5 ++- 43 files changed, 167 insertions(+), 175 deletions(-) rename cpu/arm1136/mx31/{interrupts.c = timer.c} (97%) rename cpu/arm1136/omap24xx/{interrupts.c = timer.c} (97%) rename cpu/arm1176/s3c64xx/{interrupts.c = timer.c} (99%) rename cpu/arm920t/at91rm9200/{interrupts.c = timer.c} (99%) rename cpu/arm920t/imx/{interrupts.c = timer.c} (99%) rename cpu/arm920t/ks8695/{interrupts.c = timer.c} (93%) rename cpu/arm920t/s3c24x0/{interrupts.c = timer.c} (99%) rename cpu/arm925t/{interrupts.c = timer.c} (99%) delete mode 100644 cpu/arm926ejs/interrupts.c rename cpu/arm_cortexa8/omap3/{interrupts.c = timer.c} (99%) rename cpu/lh7a40x/{interrupts.c = timer.c} (99%) rename cpu/pxa/{interrupts.c = timer.c} (96%) rename cpu/s3c44b0/{interrupts.c = timer.c} (98%) rename cpu/sa1100/{interrupts.c = timer.c} (95%) diff --git a/board/armltd/integratorap/integratorap.c b/board/armltd/integratorap/integratorap.c index 9631967..5ececd6 100644 --- a/board/armltd/integratorap/integratorap.c +++ b/board/armltd/integratorap/integratorap.c @@ -540,7 +540,7 @@ static ulong div_timer = 1; /* Divisor to convert timer reading * - the Integrator/AP timer issues an interrupt * each time it reaches zero */ -int interrupt_init (void) +int timer_init (void) { /* Load timer with initial value */ *(volatile ulong *)(CONFIG_SYS_TIMERBASE + 0) = TIMER_LOAD_VAL; diff --git a/board/armltd/integratorcp/integratorcp.c b/board/armltd/integratorcp/integratorcp.c index 72629ce..0d3afd8 100644 --- a/board/armltd/integratorcp/integratorcp.c +++ b/board/armltd/integratorcp/integratorcp.c @@ -163,7 +163,7 @@ static ulong timestamp; /* U-Boot ticks since startup */ /* starts up a
[U-Boot] [PATCH 2/2] pm9263: use macro instead of hardcode value for the lowlevel_init
optimize a few the RAM init Signed-off-by: Ilko Iliev il...@ronetix.at Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com --- board/ronetix/pm9263/lowlevel_init.S |2 +- board/ronetix/pm9263/pm9263.c|2 +- include/asm-arm/arch-at91/at91_pmc.h |1 + include/configs/pm9263.h | 105 + 4 files changed, 82 insertions(+), 28 deletions(-) diff --git a/board/ronetix/pm9263/lowlevel_init.S b/board/ronetix/pm9263/lowlevel_init.S index 561722c..b139c89 100644 --- a/board/ronetix/pm9263/lowlevel_init.S +++ b/board/ronetix/pm9263/lowlevel_init.S @@ -87,7 +87,7 @@ POS1: */ ldr r1, =(AT91_BASE_SYS + AT91_CKGR_MOR) ldr r2, =(AT91_BASE_SYS + AT91_PMC_SR) - ldr r0, =0xFF01 + ldr r0, =CONFIG_SYS_MOR_VAL str r0, [r1]/* Enable main oscillator, OSCOUNT = 0xFF */ /* Reading the PMC Status to detect when the Main Oscillator is enabled */ diff --git a/board/ronetix/pm9263/pm9263.c b/board/ronetix/pm9263/pm9263.c index cfac897..52b6bb4 100644 --- a/board/ronetix/pm9263/pm9263.c +++ b/board/ronetix/pm9263/pm9263.c @@ -239,7 +239,7 @@ static int pm9263_lcd_hw_psram_init(void) at91_sys_write( AT91_MATRIX_SCFG5, AT91_MATRIX_ARBT_FIXED_PRIORITY | (AT91_MATRIX_FIXED_DEFMSTR (5 18)) | AT91_MATRIX_DEFMSTR_TYPE_FIXED | - (AT91_MATRIX_SLOT_CYCLE (0x80 0))); + (AT91_MATRIX_SLOT_CYCLE (0xFF 0))); return 0; } diff --git a/include/asm-arm/arch-at91/at91_pmc.h b/include/asm-arm/arch-at91/at91_pmc.h index 07580da..a82955c 100644 --- a/include/asm-arm/arch-at91/at91_pmc.h +++ b/include/asm-arm/arch-at91/at91_pmc.h @@ -65,6 +65,7 @@ #defineAT91_PMC_USBDIV_2 (1 28) #defineAT91_PMC_USBDIV_4 (2 28) #defineAT91_PMC_USB96M (1 28) /* Divider by 2 Enable (PLLB only) */ +#defineAT91_PMC_PLLA_WR_ERRATA (1 29) /* Bit 29 must always be set to 1 when programming the CKGR_PLLAR register */ #defineAT91_PMC_MCKR (AT91_PMC + 0x30) /* Master Clock Register */ #defineAT91_PMC_CSS(3 0) /* Master Clock Selection */ diff --git a/include/configs/pm9263.h b/include/configs/pm9263.h index 5729acd..bb7d25a 100644 --- a/include/configs/pm9263.h +++ b/include/configs/pm9263.h @@ -33,8 +33,8 @@ #define CONFIG_DISPLAY_BOARDINFO -#define MASTER_PLL_DIV 15 -#define MASTER_PLL_MUL 162 +#define MASTER_PLL_DIV 6 +#define MASTER_PLL_MUL 65 #define MAIN_PLL_DIV 2 /* 2 or 4 */ #define AT91_MAIN_CLOCK18432000 @@ -47,39 +47,76 @@ #undef CONFIG_USE_IRQ /* we don't need IRQ/FIQ stuff */ /* clocks */ -#define CONFIG_SYS_MOR_VAL 0x2001 /* CKGR_MOR - enable main osc. */ -#define CONFIG_SYS_PLLAR_VAL \ - (0x2000BF00 | ((MASTER_PLL_MUL - 1) 16) | (MASTER_PLL_DIV)) +#define CONFIG_SYS_MOR_VAL \ + (AT91_PMC_MOSCEN | \ +(255 8))/* Main Oscillator Start-up Time */ +#define CONFIG_SYS_PLLAR_VAL \ + (AT91_PMC_PLLA_WR_ERRATA | /* Bit 29 must be 1 when prog */ \ +AT91_PMC_OUT | \ +AT91_PMC_PLLCOUNT |/* PLL Counter */ \ +(2 28) |/* PLL Clock Frequency Range */ \ +((MASTER_PLL_MUL - 1) 16) | (MASTER_PLL_DIV)) #if (MAIN_PLL_DIV == 2) /* PCK/2 = MCK Master Clock from PLLA */ -#define CONFIG_SYS_MCKR1_VAL 0x0100 +#defineCONFIG_SYS_MCKR1_VAL\ + (AT91_PMC_CSS_SLOW |\ +AT91_PMC_PRES_1 | \ +AT91SAM9_PMC_MDIV_2 | \ +AT91_PMC_PDIV_1) /* PCK/2 = MCK Master Clock from PLLA */ -#define CONFIG_SYS_MCKR2_VAL 0x0102 +#defineCONFIG_SYS_MCKR2_VAL\ + (AT91_PMC_CSS_PLLA |\ +AT91_PMC_PRES_1 | \ +AT91SAM9_PMC_MDIV_2 | \ +AT91_PMC_PDIV_1) #else /* PCK/4 = MCK Master Clock from PLLA */ -#define CONFIG_SYS_MCKR1_VAL 0x0200 +#defineCONFIG_SYS_MCKR1_VAL\ + (AT91_PMC_CSS_SLOW |\ +AT91_PMC_PRES_1 | \ +AT91RM9200_PMC_MDIV_3 |\ +AT91_PMC_PDIV_1) /* PCK/4 = MCK Master Clock from PLLA */ -#define CONFIG_SYS_MCKR2_VAL 0x0202 +#defineCONFIG_SYS_MCKR2_VAL\ +
[U-Boot] [PATCH 1/2] pm9263: lowlevel init update
move PSRAM init to pm9263_lcd_hw_psram_init Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com Tested-by: Ilko Iliev il...@ronetix.at --- board/ronetix/pm9263/lowlevel_init.S | 17 + board/ronetix/pm9263/pm9263.c| 21 + include/configs/pm9263.h | 10 +- 3 files changed, 23 insertions(+), 25 deletions(-) diff --git a/board/ronetix/pm9263/lowlevel_init.S b/board/ronetix/pm9263/lowlevel_init.S index c048c91..561722c 100644 --- a/board/ronetix/pm9263/lowlevel_init.S +++ b/board/ronetix/pm9263/lowlevel_init.S @@ -194,12 +194,10 @@ SMRDATA: .word (AT91_BASE_SYS + AT91_MATRIX_EBI0CSA) .word CONFIG_SYS_MATRIX_EBI0CSA_VAL - .word (AT91_BASE_SYS + AT91_MATRIX_EBI1CSA) - .word CONFIG_SYS_MATRIX_EBI1CSA_VAL /* flash */ .word (AT91_BASE_SYS + AT91_SMC_MODE(0)) - .word CONFIG_SYS_SMC0_CTRL0_VAL + .word CONFIG_SYS_SMC0_MODE0_VAL .word (AT91_BASE_SYS + AT91_SMC_CYCLE(0)) .word CONFIG_SYS_SMC0_CYCLE0_VAL @@ -210,19 +208,6 @@ SMRDATA: .word (AT91_BASE_SYS + AT91_SMC_SETUP(0)) .word CONFIG_SYS_SMC0_SETUP0_VAL - /* PSRAM */ - .word (AT91_BASE_SYS + AT91_SMC1_MODE(0)) - .word CONFIG_SYS_SMC1_CTRL0_VAL - - .word (AT91_BASE_SYS + AT91_SMC1_CYCLE(0)) - .word CONFIG_SYS_SMC1_CYCLE0_VAL - - .word (AT91_BASE_SYS + AT91_SMC1_PULSE(0)) - .word CONFIG_SYS_SMC1_PULSE0_VAL - - .word (AT91_BASE_SYS + AT91_SMC1_SETUP(0)) - .word CONFIG_SYS_SMC1_SETUP0_VAL - SMRDATA1: .word (AT91_BASE_SYS + AT91_SDRAMC_MR) .word CONFIG_SYS_SDRC_MR_VAL1 diff --git a/board/ronetix/pm9263/pm9263.c b/board/ronetix/pm9263/pm9263.c index d24ef9a..cfac897 100644 --- a/board/ronetix/pm9263/pm9263.c +++ b/board/ronetix/pm9263/pm9263.c @@ -165,6 +165,27 @@ void lcd_disable(void) static int pm9263_lcd_hw_psram_init(void) { volatile uint16_t x; + unsigned long csa; + + /* Enable CS3 3.3v, no pull-ups */ + csa = at91_sys_read(AT91_MATRIX_EBI1CSA); + at91_sys_write(AT91_MATRIX_EBI1CSA, + csa | AT91_MATRIX_EBI1_DBPUC | + AT91_MATRIX_EBI1_VDDIOMSEL_3_3V); + + /* Configure SMC1 CS0 for PSRAM - 16-bit */ + at91_sys_write(AT91_SMC1_SETUP(0), + AT91_SMC_NWESETUP_(0) | AT91_SMC_NCS_WRSETUP_(0) | + AT91_SMC_NRDSETUP_(0) | AT91_SMC_NCS_RDSETUP_(0)); + at91_sys_write(AT91_SMC1_PULSE(0), + AT91_SMC_NWEPULSE_(7) | AT91_SMC_NCS_WRPULSE_(7) | + AT91_SMC_NRDPULSE_(2) | AT91_SMC_NCS_RDPULSE_(7)); + at91_sys_write(AT91_SMC1_CYCLE(0), + AT91_SMC_NWECYCLE_(8) | AT91_SMC_NRDCYCLE_(8)); + at91_sys_write(AT91_SMC1_MODE(0), + AT91_SMC_DBW_16 | + AT91_SMC_PMEN | + AT91_SMC_PS_32); /* setup PB29 as output */ at91_set_gpio_output(PSRAM_CRE_PIN, 1); diff --git a/include/configs/pm9263.h b/include/configs/pm9263.h index 0db17b3..5729acd 100644 --- a/include/configs/pm9263.h +++ b/include/configs/pm9263.h @@ -68,8 +68,6 @@ #define CONFIG_SYS_PIOD_PPUDR_VAL 0x /* EBI0_CSA, CS1 SDRAM, CS3 NAND Flash, 3.3V memories */ #define CONFIG_SYS_MATRIX_EBI0CSA_VAL 0x0001010A -/* EBI1_CSA, 3.3v, no pull-ups */ -#define CONFIG_SYS_MATRIX_EBI1CSA_VAL 0x00010100 /* SDRAM */ /* SDRAMC_MR Mode register */ @@ -101,13 +99,7 @@ #define CONFIG_SYS_SMC0_SETUP0_VAL 0x0A0A0A0A /* SMC_SETUP */ #define CONFIG_SYS_SMC0_PULSE0_VAL 0x0B0B0B0B /* SMC_PULSE */ #define CONFIG_SYS_SMC0_CYCLE0_VAL 0x00160016 /* SMC_CYCLE */ -#define CONFIG_SYS_SMC0_CTRL0_VAL 0x00161003 /* SMC_MODE */ - -/* setup SMC1, CS0 (PSRAM) - 16-bit */ -#define CONFIG_SYS_SMC1_SETUP0_VAL 0x /* SMC_SETUP */ -#define CONFIG_SYS_SMC1_PULSE0_VAL 0x07020707 /* SMC_PULSE */ -#define CONFIG_SYS_SMC1_CYCLE0_VAL 0x00080008 /* SMC_CYCLE */ -#define CONFIG_SYS_SMC1_CTRL0_VAL 0x31001000 /* SMC_MODE */ +#define CONFIG_SYS_SMC0_MODE0_VAL 0x00161003 /* SMC_MODE */ #define CONFIG_SYS_RSTC_RMR_VAL0xA5000301 /* user reset enable */ -- 1.6.1.3 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [STATUS] v2009.06-rc1 is out
Dear Scott, In message 49fb6647.8060...@freescale.com you wrote: Wolfgang Denk wrote: Please use the next branch as base for any new work. Note: Please keep in mind that it will be rebased against master every now and then without warning. It is difficult to use as a base a branch that is itself being rebased. Yes, I am aware of this problem. Why not just merge unless there's something that absolutely cannot stay in the history? I can do that. But it might happen that I decide to rebase, and I wanted you to warn in advance that this might happen. Will you be pulling things into the next branch periodically (by request?), or is it just for things that aren't going into custodian next branches? When the next merge window opens, will next beecome master, or is it just an integration test as in linux-next? I will pull into next if anybody sends me a pull request (and I appreciate if that happens as it reduces the amount of pending patches). Before the merge window opens, I will merge next into master. If integration tests are needed, we use u-boot-testing for this purpose. 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: w...@denx.de Beware of programmers carrying screwdrivers. - Chip Salzenberg ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V2] arm: timer and interrupt init rework
Dear Jean-Christophe, Jean-Christophe PLAGNIOL-VILLARD wrote: actually the timer init use the interrupt_init as init callback which make the interrupt and timer implementation difficult to follow so now rename it as int timer_init(void) and use interrupt_init for interrupt btw also remane the corresponding file to the functionnality implemented as ixp arch implement two timer - one based on interrupt - so all the timer related code is moved to timer.c as some timer need interrupt and we need delay in the board init the new init sequence is now interrupt_init (if used) timer_init board_init Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com ... diff --git a/cpu/arm_cortexa8/omap3/Makefile b/cpu/arm_cortexa8/omap3/Makefile index b96b3dd..edf5cb2 100644 --- a/cpu/arm_cortexa8/omap3/Makefile +++ b/cpu/arm_cortexa8/omap3/Makefile @@ -26,7 +26,13 @@ include $(TOPDIR)/config.mk LIB = $(obj)lib$(SOC).a SOBJS:= lowlevel_init.o -COBJS:= sys_info.o board.o clock.o interrupts.o mem.o syslib.o + +COBJS+= board.o +COBJS+= clock.o +COBJS+= mem.o +COBJS+= syslib.o +COBJS+= sys_info.o +COBJS+= timer.o What do we win with this? Why is this related to a patch named timer and interrupt init rework? Maybe I'm wrong, but it's my feeling that you would reject something like this with e.g. NACK, don't mix different clean up in one patch. Please split into several patches? ;) diff --git a/cpu/arm_cortexa8/omap3/interrupts.c b/cpu/arm_cortexa8/omap3/timer.c similarity index 99% rename from cpu/arm_cortexa8/omap3/interrupts.c rename to cpu/arm_cortexa8/omap3/timer.c I have to look into the details, but if I remember correctly, this file contains interrupt _and_ timer code? So that each name isn't totally correct, why touching it? index 9f1189f..e99b149 100644 --- a/cpu/arm_cortexa8/omap3/interrupts.c +++ b/cpu/arm_cortexa8/omap3/timer.c @@ -178,7 +178,7 @@ static gptimer_t *timer_base = (gptimer_t *)CONFIG_SYS_TIMERBASE; #define TIMER_CLOCK (V_SCLK / (2 CONFIG_SYS_PTV)) #define TIMER_LOAD_VAL 0x -int interrupt_init(void) +int timer_init(void) { /* start the counter ticking up, reload value on overflow */ writel(TIMER_LOAD_VAL, timer_base-tldr); This is ok... diff --git a/lib_arm/board.c b/lib_arm/board.c index 5d05d9b..b678a63 100644 --- a/lib_arm/board.c +++ b/lib_arm/board.c @@ -265,8 +265,11 @@ init_fnc_t *init_sequence[] = { #if defined(CONFIG_ARCH_CPU_INIT) arch_cpu_init, /* basic arch cpu dependent setup */ #endif - board_init, /* basic board dependent setup */ +#if defined(CONFIG_USE_IRQ) interrupt_init, /* set up exceptions */ +#endif + timer_init, /* initialize timer */ + board_init, /* basic board dependent setup */ env_init, /* initialize environment */ init_baudrate, /* initialze baudrate settings */ serial_init,/* serial communications setup */ ... if you tested this on an OMAP3 board: I'm not sure, but it seems to me that the initialization order might change by this? Old order: board_init - interrupt_init (including timer_init) New order: timer_init - board_init Is this correct? If yes, we have to check that there are no issues with dependencies? On which OMAP3 board have you tested this? Best regards Dirk ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Ping on Coldfire patch status
Dear Richard, In message 49fb6965.2010...@ruggedcom.com you wrote: Hi TC and John, sorry if I'm being neurotic :) any chance the patches in the original thread be merged in on 2009.06 ? I don't mind if the i2c one is not pulled in. John isn't working for Freescale any more. John, do you think you will be able to continue working as custodian? If not, we would need new custodians for ColdFire and MPC512x. I could care about the MPC512x until someone volunteers. Any takers? Tsi Chung, would you volunteer for Coldfire? 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: w...@denx.de Everybody is talking about the weather but nobody does anything about it. - Mark Twain ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH V2] arm: timer and interrupt init rework
On 01:00 Sat 02 May , Dirk Behme wrote: Dear Jean-Christophe, Jean-Christophe PLAGNIOL-VILLARD wrote: actually the timer init use the interrupt_init as init callback which make the interrupt and timer implementation difficult to follow so now rename it as int timer_init(void) and use interrupt_init for interrupt btw also remane the corresponding file to the functionnality implemented as ixp arch implement two timer - one based on interrupt - so all the timer related code is moved to timer.c as some timer need interrupt and we need delay in the board init the new init sequence is now interrupt_init (if used) timer_init board_init Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD plagn...@jcrosoft.com ... diff --git a/cpu/arm_cortexa8/omap3/Makefile b/cpu/arm_cortexa8/omap3/Makefile index b96b3dd..edf5cb2 100644 --- a/cpu/arm_cortexa8/omap3/Makefile +++ b/cpu/arm_cortexa8/omap3/Makefile @@ -26,7 +26,13 @@ include $(TOPDIR)/config.mk LIB = $(obj)lib$(SOC).a SOBJS := lowlevel_init.o -COBJS := sys_info.o board.o clock.o interrupts.o mem.o syslib.o + +COBJS += board.o +COBJS += clock.o +COBJS += mem.o +COBJS += syslib.o +COBJS += sys_info.o +COBJS += timer.o What do we win with this? simple to allow vertical patch to be applied instead of have merge problem so yes it's needed diff --git a/lib_arm/board.c b/lib_arm/board.c index 5d05d9b..b678a63 100644 --- a/lib_arm/board.c +++ b/lib_arm/board.c @@ -265,8 +265,11 @@ init_fnc_t *init_sequence[] = { #if defined(CONFIG_ARCH_CPU_INIT) arch_cpu_init, /* basic arch cpu dependent setup */ #endif -board_init, /* basic board dependent setup */ +#if defined(CONFIG_USE_IRQ) interrupt_init, /* set up exceptions */ +#endif +timer_init, /* initialize timer */ +board_init, /* basic board dependent setup */ env_init, /* initialize environment */ init_baudrate, /* initialze baudrate settings */ serial_init,/* serial communications setup */ ... if you tested this on an OMAP3 board: I'm not sure, but it seems to me that the initialization order might change by this? maybe read the commit message will answer your question Best Regards, J. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] Cross-compiling U-Boot on Mac OS X -- can't find crc32.c?
I'm trying to cross-compile U-Boot on a Mac OS X system, which is BSD-like. I have a toolchain already created - I've been able to compile the Linux kernel with no problems. I figured U-Boot would be easier, but instead it's doing a lot of weird stuff. So when I run make, I get this: $ make ARCH=ppc for dir in tools examples api_examples ; do make -C $dir _depend ; done make[1]: Nothing to be done for `_depend'. make[1]: Circular hello_world.c - hello_world.c dependency dropped. make[1]: Circular sched.c - sched.c dependency dropped. make[1]: Circular stubs.c - stubs.c dependency dropped. make[1]: Circular ppc_longjmp.S - ppc_longjmp.S dependency dropped. make[1]: Circular ppc_setjmp.S - ppc_setjmp.S dependency dropped. make[1]: Nothing to be done for `_depend'. make[1]: Nothing to be done for `_depend'. make -C tools all cc -Wall -pedantic -idirafter /Volumes/Goliath/Users/timur/dev/u-boot.git/include -idirafter /Volumes/Goliath/Users/timur/dev/u-boot.git/include2 -idirafter /Volumes/Goliath/Users/timur/dev/u-boot.git/include -I /Volumes/Goliath/Users/timur/dev/u-boot.git/libfdt -I /Volumes/Goliath/Users/timur/dev/u-boot.git/tools -DTEXT_BASE=0xFE00 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -O -c -o crc32.o crc32.c powerpc-apple-darwin9-gcc-4.0.1: crc32.c: No such file or directory powerpc-apple-darwin9-gcc-4.0.1: no input files make[1]: *** [crc32.o] Error 1 make: *** [tools] Error 2 crc32.c is in lib_generic/, but the current directory is tools/, so I'm not surprised it doesn't compile. Has anyone tried this before? What am I missing? -- Timur Tabi Linux kernel developer at Freescale ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Cross-compiling U-Boot on Mac OS X -- can't find crc32.c?
On 18:30 Fri 01 May , Timur Tabi wrote: I'm trying to cross-compile U-Boot on a Mac OS X system, which is BSD-like. I have a toolchain already created - I've been able to compile the Linux kernel with no problems. I figured U-Boot would be easier, but instead it's doing a lot of weird stuff. So when I run make, I get this: $ make ARCH=ppc for dir in tools examples api_examples ; do make -C $dir _depend ; done make[1]: Nothing to be done for `_depend'. make[1]: Circular hello_world.c - hello_world.c dependency dropped. make[1]: Circular sched.c - sched.c dependency dropped. make[1]: Circular stubs.c - stubs.c dependency dropped. make[1]: Circular ppc_longjmp.S - ppc_longjmp.S dependency dropped. make[1]: Circular ppc_setjmp.S - ppc_setjmp.S dependency dropped. make[1]: Nothing to be done for `_depend'. make[1]: Nothing to be done for `_depend'. make -C tools all cc -Wall -pedantic -idirafter /Volumes/Goliath/Users/timur/dev/u-boot.git/include -idirafter /Volumes/Goliath/Users/timur/dev/u-boot.git/include2 -idirafter /Volumes/Goliath/Users/timur/dev/u-boot.git/include -I /Volumes/Goliath/Users/timur/dev/u-boot.git/libfdt -I /Volumes/Goliath/Users/timur/dev/u-boot.git/tools -DTEXT_BASE=0xFE00 -DUSE_HOSTCC -D__KERNEL_STRICT_NAMES -O -c -o crc32.o crc32.c powerpc-apple-darwin9-gcc-4.0.1: crc32.c: No such file or directory powerpc-apple-darwin9-gcc-4.0.1: no input files make[1]: *** [crc32.o] Error 1 make: *** [tools] Error 2 crc32.c is in lib_generic/, but the current directory is tools/, so IIRC this is fix on the Mainline I'm not surprised it doesn't compile. Has anyone tried this before? What am I missing? to compile on Mac OS you will have to move to the laster Mainline , fix the lib_ftd endian.h and byteswap.h does not exist on MAC OS X IIRC and fix the _depend Makefile target I've start to fix it but never find time to finish (some patch are already mainline) Best Regards, J. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH 4/6] fsl_esdhc: Add device tree fixups
On Apr 29, 2009, at 4:20 PM, Anton Vorontsov wrote: Hi Andy, Sorry for the late response, On Fri, Mar 06, 2009 at 07:25:55PM -0600, Andy Fleming wrote: @@ -346,3 +348,23 @@ int fsl_esdhc_mmc_init(bd_t *bis) Â { Â Â Â Â return esdhc_initialize(bis); Â } + +#ifdef CONFIG_MPC85xx +#define ESDHC_COMPATIBLE fsl,mpc8536-esdhc +#else +#define ESDHC_COMPATIBLE fsl,mpc8379-esdhc +#endif Isn't there a more global means of doing this? I don't like having the 8536/8379 in the driver, itself. But that's how we prefer bindings nowadays. Actually, there is. Move these to the config file. But there should be a compatible property that works for all esdhc devices. Starting from MPC83xx/MPC85xx GPIO controllers, we try to differentiate 85xx and 83xx parts. I.e. 85xx family doesn't specify 83xx family's compatible entries, even if the controllers are compatible. I'm just following the trend. I'm not strongly interested in arguing about what the compatible should be. Don't specify it here. Put it in the config file.___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] Winner.........£950 .000.00 Pounds
£950.000.00 GBP has been awarded to you by your E-mail ID in our Global Promo 2009,send your details to jerry.smit...@onlineprocessingdept.co.uk Name:. Address:.. Country:.. ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Ping on Coldfire patch status
Wolfgang, I would like to continue as 5121 maintainer and turn over coldfire maintainership to Tsi Chung. I don't think there are any pending 5121 patches. Also please use this address (jcri...@gmail.com) in the future since I no longer have access to my Freescale account. John On Fri, May 1, 2009 at 5:11 PM, Wolfgang Denk w...@denx.de wrote: Dear Richard, In message 49fb6965.2010...@ruggedcom.com you wrote: Hi TC and John, sorry if I'm being neurotic :) any chance the patches in the original thread be merged in on 2009.06 ? I don't mind if the i2c one is not pulled in. John isn't working for Freescale any more. John, do you think you will be able to continue working as custodian? If not, we would need new custodians for ColdFire and MPC512x. I could care about the MPC512x until someone volunteers. Any takers? Tsi Chung, would you volunteer for Coldfire? 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: w...@denx.de Everybody is talking about the weather but nobody does anything about it. - Mark Twain ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] Cross-compiling U-Boot on Mac OS X -- can't find crc32.c?
Dear Timur Tabi, In message ed82fe3e0905011630q3fbc2054h481eaba3ca095...@mail.gmail.com you wrote: I'm trying to cross-compile U-Boot on a Mac OS X system, which is BSD-like. I have a toolchain already created - I've been able to compile the Linux kernel with no problems. I figured U-Boot would be easier, but instead it's doing a lot of weird stuff. ... What am I missing? Is this make a GNU make? Which version? 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: w...@denx.de Virtue is a relative term. -- Spock, Friday's Child, stardate 3499.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot