[U-Boot] Confirmed Recipient

2009-10-19 Thread kishore choudhari
Hi all.

Please check this mail and try to avoid these kind of  fake mails.

Regards,
Kishore.


-- Forwarded message --
From: Online-notification care...@toshiba-india.com
Date: Mon, Oct 19, 2009 at 4:19 AM
Subject: [U-Boot] Confirmed Recipient
To: i...@msc.co.uk


Your email address has won a lump sum of £539,000.00. To claim your win,
contact Mr. Brian Smith on this Email: barr_smith2...@live.com


___
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


[U-Boot] Fwd: Re: OMAP3 EVM: Only ONENAND supported, no NAND any more?

2009-10-19 Thread Tuma

-- 
Software Developer
General Satellite Corp.
---BeginMessage---
I have not board with NAND, working with OneNAND only.
But I think NAND support have not been removed. Maybe omap3_evm_config 
configures U-Boot to be built without NAND support. But you can reconfigure 
it, so NAND support will be included.

On Friday 16 October 2009 19:54:53 you wrote:
 Tuma wrote:
  Sorry for my intrusion.
  But why NAND support was removed?

 It's a question, not a statement.

 Was NAND support removed?

 Best regards

 Dirk

  Maybe you need just reconfigure and build your U-Boot?
 
  On Friday 16 October 2009 19:29:11 Dirk Behme wrote:
  Hi,
 
  in a private mail someone mentioned that recent U-Boot for OMAP3 EVM
  has only support for ONENAND. And NAND support was removed? He still
  has an EVM with NAND.
 
  Any idea?
 
  Best regards
 
  Dirk
  ___
  U-Boot mailing list
  U-Boot@lists.denx.de
  http://lists.denx.de/mailman/listinfo/u-boot



-- 
Software Developer
General Satellite Corp.
---End Message---
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] trouble with u-boot and bist fail on pcie adapter

2009-10-19 Thread Ayman El-Khashab
I am using a recent version of u-boot (git from the past couple of 
weeks) and have an LSI SAS adapter on a canyonlands board.
What I see happening is that u-boot reads the bist bit, then does 
numerous bar accesses, then sets the bist fail and latency words.
Once the bist is set to fail, the lsi adapter doesn't respond to 
anything else and so Linux fails to see it when it boots.  I've tried 
turning
off pcie support in u-boot, in that case the bist did not get written 
but Linux kernel crashed during the init of the adapter.  The LSI
adapter does work fine in a ubuntu PC, so the hardware is likely good.  
This adapter is an LSISAS2008 gen 2 pcie board.  On the
PC it uses both IO and MEM spaces.

I am unsure what to try next -- Linux should not assume any state about 
the adapter -- on the other hand, if u-boot does cause the
board to go into an unrecoverable state, there isn't much the kernel can 
do about that.  any help / suggestions / experiments would be
much appreciated.

Thanks
Ayman
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] imx27lite stability problems.

2009-10-19 Thread javier Martin
2009/10/16 Wolfgang Denk w...@denx.de:
 Dear Javier Martin,

 In message eedb5540910160633o81b1ae3sf37b2a00a5474...@mail.gmail.com you 
 wrote:

 I could finally test this in an original LogicPD i.mx27 litekit board
 and found the same problems.
 System gets stuck when issuing a ping command.

 - I am using u-boot-arm repository commit
 617da90c1dcf65428ddfb63fef897439950bc915 without any modifications.

 Can you please use mainline, i. e. the master branch at
 git://git.denx.de/u-boot.git instead?

 Please, do you have an idea of what could I be missing?

 Well, there is a Possible iMX27 intermittent Ethernet connection
 issue rework issued by LPD on 7/8/2008; in essence the PHY's
 internal 1.8V core regulator may shut off at power up.

 To work around this, try and implement the following two hardware
 modifications:

 1) Populate R841 with a 4.7K resistor. (This forces the internal core
   regulator off for the LAN8700. R841 is located on top of the PCB
   just above the LAN8700 IC.

 2) Add a jumper wire from U125.5 to C561.1. This connects the on
   board 1.8V rail to the core ensuring that it is always powered.


Before trying hardware fixes you suggested I tried using another
toolchain which comes with LTIB for i.mx27ads:

* I used arm-linux-gnueabi- toolchain from LTIB with the command:

USE_PRIVATE_LIBGCC=yes make  CROSS_COMPILE=arm-none-linux-gnueabi-

And found some improvements, ping doesn't hang the system, although it
fails, but the second time it is executed I get an error:

= ping 192.168.0.40
FEC_MXC: Autonegotiation timeout
Using FEC_MXC device
ping failed; host 192.168.0.40 is not alive

= ping 192.168.0.40

Unhandled Exception:
exception mode: abort
fsr: 0x0008 far: 0x000c

**UNRECOVERABLE ERROR**
There was a memory access exception at 0x000c of type 'extern fetch1'
this may be due to an access to an invalid memory region,
unaligned access, or a problem with the current memory map.
Please check the memory layout section of your processor manual.
For information about the active memory map type 'info cpu'.

r00: a7e9c000 r01:  r02:  r03: 
r04: a7e816f8 r05: a7e81700 r06:  r07: a7f31600
r08: a7e6ffe0 r09:  r10:  r11: 
r12: a7f326f0 sp:  a7e6f270 lr:  0001a908  pc: a7f1774c
spsr:00d3 cpsr:00d7
bt: sp: a7e6f1a8 (stack: a00667e4 - a00697e4)
(fp:-a7e6f1d0, sp:a7e6f1a8)

What toolchain are you using for compiling this? It seems I got a
different behavior changing it.

-- 
Javier Martin
Vista Silicon S.L.
CDTUC - FASE C - Oficina S-345
Avda de los Castros s/n
39005- Santander. Cantabria. Spain
+34 942 25 32 60
www.vista-silicon.com
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] Please check if the patch for SMSC LAN9220 is missing

2009-10-19 Thread Seunghyeon Rhee (이승현)
There were two patches submitted to add support for SMSC LAN9220 and
LAN9221.
The latter (more recent one) has been applied but the former hasn't yet.
Refer to the
following and check please.

Regards,
Seunghyeon Rhee

Thu Apr 23 07:36:25 CEST 2009
 Daniel Mack wrote:
  Signed-off-by: Daniel Mack daniel at caiaq.de
  Cc: Sascha Hauer s.hauer at pengutronix.de
  ---
   drivers/net/smc911x.h |2 ++
   1 files changed, 2 insertions(+), 0 deletions(-)
 
  diff --git a/drivers/net/smc911x.h b/drivers/net/smc911x.h
  index 80d2ce0..2b01cf5 100644
  --- a/drivers/net/smc911x.h
  +++ b/drivers/net/smc911x.h
  @@ -382,6 +382,7 @@ static inline void smc911x_reg_write(u32 addr,
 u32 val)
   #define CHIP_92160x116a
   #define CHIP_92170x117a
   #define CHIP_92180x118a
  +#define CHIP_92200x9220
  
   struct chip_id {
   u16 id;
  @@ -398,6 +399,7 @@ static const struct chip_id chip_ids[] =  {
   { CHIP_9216, LAN9216 },
   { CHIP_9217, LAN9217 },
   { CHIP_9218, LAN9218 },
  +{ CHIP_9220, LAN9220 },
   { 0, NULL },
   };
  
   
 Applied to net/next branch.

 thanks,
 Ben

Fri Jul 10 08:21:31 CEST 2009
 Andreas Pretzsch wrote:
  Signed-off-by: Andreas Pretzsch apr at cn-eng.de
  ---
   drivers/net/smc911x.h |2 ++
   1 files changed, 2 insertions(+), 0 deletions(-)
 
  diff --git a/drivers/net/smc911x.h b/drivers/net/smc911x.h
  index 80d2ce0..c14003c 100644
  --- a/drivers/net/smc911x.h
  +++ b/drivers/net/smc911x.h
  @@ -382,6 +382,7 @@ static inline void smc911x_reg_write(u32 addr,
 u32 val)
   #define CHIP_92160x116a
   #define CHIP_92170x117a
   #define CHIP_92180x118a
  +#define CHIP_92210x9221
 
   struct chip_id {
   u16 id;
  @@ -398,6 +399,7 @@ static const struct chip_id chip_ids[] =  {
   { CHIP_9216, LAN9216 },
   { CHIP_9217, LAN9217 },
   { CHIP_9218, LAN9218 },
  +{ CHIP_9221, LAN9221 },
   { 0, NULL },
   };
 
  
 Applied to net repo.

 thanks,
 Ben
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH] mcc200: fix build error

2009-10-19 Thread Wolfgang Denk
Fix compile error:
include/configs/mcc200.h:401:6: error: #elif with no expression

Signed-off-by: Wolfgang Denk w...@denx.de
---
 include/configs/mcc200.h |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/include/configs/mcc200.h b/include/configs/mcc200.h
index e5812ee..7ef6385 100644
--- a/include/configs/mcc200.h
+++ b/include/configs/mcc200.h
@@ -398,7 +398,7 @@
 #define CONFIG_SYS_NS16550_COM1(CONFIG_SYS_CS2_START | 
(CONFIG_QUART_CONSOLE - 1)5)
 #elif (CONFIG_QUART_CONSOLE  4)  (CONFIG_QUART_CONSOLE  9)
 #define CONFIG_SYS_NS16550_COM1(CONFIG_SYS_CS1_START | 
(CONFIG_QUART_CONSOLE - 5)5)
-#elif
+#else
 #error Wrong QUART expander number.
 #endif
 
-- 
1.6.2.5

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] trouble with u-boot and bist fail on pcie adapter

2009-10-19 Thread Wolfgang Denk
Dear Ayman El-Khashab,

In message 4adc055c.6080...@elkhashab.com you wrote:
 I am using a recent version of u-boot (git from the past couple of 
 weeks) and have an LSI SAS adapter on a canyonlands board.
 What I see happening is that u-boot reads the bist bit, then does 
 numerous bar accesses, then sets the bist fail and latency words.
 Once the bist is set to fail, the lsi adapter doesn't respond to 
 anything else and so Linux fails to see it when it boots.  I've tried 
 turning
 off pcie support in u-boot, in that case the bist did not get written 
 but Linux kernel crashed during the init of the adapter.  The LSI
 adapter does work fine in a ubuntu PC, so the hardware is likely good.  
 This adapter is an LSISAS2008 gen 2 pcie board.  On the
 PC it uses both IO and MEM spaces.

Did you try setting the pciscandelay variable? Try setting it to 5
(or 10) [seconds]. See also

commit 6efc1fc0b63e55f94c5bc61d8dd23c918e3bc778
Author: Grzegorz Bernacki g...@semihalf.com
Date:   Fri Sep 7 18:35:37 2007 +0200

[PPC440SPe] PCIe environment settings for Katmai and Yucca

- 'pciconfighost' is set by default in order to be able to scan bridges
behind the primary host/PCIe

- 'pciscandelay' env variable is recognized to allow for user-controlled
delay before the PCIe bus enumeration; some peripheral devices require a
significant delay before they can be scanned (e.g. LSI8408E); without the
delay they are not detected

Signed-off-by: Grzegorz Bernacki g...@semihalf.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
The algorithm to do that is extremely nasty. You might want  to  mug
someone with it.   - M. Devine, Computer Science 340
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] mcc200: fix build error

2009-10-19 Thread Wolfgang Denk
In message 1255937317-30777-1-git-send-email...@denx.de you wrote:
 Fix compile error:
 include/configs/mcc200.h:401:6: error: #elif with no expression
 
 Signed-off-by: Wolfgang Denk w...@denx.de
 ---
  include/configs/mcc200.h |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)

Applied.

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
That was the thing about deserts. They had their  own  gravity.  They
sucked you into the centre.   - Terry Pratchett, _Small Gods_
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] ARM pull request

2009-10-19 Thread Wolfgang Denk
Dear Sandeep,

In message 0554bef07d437848af01b9c9b5f0bc5d93521...@dlee01.ent.ti.com you 
wrote:
 
 There were some issues with Overo Tobi ethernet support.

I am aware of these.

 There was a follow up patch that was actually inline in an e-mail rather than 
 formally being a patch.
 Thus I had to give it my own subject header.

Please do not do this. Always keep the original Subject: lines in
place.

If needed, then request a resend of the patch (or resent it yourself).

If you feel this is persnickety then please bear with me, but so far
my patch tracking is based on the messages posted to the mailing
list, and to make this work the Subject of the messages must match
the title line of the commit messages.

 basically as you can see even I got confused as there was no formal patch.
 The patch was kind of inline and once Ben was OK as can be seen above,
 I applied it. I gave it my own header because I had to give something.


 I hope this clears and lingering issues

Yes, it does. Thanks for the explanation. But next time let's please
rather insist on a repost of a separate, easier to track patch.

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 can call spirits from the vasty deep.
Why so can I, or so can any man; but will they come when you do call
for them?  - Shakespeare, 1 King Henry IV, Act III, Scene I.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] davinci_dm355evm_config -make error

2009-10-19 Thread ExpatEgghead
Thanks!

I didn't edit anything when I cloned this but after changing it it
built, flashed and ran just fine.

2009/10/18 Paulraj, Sandeep s-paul...@ti.com:



 Hi all

 The u-boot ti git source code (u-boot-ti)  does not seem to build for
 the dm355evm.
 I am using an image from that source on my EVM. Nevertheless I tried to build 
 again and it worked.

 I'm getting  a lowlevel_init.S:619:2: error: #error
 Unknown DDR configuration!!!
 after :
 make davinci_dm355evm_config
 make

 This filed gets used only when you want low level init to happen.
 In the default config we have CONFIG_SKIP_LOWLEVEL_INIT. If we do not have 
 this then the lowlevel_init.S gets compiled. Looks like you have removed this 
 flag.

 The error is because it expects a flag(DDR_4BANKS or DDR_8BANKS) to be set if 
 we want to use this file.




 Before I correct this am I missing something?

 --
 --Adrian Edmonds
 ___
 U-Boot mailing list
 U-Boot@lists.denx.de
 http://lists.denx.de/mailman/listinfo/u-boot





-- 
--Adrian Edmonds
Ramat Yishay
Home +972-(0)4-9930379
Mobile +972-54-680-0580
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] ARM pull request v3

2009-10-19 Thread Wolfgang Denk
Dear Ben Warren,

In message f8328f7c0910181853t3f8c305ai62841e6d7b487...@mail.gmail.com you 
wrote:

 I'm still OK with it, but let's try to clean up our workflow next release...
  I know you guys had quite a mess to clean up with ARM, so to some extent
 this chaos is understandable.

Thanks for pointing this out.

I also want to stress that I in no way intend to criticize anybody. I
am well aware what amount of work you have been doing, and  that  all
of  this  is  completely new to many of you. I just want to point out
the few rough edges we should try to iron out or even better to avoid
next time.  Big thanks to everybody.

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
Engineering without management is art.   - Jeff Johnson
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 4/5] add TI da8xx support: new ethenet driver for da830 EMAC

2009-10-19 Thread Nick Thompson
Ben Warren wrote:
 Hi Tom,
 
 On Sun, Oct 18, 2009 at 10:26 AM, Tom tom@windriver.com
 mailto:tom@windriver.com wrote:
 
 Thompson, Nick (GE EntSol, Intelligent Platforms) wrote:
 
 Add a driver for the DA830 EMAC.
 
 This is very similar to the davinci_emac driver. It has been
 restructured
 to make it as similar as possible. Potentially the two could be
 merged,
 but I don't have access to other davinci type platforms to test for
 breakage after the inevitable mangling required.
 
 Signed-off-by: Nick Thompson nick.thomp...@gefanuc.com
 mailto:nick.thomp...@gefanuc.com
 
 
 Ben,
 Can I pass this review off to you ?
 Tom
 
 
  
 Yeah, I'll review the next spin.  Since it won't require a new driver,
 it may make more sense to keep the patch parts together.  Either way,
 I'll ACK/NAK it.
 
 regards,
 Ben 

Tom, Thank you for the very through review, I will go away and address the 
issues you raise and get some checking tools in place. Also I've figured out 
how to get Thunderbird on linux talking to my exchange server - I will test 
it's mangling abilities before my next patch.

Ben, You are right of course, I picked up the driver from an old TI u-boot and 
updated it for CONFIG_NET_MULTI, but shyed away from making functional changes 
as it seems to work just fine. I will switch to the davinci driver and pull in 
changes only as required - with inline statics where I can.

If I understood correctly, assuming the switch to davinci ethernet, you would 
prefer a single patch e-mail rather than 5? It will still be rather bigger than 
the 40kB suggested in the linux SubmittingPatches doc.

Thanks,
Nick.

This next line is just a test please ignore:
+static unsigned char   emac_rx_buffers[EMAC_MAX_RX_BUFFERS * 
(EMAC_MAX_ETHERNET_PKT_SIZE + EMAC_PKT_ALIGN)];
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] envcrc: check return value of fwrite()

2009-10-19 Thread Wolfgang Denk
Dear Mike Frysinger,

In message 1255912994-4500-1-git-send-email-vap...@gentoo.org you wrote:
 
 Newer toolchains will often complain about unchecked fwrite():
   envcrc.c:117: warning: ignoring return value of `fwrite´, declared
   with attribute warn_unused_result
 
 So check the return value to silence the warnings.
 
 Signed-off-by: Mike Frysinger vap...@gentoo.org
 ---
  tools/envcrc.c |4 +++-
  1 files changed, 3 insertions(+), 1 deletions(-)

Applied, thanks.

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 witty saying proves nothing.   - Voltaire
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] Platform Flash XL

2009-10-19 Thread moschos.kogimtzis
Can U-boot support platform Flash XL memories?

When we tried it, u-boot crashed just before reading the size of the
memory.

Platform Flash XL by default supports synchronous reads. The memory
controller that drives it however supports asynchronous read (there is
no clock output).

So the platform flash XL need to be explicitly set to asynchronous
reads.

Can U-boot cope with that (perhaps by changing some parameters in a
header file?)

Best Regards

Mos Kogimtzis

-- 
Scanned by iCritical.

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/2 v4] env: only build env_embedded and envcrc when needed

2009-10-19 Thread Wolfgang Denk
Dear Mike Frysinger,

In message 200910182055.01744.vap...@gentoo.org you wrote:

  This patch seems to break a *lot* of boards:
 
 i'm attaching two patches here.  since we're past the merge window but before 
 rc1, i dont know how invasive you want to get.
 
 the first one restores env_embedded.o building for certain config options 
 (even though it'll only produce a 0 byte file).  if you want to be cautious 
 for this release, then i guess we can merge just this patch.
 
 the second one attempts to clean up env_embedded.o in all linker scripts 
 where 
 the board would only end up with a 0 byte file.  obviously i cant test any of 
 these since i dont have the hardware, but the logic seems straight forward.  
 if you want to stay cautious, this would go into the next branch for start of 
 next merge window.
 
 or just merge the 2nd patch only and assume that people who dont test the 
 rc1+ 
 are dead boards anyways.  i got some build errors even after these fixes, but 
 they seem unrelated to my env_embedded changes as they have to do with 
 sections filling up  overflowing with my gcc-4.1.1 compiler.

I would tend to apply your second patch - but looking at it I will
not do it, as it seems to break boards just harder, i. e. they may
build, but will fail to work.

For example:

...
 diff --git a/board/tqc/tqm8xx/u-boot.lds b/board/tqc/tqm8xx/u-boot.lds
 index 2df8d84..8207b2c 100644
 --- a/board/tqc/tqm8xx/u-boot.lds
 +++ b/board/tqc/tqm8xx/u-boot.lds
 @@ -21,6 +21,8 @@
   * MA 02111-1307 USA
   */
  
 +#include config.h
 +
  OUTPUT_ARCH(powerpc)
  /* Do we need any of these for elf?
 __DYNAMIC = 0;*/
 @@ -64,8 +66,10 @@ SECTIONS
  lib_generic/zlib.o   (.text)
  lib_ppc/cache.o  (.text)
  
 +#ifdef CONFIG_ENV_IS_EMBEDDED
  . = DEFINED(env_offset) ? env_offset : .;
  common/env_embedded.o(.ppcenv)
 +#endif

All TQM8xx boards use a hand-optimized linker script that places  the
envrionment  (both  the  primary  and  the redundant copies) into the
small boot sectors of the bottom boot block type NOR  flash  used  on
these  boards  (and the same is true for other boards as well; I know
this for sure at least for  IVM*,  km8xx,  purple,  spc1920,  stxxtc,
trab).

However, none of these #defines CONFIG_ENV_IS_EMBEDDED in their board
config files.


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
Intel's new motto: United we stand. Divided we fall!
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH] avr32 portmux : fix incorrect port mask

2009-10-19 Thread Mark Jackson
The portmux peripheral pin selection code used when setting up
the MACB1 ethernet port has a small (but critical !!) typo.

Signed-off-by: Mark Jackson m...@mimc.co.uk
---
 cpu/at32ap/at32ap700x/portmux.c |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/cpu/at32ap/at32ap700x/portmux.c b/cpu/at32ap/at32ap700x/portmux.c
index b1f2c6f..a60288f 100644
--- a/cpu/at32ap/at32ap700x/portmux.c
+++ b/cpu/at32ap/at32ap700x/portmux.c
@@ -122,7 +122,7 @@ void portmux_enable_macb1(unsigned long flags, unsigned 
long drive_strength)
portd_mask |= (1  15);/* SPD  */
 
/* REVISIT: Some pins are probably pure outputs */
-   portmux_select_peripheral(PORTMUX_PORT_D, portc_mask,
+   portmux_select_peripheral(PORTMUX_PORT_D, portd_mask,
PORTMUX_FUNC_B, PORTMUX_BUSKEEPER);
portmux_select_peripheral(PORTMUX_PORT_C, portc_mask,
PORTMUX_FUNC_B, PORTMUX_BUSKEEPER);
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] avr32 portmux : fix incorrect port mask

2009-10-19 Thread Mark Jackson
Hans-Christian Egtvedt wrote:
 On Mon, 19 Oct 2009 10:49:00 +0100
 Mark Jackson mpfj-l...@mimc.co.uk wrote:
 
 The portmux peripheral pin selection code used when setting up
 the MACB1 ethernet port has a small (but critical !!) typo.

 
 It does? Where is this fixed in the patch?

Not sure what you mean ...

 
 Signed-off-by: Mark Jackson m...@mimc.co.uk
 ---
  cpu/at32ap/at32ap700x/portmux.c |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)

 diff --git a/cpu/at32ap/at32ap700x/portmux.c 
 b/cpu/at32ap/at32ap700x/portmux.c
 index b1f2c6f..a60288f 100644
 --- a/cpu/at32ap/at32ap700x/portmux.c
 +++ b/cpu/at32ap/at32ap700x/portmux.c
 @@ -122,7 +122,7 @@ void portmux_enable_macb1(unsigned long flags, unsigned 
 long drive_strength)
  portd_mask |= (1  15);/* SPD  */
  
  /* REVISIT: Some pins are probably pure outputs */
 -portmux_select_peripheral(PORTMUX_PORT_D, portc_mask,
 +portmux_select_peripheral(PORTMUX_PORT_D, portd_mask,
 
 This replaces portc_mask with portd_mask, which looks indeed correcter.

... and this looks like a simple typo to me !?!

Mark
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] avr32 portmux : fix incorrect port mask

2009-10-19 Thread Hans-Christian Egtvedt
On Mon, 19 Oct 2009 10:49:00 +0100
Mark Jackson mpfj-l...@mimc.co.uk wrote:

 The portmux peripheral pin selection code used when setting up
 the MACB1 ethernet port has a small (but critical !!) typo.


It does? Where is this fixed in the patch?

 Signed-off-by: Mark Jackson m...@mimc.co.uk
 ---
  cpu/at32ap/at32ap700x/portmux.c |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/cpu/at32ap/at32ap700x/portmux.c b/cpu/at32ap/at32ap700x/portmux.c
 index b1f2c6f..a60288f 100644
 --- a/cpu/at32ap/at32ap700x/portmux.c
 +++ b/cpu/at32ap/at32ap700x/portmux.c
 @@ -122,7 +122,7 @@ void portmux_enable_macb1(unsigned long flags, unsigned 
 long drive_strength)
   portd_mask |= (1  15);/* SPD  */
  
   /* REVISIT: Some pins are probably pure outputs */
 - portmux_select_peripheral(PORTMUX_PORT_D, portc_mask,
 + portmux_select_peripheral(PORTMUX_PORT_D, portd_mask,

This replaces portc_mask with portd_mask, which looks indeed correcter.

snipp

-- 
Best regards,
Hans-Christian Egtvedt
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] avr32 portmux : fix incorrect port mask

2009-10-19 Thread Hans-Christian Egtvedt
On Mon, 19 Oct 2009 11:35:40 +0100
Mark Jackson mpfj-l...@mimc.co.uk wrote:

 Hans-Christian Egtvedt wrote:
  On Mon, 19 Oct 2009 10:49:00 +0100
  Mark Jackson mpfj-l...@mimc.co.uk wrote:
  
  The portmux peripheral pin selection code used when setting up
  the MACB1 ethernet port has a small (but critical !!) typo.
 
  
  It does? Where is this fixed in the patch?
 
 Not sure what you mean ...
 

Aha, rereading I get it, I thought you were fixing an actual !! typo
somewhere in the code.

snipp

-- 
Best regards,
Hans-Christian Egtvedt
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] avr32 portmux : fix incorrect port mask

2009-10-19 Thread Mark Jackson
Hans-Christian Egtvedt wrote:
 On Mon, 19 Oct 2009 11:35:40 +0100
 Mark Jackson mpfj-l...@mimc.co.uk wrote:
 
 Hans-Christian Egtvedt wrote:
 On Mon, 19 Oct 2009 10:49:00 +0100
 Mark Jackson mpfj-l...@mimc.co.uk wrote:

 The portmux peripheral pin selection code used when setting up
 the MACB1 ethernet port has a small (but critical !!) typo.

 It does? Where is this fixed in the patch?
 Not sure what you mean ...

 
 Aha, rereading I get it, I thought you were fixing an actual !! typo
 somewhere in the code.

Ho, ho ... I guess my comment is a bit misleading :-)

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH 2/3] video: mb862xx: add option VIDEO_FB_16BPP_WORD_SWAP for IPEK01

2009-10-19 Thread Wolfgang Grandegger
In 16 bpp mode, the new IPEK01 board only requires swapping of D16 words
for D32 accesses due to the diffferent connecting to the GDC bus. This
patch introduces the configuration option VIDEO_FB_16BPP_WORD_SWAP,
which should be set for all board using the mb862xx in 16 bpp mode. For
the IPEK01, VIDEO_FB_16BPP_PIXEL_SWAP should not be set.

Signed-off-by: Wolfgang Grandegger w...@grandegger.com
---
 drivers/video/cfb_console.c |2 +-
 include/configs/lwmon5.h|1 +
 include/configs/socrates.h  |1 +
 3 files changed, 3 insertions(+), 1 deletion(-)

Index: u-boot-mainline/drivers/video/cfb_console.c
===
--- u-boot-mainline.orig/drivers/video/cfb_console.c2009-10-19 
13:17:17.466553428 +0200
+++ u-boot-mainline/drivers/video/cfb_console.c 2009-10-19 13:17:17.495553669 
+0200
@@ -321,7 +321,7 @@
 #else
 #define SWAP16(x)   (x)
 #define SWAP32(x)   (x)
-#if defined(VIDEO_FB_16BPP_PIXEL_SWAP)
+#if defined(VIDEO_FB_16BPP_WORD_SWAP)
 #define SHORTSWAP32(x)  ( ((x)  16) | ((x)  16) )
 #else
 #define SHORTSWAP32(x)  (x)
Index: u-boot-mainline/include/configs/lwmon5.h
===
--- u-boot-mainline.orig/include/configs/lwmon5.h   2009-10-19 
13:17:17.471552467 +0200
+++ u-boot-mainline/include/configs/lwmon5.h2009-10-19 13:17:17.496553812 
+0200
@@ -349,6 +349,7 @@
 #define CONFIG_VIDEO_LOGO
 #define CONFIG_CONSOLE_EXTRA_INFO
 #define VIDEO_FB_16BPP_PIXEL_SWAP
+#define VIDEO_FB_16BPP_WORD_SWAP
 
 #define CONFIG_VGA_AS_SINGLE_DEVICE
 #define CONFIG_VIDEO_SW_CURSOR
Index: u-boot-mainline/include/configs/socrates.h
===
--- u-boot-mainline.orig/include/configs/socrates.h 2009-10-19 
13:17:17.474552618 +0200
+++ u-boot-mainline/include/configs/socrates.h  2009-10-19 13:17:17.497553676 
+0200
@@ -204,6 +204,7 @@
 #define CONFIG_VIDEO_BMP_LOGO
 #define CONFIG_CONSOLE_EXTRA_INFO
 #define VIDEO_FB_16BPP_PIXEL_SWAP
+#define VIDEO_FB_16BPP_WORD_SWAP
 #define CONFIG_VGA_AS_SINGLE_DEVICE
 #define CONFIG_SYS_CONSOLE_IS_IN_ENV
 #define CONFIG_VIDEO_SW_CURSOR

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH 1/3] video: mb862xx: add option CONFIG_VIDEO_MB862xx_ACCEL for X888RGB mode

2009-10-19 Thread Wolfgang Grandegger
The new IPEK01 board uses the X888RGB mode for the Lime graphics
controller. For this mode video accelaration does not work. This patch
makes the accelaration configurable via CONFIG_VIDEO_MB862xx_ACCEL,
which is enabled for the lwmon5 and the socrates board for backward
compatibility.

Signed-off-by: Anatolij Gustschin ag...@denx.de
Signed-off-by: Wolfgang Grandegger w...@grandegger.com
---
 drivers/video/cfb_console.c |2 ++
 drivers/video/mb862xx.c |   16 +++-
 include/configs/lwmon5.h|1 +
 include/configs/socrates.h  |1 +
 4 files changed, 19 insertions(+), 1 deletion(-)

Index: u-boot-mainline/drivers/video/cfb_console.c
===
--- u-boot-mainline.orig/drivers/video/cfb_console.c2009-10-19 
13:17:14.582303087 +0200
+++ u-boot-mainline/drivers/video/cfb_console.c 2009-10-19 13:17:29.406303158 
+0200
@@ -146,9 +146,11 @@
 #ifdef CONFIG_VIDEO_CORALP
 #define VIDEO_FB_LITTLE_ENDIAN
 #endif
+#ifdef CONFIG_VIDEO_MB862xx_ACCEL
 #define VIDEO_HW_RECTFILL
 #define VIDEO_HW_BITBLT
 #endif
+#endif
 
 /*/
 /* Include video_fb.h after definitions of VIDEO_HW_RECTFILL etc*/
Index: u-boot-mainline/drivers/video/mb862xx.c
===
--- u-boot-mainline.orig/drivers/video/mb862xx.c2009-10-19 
13:17:14.582303087 +0200
+++ u-boot-mainline/drivers/video/mb862xx.c 2009-10-19 13:17:17.467553012 
+0200
@@ -89,6 +89,7 @@
   (GC_DISP_BASE | GC_L0PAL0) + \
   ((idx)  2)), (val))
 
+#if defined(CONFIG_VIDEO_MB862xx_ACCEL)
 static void gdc_sw_reset (void)
 {
GraphicDevice *dev = mb862xx;
@@ -129,6 +130,7 @@
break;
}
 }
+#endif
 
 #if !defined(CONFIG_VIDEO_CORALP)
 static void board_disp_init (void)
@@ -144,11 +146,13 @@
 #endif
 
 /*
- * Init drawing engine
+ * Init drawing engine if accel enabled.
+ * Also clears visible framebuffer.
  */
 static void de_init (void)
 {
GraphicDevice *dev = mb862xx;
+#if defined(CONFIG_VIDEO_MB862xx_ACCEL)
int cf = (dev-gdfBytesPP == 1) ? 0x : 0x8000;
 
dev-dprBase = dev-frameAdrs + GC_DRAW_BASE;
@@ -174,6 +178,14 @@
DE_WR_FIFO (dev-winSizeY  16 | dev-winSizeX);
/* sync with SW access to framebuffer */
de_wait ();
+#else
+   unsigned int i, *p;
+
+   i = dev-winSizeX * dev-winSizeY;
+   p = (unsigned int *)dev-frameAdrs;
+   while (i--)
+   *p++ = 0;
+#endif
 }
 
 #if defined(CONFIG_VIDEO_CORALP)
@@ -389,6 +401,7 @@
L0PAL_WR_REG (index, (r  16) | (g  8) | (b));
 }
 
+#if defined(CONFIG_VIDEO_MB862xx_ACCEL)
 /*
  * Drawing engine Fill and BitBlt screen region
  */
@@ -430,3 +443,4 @@
DE_WR_FIFO ((height  16) | width);
de_wait (); /* sync */
 }
+#endif
Index: u-boot-mainline/include/configs/lwmon5.h
===
--- u-boot-mainline.orig/include/configs/lwmon5.h   2009-10-19 
13:17:14.582303087 +0200
+++ u-boot-mainline/include/configs/lwmon5.h2009-10-19 13:17:29.406303158 
+0200
@@ -344,6 +344,7 @@
 /* Video console */
 #define CONFIG_VIDEO
 #define CONFIG_VIDEO_MB862xx
+#define CONFIG_VIDEO_MB862xx_ACCEL
 #define CONFIG_CFB_CONSOLE
 #define CONFIG_VIDEO_LOGO
 #define CONFIG_CONSOLE_EXTRA_INFO
Index: u-boot-mainline/include/configs/socrates.h
===
--- u-boot-mainline.orig/include/configs/socrates.h 2009-10-19 
13:17:14.583302392 +0200
+++ u-boot-mainline/include/configs/socrates.h  2009-10-19 13:17:29.406303158 
+0200
@@ -198,6 +198,7 @@
 
 #define CONFIG_VIDEO
 #define CONFIG_VIDEO_MB862xx
+#define CONFIG_VIDEO_MB862xx_ACCEL
 #define CONFIG_CFB_CONSOLE
 #define CONFIG_VIDEO_LOGO
 #define CONFIG_VIDEO_BMP_LOGO

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH 0/3] mpc52xx: IPEK01 board support

2009-10-19 Thread Wolfgang Grandegger
Hello,

this patch add support for the IPEK01 MPC5200 based board.
It requires two patchs for the Fujitsu MB862xx driver:

[PATCH 1/3] video: mb862xx: add option CONFIG_VIDEO_MB862xx_ACCEL for X888RGB 
mode
[PATCH 2/3] video: mb862xx: add option VIDEO_FB_16BPP_WORD_SWAP for IPEK01
[PATCH 3/3] mpc52xx: add support for the IPEK01 board

Wolfgang.


___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH 3/3] mpc52xx: add support for the IPEK01 board

2009-10-19 Thread Wolfgang Grandegger
This patch adds support for the board IPEK01 based on the MPC5200.
The Futjitsu Lime graphics controller is configured in 16 bpp mode.

Signed-off-by: Wolfgang Grandegger w...@grandegger.com
---
 Makefile|3 
 board/ipek01/Makefile   |   50 
 board/ipek01/config.mk  |   30 ++
 board/ipek01/ipek01.c   |  374 
 board/ipek01/mt46v16m16-75.h|   37 +++
 board/ipek01/mt48lc16m16a2-75.h |   43 
 board/ipek01/u-boot.lds |  125 
 include/configs/ipek01.h|  411 
 8 files changed, 1073 insertions(+)
 create mode 100644 board/ipek01/Makefile
 create mode 100644 board/ipek01/config.mk
 create mode 100644 board/ipek01/ipek01.c
 create mode 100644 board/ipek01/mt46v16m16-75.h
 create mode 100644 board/ipek01/mt48lc16m16a2-75.h
 create mode 100644 board/ipek01/u-boot.lds
 create mode 100644 include/configs/ipek01.h

Index: u-boot-mainline/Makefile
===
--- u-boot-mainline.orig/Makefile   2009-10-19 13:17:12.185302922 +0200
+++ u-boot-mainline/Makefile2009-10-19 13:17:17.519552635 +0200
@@ -725,6 +725,9 @@
}
@$(MKCONFIG) -a PM520 ppc mpc5xxx pm520
 
+ipek01_config: unconfig
+   @$(MKCONFIG) -a ipek01 ppc mpc5xxx ipek01
+
 smmaco4_config: unconfig
@$(MKCONFIG) -a smmaco4 ppc mpc5xxx tqm5200 tqc
 
Index: u-boot-mainline/board/ipek01/Makefile
===
--- /dev/null   1970-01-01 00:00:00.0 +
+++ u-boot-mainline/board/ipek01/Makefile   2009-10-19 13:17:17.521552642 
+0200
@@ -0,0 +1,50 @@
+#
+# (C) Copyright 2003-2006
+# Wolfgang Denk, DENX Software Engineering, w...@denx.de.
+#
+# See file CREDITS for list of people who contributed to this
+# project.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of
+# the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+# MA 02111-1307 USA
+#
+
+include $(TOPDIR)/config.mk
+
+LIB= $(obj)lib$(BOARD).a
+
+COBJS  := $(BOARD).o
+
+SRCS   := $(SOBJS:.o=.S) $(COBJS:.o=.c)
+OBJS   := $(addprefix $(obj),$(COBJS))
+SOBJS  := $(addprefix $(obj),$(SOBJS))
+
+$(LIB):$(obj).depend $(OBJS)
+   $(AR) $(ARFLAGS) $@ $(OBJS)
+
+clean:
+   rm -f $(SOBJS) $(OBJS)
+
+distclean: clean
+   rm -f $(LIB) core *.bak .depend
+
+#
+
+# defines $(obj).depend target
+include $(SRCTREE)/rules.mk
+
+sinclude $(obj).depend
+
+#
Index: u-boot-mainline/board/ipek01/config.mk
===
--- /dev/null   1970-01-01 00:00:00.0 +
+++ u-boot-mainline/board/ipek01/config.mk  2009-10-19 13:17:17.523553767 
+0200
@@ -0,0 +1,30 @@
+#
+# (C) Copyright 2003-2004
+# Wolfgang Denk, DENX Software Engineering, w...@denx.de.
+#
+# See file CREDITS for list of people who contributed to this
+# project.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of
+# the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+# MA 02111-1307 USA
+#
+
+#
+# IPEK01 board
+#
+
+TEXT_BASE = 0xfc00
+
+PLATFORM_CPPFLAGS += -DTEXT_BASE=$(TEXT_BASE) -I$(TOPDIR)/board
Index: u-boot-mainline/board/ipek01/ipek01.c
===
--- /dev/null   1970-01-01 00:00:00.0 +
+++ u-boot-mainline/board/ipek01/ipek01.c   2009-10-19 13:17:17.527552105 
+0200
@@ -0,0 +1,374 @@
+/*
+ * (C) Copyright 2003-2004
+ * Wolfgang Denk, DENX Software Engineering, w...@denx.de.
+ *
+ * (C) Copyright 2004
+ * Mark Jonas, Freescale Semiconductor, mark.jo...@motorola.com.
+ *
+ * (C) 

Re: [U-Boot] [PATCH 1/3] video: mb862xx: add option CONFIG_VIDEO_MB862xx_ACCEL for X888RGB mode

2009-10-19 Thread Wolfgang Denk
Dear Wolfgang Grandegger,

In message 20091019111913.427445...@denx.de you wrote:
 The new IPEK01 board uses the X888RGB mode for the Lime graphics
 controller. For this mode video accelaration does not work. This patch
 makes the accelaration configurable via CONFIG_VIDEO_MB862xx_ACCEL,
 which is enabled for the lwmon5 and the socrates board for backward
 compatibility.

Why would you want to disable it for IPEK01? Accelaration seems to be
a good thing you don't give up if you don't have to, but I
cannot think of reasons why you would have to do without it?


 Index: u-boot-mainline/drivers/video/cfb_console.c
 ===
 --- u-boot-mainline.orig/drivers/video/cfb_console.c  2009-10-19 
 13:17:14.582303087 +0200
 +++ u-boot-mainline/drivers/video/cfb_console.c   2009-10-19 
 13:17:29.406303158 +0200

Please use git-format-patch to create patches.

 --- u-boot-mainline.orig/drivers/video/mb862xx.c  2009-10-19 
 13:17:14.582303087 +0200
 +++ u-boot-mainline/drivers/video/mb862xx.c   2009-10-19 13:17:17.467553012 
 +0200
...
 @@ -174,6 +178,14 @@
   DE_WR_FIFO (dev-winSizeY  16 | dev-winSizeX);
   /* sync with SW access to framebuffer */
   de_wait ();
 +#else
 + unsigned int i, *p;
 +
 + i = dev-winSizeX * dev-winSizeY;
 + p = (unsigned int *)dev-frameAdrs;
 + while (i--)
 + *p++ = 0;
 +#endif

Why don't you use memset() here?


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
Use the Force, Luke.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 2/3] video: mb862xx: add option VIDEO_FB_16BPP_WORD_SWAP for IPEK01

2009-10-19 Thread Wolfgang Denk
Dear Wolfgang Grandegger,

In message 20091019111913.621578...@denx.de you wrote:
 In 16 bpp mode, the new IPEK01 board only requires swapping of D16 words
 for D32 accesses due to the diffferent connecting to the GDC bus. This
 patch introduces the configuration option VIDEO_FB_16BPP_WORD_SWAP,
 which should be set for all board using the mb862xx in 16 bpp mode. For
 the IPEK01, VIDEO_FB_16BPP_PIXEL_SWAP should not be set.

I don't see any functional change in this patch - all you do is
renaming VIDEO_FB_16BPP_PIXEL_SWAP into VIDEO_FB_16BPP_WORD_SWAP.

This makes no sense to me.

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 universe, they said, depended for its operation on the balance of
four forces which they identified as charm,  persuasion,  uncertainty
and bloody-mindedness.  -- Terry Pratchett, The Light Fantastic
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/3] video: mb862xx: add option CONFIG_VIDEO_MB862xx_ACCEL for X888RGB mode

2009-10-19 Thread Wolfgang Grandegger
Wolfgang Denk wrote:
 Dear Wolfgang Grandegger,
 
 In message 20091019111913.427445...@denx.de you wrote:
 The new IPEK01 board uses the X888RGB mode for the Lime graphics
 controller. For this mode video accelaration does not work. This patch
 makes the accelaration configurable via CONFIG_VIDEO_MB862xx_ACCEL,
 which is enabled for the lwmon5 and the socrates board for backward
 compatibility.
 
 Why would you want to disable it for IPEK01? Accelaration seems to be
 a good thing you don't give up if you don't have to, but I
 cannot think of reasons why you would have to do without it?

Because acceleration does work with 16 bpp but *not* with 32 bpp. That's
the reason why we made it configurable. Well, this patch could be
dropped, because the BSP for the IPEK01 posted here uses now 16 bpp as well.

 Index: u-boot-mainline/drivers/video/cfb_console.c
 ===
 --- u-boot-mainline.orig/drivers/video/cfb_console.c 2009-10-19 
 13:17:14.582303087 +0200
 +++ u-boot-mainline/drivers/video/cfb_console.c  2009-10-19 
 13:17:29.406303158 +0200
 
 Please use git-format-patch to create patches.

Why? Do you have any problems to apply these patches? I personally
(still) prefer using quilt for patch stack management.

 --- u-boot-mainline.orig/drivers/video/mb862xx.c 2009-10-19 
 13:17:14.582303087 +0200
 +++ u-boot-mainline/drivers/video/mb862xx.c  2009-10-19 13:17:17.467553012 
 +0200
 ...
 @@ -174,6 +178,14 @@
  DE_WR_FIFO (dev-winSizeY  16 | dev-winSizeX);
  /* sync with SW access to framebuffer */
  de_wait ();
 +#else
 +unsigned int i, *p;
 +
 +i = dev-winSizeX * dev-winSizeY;
 +p = (unsigned int *)dev-frameAdrs;
 +while (i--)
 +*p++ = 0;
 +#endif
 
 Why don't you use memset() here?

Maybe to ensure that D32 accesses are performed. Anatolij might know?

Wolfgang.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 2/3] video: mb862xx: add option VIDEO_FB_16BPP_WORD_SWAP for IPEK01

2009-10-19 Thread Wolfgang Grandegger
Wolfgang Denk wrote:
 Dear Wolfgang Grandegger,
 
 In message 20091019111913.621578...@denx.de you wrote:
 In 16 bpp mode, the new IPEK01 board only requires swapping of D16 words
 for D32 accesses due to the diffferent connecting to the GDC bus. This
 patch introduces the configuration option VIDEO_FB_16BPP_WORD_SWAP,
 which should be set for all board using the mb862xx in 16 bpp mode. For
 the IPEK01, VIDEO_FB_16BPP_PIXEL_SWAP should not be set.
 
 I don't see any functional change in this patch - all you do is
 renaming VIDEO_FB_16BPP_PIXEL_SWAP into VIDEO_FB_16BPP_WORD_SWAP.
 
 This makes no sense to me.

Please have a look to the patched file. VIDEO_FB_16BPP_PIXEL_SWAP is
used in other locations as well. This type of swapping is related to the
way the GDC on the Socrates and lwmo5 board is connected.

Wolfgang.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [u-boot] [PATCH] [1/2] mxc_fec: fix some erroneous PHY accesses.

2009-10-19 Thread javier Martin
This patch fixes erroneous access to the ethernet PHY which broke the driver.
1. Selector field in the auto-negotiation register must be 0x1 for
using 802.3, not 0x0 which is reseved.
2. Access to the PHY address specified by CONFIG_FEC_MXC_PHYADDR, not
0x0 fixed address.

This has been tested in i.MX27 Litekit board and eldk-2.0 toolchains.

Signed-off-by: Javier Martin javier.mar...@vista-silicon.com
--

diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c
index bd83a24..18f0bba 100644
--- a/drivers/net/fec_mxc.c
+++ b/drivers/net/fec_mxc.c
@@ -157,7 +157,7 @@ static int miiphy_restart_aneg(struct eth_device *dev)
/*
 * Set the auto-negotiation advertisement register bits
 */
-   miiphy_write(dev-name, CONFIG_FEC_MXC_PHYADDR, PHY_ANAR, 0x1e0);
+   miiphy_write(dev-name, CONFIG_FEC_MXC_PHYADDR, PHY_ANAR, 0x1e1);
miiphy_write(dev-name, CONFIG_FEC_MXC_PHYADDR, PHY_BMCR,
PHY_BMCR_AUTON | PHY_BMCR_RST_NEG);

@@ -341,8 +341,8 @@ static int fec_open(struct eth_device *edev)
writel(FEC_ECNTRL_ETHER_EN, fec-eth-ecntrl);

miiphy_wait_aneg(edev);
-   miiphy_speed(edev-name, 0);
-   miiphy_duplex(edev-name, 0);
+   miiphy_speed(edev-name, CONFIG_FEC_MXC_PHYADDR);
+   miiphy_duplex(edev-name, CONFIG_FEC_MXC_PHYADDR);

/*
 * Enable SmartDMA receive task

-- 
Javier Martin
Vista Silicon S.L.
CDTUC - FASE C - Oficina S-345
Avda de los Castros s/n
39005- Santander. Cantabria. Spain
+34 942 25 32 60
www.vista-silicon.com
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [u-boot] [PATCH] [2/2] mxc_fec: put freed pointers to NULL to avoid problems with further free() calls.

2009-10-19 Thread javier Martin
If a free() call is used on an already freed pointer we run into
stability problems.
Put all pointers to NULL after freeing to avoid this problem.

Tested on i.MX27 Litekit board with eldk-2.0 toolchain.

Signed-off-by: Javier Martin javier.mar...@vista-silicon.com
--

diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c
index bd83a24..7e86bc6 100644
--- a/drivers/net/fec_mxc.c
+++ b/drivers/net/fec_mxc.c
@@ -444,6 +444,7 @@ static int fec_init(struct eth_device *dev, bd_t* bd)
 */
if (fec_rbd_init(fec, FEC_RBD_NUM, FEC_MAX_PKT_SIZE)  0) {
free(fec-base_ptr);
+   fec-base_ptr = NULL;
return -ENOMEM;
}
fec_tbd_init(fec);
@@ -492,7 +493,9 @@ static void fec_halt(struct eth_device *dev)
fec-rbd_index = 0;
fec-tbd_index = 0;
free(fec-rdb_ptr);
+   fec-rdb_ptr = NULL;
free(fec-base_ptr);
+   fec-base_ptr = NULL;
debug(eth_halt: done\n);
 }

-- 
Javier Martin
Vista Silicon S.L.
CDTUC - FASE C - Oficina S-345
Avda de los Castros s/n
39005- Santander. Cantabria. Spain
+34 942 25 32 60
www.vista-silicon.com
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 3/3] mpc52xx: add support for the IPEK01 board

2009-10-19 Thread Wolfgang Denk
Dear Wolfgang Grandegger,

In message 20091019111913.802418...@denx.de you wrote:
 This patch adds support for the board IPEK01 based on the MPC5200.
 The Futjitsu Lime graphics controller is configured in 16 bpp mode.
 
 Signed-off-by: Wolfgang Grandegger w...@grandegger.com
 ---
  Makefile|3 
  board/ipek01/Makefile   |   50 
  board/ipek01/config.mk  |   30 ++
  board/ipek01/ipek01.c   |  374 
  board/ipek01/mt46v16m16-75.h|   37 +++
  board/ipek01/mt48lc16m16a2-75.h |   43 
  board/ipek01/u-boot.lds |  125 
  include/configs/ipek01.h|  411 
 
  8 files changed, 1073 insertions(+)
  create mode 100644 board/ipek01/Makefile
  create mode 100644 board/ipek01/config.mk
  create mode 100644 board/ipek01/ipek01.c
  create mode 100644 board/ipek01/mt46v16m16-75.h
  create mode 100644 board/ipek01/mt48lc16m16a2-75.h
  create mode 100644 board/ipek01/u-boot.lds
  create mode 100644 include/configs/ipek01.h

Entries to MAKEALL and MAINTAINERS are missing.

 Index: u-boot-mainline/Makefile
 ===
 --- u-boot-mainline.orig/Makefile 2009-10-19 13:17:12.185302922 +0200
 +++ u-boot-mainline/Makefile  2009-10-19 13:17:17.519552635 +0200
 @@ -725,6 +725,9 @@
   }
   @$(MKCONFIG) -a PM520 ppc mpc5xxx pm520
  
 +ipek01_config: unconfig
 + @$(MKCONFIG) -a ipek01 ppc mpc5xxx ipek01
 +

Please keep list ssorted.

 Index: u-boot-mainline/board/ipek01/ipek01.c
 ===
 --- /dev/null 1970-01-01 00:00:00.0 +
 +++ u-boot-mainline/board/ipek01/ipek01.c 2009-10-19 13:17:17.527552105 
 +0200
...
 +#ifndef CONFIG_SYS_RAMBOOT

Is RAM-Boot actually a asupported mode of operation on this board, or
are you just copuy  pasting dead code here?

 +static void sdram_start (int hi_addr)
 +{
 + long hi_addr_bit = hi_addr ? 0x0100 : 0;
 +
 + /* unlock mode register */
 + *(vu_long *) MPC5XXX_SDRAM_CTRL =
 + SDRAM_CONTROL | 0x8000 | hi_addr_bit;
 + __asm__ volatile (sync);

Please use I/O accessors to write device registers (please fix
globally).

...
 +phys_size_t initdram (int board_type)
 +{
 + ulong dramsize = 0;
 + ulong dramsize2 = 0;
 + uint svr, pvr;
 +#ifndef CONFIG_SYS_RAMBOOT
 + ulong test1, test2;
 +
 + /* setup SDRAM chip selects */
 + *(vu_long *) MPC5XXX_SDRAM_CS0CFG = 0x001e; /* 2G at 0x0 */
 + *(vu_long *) MPC5XXX_SDRAM_CS1CFG = 0x; /* disabled */

It might make sense to #define some constants in the board config
file.

 +
 + /* setup config registers */
 + *(vu_long *) MPC5XXX_SDRAM_CONFIG1 = SDRAM_CONFIG1;
 + *(vu_long *) MPC5XXX_SDRAM_CONFIG2 = SDRAM_CONFIG2;
 + __asm__ volatile (sync);
 +
 +#if SDRAM_DDR

I consider this bad style. In U-Boot, we usually use #ifdef, but this
collides with your #define SDRAM_DDR 0 versus 1 below. I recommend to
clean this up.

 + /*
 +  * On MPC5200B we need to set the special configuration delay in the
 +  * DDR controller. Please refer to Freescale's AN3221 MPC5200B SDRAM
 +  * Initialization and Configuration, 3.3.1 SDelay--MBAR + 0x0190:
 +  *
 +  * The SDelay should be written to a value of 0x0004. It is
 +  * required to account for changes caused by normal wafer processing
 +  * parameters.
 +  */
 + svr = get_svr ();
 + pvr = get_pvr ();
 + if ((SVR_MJREV (svr) = 2)  (PVR_MAJ (pvr) == 1) 
 + (PVR_MIN (pvr) == 4)) {
 + *(vu_long *) MPC5XXX_SDRAM_SDELAY = 0x04;
 + __asm__ volatile (sync);
 + }

Is this test really needed? Are there versions of this board with
pre-Rev. B silicon?

 +#if defined (CONFIG_CMD_IDE)  defined (CONFIG_IDE_RESET)
 +
 +void init_ide_reset (void)
 +{
 + debug (init_ide_reset\n);
 +}
 +
 +void ide_set_reset (int idereset)
 +{
 + debug (ide_reset(%d)\n, idereset);
 +}
 +#endif /* defined (CONFIG_SYS_CMD_IDE)  defined (CONFIG_IDE_RESET) */

This is just dead code. Please get rid of it.

 +#ifdef CONFIG_VIDEO
 +#define DISPLAY_WIDTH800
 +#define DISPLAY_HEIGHT   600

This should go to the board config file. 

 +#define CONFIG_SYS_LIME_SRST (CONFIG_SYS_LIME_BASE + 0x01FC002C)
 +#define CONFIG_SYS_LIME_CCF  (CONFIG_SYS_LIME_BASE + 0x01FC0038)
 +#define CONFIG_SYS_LIME_MMR  (CONFIG_SYS_LIME_BASE + 0x01FCFFFC)
 +/* Lime clock frequency */
 +#define CONFIG_SYS_LIME_CLK  0x9 /* geo 166MHz other 133MHz */
 +/* SDRAM parameter */
 +#define CONFIG_SYS_LIME_MMR_VALUE0x41c767e3

Please do not use base register plus offset. Use a proper C struct to
describe the device registers.


 +#define CONFIG_SYS_LIME_CID  (CONFIG_SYS_LIME_BASE + 0x01FC00F0)
 +#define CONFIG_SYS_LIME_REV  (CONFIG_SYS_LIME_BASE + 0x01FF8084)

Ditto.

 +int 

Re: [U-Boot] [PATCH 1/3] video: mb862xx: add option CONFIG_VIDEO_MB862xx_ACCEL for X888RGB mode

2009-10-19 Thread Wolfgang Denk
Dear Wolfgang,

In message 4adc5661.7050...@grandegger.com you wrote:

  The new IPEK01 board uses the X888RGB mode for the Lime graphics
  controller. For this mode video accelaration does not work. This patch
  makes the accelaration configurable via CONFIG_VIDEO_MB862xx_ACCEL,
  which is enabled for the lwmon5 and the socrates board for backward
  compatibility.
  
  Why would you want to disable it for IPEK01? Accelaration seems to be
  a good thing you don't give up if you don't have to, but I
  cannot think of reasons why you would have to do without it?
 
 Because acceleration does work with 16 bpp but *not* with 32 bpp. That's
 the reason why we made it configurable. Well, this patch could be
 dropped, because the BSP for the IPEK01 posted here uses now 16 bpp as well.

Then please either mention this fact in the commit message (the
current one does not say anything about 16 versus 32 bit mode), or
realy drop the patch.

  --- u-boot-mainline.orig/drivers/video/cfb_console.c   2009-10-19 
  13:17:14.582303087 +0200
  +++ u-boot-mainline/drivers/video/cfb_console.c2009-10-19 
  13:17:29.406303158 +0200
  
  Please use git-format-patch to create patches.
 
 Why? Do you have any problems to apply these patches? I personally
 (still) prefer using quilt for patch stack management.

git-format-patch provides index information, which allows for
intelligent merges (i. e. the merge code can then find the patch base
and do a rebase internally). With your patches this is impossible.

Fell free to use quilt or any other tools for your own purposes, but
for patch submission please prepare the patches using
git-format-patch

  +#else
  +  unsigned int i, *p;
  +
  +  i = dev-winSizeX * dev-winSizeY;
  +  p = (unsigned int *)dev-frameAdrs;
  +  while (i--)
  +  *p++ = 0;
  +#endif
  
  Why don't you use memset() here?
 
 Maybe to ensure that D32 accesses are performed. Anatolij might know?

How should Anatolij know? It is you who added this code, right?

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
Overdrawn?  But I still have checks left!
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 2/3] video: mb862xx: add option VIDEO_FB_16BPP_WORD_SWAP for IPEK01

2009-10-19 Thread Wolfgang Denk
Dear Wolfgang Grandegger,

In message 4adc56e4.40...@grandegger.com you wrote:

  In 16 bpp mode, the new IPEK01 board only requires swapping of D16 words
  for D32 accesses due to the diffferent connecting to the GDC bus. This
  patch introduces the configuration option VIDEO_FB_16BPP_WORD_SWAP,
  which should be set for all board using the mb862xx in 16 bpp mode. For
  the IPEK01, VIDEO_FB_16BPP_PIXEL_SWAP should not be set.
  
  I don't see any functional change in this patch - all you do is
  renaming VIDEO_FB_16BPP_PIXEL_SWAP into VIDEO_FB_16BPP_WORD_SWAP.
  
  This makes no sense to me.
 
 Please have a look to the patched file. VIDEO_FB_16BPP_PIXEL_SWAP is
 used in other locations as well. This type of swapping is related to the
 way the GDC on the Socrates and lwmo5 board is connected.

I see.

But please add a description of VIDEO_FB_16BPP_PIXEL_SWAP and
VIDEO_FB_16BPP_WORD_SWAP to the README.

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 is enough for the need of everyone in this world,
   but not for the greed of everyone. - Mahatma Gandhi
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 4/5] add TI da8xx support: new ethenet driver for da830 EMAC

2009-10-19 Thread Tom
Nick Thompson wrote:
 Ben Warren wrote:
 Hi Tom,

 On Sun, Oct 18, 2009 at 10:26 AM, Tom tom@windriver.com
 mailto:tom@windriver.com wrote:

 Thompson, Nick (GE EntSol, Intelligent Platforms) wrote:

 Add a driver for the DA830 EMAC.

 This is very similar to the davinci_emac driver. It has been
 restructured
 to make it as similar as possible. Potentially the two could be
 merged,
 but I don't have access to other davinci type platforms to test for
 breakage after the inevitable mangling required.

 Signed-off-by: Nick Thompson nick.thomp...@gefanuc.com
 mailto:nick.thomp...@gefanuc.com


 Ben,
 Can I pass this review off to you ?
 Tom


  
 Yeah, I'll review the next spin.  Since it won't require a new driver,
 it may make more sense to keep the patch parts together.  Either way,
 I'll ACK/NAK it.

 regards,
 Ben 
 
 Tom, Thank you for the very through review, I will go away and address the 
 issues you raise and get some checking tools in place. Also I've figured out 
 how to get Thunderbird on linux talking to my exchange server - I will test 
 it's mangling abilities before my next patch.
 
 Ben, You are right of course, I picked up the driver from an old TI u-boot 
 and updated it for CONFIG_NET_MULTI, but shyed away from making functional 
 changes as it seems to work just fine. I will switch to the davinci driver 
 and pull in changes only as required - with inline statics where I can.
 
 If I understood correctly, assuming the switch to davinci ethernet, you would 
 prefer a single patch e-mail rather than 5? It will still be rather bigger 
 than the 40kB suggested in the linux SubmittingPatches doc.

The way you did it with 5 is preferred.
The 4/5 is a NET patch and that must be reviewed by Ben.
The others are TI/ARM patches.

Tom

 
 Thanks,
 Nick.
 
 This next line is just a test please ignore:
 +static unsigned char emac_rx_buffers[EMAC_MAX_RX_BUFFERS * 
 (EMAC_MAX_ETHERNET_PKT_SIZE + EMAC_PKT_ALIGN)];

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [u-boot] [PATCH] [2/2] mxc_fec: put freed pointers to NULL to avoid problems with further free() calls.

2009-10-19 Thread Wolfgang Denk
Dear javier Martin,

In message eedb5540910190519l4551493eoc595ca39f0335...@mail.gmail.com you 
wrote:
 If a free() call is used on an already freed pointer we run into
 stability problems.

Is this actually the case anywhere in the code? If so, that code
should be fixed, as thisis obviously a bug then.

I dislike workarounds like these as they just hush up design and/or
implementation issues int he code. lease rather fix the real problems
instead.

Thanks.


 Tested on i.MX27 Litekit board with eldk-2.0 toolchain.

ELDK 2.0? Wow. I did not think this was still in use anywhere around.

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
Most people would like to be delivered  from  temptation  but  would
like it to keep in touch. - Robert Orben
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [u-boot] [PATCH] [2/2] mxc_fec: put freed pointers to NULL to avoid problems with further free() calls.

2009-10-19 Thread javier Martin
2009/10/19 Wolfgang Denk w...@denx.de:
 Dear javier Martin,

 In message eedb5540910190519l4551493eoc595ca39f0335...@mail.gmail.com you 
 wrote:
 If a free() call is used on an already freed pointer we run into
 stability problems.

 Is this actually the case anywhere in the code? If so, that code
 should be fixed, as thisis obviously a bug then.

 I dislike workarounds like these as they just hush up design and/or
 implementation issues int he code. lease rather fix the real problems
 instead.

 Thanks.

You are right.


 Tested on i.MX27 Litekit board with eldk-2.0 toolchain.

 ELDK 2.0? Wow. I did not think this was still in use anywhere around.

This is obviously a typo, I used eldk-4.2.

 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
 Most people would like to be delivered  from  temptation  but  would
 like it to keep in touch.                             - Robert Orben


Thank you for your comments, I will resent this patch fixing the real problem.

-- 
Javier Martin
Vista Silicon S.L.
CDTUC - FASE C - Oficina S-345
Avda de los Castros s/n
39005- Santander. Cantabria. Spain
+34 942 25 32 60
www.vista-silicon.com
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] CONFIG_GENERIC_MMC Usage

2009-10-19 Thread Shane Volpe
After further reviewing the code I now see getting the PXA working
with the GENERIC_MMC interface is more complex than I thought.  From
what I can tell reading through the code I really need to re-write the
driver/pxa_mmc.c to support the mmc structure (include/mmc.h).  It
needs to have an initializer that sets up all of the variables in the
mmc structure and have the required functions for the new mmc:
send_cmd, set_ios and init.

Before I attempt writing the pxa generic mmc code I just wanted to
post and see if anyone else is working on it.
Regards,
Shane
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/3] video: mb862xx: add option CONFIG_VIDEO_MB862xx_ACCEL for X888RGB mode

2009-10-19 Thread Wolfgang Grandegger
Wolfgang Denk wrote:
 Dear Wolfgang,
 
 In message 4adc5661.7050...@grandegger.com you wrote:
 The new IPEK01 board uses the X888RGB mode for the Lime graphics
 controller. For this mode video accelaration does not work. This patch
 makes the accelaration configurable via CONFIG_VIDEO_MB862xx_ACCEL,
 which is enabled for the lwmon5 and the socrates board for backward
 compatibility.
 Why would you want to disable it for IPEK01? Accelaration seems to be
 a good thing you don't give up if you don't have to, but I
 cannot think of reasons why you would have to do without it?
 Because acceleration does work with 16 bpp but *not* with 32 bpp. That's
 the reason why we made it configurable. Well, this patch could be
 dropped, because the BSP for the IPEK01 posted here uses now 16 bpp as well.
 
 Then please either mention this fact in the commit message (the
 current one does not say anything about 16 versus 32 bit mode), or
 realy drop the patch.

Well, X888RGB mode is a 32 bpp mode. I leave it up to Anatolij to accept
this patch or not (he is actually the original author).

 --- u-boot-mainline.orig/drivers/video/cfb_console.c   2009-10-19 
 13:17:14.582303087 +0200
 +++ u-boot-mainline/drivers/video/cfb_console.c2009-10-19 
 13:17:29.406303158 +0200
 Please use git-format-patch to create patches.
 Why? Do you have any problems to apply these patches? I personally
 (still) prefer using quilt for patch stack management.
 
 git-format-patch provides index information, which allows for
 intelligent merges (i. e. the merge code can then find the patch base
 and do a rebase internally). With your patches this is impossible.
 
 Fell free to use quilt or any other tools for your own purposes, but
 for patch submission please prepare the patches using
 git-format-patch

OK.

 +#else
 +  unsigned int i, *p;
 +
 +  i = dev-winSizeX * dev-winSizeY;
 +  p = (unsigned int *)dev-frameAdrs;
 +  while (i--)
 +  *p++ = 0;
 +#endif
 Why don't you use memset() here?
 Maybe to ensure that D32 accesses are performed. Anatolij might know?
 
 How should Anatolij know? It is you who added this code, right?

No, this patch is from Anatolij and he has added his signed-off-by. My
signed-off-by is not correct, strictly speaking. I should have just
added an acked-by or tested-by line. Will change.

Wolfgang.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH] qemu_mips: Fix CONFIG_NET_MULTI build warning

2009-10-19 Thread Shinya Kuribayashi
eth.c:497:2: warning: #warning Ethernet driver is deprecated. Please update to 
use CONFIG_NET_MULTI

Signed-off-by: Shinya Kuribayashi skuri...@pobox.com
---

 I have a few concerns about this fix:

 First.  I'm not sure why CONFIG_NET_MULTI is undefed for qemu_mips,
 while CONFIG_DRIVER_NE2000 has been enabled for qemu_mips at an early
 stage.

 I don't follow recent changes around eth.c and CONFIG_NET_MULTI, but
 it's probably CONFIG_NET_MULTI used to be used strictly for multi
 ports, isn't it?

 Next.  As far as looking at drivers/net/ne2000*.[ch], NE2000 driver
 doesn't seem to require board_eth_init() or cpu_eth_init().  Right?
 Therefore I've not added a corresponding hook in board/qemu_mips/
 qemu_mips.c.  If my understanding is wrong, please let me know.

 include/configs/qemu-mips.h |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/include/configs/qemu-mips.h b/include/configs/qemu-mips.h
index cbacdf9..f419174 100644
--- a/include/configs/qemu-mips.h
+++ b/include/configs/qemu-mips.h
@@ -157,7 +157,7 @@
 
 #define CONFIG_ENV_OVERWRITE   1
 
-#undef CONFIG_NET_MULTI
+#define CONFIG_NET_MULTI
 
 #define MEM_SIZE   128
 
-- 
1.6.5.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH V2] sheevaplug: correct SDRAM address control register value

2009-10-19 Thread Mark Asselstine
The SheevaPlug DevKit is shipped with 4x8 by 1Gb DDR devices in
two banks for a total of 512MB of RAM. Based on this configuration
the existing values for SDRAM address control register are incorrect
and result in random kernel oops as memory is incorrectly accessed
(while for example extracting a large tarball such as a rootfs).
Based on the hardware configuration along with the supporting
documentation from Marvell these are the correct values, as
well this change mimics values previously used in Marvell's own
u-boot git tree for the SheevaPlug.

Other variants of the hardware such as the PogoPlug and TonidoPlug
may have different memory configurations but to properly support
those additional board directories should be maintained or a better
system to support other kwb*.cfg is needed.

Tested on SheevaPlug DevKit.

Signed-off-by: Mark Asselstine mark.asselst...@windriver.com
---
Thanks Simon for the heads up on the documentation change. Changes
from V1, fix comment reserved - x8.

 board/Marvell/sheevaplug/kwbimage.cfg |   10 +-
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/board/Marvell/sheevaplug/kwbimage.cfg 
b/board/Marvell/sheevaplug/kwbimage.cfg
index 6c47d62..3b9c53f 100644
--- a/board/Marvell/sheevaplug/kwbimage.cfg
+++ b/board/Marvell/sheevaplug/kwbimage.cfg
@@ -74,11 +74,11 @@ DATA 0xFFD0140C 0x0a33  #  DDR Timing (High)
 # bit12-11: TW2W
 # bit31-13: zero required
 
-DATA 0xFFD01410 0x0099 #  DDR Address Control
-# bit1-0:   01, Cs0width=x16
-# bit3-2:   10, Cs0size=512Mb
-# bit5-4:   01, Cs1width=x16
-# bit7-6:   10, Cs1size=512Mb
+DATA 0xFFD01410 0x00cc #  DDR Address Control
+# bit1-0:   00, Cs0width=x8
+# bit3-2:   11, Cs0size=1Gb
+# bit5-4:   00, Cs1width=x8
+# bit7-6:   11, Cs1size=1Gb
 # bit9-8:   00, Cs2width=nonexistent
 # bit11-10: 00, Cs2size =nonexistent
 # bit13-12: 00, Cs3width=nonexistent
-- 
1.6.3.3

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 3/3] mpc52xx: add support for the IPEK01 board

2009-10-19 Thread Wolfgang Grandegger
Wolfgang Denk wrote:
 Dear Wolfgang Grandegger,
 
 In message 20091019111913.802418...@denx.de you wrote:
 This patch adds support for the board IPEK01 based on the MPC5200.
 The Futjitsu Lime graphics controller is configured in 16 bpp mode.

 Signed-off-by: Wolfgang Grandegger w...@grandegger.com
[...]
 Index: u-boot-mainline/board/ipek01/ipek01.c
 ===
 --- /dev/null1970-01-01 00:00:00.0 +
 +++ u-boot-mainline/board/ipek01/ipek01.c2009-10-19 13:17:17.527552105 
 +0200
 ...
 +#ifndef CONFIG_SYS_RAMBOOT
 
 Is RAM-Boot actually a asupported mode of operation on this board, or
 are you just copuy  pasting dead code here?

If it's really dead code I'm going to prepare and send a patch removing
it for all boards. Would that be fine?

 +static void sdram_start (int hi_addr)
 +{
 +long hi_addr_bit = hi_addr ? 0x0100 : 0;
 +
 +/* unlock mode register */
 +*(vu_long *) MPC5XXX_SDRAM_CTRL =
 +SDRAM_CONTROL | 0x8000 | hi_addr_bit;
 +__asm__ volatile (sync);
 
 Please use I/O accessors to write device registers (please fix
 globally).

Well, I borrowed known to work code from other boards. Unfortunately
there are no better examples (yet). Will fix, of course.

 ...
 +phys_size_t initdram (int board_type)
 +{
 +ulong dramsize = 0;
 +ulong dramsize2 = 0;
 +uint svr, pvr;
 +#ifndef CONFIG_SYS_RAMBOOT
 +ulong test1, test2;
 +
 +/* setup SDRAM chip selects */
 +*(vu_long *) MPC5XXX_SDRAM_CS0CFG = 0x001e; /* 2G at 0x0 */
 +*(vu_long *) MPC5XXX_SDRAM_CS1CFG = 0x; /* disabled */
 
 It might make sense to #define some constants in the board config
 file.
 
 +
 +/* setup config registers */
 +*(vu_long *) MPC5XXX_SDRAM_CONFIG1 = SDRAM_CONFIG1;
 +*(vu_long *) MPC5XXX_SDRAM_CONFIG2 = SDRAM_CONFIG2;
 +__asm__ volatile (sync);
 +
 +#if SDRAM_DDR
 
 I consider this bad style. In U-Boot, we usually use #ifdef, but this
 collides with your #define SDRAM_DDR 0 versus 1 below. I recommend to
 clean this up.

OK.

 +/*
 + * On MPC5200B we need to set the special configuration delay in the
 + * DDR controller. Please refer to Freescale's AN3221 MPC5200B SDRAM
 + * Initialization and Configuration, 3.3.1 SDelay--MBAR + 0x0190:
 + *
 + * The SDelay should be written to a value of 0x0004. It is
 + * required to account for changes caused by normal wafer processing
 + * parameters.
 + */
 +svr = get_svr ();
 +pvr = get_pvr ();
 +if ((SVR_MJREV (svr) = 2)  (PVR_MAJ (pvr) == 1) 
 +(PVR_MIN (pvr) == 4)) {
 +*(vu_long *) MPC5XXX_SDRAM_SDELAY = 0x04;
 +__asm__ volatile (sync);
 +}
 
 Is this test really needed? Are there versions of this board with
 pre-Rev. B silicon?

I would guess no. I have to check with the board provider.

 +#if defined (CONFIG_CMD_IDE)  defined (CONFIG_IDE_RESET)
 +
 +void init_ide_reset (void)
 +{
 +debug (init_ide_reset\n);
 +}
 +
 +void ide_set_reset (int idereset)
 +{
 +debug (ide_reset(%d)\n, idereset);
 +}
 +#endif /* defined (CONFIG_SYS_CMD_IDE)  defined (CONFIG_IDE_RESET) */
 
 This is just dead code. Please get rid of it.
 
 +#ifdef CONFIG_VIDEO
 +#define DISPLAY_WIDTH   800
 +#define DISPLAY_HEIGHT  600
 
 This should go to the board config file. 

OK.

 +#define CONFIG_SYS_LIME_SRST(CONFIG_SYS_LIME_BASE + 0x01FC002C)
 +#define CONFIG_SYS_LIME_CCF (CONFIG_SYS_LIME_BASE + 0x01FC0038)
 +#define CONFIG_SYS_LIME_MMR (CONFIG_SYS_LIME_BASE + 0x01FCFFFC)
 +/* Lime clock frequency */
 +#define CONFIG_SYS_LIME_CLK 0x9 /* geo 166MHz other 133MHz */
 +/* SDRAM parameter */
 +#define CONFIG_SYS_LIME_MMR_VALUE   0x41c767e3
 
 Please do not use base register plus offset. Use a proper C struct to
 describe the device registers.

I think this should be done for the mb862xx video driver first, which
does still use base register plus offset. But it would be nice if the
mb862xx video driver would make the register access functions public,
which could then be used here.

 +#define CONFIG_SYS_LIME_CID (CONFIG_SYS_LIME_BASE + 0x01FC00F0)
 +#define CONFIG_SYS_LIME_REV (CONFIG_SYS_LIME_BASE + 0x01FF8084)
 
 Ditto.
 
 +int lime_probe (void)
 +{
 +uint reg;
 +
 +/* Try to access GDC ID/Revision registers */
 +reg = in_be32 ((void *)CONFIG_SYS_LIME_CID);
 +reg = in_be32 ((void *)CONFIG_SYS_LIME_CID);
 +if (reg == 0x303) {
 +reg = in_be32 ((void *)CONFIG_SYS_LIME_REV);
 +reg = in_be32 ((void *)CONFIG_SYS_LIME_REV);
 +reg = ((reg  ~0xff) == 0x20050100) ? 1 : 0;
 
 Please see above - using a proper C struct we can get rid of these
 casts.
 
 +#if defined(CONFIG_CONSOLE_EXTRA_INFO)
 +/*
 + * Return text to be printed besides the logo.
 + */
 +void video_get_info_str (int line_number, char *info)
 +{
 +  if (line_number == 1) {
 +  strcpy (info,  Board: IPEK01);
 +  } else {
 +  

Re: [U-Boot] [PATCH 3/3] mpc52xx: add support for the IPEK01 board

2009-10-19 Thread Wolfgang Denk
Dear Wolfgang Grandegger,

In message 4adc6cc3.6040...@grandegger.com you wrote:

  +#ifndef CONFIG_SYS_RAMBOOT
  
  Is RAM-Boot actually a asupported mode of operation on this board, or
  are you just copuy  pasting dead code here?
 
 If it's really dead code I'm going to prepare and send a patch removing
 it for all boards. Would that be fine?

I don't think it's dead code on all boards; there are RAMBOOT targts
in the Makefile for some bords (for example digsy_mtc). I just didn't
notice that your board is using this anywhere.


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
My play was a complete success.  The audience was a failure.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH 1/4] ppc4xx: Add function to check and dynamically change PCI sync clock

2009-10-19 Thread Stefan Roese
PPC440EP(x)/PPC440GR(x):
In asynchronous PCI mode, the synchronous PCI clock must meet
certain requirements. The following equation describes the
relationship that must be maintained between the asynchronous PCI
clock and synchronous PCI clock. Select an appropriate PCI:PLB
ratio to maintain the relationship:

AsyncPCIClk - 1MHz = SyncPCIclock = (2 * AsyncPCIClk) - 1MHz

This patch now adds a function to check and reconfigure the sync
PCI clock to meet this requirement. This is in preparation for
some AMCC boards (Sequoia/Rainier and Yosemite/Yellowstone) using this
function to not violate the PCI clocking rules.

Signed-off-by: Stefan Roese s...@denx.de
---
 cpu/ppc4xx/cpu_init.c |   69 +
 include/ppc440.h  |7 -
 include/ppc4xx.h  |2 +
 3 files changed, 77 insertions(+), 1 deletions(-)

diff --git a/cpu/ppc4xx/cpu_init.c b/cpu/ppc4xx/cpu_init.c
index a00da40..ccd9993 100644
--- a/cpu/ppc4xx/cpu_init.c
+++ b/cpu/ppc4xx/cpu_init.c
@@ -330,3 +330,72 @@ int cpu_init_r (void)
 
return 0;
 }
+
+#if defined(CONFIG_PCI)  \
+   (defined(CONFIG_440EP) || defined(CONFIG_440EPX) || \
+defined(CONFIG_440GR) || defined(CONFIG_440GRX))
+/*
+ * 440EP(x)/GR(x) PCI async/sync clocking restriction:
+ *
+ * In asynchronous PCI mode, the synchronous PCI clock must meet
+ * certain requirements. The following equation describes the
+ * relationship that must be maintained between the asynchronous PCI
+ * clock and synchronous PCI clock. Select an appropriate PCI:PLB
+ * ratio to maintain the relationship:
+ *
+ * AsyncPCIClk - 1MHz = SyncPCIclock = (2 * AsyncPCIClk) - 1MHz
+ */
+static int ppc4xx_pci_sync_clock_ok(u32 sync, u32 async)
+{
+   if (((async - 100)  sync) || (sync  ((2 * async) - 100)))
+   return 0;
+   else
+   return 1;
+}
+
+int ppc4xx_pci_sync_clock_config(u32 async)
+{
+   sys_info_t sys_info;
+   u32 sync;
+   int div;
+   u32 reg;
+   u32 spcid_val[] = {
+   CPR0_SPCID_SPCIDV0_DIV1, CPR0_SPCID_SPCIDV0_DIV2,
+   CPR0_SPCID_SPCIDV0_DIV3, CPR0_SPCID_SPCIDV0_DIV4 };
+
+   get_sys_info(sys_info);
+   sync = sys_info.freqPCI;
+
+   /*
+* First check if the equation above is met
+*/
+   if (!ppc4xx_pci_sync_clock_ok(sync, async)) {
+   /*
+* Reconfigure PCI sync clock to meet the equation.
+* Start with highest possible PCI sync frequency
+* (divider 1).
+*/
+   for (div = 1; div = 4; div++) {
+   sync = sys_info.freqPLB / div;
+   if (ppc4xx_pci_sync_clock_ok(sync, async))
+   break;
+   }
+
+   if (div = 4) {
+   mtcpr(CPR0_SPCID, spcid_val[div]);
+
+   mfcpr(CPR0_ICFG, reg);
+   reg |= CPR0_ICFG_RLI_MASK;
+   mtcpr(CPR0_ICFG, reg);
+
+   /* do chip reset */
+   mtspr(SPRN_DBCR0, 0x2000);
+   } else {
+   /* Impossible to configure the PCI sync clock */
+   return -1;
+   }
+   }
+
+   return 0;
+}
+#endif
diff --git a/include/ppc440.h b/include/ppc440.h
index fe0db93..e54a977 100644
--- a/include/ppc440.h
+++ b/include/ppc440.h
@@ -1701,9 +1701,14 @@
 #define PLLSYS1_NTO1_MASK  0x0001  /* CPU:PLB N-to-1 ratio */
 #endif /* CONFIG_440GX */
 
-#if defined (CONFIG_440EPX) || defined (CONFIG_440GRX)
+#if defined(CONFIG_440EP) || defined(CONFIG_440GR) || \
+defined(CONFIG_440EPX) || defined(CONFIG_440GRX)
 #define CPR0_ICFG_RLI_MASK 0x8000
 #define CPR0_SPCID_SPCIDV0_MASK0x0300
+#define CPR0_SPCID_SPCIDV0_DIV10x0100
+#define CPR0_SPCID_SPCIDV0_DIV20x0200
+#define CPR0_SPCID_SPCIDV0_DIV30x0300
+#define CPR0_SPCID_SPCIDV0_DIV40x
 #define CPR0_PERD_PERDV0_MASK  0x0700
 #endif
 
diff --git a/include/ppc4xx.h b/include/ppc4xx.h
index 3bff00a..5024db4 100644
--- a/include/ppc4xx.h
+++ b/include/ppc4xx.h
@@ -221,6 +221,8 @@ static inline void set_mcsr(u32 val)
asm volatile(mtspr 0x23c, %0 : =r (val) :);
 }
 
+int ppc4xx_pci_sync_clock_config(u32 async);
+
 #endif /* __ASSEMBLY__ */
 
 /* for multi-cpu support */
-- 
1.6.5.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH 2/4] ppc4xx: Print PCI synchronous clock frequency upon bootup

2009-10-19 Thread Stefan Roese
Some 4xx variants (e.g. 440EP(x)/GR(x)) have an internal
synchronous PCI clock. Knowledge about the currently configured
value might be helpful. So let's print it out upon bootup.

Signed-off-by: Stefan Roese s...@denx.de
---
 cpu/ppc4xx/cpu.c |9 -
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/cpu/ppc4xx/cpu.c b/cpu/ppc4xx/cpu.c
index a9a0ac3..e1b00a7 100644
--- a/cpu/ppc4xx/cpu.c
+++ b/cpu/ppc4xx/cpu.c
@@ -608,10 +608,17 @@ int checkcpu (void)
break;
}
 
-   printf ( at %s MHz (PLB=%lu, OPB=%lu, EBC=%lu MHz)\n, strmhz(buf, 
clock),
+   printf ( at %s MHz (PLB=%lu OPB=%lu EBC=%lu,
+   strmhz(buf, clock),
sys_info.freqPLB / 100,
get_OPB_freq() / 100,
sys_info.freqEBC / 100);
+#if defined(CONFIG_PCI)  \
+   (defined(CONFIG_440EP) || defined(CONFIG_440EPX) || \
+defined(CONFIG_440GR) || defined(CONFIG_440GRX))
+   printf( PCI=%lu MHz, sys_info.freqPCI / 100);
+#endif
+   printf()\n);
 
if (addstr[0] != 0)
printf(   %s\n, addstr);
-- 
1.6.5.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH 3/4] ppc4xx: Sequoia/Rainer: Check and reconfigure the PCI sync clock

2009-10-19 Thread Stefan Roese
This patch now uses the 440EP(x)/GR(x) function to check and dynamically
reconfigure the PCI sync clock.

Signed-off-by: Stefan Roese s...@denx.de
---
 board/amcc/sequoia/sequoia.c |   26 +++---
 1 files changed, 23 insertions(+), 3 deletions(-)

diff --git a/board/amcc/sequoia/sequoia.c b/board/amcc/sequoia/sequoia.c
index d42c802..00f6408 100644
--- a/board/amcc/sequoia/sequoia.c
+++ b/board/amcc/sequoia/sequoia.c
@@ -40,6 +40,15 @@ extern flash_info_t flash_info[CONFIG_SYS_MAX_FLASH_BANKS]; 
/* info for FLASH ch
 extern void __ft_board_setup(void *blob, bd_t *bd);
 ulong flash_get_size(ulong base, int banknum);
 
+static inline u32 get_async_pci_freq(void)
+{
+   if (in_8((void *)(CONFIG_SYS_BCSR_BASE + 5)) 
+   CONFIG_SYS_BCSR5_PCI66EN)
+   return ;
+   else
+   return ;
+}
+
 int board_early_init_f(void)
 {
u32 sdr0_cust0;
@@ -76,6 +85,9 @@ int board_early_init_f(void)
mtdcr(UIC2VR, 0x);  /* int31 highest, base=0x000 */
mtdcr(UIC2SR, 0x);  /* clear all */
 
+   /* Check and reconfigure the PCI sync clock if necessary */
+   ppc4xx_pci_sync_clock_config(get_async_pci_freq());
+
/* 50MHz tmrclk */
out_8((u8 *) CONFIG_SYS_BCSR_BASE + 0x04, 0x00);
 
@@ -319,7 +331,7 @@ int checkboard(void)
 {
char *s = getenv(serial#);
u8 rev;
-   u8 val;
+   u32 clock = get_async_pci_freq();
 
 #ifdef CONFIG_440EPX
printf(Board: Sequoia - AMCC PPC440EPx Evaluation Board);
@@ -328,8 +340,7 @@ int checkboard(void)
 #endif
 
rev = in_8((void *)(CONFIG_SYS_BCSR_BASE + 0));
-   val = in_8((void *)(CONFIG_SYS_BCSR_BASE + 5))  
CONFIG_SYS_BCSR5_PCI66EN;
-   printf(, Rev. %X, PCI=%d MHz, rev, val ? 66 : 33);
+   printf(, Rev. %X, PCI-Async=%d MHz, rev, clock / 100);
 
if (s != NULL) {
puts(, serial# );
@@ -337,6 +348,15 @@ int checkboard(void)
}
putc('\n');
 
+   /*
+* Reconfiguration of the PCI sync clock is already done,
+* now check again if everything is in range:
+*/
+   if (ppc4xx_pci_sync_clock_config(clock)) {
+   printf(ERROR: PCI clocking incorrect (async=%d 
+  sync=%ld)!\n, clock, get_PCI_freq());
+   }
+
return (0);
 }
 
-- 
1.6.5.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH 4/4] ppc4xx: Yosemite/Yellowstone: Check and reconfigure the PCI sync clock

2009-10-19 Thread Stefan Roese
This patch now uses the 440EP(x)/GR(x) function to check and dynamically
reconfigure the PCI sync clock.

Signed-off-by: Stefan Roese s...@denx.de
---
 board/amcc/yosemite/yosemite.c |   26 +++---
 1 files changed, 23 insertions(+), 3 deletions(-)

diff --git a/board/amcc/yosemite/yosemite.c b/board/amcc/yosemite/yosemite.c
index 7ceccfa..ccbeb0e 100644
--- a/board/amcc/yosemite/yosemite.c
+++ b/board/amcc/yosemite/yosemite.c
@@ -33,6 +33,15 @@ DECLARE_GLOBAL_DATA_PTR;
 
 extern flash_info_t flash_info[CONFIG_SYS_MAX_FLASH_BANKS]; /* info for FLASH 
chips*/
 
+static inline u32 get_async_pci_freq(void)
+{
+   if (in_8((void *)(CONFIG_SYS_BCSR_BASE + 5)) 
+   CONFIG_SYS_BCSR5_PCI66EN)
+   return ;
+   else
+   return ;
+}
+
 int board_early_init_f(void)
 {
register uint reg;
@@ -106,6 +115,9 @@ int board_early_init_f(void)
mtsdr(SDR0_PFC0, 0x3e00);   /* Pin function */
mtsdr(SDR0_PFC1, 0x00048000);   /* Pin function: UART0 has 4 pins */
 
+   /* Check and reconfigure the PCI sync clock if necessary */
+   ppc4xx_pci_sync_clock_config(get_async_pci_freq());
+
/*clear tmrclk divisor */
*(unsigned char *)(CONFIG_SYS_BCSR_BASE | 0x04) = 0x00;
 
@@ -178,7 +190,7 @@ int checkboard(void)
 {
char *s = getenv(serial#);
u8 rev;
-   u8 val;
+   u32 clock = get_async_pci_freq();
 
 #ifdef CONFIG_440EP
printf(Board: Yosemite - AMCC PPC440EP Evaluation Board);
@@ -187,8 +199,7 @@ int checkboard(void)
 #endif
 
rev = in_8((void *)(CONFIG_SYS_BCSR_BASE + 0));
-   val = in_8((void *)(CONFIG_SYS_BCSR_BASE + 5))  
CONFIG_SYS_BCSR5_PCI66EN;
-   printf(, Rev. %X, PCI=%d MHz, rev, val ? 66 : 33);
+   printf(, Rev. %X, PCI-Async=%d MHz, rev, clock / 100);
 
if (s != NULL) {
puts(, serial# );
@@ -196,6 +207,15 @@ int checkboard(void)
}
putc('\n');
 
+   /*
+* Reconfiguration of the PCI sync clock is already done,
+* now check again if everything is in range:
+*/
+   if (ppc4xx_pci_sync_clock_config(clock)) {
+   printf(ERROR: PCI clocking incorrect (async=%d 
+  sync=%ld)!\n, clock, get_PCI_freq());
+   }
+
return (0);
 }
 
-- 
1.6.5.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH] ppc4xx: Sequoia: Add chip_config command

2009-10-19 Thread Stefan Roese
This patch removes the Sequoia bootstrap command and replaces it
with the now common command chip_config.

Please note that the patches with the dynamic PCI sync clock
configuration have to be applied, before this one should go in.
This is because Sequoia has 2 different bootstrap EEPROMs, and
the old bootstrap command configured different values depending
on the detected PCI async clock (33 vs. 66MHz). With the PCI sync
clock patches, this is not necessary anymore. The PCI sync clock
will be configured correctly on-the-fly now.

Signed-off-by: Stefan Roese s...@denx.de
---
 board/amcc/sequoia/Makefile  |4 +-
 board/amcc/sequoia/chip_config.c |  122 
 board/amcc/sequoia/cmd_sequoia.c |  231 --
 include/configs/sequoia.h|6 +
 4 files changed, 131 insertions(+), 232 deletions(-)
 create mode 100644 board/amcc/sequoia/chip_config.c
 delete mode 100644 board/amcc/sequoia/cmd_sequoia.c

diff --git a/board/amcc/sequoia/Makefile b/board/amcc/sequoia/Makefile
index a5d5010..8da3bd5 100644
--- a/board/amcc/sequoia/Makefile
+++ b/board/amcc/sequoia/Makefile
@@ -25,9 +25,11 @@ include $(TOPDIR)/config.mk
 
 LIB= $(obj)lib$(BOARD).a
 
-COBJS  = $(BOARD).o cmd_sequoia.o sdram.o
+COBJS-y= $(BOARD).o sdram.o
+COBJS-$(CONFIG_CMD_CHIP_CONFIG) += chip_config.o
 SOBJS  = init.o
 
+COBJS   := $(COBJS-y)
 SRCS   := $(SOBJS:.o=.S) $(COBJS:.o=.c)
 OBJS   := $(addprefix $(obj),$(COBJS))
 SOBJS  := $(addprefix $(obj),$(SOBJS))
diff --git a/board/amcc/sequoia/chip_config.c b/board/amcc/sequoia/chip_config.c
new file mode 100644
index 000..036de9f
--- /dev/null
+++ b/board/amcc/sequoia/chip_config.c
@@ -0,0 +1,122 @@
+/*
+ * (C) Copyright 2009
+ * Stefan Roese, DENX Software Engineering, s...@denx.de.
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ */
+
+#include common.h
+#include asm/ppc4xx_config.h
+
+struct ppc4xx_config ppc4xx_config_val[] = {
+   {
+   333-133-nor, NOR  CPU: 333 PLB: 133 OPB:  66 EBC:  66,
+   {
+   0x84, 0x70, 0xa2, 0xa6, 0x05, 0x57, 0xa0, 0x10,
+   0x40, 0x08, 0x23, 0x50, 0x0d, 0x05, 0x00, 0x00
+   }
+   },
+   {
+   333-166-nor, NOR  CPU: 333 PLB: 166 OPB:  83 EBC:  55,
+   {
+   0xc7, 0x78, 0xf3, 0x4e, 0x05, 0xd7, 0xa0, 0x30,
+   0x40, 0x08, 0x23, 0x50, 0x0d, 0x05, 0x00, 0x00
+   }
+   },
+   {
+   333-166-nand, NAND CPU: 333 PLB: 166 OPB:  83 EBC:  55,
+   {
+   0xc7, 0x78, 0xf3, 0x4e, 0x05, 0xd7, 0xd0, 0x30,
+   0xa0, 0x68, 0x23, 0x58, 0x0d, 0x05, 0x00, 0x00
+   }
+   },
+   {
+   400-133-nor, NOR  CPU: 400 PLB: 133 OPB:  66 EBC:  66,
+   {
+   0x86, 0x78, 0xc2, 0xc6, 0x05, 0x57, 0xa0, 0x30,
+   0x40, 0x08, 0x23, 0x50, 0x0d, 0x05, 0x00, 0x00
+   }
+   },
+   {
+   400-160-nor, NOR  CPU: 400 PLB: 160 OPB:  80 EBC:  53,
+   {
+   0x86, 0x78, 0xc2, 0xa6, 0x05, 0xd7, 0xa0, 0x10,
+   0x40, 0x08, 0x23, 0x50, 0x0d, 0x05, 0x00, 0x00
+   }
+   },
+   {
+   416-166-nor, NOR  CPU: 416 PLB: 166 OPB:  83 EBC:  55,
+   {
+   0xc6, 0x78, 0x52, 0xa6, 0x05, 0xd7, 0xa0, 0x10,
+   0x40, 0x08, 0x23, 0x50, 0x0d, 0x05, 0x00, 0x00
+   }
+   },
+   {
+   416-166-nand, NAND CPU: 416 PLB: 166 OPB:  83 EBC:  55,
+   {
+   0xc6, 0x78, 0x52, 0xa6, 0x05, 0xd7, 0xd0, 0x10,
+   0xa0, 0x68, 0x23, 0x58, 0x0d, 0x05, 0x00, 0x00
+   }
+   },
+   {
+   500-166-nor, NOR  CPU: 500 PLB: 166 OPB:  83 EBC:  55,
+   {
+   0xc7, 0x78, 0x52, 0xc6, 0x05, 0xd7, 0xa0, 0x30,
+   0x40, 0x08, 0x23, 0x50, 0x0d, 0x05, 0x00, 0x00
+   }
+   },
+   {
+   500-166-nand, NAND CPU: 500 PLB: 166 OPB:  83 EBC:  55,
+   {
+   

Re: [U-Boot] ARM pull request v3

2009-10-19 Thread Dirk Behme
Tom wrote:
 This is what has changed since v2
 
 10,12c10,12
CPU9260 : fix machine ID when using a CPU9G20.
fix CPU9260/CPU9G20 compile warnings
main.c: In function 'abortboot':
 ---
 AT91 CPU9260 Fix machine ID when using a CPU9G20.
 AT91 CPU9260 CPU9G20 Fix compile warnings
 AT91 CPUAT91 Fix compiler warning
 45,46c45
  Steve Sakoman (2):
TI: OMAP3: Refactors the SM911x driver
 ---
   Steve Sakoman (1):
 117d115
   drivers/net/smc911x.c |   12 +-
 161c159
 
 This comes from rebasing the arm master-sync branch

...

 I removed the sm911x patch.

After this is discussed now, could we apply it again?

Without this patch it will be broken.

Thanks

Dirk
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/5 v2] OMAP3: Fix SDRC init

2009-10-19 Thread Steve Sakoman
On Tue, Oct 6, 2009 at 7:17 PM, Nishanth Menon n...@ti.com wrote:
 Defaults are for Infineon DDR timings.
 Since none of the supported boards currently do
 XIP boot, these seem to be faulty. fix the values
 as per the calculations(ACTIMA,B), conf
 the sdrc power with pwdnen and wakeupproc bits

 Signed-off-by: Nishanth Menon n...@ti.com
 Cc: David B davi...@pacbell.net
 Cc: Vikram Pandita vikram.pand...@ti.com
 Cc: Richard Woodruff r-woodru...@ti.com
 Cc: Sandeep Paulraj s-paul...@ti.com
 Cc: Tom Rix tom@windriver.com
 Cc: Dirk Behme dirk.be...@googlemail.com
 ---
  cpu/arm_cortexa8/omap3/mem.c     |    3 ++-
  include/asm-arm/arch-omap3/cpu.h |    1 +
  include/asm-arm/arch-omap3/mem.h |    8 
  3 files changed, 7 insertions(+), 5 deletions(-)

 diff --git a/cpu/arm_cortexa8/omap3/mem.c b/cpu/arm_cortexa8/omap3/mem.c
 index 079c848..8731c9d 100644
 --- a/cpu/arm_cortexa8/omap3/mem.c
 +++ b/cpu/arm_cortexa8/omap3/mem.c
 @@ -164,7 +164,8 @@ void do_sdrc_init(u32 cs, u32 early)
                writel(SDP_SDRC_SHARING, sdrc_base-sharing);

                /* Disable Power Down of CKE cuz of 1 CKE on combo part */
 -               writel(SRFRONRESET | PAGEPOLICY_HIGH, sdrc_base-power);
 +               writel(WAKEUPPROC | PWDNEN | SRFRONRESET | PAGEPOLICY_HIGH,
 +                               sdrc_base-power);

                writel(ENADLL | DLLPHASE_90, sdrc_base-dlla_ctrl);
                sdelay(0x2);
 diff --git a/include/asm-arm/arch-omap3/cpu.h 
 b/include/asm-arm/arch-omap3/cpu.h
 index 8ab2e39..e51c4f3 100644
 --- a/include/asm-arm/arch-omap3/cpu.h
 +++ b/include/asm-arm/arch-omap3/cpu.h
 @@ -222,6 +222,7 @@ struct sdrc {

  #define PAGEPOLICY_HIGH                (0x1  0)
  #define SRFRONRESET            (0x1  7)
 +#define PWDNEN                 (0x1  2)
  #define WAKEUPPROC             (0x1  26)

  #define DDR_SDRAM              (0x1  0)
 diff --git a/include/asm-arm/arch-omap3/mem.h 
 b/include/asm-arm/arch-omap3/mem.h
 index 5b9ac75..31cbdef 100644
 --- a/include/asm-arm/arch-omap3/mem.h
 +++ b/include/asm-arm/arch-omap3/mem.h
 @@ -78,16 +78,16 @@ enum {
  #define TRP_165                3
  #define TRAS_165       7
  #define TRC_165                10
 -#define TRFC_165       21
 +#define TRFC_165       12
  #define V_ACTIMA_165   ((TRFC_165  27) | (TRC_165  22) | \
                        (TRAS_165  18) | (TRP_165  15) |  \
                        (TRCD_165  12) | (TRRD_165  9) |  \
                        (TDPL_165  6) | (TDAL_165))

  #define TWTR_165       1
 -#define TCKE_165       1
 -#define TXP_165                5
 -#define XSR_165                23
 +#define TCKE_165       2
 +#define TXP_165                2
 +#define XSR_165                20
  #define V_ACTIMB_165   (((TCKE_165  12) | (XSR_165  0)) |  \
                        (TXP_165  8) | (TWTR_165  16))

 --
 1.6.0.4

I see issues after applying this patch (Overo/Beagle).

In about half of my boot attempts I get a hang after Uncompressing Linux

In the other half I get many many errors of this type:

SLAB: cache with size 192 has lost its name

Reverting the patch restores normal operation.

So it seems that the Infineon timings do not work on systems with Micron memory.

Steve
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/5 v2] OMAP3: Fix SDRC init

2009-10-19 Thread Dirk Behme
Steve Sakoman wrote:
 On Tue, Oct 6, 2009 at 7:17 PM, Nishanth Menon n...@ti.com wrote:
 Defaults are for Infineon DDR timings.
 Since none of the supported boards currently do
 XIP boot, these seem to be faulty. fix the values
 as per the calculations(ACTIMA,B), conf
 the sdrc power with pwdnen and wakeupproc bits

 Signed-off-by: Nishanth Menon n...@ti.com
 Cc: David B davi...@pacbell.net
 Cc: Vikram Pandita vikram.pand...@ti.com
 Cc: Richard Woodruff r-woodru...@ti.com
 Cc: Sandeep Paulraj s-paul...@ti.com
 Cc: Tom Rix tom@windriver.com
 Cc: Dirk Behme dirk.be...@googlemail.com
 ---
  cpu/arm_cortexa8/omap3/mem.c |3 ++-
  include/asm-arm/arch-omap3/cpu.h |1 +
  include/asm-arm/arch-omap3/mem.h |8 
  3 files changed, 7 insertions(+), 5 deletions(-)

 diff --git a/cpu/arm_cortexa8/omap3/mem.c b/cpu/arm_cortexa8/omap3/mem.c
 index 079c848..8731c9d 100644
 --- a/cpu/arm_cortexa8/omap3/mem.c
 +++ b/cpu/arm_cortexa8/omap3/mem.c
 @@ -164,7 +164,8 @@ void do_sdrc_init(u32 cs, u32 early)
writel(SDP_SDRC_SHARING, sdrc_base-sharing);

/* Disable Power Down of CKE cuz of 1 CKE on combo part */
 -   writel(SRFRONRESET | PAGEPOLICY_HIGH, sdrc_base-power);
 +   writel(WAKEUPPROC | PWDNEN | SRFRONRESET | PAGEPOLICY_HIGH,
 +   sdrc_base-power);

writel(ENADLL | DLLPHASE_90, sdrc_base-dlla_ctrl);
sdelay(0x2);
 diff --git a/include/asm-arm/arch-omap3/cpu.h 
 b/include/asm-arm/arch-omap3/cpu.h
 index 8ab2e39..e51c4f3 100644
 --- a/include/asm-arm/arch-omap3/cpu.h
 +++ b/include/asm-arm/arch-omap3/cpu.h
 @@ -222,6 +222,7 @@ struct sdrc {

  #define PAGEPOLICY_HIGH(0x1  0)
  #define SRFRONRESET(0x1  7)
 +#define PWDNEN (0x1  2)
  #define WAKEUPPROC (0x1  26)

  #define DDR_SDRAM  (0x1  0)
 diff --git a/include/asm-arm/arch-omap3/mem.h 
 b/include/asm-arm/arch-omap3/mem.h
 index 5b9ac75..31cbdef 100644
 --- a/include/asm-arm/arch-omap3/mem.h
 +++ b/include/asm-arm/arch-omap3/mem.h
 @@ -78,16 +78,16 @@ enum {
  #define TRP_1653
  #define TRAS_165   7
  #define TRC_16510
 -#define TRFC_165   21
 +#define TRFC_165   12
  #define V_ACTIMA_165   ((TRFC_165  27) | (TRC_165  22) | \
(TRAS_165  18) | (TRP_165  15) |  \
(TRCD_165  12) | (TRRD_165  9) |  \
(TDPL_165  6) | (TDAL_165))

  #define TWTR_165   1
 -#define TCKE_165   1
 -#define TXP_1655
 -#define XSR_16523
 +#define TCKE_165   2
 +#define TXP_1652
 +#define XSR_16520
  #define V_ACTIMB_165   (((TCKE_165  12) | (XSR_165  0)) |  \
(TXP_165  8) | (TWTR_165  16))

 --
 1.6.0.4
 
 I see issues after applying this patch (Overo/Beagle).
 
 In about half of my boot attempts I get a hang after Uncompressing Linux
 
 In the other half I get many many errors of this type:
 
 SLAB: cache with size 192 has lost its name
 
 Reverting the patch restores normal operation.

What's about removing it from recent ARM pull request than and do some 
further testing?

Thanks for testing

Dirk
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v1 1/2] NET: Move MDIO regs out of TSEC Space

2009-10-19 Thread Kumar Gala
 diff --git a/include/asm-ppc/immap_85xx.h b/include/asm-ppc/
 immap_85xx.h index 4194295..6c9baac 100644
 --- a/include/asm-ppc/immap_85xx.h
 +++ b/include/asm-ppc/immap_85xx.h
 @@ -1932,4 +1932,14 @@ typedef struct ccsr_gur { #define
 CONFIG_SYS_MPC85xx_USB_ADDR \
 (CONFIG_SYS_IMMR + CONFIG_SYS_MPC85xx_USB_OFFSET)

 +/* TSEC and MDIO OFFSETS */
 +#define CONFIG_SYS_TSEC1_OFFSET(0x24000)
 +#define TSEC_SIZE  (0x01000)
 +
 +#define CONFIG_SYS_MDIO1_OFFSET(0x24520)
 +#define MDIO_OFFSET(0x01000)
 +
 +#define TSEC_BASE_ADDR (CONFIG_SYS_IMMR +
 CONFIG_SYS_TSEC1_OFFSET)
 +#define MDIO_BASE_ADDR (CONFIG_SYS_IMMR +
 CONFIG_SYS_MDIO1_OFFSET)
 +

 Do we even need these here?  We haven't historically.

 Since these are platform dependent, we want the above to be defined
 here.

than we should remove them from tsec.h

 #endif /*__IMMAP_85xx__*/
 diff --git a/include/tsec.h b/include/tsec.h index 0ac3034..342c07e
 100644
 --- a/include/tsec.h
 +++ b/include/tsec.h
 @@ -7,7 +7,7 @@
 *  terms of the GNU Public License, Version 2, incorporated
 *  herein by reference.
 *
 - * Copyright 2004, 2007 Freescale Semiconductor, Inc.
 + * Copyright 2004, 2007, 2009  Freescale Semiconductor, Inc.
 * (C) Copyright 2003, Motorola, Inc.
 * maintained by Xianghua Xiao (x.x...@motorola.com)
 * author Andy Fleming
 @@ -24,18 +24,34 @@
#define CONFIG_SYS_TSEC1_OFFSET  (0x24000)
 #endif

 -#define TSEC_SIZE  0x01000
 +#ifndef TSEC_SIZE
 +   #define TSEC_SIZE   0x01000
 +#endif

 Do we really need a #ifndef here?

 Yes. In case it is not defined in immap_85xx, wefall back to the older
 options.

This duplication is pointless.  When is TSEC_SIZE anything about 0x1000?

 +
 +#ifndef CONFIG_SYS_MDIO1_OFFSET
 +#define CONFIG_SYS_MDIO1_OFFSET(0x24520)
 +#endif

The only time this will change is between TSEC2 and TSEC1.  Nothing  
else has caused this to change.


 the parens aren't needed.

 OK.

 +
 +#ifndef MDIO_OFFSET
 +   #define MDIO_OFFSET 0x01000
 +#endif

 How about calling this TSEC_MDIO_OFFSET

 OK, I will change it (I just carried forward the existing #define
 variable )

 /* FIXME:  Should these be pushed back to 83xx and 85xx
 config files?
 */ #if defined(CONFIG_MPC85xx) || defined(CONFIG_MPC86xx) \
 || defined(CONFIG_MPC83xx)
 +#ifndef TSEC_BASE_ADDR
#define TSEC_BASE_ADDR   (CONFIG_SYS_IMMR +
 CONFIG_SYS_TSEC1_OFFSET)
 #endif
 +#ifndef MDIO_BASE_ADDR
 +#define MDIO_BASE_ADDR (CONFIG_SYS_IMMR +
 CONFIG_SYS_MDIO1_OFFSET)
 +#endif
 +#endif

 Do we really need the #ifndef's here?

 The correct place for defining the MDIO and TSEC base addr is the
 platformm file as they are
 dependent on the platform not on the IP itself ( although in most  
 cases
 for a particular version of IP,
 this may not change) and since these were earlier defined here, I have
 defined these as a part of immap_85xx.h
 But for all other platforms they are not defined yet, hence #ifndefs  
 are
 required.
 Once these base addrs are moved to platform specific files,they can be
 removed complatelly form here.

I'm ok if you want to move them out of tsec.h into immap_85xx.h,  
imap_83xx.h, and imap_86xx.h


- k

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/5 v2] OMAP3: Fix SDRC init

2009-10-19 Thread Steve Sakoman
On Mon, Oct 19, 2009 at 7:55 AM, Dirk Behme dirk.be...@googlemail.com wrote:
 Steve Sakoman wrote:

 On Tue, Oct 6, 2009 at 7:17 PM, Nishanth Menon n...@ti.com wrote:

 Defaults are for Infineon DDR timings.
 Since none of the supported boards currently do
 XIP boot, these seem to be faulty. fix the values
 as per the calculations(ACTIMA,B), conf
 the sdrc power with pwdnen and wakeupproc bits

 Signed-off-by: Nishanth Menon n...@ti.com
 Cc: David B davi...@pacbell.net
 Cc: Vikram Pandita vikram.pand...@ti.com
 Cc: Richard Woodruff r-woodru...@ti.com
 Cc: Sandeep Paulraj s-paul...@ti.com
 Cc: Tom Rix tom@windriver.com
 Cc: Dirk Behme dirk.be...@googlemail.com
 ---
  cpu/arm_cortexa8/omap3/mem.c     |    3 ++-
  include/asm-arm/arch-omap3/cpu.h |    1 +
  include/asm-arm/arch-omap3/mem.h |    8 
  3 files changed, 7 insertions(+), 5 deletions(-)

 diff --git a/cpu/arm_cortexa8/omap3/mem.c b/cpu/arm_cortexa8/omap3/mem.c
 index 079c848..8731c9d 100644
 --- a/cpu/arm_cortexa8/omap3/mem.c
 +++ b/cpu/arm_cortexa8/omap3/mem.c
 @@ -164,7 +164,8 @@ void do_sdrc_init(u32 cs, u32 early)
               writel(SDP_SDRC_SHARING, sdrc_base-sharing);

               /* Disable Power Down of CKE cuz of 1 CKE on combo part */
 -               writel(SRFRONRESET | PAGEPOLICY_HIGH, sdrc_base-power);
 +               writel(WAKEUPPROC | PWDNEN | SRFRONRESET |
 PAGEPOLICY_HIGH,
 +                               sdrc_base-power);

               writel(ENADLL | DLLPHASE_90, sdrc_base-dlla_ctrl);
               sdelay(0x2);
 diff --git a/include/asm-arm/arch-omap3/cpu.h
 b/include/asm-arm/arch-omap3/cpu.h
 index 8ab2e39..e51c4f3 100644
 --- a/include/asm-arm/arch-omap3/cpu.h
 +++ b/include/asm-arm/arch-omap3/cpu.h
 @@ -222,6 +222,7 @@ struct sdrc {

  #define PAGEPOLICY_HIGH                (0x1  0)
  #define SRFRONRESET            (0x1  7)
 +#define PWDNEN                 (0x1  2)
  #define WAKEUPPROC             (0x1  26)

  #define DDR_SDRAM              (0x1  0)
 diff --git a/include/asm-arm/arch-omap3/mem.h
 b/include/asm-arm/arch-omap3/mem.h
 index 5b9ac75..31cbdef 100644
 --- a/include/asm-arm/arch-omap3/mem.h
 +++ b/include/asm-arm/arch-omap3/mem.h
 @@ -78,16 +78,16 @@ enum {
  #define TRP_165                3
  #define TRAS_165       7
  #define TRC_165                10
 -#define TRFC_165       21
 +#define TRFC_165       12
  #define V_ACTIMA_165   ((TRFC_165  27) | (TRC_165  22) | \
                       (TRAS_165  18) | (TRP_165  15) |  \
                       (TRCD_165  12) | (TRRD_165  9) |  \
                       (TDPL_165  6) | (TDAL_165))

  #define TWTR_165       1
 -#define TCKE_165       1
 -#define TXP_165                5
 -#define XSR_165                23
 +#define TCKE_165       2
 +#define TXP_165                2
 +#define XSR_165                20
  #define V_ACTIMB_165   (((TCKE_165  12) | (XSR_165  0)) |  \
                       (TXP_165  8) | (TWTR_165  16))

 --
 1.6.0.4

 I see issues after applying this patch (Overo/Beagle).

 In about half of my boot attempts I get a hang after Uncompressing
 Linux

 In the other half I get many many errors of this type:

 SLAB: cache with size 192 has lost its name

 Reverting the patch restores normal operation.

 What's about removing it from recent ARM pull request than and do some
 further testing?

That sounds like a good plan to me.

Steve
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] trouble with u-boot and bist fail on pcie adapter

2009-10-19 Thread ayman
On Mon, Oct 19, 2009 at 09:35:54AM +0200, Wolfgang Denk wrote:
 
 
 Did you try setting the pciscandelay variable? Try setting it to 5
 (or 10) [seconds]. See also
 
snip

Thanks Wolfgang,

Per your suggestion, we tried setting the delay (and observed a delay),
but the outcome did not change.  The BIST still got set to fail and 
caused the board to become unresponsive, and thus Linux fails the detection
later.  FWIW, we've tried both with and without switches in between with no
change in the behavior.  We observe the transactions on a lecroy pcie 
analyzer.

I suppose one question that lingers in my mind is why does u-boot do 
anything other than just configure the IO/MEM bars?  Is there some specific
reason it is touching the BIST controls?  If I could understand the reason
for this, I might be able to do some debug and at least determine whether
I need to change u-boot, Linux, or both.

Thanks so much,
Ayman


___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] qemu_mips: Fix CONFIG_NET_MULTI build warning

2009-10-19 Thread Ben Warren
Hi Shinya,

Shinya Kuribayashi wrote:
 eth.c:497:2: warning: #warning Ethernet driver is deprecated. Please update 
 to use CONFIG_NET_MULTI

 Signed-off-by: Shinya Kuribayashi skuri...@pobox.com
 ---

  I have a few concerns about this fix:

  First.  I'm not sure why CONFIG_NET_MULTI is undefed for qemu_mips,
  while CONFIG_DRIVER_NE2000 has been enabled for qemu_mips at an early
  stage.

  I don't follow recent changes around eth.c and CONFIG_NET_MULTI, but
  it's probably CONFIG_NET_MULTI used to be used strictly for multi
  ports, isn't it?

   
Currently, there are two incompatible networking APIs.  One that uses 
CONFIG_NET_MULTI, and one that doesn't.  I'm trying to move everything 
towards the former (single-port applications are of course a degenerate 
instance of multi-port ones).  Once all drivers have been ported to the 
MULTI API, that config option will magically disappear.
  Next.  As far as looking at drivers/net/ne2000*.[ch], NE2000 driver
  doesn't seem to require board_eth_init() or cpu_eth_init().  Right?
  Therefore I've not added a corresponding hook in board/qemu_mips/
  qemu_mips.c.  If my understanding is wrong, please let me know.

   
The NE2000 driver hasn't been ported yet.  It's on my short term to-do 
list, and will be in the next release (01.2010, I guess?)
  include/configs/qemu-mips.h |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)

 diff --git a/include/configs/qemu-mips.h b/include/configs/qemu-mips.h
 index cbacdf9..f419174 100644
 --- a/include/configs/qemu-mips.h
 +++ b/include/configs/qemu-mips.h
 @@ -157,7 +157,7 @@
  
  #define CONFIG_ENV_OVERWRITE 1
  
 -#undef CONFIG_NET_MULTI
 +#define CONFIG_NET_MULTI
  
   
This won't do anything other than disabling networking.  Since QEMU is 
an emulator, though, maybe it would make sense to use a device driver 
that has CONFIG_NET_MULTI support?
  #define MEM_SIZE 128
  
   
If the warning isn't more than a nuisance, please live with it for now.

regards,
Ben
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] Root-Filesystem ober NFS doesn't work... -- Kernel panic

2009-10-19 Thread Michael Schmid
Hi!

I'm trying to get root-filesystem over NFS running. I'm a bit confused about 
all the new stuff and I don't know where I shall  start  searching for the 
problem :-(

I have:
Board: Artila M501 board with AT91RM9200
U-Boot: 1.1.2
Linux: 2.6
Flash: 16MB
SDRAM: 64MB

My U-Boot configuration is:

***  START ***
baudrate=115200
ethaddr=00:13:48:00:77:b5
rootpath=/opt/arm
lel=1
initrd=0x2080,8192000 ramdisk_size=15360 root=/dev/ram0 rw
loader=tftp 2100 m501_64M.alf
mtdparts=phys_mapped_flash:128k(loader)ro,128k(reserved)ro,1408k(linux)ro,2560(ramdisk)ro,-(userdisk)
filesize=3A3
netmask=255.255.255.0
bootcmd=bootm 1004 101a
kernel=tftp 2100 M501K;erase 1004 1019;cp.b 2100 1004 
$(filesize)
skernel=loadb 2100;erase 1004 1019;cp.b 2100 1004 
$(filesize)
ramdisk=tftp 2100 M501R;erase 101a 1041;cp.b 2100 101a 
$(filesize)
sramdisk=loadb 2100;erase 101a 1041;cp.b 2100 101a 
$(filesize)
ipaddr=192.168.2.196
bootdelay=1
bargs=setenv bootargs mem=64M console=$(console),115200 
initrd=0x2080,8192000 ramdisk_size=15360 root=/dev/ram0 rw 
mtdparts=phys_mapped_flash:128k(loader)ro,128k(env)ro,1408k(linux)ro,2560k(ramdisk)ro,-(userdisk)
serverip=192.168.2.40
console=ttyS0
gateway=192.168.2.1
bootargs=root=/dev/nfs rw nfsroot=192.168.2.40:/opt/arm 
ip=192.168.2.196:192.168.2.40:192.168.2.254:255.255.255.0:michael-laptop::off 
console=ttyS0,115200
bootm=1004 - 101a
stdin=serial
stdout=serial
stderr=serial
*** END ***

If I start my Board, the kernel boots and it looks fine until I get a kernel 
panic -- See the attached textfile!


Do you have any hints what the problems might be. I'm pretty sure that the 
NFS-Server works fine, but I'm not sure 100% (How can I find out if it works? 
Any Idea?).

Thanks!
Michael



-- 
GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01
Uncompressing 
Linux...
 done, booting the kernel.














































































































___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] Root-Filesystem ober NFS doesn't work... -- Kernel panic --- corrupt textfile

2009-10-19 Thread Michael Schmid
I'm sorry, somehow the log.txt in my last e-mail got corrupted

Here it is:

Uncompressing 
Linux...
 
done, booting the kernel.
 Linux version 2.6.14-M5 (a...@ace-yang) (gcc version 3.3.2) #837 Tue 
Aug 14 14:14:03 CST 2007
 CPU: ARM920Tid(wb) [41129200] revision 0 (ARMv4T)
 Machine: Artila M501 SOM
 Memory policy: ECC disabled, Data cache writeback
 Clocks: CPU 179 MHz, master 59 MHz, main 18.432 MHz
 CPU0: D VIVT write-back cache
 CPU0: I cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
 CPU0: D cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
 Built 1 zonelists
 Kernel command line: root=/dev/nfs rw nfsroot=192.168.2.40:/opt/arm 
ip=192.168.2.196:192.168.2.40:192.168.2.254:255.255.255.0:michael-laptop::off 
console=ttyS0,115200
 AT91: 128 gpio irqs in 4 banks
 PID hash table entries: 256 (order: 8, 4096 bytes)
 Console: colour dummy device 80x30
 Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
 Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
 Memory: 32MB = 32MB total
 Memory: 26824KB available (2389K code, 523K data, 104K init)
 Mount-cache hash table entries: 512
 CPU: Testing write buffer coherency: ok
 checking if image is initramfs...it isn't (no cpio magic); looks like 
an initrd
 Freeing initrd memory: 2509K
 NET: Registered protocol family 16
 SCSI subsystem initialized
 usbcore: registered new driver usbfs
 usbcore: registered new driver hub
 NetWinder Floating Point Emulator V0.97 (extended precision)
 JFFS2 version 2.2. (NAND) (C) 2001-2003 Red Hat, Inc.
 Initializing Cryptographic API
 Matrix500 RTC driver.
 Matrix500 GPIO Driver Loaded.
 AT91 SPI driver loaded
 AT91 Watchdog Timer enabled (5 seconds)
 ttyS0 at MMIO 0xfefff200 (irq = 1) is a AT91_SERIAL
 ttyS1 at MMIO 0xfefc (irq = 6) is a AT91_SERIAL
 ttyS2 at MMIO 0xfefc4000 (irq = 7) is a AT91_SERIAL
 ttyS3 at MMIO 0xfefc8000 (irq = 8) is a AT91_SERIAL
 ttyS4 at MMIO 0xfefcc000 (irq = 9) is a AT91_SERIAL
 io scheduler noop registered
 io scheduler anticipatory registered
 RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksize
 PPP generic driver version 2.4.2
 PPP BSD Compression module registered
 NET: Registered protocol family 24
 eth0: Link now 100-FullDuplex
 eth0: AT91 ethernet at 0xfefbc000 int=24 100-FullDuplex (00:13:48:00:77:b5)
 eth0: Davicom 9161AE PHY (Copper)
 physmap flash device: 100 at 1000
 phys_mapped_flash: Found 1 x16 devices at 0x0 in 16-bit bank
  Intel/Sharp Extended Query Table at 0x010A
 Using buffer write method
 cfi_cmdset_0001: Erase suspend on write enabled
 RedBoot partition parsing not available
 block2mtd: version $Revision: 1.28 $
 at91rm9200-ohci at91rm9200-ohci: AT91RM9200 OHCI
 at91rm9200-ohci at91rm9200-ohci: new USB bus registered, assigned bus 
number 1
 at91rm9200-ohci at91rm9200-ohci: irq 23, io mem 0x0030
 usb usb1: Product: AT91RM9200 OHCI
 usb usb1: Manufacturer: Linux 2.6.14-M5 ohci_hcd
 usb usb1: SerialNumber: at91rm9200
 hub 1-0:1.0: USB hub found
 hub 1-0:1.0: 2 ports detected
 usbcore: registered new driver cdc_acm
 drivers/usb/class/cdc-acm.c: v0.23:USB Abstract Control Model driver 
for USB modems and ISDN adapters
 usbcore: registered new driver usblp
 drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver
 Initializing USB Mass Storage driver...
 usbcore: registered new driver usb-storage
 USB Mass Storage support registered.
 rtusb init 
 usbcore: registered new driver rt73
 usbcore: registered new driver usbserial
 drivers/usb/serial/usb-serial.c: USB Serial support registered for Generic
 usbcore: registered new driver usbserial_generic
 drivers/usb/serial/usb-serial.c: USB Serial Driver core v2.0
 drivers/usb/serial/usb-serial.c: USB Serial support registered for FTDI 
USB Serial Device
 usbcore: registered new driver ftdi_sio
 drivers/usb/serial/ftdi_sio.c: v1.4.3:USB FTDI Serial Converters Driver
 drivers/usb/serial/usb-serial.c: USB Serial support registered for PL-2303
 usbcore: registered new driver pl2303
 drivers/usb/serial/pl2303.c: Prolific PL2303 USB to serial adaptor 
driver v0.12
 mice: PS/2 mouse device common for all mice
 i2c /dev entries driver
 Found AT91 i2c
 RTC found.
 AT91RM9200 MCI initialized
 NET: Registered protocol family 2
 IP route cache hash table entries: 512 (order: -1, 2048 bytes)
 TCP established hash table entries: 2048 (order: 1, 8192 bytes)
 TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
 TCP: Hash tables configured (established 2048 bind 2048)
 TCP reno registered
 ip_conntrack version 2.3 (256 buckets, 2048 max) - 240 bytes per conntrack
 ctnetlink v0.90: registering with nfnetlink.
 ip_tables: (C) 2000-2002 Netfilter core team
 ipt_recent v0.3.1: Stephen Frost sfr...@snowman.net.  
http://snowman.net/projects/ipt_recent/
 arp_tables: (C) 2002 David S. Miller
 TCP bic registered
 Netfilter messages via NETLINK v0.30.
 NET: Registered protocol 

Re: [U-Boot] Root-Filesystem ober NFS doesn't work... -- Kernel panic

2009-10-19 Thread Wolfgang Denk
Dear Michael Schmid,

In message 20091019165934.319...@gmx.net you wrote:

 I'm trying to get root-filesystem over NFS running. I'm a bit
 confused about all the new stuff and I don't know where I shall start
 searching for the problem :-(

 I have:
 Board: Artila M501 board with AT91RM9200
 U-Boot: 1.1.2

more than 4.5 years old!

 Linux: 2.6

2.6.14 according to your log = 4 years old

...
 bootcmd=bootm 1004 101a

This setting means you are trying to boot with a ramdisk. If you want
to boot with root file system over NFS, you MUST NOT pass a ramdiska
ddress, i. e. you must not use two arguments to the bootm command.

 bootargs=root=/dev/nfs rw nfsroot=192.168.2.40:/opt/arm 
 ip=192.168.2.196:192.168.2.40:192.168.2.254:255.255.255.0:michael-laptop::off 
 console=ttyS0,115200

I don't think you want to assign the host name michael-laptop to
your target board (but this is no really critical at this moment yet).

 bootm=1004 - 101a

This setting is completely bogus. It has no meaning. Delete it.

  Linux version 2.6.14-M5 (a...@ace-yang) (gcc version 3.3.2) #837 Tue 
 Aug 14 14:14:03 CST 2007
  CPU: ARM920Tid(wb) [41129200] revision 0 (ARMv4T)
  Machine: Artila M501 SOM
...
  RAMDISK: Compressed image found at block 0
  VFS: Mounted root (ext2 filesystem).

Here you can see that the kernel mounts the ramdisk image which you
provided.

  VFS: Cannot open root device nfs or unknown-block(0,255)
  Please append a correct root= boot option
  Kernel panic - not syncing: VFS: Unable to mount root fs on 
 unknown-block(0,255)

...and then it gets confused. 

 Do you have any hints what the problems might be. I'm pretty sure
 that the NFS-Server works fine, but I'm not sure 100% (How can I find
 out if it works? Any Idea?).

Well, just mount the root file system from another host?

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
An armed society is a polite society.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] Nand: Implement raw read/write and biterr

2009-10-19 Thread Scott Wood
On Wed, Sep 30, 2009 at 02:22:09PM -0500, Tom wrote:
 John Rigby wrote:
  @@ -494,13 +600,16 @@ U_BOOT_CMD(nand, CONFIG_SYS_MAXARGS, 1, do_nand,
  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
 + .oob - reads/writes oob only.\n
 + .raw - reads/writes both main and oob with no error\n
 +detection or correction\n

 Writing the oob area directly is UNSAFE.
 Having done to myself, it was a pain to undo.
 You should put at least document that.

If we warn about oob being unsafe, the same warning should be made for
raw.

-Scott
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] Pull request - net

2009-10-19 Thread Ben Warren
Wolfgang,

Please pull the net branch (master).  This includes a patch that was 
somehow lost back in April.  It's pretty low-risk.

The following changes since commit f67066b6b0740b826ed862615c5ab022aaf4779a:
  Mike Frysinger (1):
envcrc: check return value of fwrite()

are available in the git repository at:

  git://git.denx.de/u-boot-net.git master

Daniel Mack (1):
  smc911x: add support for LAN9220

 drivers/net/smc911x.h |2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)


regards,
Ben

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] Please check if the patch for SMSC LAN9220 is missing

2009-10-19 Thread Ben Warren
Seunghyeon,

Seunghyeon Rhee (이승현) wrote:
 There were two patches submitted to add support for SMSC LAN9220 and
 LAN9221.
 The latter (more recent one) has been applied but the former hasn't yet.
 Refer to the
 following and check please.

 Regards,
 Seunghyeon Rhee
   
Nice catch!  I honestly don't know what happened here.  I've applied the 
LAN9220 patch (updated) to the net repo.

regards,
Ben
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] [OneNAND IPL] OneNAND board init support

2009-10-19 Thread Scott Wood
On Wed, Oct 07, 2009 at 12:12:16PM +0900, Kyungmin Park wrote:
 Sorry, there's typo.
 
 Here's fixed patch.

Please resend the amended patch, complete with changelog, without trailing
quoted material, so that I can just apply one e-mail.

-Scott
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH 1/2] Don't let the command-line ARCH=powerpc override our redefinition to ppc.

2009-10-19 Thread Scott Wood
The override keyword is needed for make to take our version over the one
specified on the command line, and remove it from the list of command line
overrides that are passed to submakes.  IMHO, the combination of export
and override ought to do this automatically, but oh well.

Signed-off-by: Scott Wood scottw...@freescale.com
---
 Makefile |3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/Makefile b/Makefile
index bed9469..f9e7a50 100644
--- a/Makefile
+++ b/Makefile
@@ -134,7 +134,8 @@ unexport CDPATH
 #
 
 ifeq ($(ARCH),powerpc)
-ARCH = ppc
+override ARCH = ppc
+MAKEOVERRIDES := $(MAKEOVERRIDES:ARCH%=)
 endif
 
 # The tools are needed early, so put this first
-- 
1.6.4.4
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH 2/2] tools: Use override when changing CC, CFLAGS, etc.

2009-10-19 Thread Scott Wood
If the user has specified a CC or similar on the command line, that is the
cross compiler, not the host compiler.  Override is needed to keep these
assignments from being ignored in that case.

Signed-off-by: Scott Wood scottw...@freescale.com
---
 tools/Makefile |   10 +-
 tools/gdb/Makefile |6 +++---
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/tools/Makefile b/tools/Makefile
index 2a9a9fd..6bf3fde 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -139,21 +139,21 @@ LIBFDT_OBJS   := $(addprefix 
$(obj),$(LIBFDT_OBJ_FILES-y))
 # Use native tools and options
 # Define __KERNEL_STRICT_NAMES to prevent typedef overlaps
 #
-CPPFLAGS   = -idirafter $(SRCTREE)/include \
+override CPPFLAGS = -idirafter $(SRCTREE)/include \
-idirafter $(OBJTREE)/include2 \
-idirafter $(OBJTREE)/include \
-I $(SRCTREE)/libfdt \
-I $(SRCTREE)/tools \
-DTEXT_BASE=$(TEXT_BASE) -DUSE_HOSTCC \
-D__KERNEL_STRICT_NAMES
-CFLAGS = $(HOSTCFLAGS) $(CPPFLAGS) -O
+override CFLAGS = $(HOSTCFLAGS) $(CPPFLAGS) -O
 
 # No -pedantic switch to avoid libfdt compilation warnings
 FIT_CFLAGS = -Wall $(CPPFLAGS) -O
 
-AFLAGS= -D__ASSEMBLY__ $(CPPFLAGS)
-CC= $(HOSTCC)
-STRIP = $(HOSTSTRIP)
+override AFLAGS = -D__ASSEMBLY__ $(CPPFLAGS)
+override CC = $(HOSTCC)
+override STRIP = $(HOSTSTRIP)
 MAKEDEPEND = makedepend
 
 all:   $(obj).depend $(BINS) $(LOGO-y) subdirs
diff --git a/tools/gdb/Makefile b/tools/gdb/Makefile
index 0a5687d..dca97f4 100644
--- a/tools/gdb/Makefile
+++ b/tools/gdb/Makefile
@@ -37,9 +37,9 @@ BINS  := $(addprefix $(obj),$(BINS))
 #
 # Use native tools and options
 #
-CPPFLAGS   = -I$(BFD_ROOT_DIR)/include
-CFLAGS = $(HOSTCFLAGS) -O $(CPPFLAGS)
-CC= $(HOSTCC)
+override CPPFLAGS = -I$(BFD_ROOT_DIR)/include
+override CFLAGS = $(HOSTCFLAGS) -O $(CPPFLAGS)
+override CC = $(HOSTCC)
 MAKEDEPEND = makedepend
 
 HOSTOS := $(shell uname -s | sed -e 's/\([Cc][Yy][Gg][Ww][Ii][Nn]\).*/cygwin/')
-- 
1.6.4.4
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/2] cmd_nand: Remove duplicate include

2009-10-19 Thread Scott Wood
On Thu, Oct 15, 2009 at 10:48:17AM -0500, Peter Tyser wrote:
 Also remove vague, unnecessary comment
 
 Signed-off-by: Peter Tyser pty...@xes-inc.com

Applied both patches to u-boot-nand-flash/next

-Scott
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] DM9000 issue in DM355

2009-10-19 Thread Paulraj, Sandeep
Ben,

I was taking a closer look at the DM9000 driver by trying it on the DM355 EVM. 
And it behaving a little different from before, i.e before we moved to the 
NET_MULTI stuff.

When the board comes after I reflash with a new U-boot image, I no longer see 
the ethaddr being set. But when I do a tftp I can see the ethaddr being read. 
tftp complains and says no ethaddr set.

So then I goto the U-Boot prompt and can clearly see that after giving the tftp 
command I have the ethaddr in my environment.

I do a saveenv and set a static ip and then can boot the kernel.

Even dhcp command does not work and times out.

Is there any CONFIG flag I am missing?

Just a couple months ago the DM9000 worked fine without any such issues.

Thanks,
Sandeep

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/2 v4] env: only build env_embedded and envcrc when needed

2009-10-19 Thread Mike Frysinger
On Monday 19 October 2009 05:31:36 Wolfgang Denk wrote:
 Mike Frysinger wrote:
  diff --git a/board/tqc/tqm8xx/u-boot.lds b/board/tqc/tqm8xx/u-boot.lds
  index 2df8d84..8207b2c 100644
  --- a/board/tqc/tqm8xx/u-boot.lds
  +++ b/board/tqc/tqm8xx/u-boot.lds
  @@ -21,6 +21,8 @@
* MA 02111-1307 USA
*/
 
  +#include config.h
  +
   OUTPUT_ARCH(powerpc)
   /* Do we need any of these for elf?
  __DYNAMIC = 0;*/
  @@ -64,8 +66,10 @@ SECTIONS
   lib_generic/zlib.o (.text)
   lib_ppc/cache.o(.text)
 
  +#ifdef CONFIG_ENV_IS_EMBEDDED
   . = DEFINED(env_offset) ? env_offset : .;
   common/env_embedded.o  (.ppcenv)
  +#endif
 
 All TQM8xx boards use a hand-optimized linker script that places  the
 envrionment  (both  the  primary  and  the redundant copies) into the
 small boot sectors of the bottom boot block type NOR  flash  used  on
 these  boards  (and the same is true for other boards as well; I know
 this for sure at least for  IVM*,  km8xx,  purple,  spc1920,  stxxtc,
 trab).
 
 However, none of these #defines CONFIG_ENV_IS_EMBEDDED in their board
 config files.

if none of them have defined CONFIG_ENV_IS_EMBEDDED, then this code never 
would have expanded to anything.  if you look at the actual env_embedded.c 
code, it is completely wrapped in
#ifdef CONFIG_ENV_IS_EMBEDDED
...
#endif

thus env_offset would not be defined nor would env_embedded.o contain anything 
thus nothing would be injected thus nothing should be changed thus my proposed 
change should be fine
-mike


signature.asc
Description: This is a digitally signed message part.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 2/2] tools: Use override when changing CC, CFLAGS, etc.

2009-10-19 Thread Mike Frysinger
On Monday 19 October 2009 17:24:35 Scott Wood wrote:
 If the user has specified a CC or similar on the command line, that is the
 cross compiler, not the host compiler.  Override is needed to keep these
 assignments from being ignored in that case.

then again, if we didnt mix host and target variable names, this wouldnt be a 
problem.  in a sane world, all of the host stuff would be HOSTXX (or BUILDXX).
-mike


signature.asc
Description: This is a digitally signed message part.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 2/2] tools: Use override when changing CC, CFLAGS, etc.

2009-10-19 Thread Scott Wood
Mike Frysinger wrote:
 On Monday 19 October 2009 17:24:35 Scott Wood wrote:
 If the user has specified a CC or similar on the command line, that is the
 cross compiler, not the host compiler.  Override is needed to keep these
 assignments from being ignored in that case.
 
 then again, if we didnt mix host and target variable names, this wouldnt be a 
 problem.  in a sane world, all of the host stuff would be HOSTXX (or BUILDXX).

Right... I initially tried substituting in HOSTCC, but it still tried to 
use CC, probably from an implicit rule that would need to be made 
explicit in order to use HOSTCC.

I can try to respin it with a new explicit rule if y'all want.

-Scott
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] Possible NAND environment issue which i see on DM355 and DM365

2009-10-19 Thread Paulraj, Sandeep

Hello,

I see an issue while trying to save the environment on both the DM355 and DM365.

Here is the dump

DM365 EVM # saveenv
Saving Environment to NAND...
Erasing Nand...
Erasing at 0x3e0004 --   0% complete.
Writing to Nand... done
DM365 EVM #

If we look at the line, Erasing at 0x3e0004 --   0% complete.,
The diagnostics are clearly wrong. It should be Erasing at 0x3e --  100% 
complete.

I think this is an issue with the 64 bit support that is getting added to 
U-Boot. As usual I am willing to get corrected on what I just said.
The image is built of u-boot-ti and since I am in sync with arm , I don't 
believe I would have seen any NAND and environment related patches/updates over 
the last month or so.

Any commits/patches that is in u-boot that will result in me not seeing such 
issues?

I ask because I did not see this issues a couple months ago and the NAND driver 
is the same so I assume that the issue is with some other subsystem.

I must reiterate that both the DM355 and DM365 boot up a linux kernel just fine.

Thanks,
Sandeep




___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/2] Don't let the command-line ARCH=powerpc override our redefinition to ppc.

2009-10-19 Thread Wolfgang Denk
Dear Scott Wood,

In message 20091019212409.ga31...@loki.buserror.net you wrote:
 The override keyword is needed for make to take our version over the one
 specified on the command line, and remove it from the list of command line
 overrides that are passed to submakes.  IMHO, the combination of export
 and override ought to do this automatically, but oh well.

I have to admit that I don't see the problem. When I explicitly ask
for a specific ARCH setting on the command line (versus using some
setting I inherited from the envrionment, eventually even unaware of
the current value), then I do want to use that. So the current code
seems to do what I would expect from it.

Maybe my expectations are whacky, though.

I tend to NAK this one.

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 was playing poker the other night... with Tarot cards. I got a full
house and 4 people died.  - Steven Wright
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 2/2] tools: Use override when changing CC, CFLAGS, etc.

2009-10-19 Thread Wolfgang Denk
Dear Scott Wood,

In message 20091019212435.ga31...@loki.buserror.net you wrote:
 If the user has specified a CC or similar on the command line, that is the
 cross compiler, not the host compiler.  Override is needed to keep these
 assignments from being ignored in that case.
 
 Signed-off-by: Scott Wood scottw...@freescale.com
 ---
  tools/Makefile |   10 +-
  tools/gdb/Makefile |6 +++---
  2 files changed, 8 insertions(+), 8 deletions(-)

As Mike pointed out, we should rather consistently use HOSTCC when we
refer to the host's C compiler.

I suggest you rework the patch to do that.

Thanks.

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
Swap read error.  You lose your mind.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 2/2] tools: Use override when cha nging CC, CFLAGS , etc.

2009-10-19 Thread Mike Frysinger
On Monday 19 October 2009 17:56:37 Scott Wood wrote:
 Mike Frysinger wrote:
  On Monday 19 October 2009 17:24:35 Scott Wood wrote:
  If the user has specified a CC or similar on the command line, that is
  the cross compiler, not the host compiler.  Override is needed to keep
  these assignments from being ignored in that case.
 
  then again, if we didnt mix host and target variable names, this wouldnt
  be a problem.  in a sane world, all of the host stuff would be HOSTXX (or
  BUILDXX).
 
 Right... I initially tried substituting in HOSTCC, but it still tried to
 use CC, probably from an implicit rule that would need to be made
 explicit in order to use HOSTCC.
 
 I can try to respin it with a new explicit rule if y'all want.

if you feel like cleaning up all the host code, that'd be great, but i'm not 
going to NACK a patch that obviously fixes broken code ;)
-mike


signature.asc
Description: This is a digitally signed message part.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] Add mpc5125ads board and processor to the mpc512x family

2009-10-19 Thread John Rigby
Regarding 512x psc register maps:

The register map for 5125 does not just change the size of the registers.
Some registers change locations.  The issue is that the hardware guys
decided to fix the old broken register access.  The 5200, 5121, 5123 had
some registers that were:

Function A when read but function B when written.

For this case the old register is replaced by two read/write registers.  So
the index of all subsequent registers is incremented.

Function A on first access after writing to another register and Function B
on subsequent accesses.

This was also fixed by replacing the statefull register by two registers.

So the problem is painful but I believe doable.  The problem I never
resolved was dealing with this mess in linux where the same binary has to
work with both platforms.  I decided that the register accesses needed to be
done via an offsets array that was populated at run time but I never got
around to implementing that.

John




   + * MPC5121 PSC
   + * note: MPC5121e register overloading is handled by unions with
  #defines to
   + * reference the reg seemlessly these #defines must not exist for
  MPC5125 code
   + * since it does not have this overloading. Since the register naming
  is the
   + * same as the MPC5125 Reference Manual and this naming is exactly
 the
  reg names
   + * used in the init code (which is nearly identical) it causes
 compile
  errors to
   + * leave in and must be #ifdef'ed out.  It also helps to share code
  to have the
   + * same structure for both MPC5121 and MPC5125
 */
   I disagree. To me the code becomes pretty much unreadable.  I think we
   need to find a better implementation for this.
 
  Look Wolfgang ... It's very readable .. with a 5121 type

 You definition of readable does not match mine. I nak this code.


 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 is a time in the tides of men, Which, taken at its flood, leads
 on to success. On the other hand, don't count on it.   - T. K. Lawson
 ___
 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] [PATCH 1/2] Don't let the command-line ARCH=powerpc override our redefinition to ppc.

2009-10-19 Thread Scott Wood
Wolfgang Denk wrote:
 Dear Scott Wood,
 
 In message 20091019212409.ga31...@loki.buserror.net you wrote:
 The override keyword is needed for make to take our version over the one
 specified on the command line, and remove it from the list of command line
 overrides that are passed to submakes.  IMHO, the combination of export
 and override ought to do this automatically, but oh well.
 
 I have to admit that I don't see the problem. When I explicitly ask
 for a specific ARCH setting on the command line (versus using some
 setting I inherited from the envrionment, eventually even unaware of
 the current value), then I do want to use that. So the current code
 seems to do what I would expect from it.
 
 Maybe my expectations are whacky, though.
 
 I tend to NAK this one.

For the benefit of those who weren't on the IRC channel when we 
discussed this, I'll restate my objection.  I think you're reading too 
much into the difference between setting ARCH with an environment 
variable and setting it on the command line.  The number of users who 
are going to be confused by this (at least one, since I was) is greater 
than the number of users who would have done something useful by truly 
forcing ARCH=powerpc (zero without other changes, since all it gets you 
is a failed build).

The way it is now, it looks as if ARCH=powerpc is accepted as an alias 
for ARCH=ppc.  If this is not intended to be the case, and it's only 
intended to be accepted as an alias if you use one specific method of 
passing arguments (which again I recommend against, as it's confusing 
and not actually useful), then can we at least add a comment to the part 
of the makefile that does the rewriting clarifying this?

Printing a warning if ARCH is still powerpc probably wouldn't hurt 
either, even in the absence of any rewriting.

-Scott
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] Freescale MXC: NAND UnCorrectable RS-ECC Error

2009-10-19 Thread alfred steele
Hi Magnus,
Thanks.
 Are you using U-boot v2 or some other customized U-boot? (gitweb at
 git.denx.de seems to have some problems at the moment and I don't have
 the U-boot v2 tree locally)
Custom u-boot based on v2.
I have  ported mxc_nand based on the kernel code(2.6.26) and it uses
2k/4k specific changes and the correct settings for RCSR register
based on the page size.

-Alfred
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] qemu_mips: Fix CONFIG_NET_MULTI build warning

2009-10-19 Thread Shinya Kuribayashi
Hi Ben,

Ben Warren wrote:
 Shinya Kuribayashi wrote:
  First.  I'm not sure why CONFIG_NET_MULTI is undefed for qemu_mips,
  while CONFIG_DRIVER_NE2000 has been enabled for qemu_mips at an early
  stage.

  I don't follow recent changes around eth.c and CONFIG_NET_MULTI, but
  it's probably CONFIG_NET_MULTI used to be used strictly for multi
  ports, isn't it?
   
 Currently, there are two incompatible networking APIs.  One that uses 
 CONFIG_NET_MULTI, and one that doesn't.  I'm trying to move everything 
 towards the former (single-port applications are of course a degenerate 
 instance of multi-port ones).  Once all drivers have been ported to the 
 MULTI API, that config option will magically disappear.

Thanks, got it.

  Next.  As far as looking at drivers/net/ne2000*.[ch], NE2000 driver
  doesn't seem to require board_eth_init() or cpu_eth_init().  Right?
  Therefore I've not added a corresponding hook in board/qemu_mips/
  qemu_mips.c.  If my understanding is wrong, please let me know.
   
 The NE2000 driver hasn't been ported yet.  It's on my short term to-do 
 list, and will be in the next release (01.2010, I guess?)

So CONFIG_NE2000_DRIVER needs some work, and is not ready for
migration.  I missed that point, thanks for clarification.

 @@ -157,7 +157,7 @@
  
  #define CONFIG_ENV_OVERWRITE1
  
 -#undef CONFIG_NET_MULTI
 +#define CONFIG_NET_MULTI
  
   
 This won't do anything other than disabling networking.  Since QEMU is 
 an emulator, though, maybe it would make sense to use a device driver 
 that has CONFIG_NET_MULTI support?

Who knows?  It's hard, at least for me, to say.  But it'd be better to
port NE2000 driver into an appropriate shape whether it's used by QEMU
or not.

  #define MEM_SIZE128
  
   
 If the warning isn't more than a nuisance, please live with it for now.

No problem.  Please ignore the patch.

Thanks,

  Shinya
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] OMAP3 DDR Fix patches (was Re: [PATCH 1/5 v2] OMAP3: Fix SDRC init)

2009-10-19 Thread Nishanth Menon

Steve Sakoman had written, on 10/19/2009 10:06 AM, the following:

On Mon, Oct 19, 2009 at 7:55 AM, Dirk Behme dirk.be...@googlemail.com wrote:

Steve Sakoman wrote:

On Tue, Oct 6, 2009 at 7:17 PM, Nishanth Menon n...@ti.com wrote:

Defaults are for Infineon DDR timings.
Since none of the supported boards currently do
XIP boot, these seem to be faulty. fix the values
as per the calculations(ACTIMA,B), conf
the sdrc power with pwdnen and wakeupproc bits

Signed-off-by: Nishanth Menon n...@ti.com
Cc: David B davi...@pacbell.net
Cc: Vikram Pandita vikram.pand...@ti.com
Cc: Richard Woodruff r-woodru...@ti.com
Cc: Sandeep Paulraj s-paul...@ti.com
Cc: Tom Rix tom@windriver.com
Cc: Dirk Behme dirk.be...@googlemail.com
---
 cpu/arm_cortexa8/omap3/mem.c |3 ++-
 include/asm-arm/arch-omap3/cpu.h |1 +
 include/asm-arm/arch-omap3/mem.h |8 
 3 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/cpu/arm_cortexa8/omap3/mem.c b/cpu/arm_cortexa8/omap3/mem.c
index 079c848..8731c9d 100644
--- a/cpu/arm_cortexa8/omap3/mem.c
+++ b/cpu/arm_cortexa8/omap3/mem.c
@@ -164,7 +164,8 @@ void do_sdrc_init(u32 cs, u32 early)
  writel(SDP_SDRC_SHARING, sdrc_base-sharing);

  /* Disable Power Down of CKE cuz of 1 CKE on combo part */
-   writel(SRFRONRESET | PAGEPOLICY_HIGH, sdrc_base-power);
+   writel(WAKEUPPROC | PWDNEN | SRFRONRESET |
PAGEPOLICY_HIGH,
+   sdrc_base-power);

  writel(ENADLL | DLLPHASE_90, sdrc_base-dlla_ctrl);
  sdelay(0x2);
diff --git a/include/asm-arm/arch-omap3/cpu.h
b/include/asm-arm/arch-omap3/cpu.h
index 8ab2e39..e51c4f3 100644
--- a/include/asm-arm/arch-omap3/cpu.h
+++ b/include/asm-arm/arch-omap3/cpu.h
@@ -222,6 +222,7 @@ struct sdrc {

 #define PAGEPOLICY_HIGH(0x1  0)
 #define SRFRONRESET(0x1  7)
+#define PWDNEN (0x1  2)
 #define WAKEUPPROC (0x1  26)

 #define DDR_SDRAM  (0x1  0)
diff --git a/include/asm-arm/arch-omap3/mem.h
b/include/asm-arm/arch-omap3/mem.h
index 5b9ac75..31cbdef 100644
--- a/include/asm-arm/arch-omap3/mem.h
+++ b/include/asm-arm/arch-omap3/mem.h
@@ -78,16 +78,16 @@ enum {
 #define TRP_1653
 #define TRAS_165   7
 #define TRC_16510
-#define TRFC_165   21
+#define TRFC_165   12
 #define V_ACTIMA_165   ((TRFC_165  27) | (TRC_165  22) | \
  (TRAS_165  18) | (TRP_165  15) |  \
  (TRCD_165  12) | (TRRD_165  9) |  \
  (TDPL_165  6) | (TDAL_165))

 #define TWTR_165   1
-#define TCKE_165   1
-#define TXP_1655
-#define XSR_16523
+#define TCKE_165   2
+#define TXP_1652
+#define XSR_16520
 #define V_ACTIMB_165   (((TCKE_165  12) | (XSR_165  0)) |  \
  (TXP_165  8) | (TWTR_165  16))

--
1.6.0.4

I see issues after applying this patch (Overo/Beagle).

In about half of my boot attempts I get a hang after Uncompressing
Linux

In the other half I get many many errors of this type:

SLAB: cache with size 192 has lost its name

Reverting the patch restores normal operation.

What's about removing it from recent ARM pull request than and do some
further testing?


That sounds like a good plan to me.


Original patch was send on 6th Oct. sad that we will need to break 
complete SDP3430 boot support.. How about fixing it properly once for 
all- looks like a previous commit hacked the timings meant for INFINEON 
DDR with MICRON values for few of them causing this mess. attached is a 
patchset to fix it.


Tested on SDP3430, buildtested for others - Steve do try it on your 
platform to confirm. more testing invited..


--
Regards,
Nishanth Menon
From 3b8f52c22ae81deab45c0a6ea18dda834daefc95 Mon Sep 17 00:00:00 2001
From: Nishanth Menon n...@ti.com
Date: Mon, 19 Oct 2009 20:31:36 -0500
Subject: [PATCH 1/2] OMAP3:SDRC: Cleanup references to SDP

Remove SDP referenced unused defines

Signed-off-by: Nishanth Menon n...@ti.com
---
 cpu/arm_cortexa8/omap3/mem.c  |2 +-
 cpu/arm_cortexa8/omap3/sys_info.c |2 +-
 include/asm-arm/arch-omap3/mem.h  |   11 ++-
 3 files changed, 4 insertions(+), 11 deletions(-)

diff --git a/cpu/arm_cortexa8/omap3/mem.c b/cpu/arm_cortexa8/omap3/mem.c
index 5e6d542..dfb7e4c 100644
--- a/cpu/arm_cortexa8/omap3/mem.c
+++ b/cpu/arm_cortexa8/omap3/mem.c
@@ -161,7 +161,7 @@ void do_sdrc_init(u32 cs, u32 early)
 		writel(0, sdrc_base-sysconfig);
 
 		/* setup sdrc to ball mux */
-		writel(SDP_SDRC_SHARING, sdrc_base-sharing);
+		writel(SDRC_SHARING, sdrc_base-sharing);
 
 		/* Disable Power Down of CKE cuz of 1 CKE on combo part */
 		writel(WAKEUPPROC | PWDNEN | SRFRONRESET | PAGEPOLICY_HIGH,
diff --git a/cpu/arm_cortexa8/omap3/sys_info.c b/cpu/arm_cortexa8/omap3/sys_info.c
index 31b2003..08fb32e 100644
--- a/cpu/arm_cortexa8/omap3/sys_info.c
+++ 

[U-Boot] [u-boot] [PATCH] [2/2] [v1.2] mxc_fec: avoid free() calls to already freed pointers.

2009-10-19 Thread javier Martin
Sometimes, inside NetLoop, eth_halt() is called before eth_init() has
been called. This is harmless except for free() calls to pointers
which have not been allocated yet. This patch adds two states to
distinguish when it is necessary to call free() and when it is not.

This has been tested in i.MX27 Litekit board and eldk-4.2 toolchains.

Signed-off-by: Javier Martin javier.mar...@vista-silicon.com
--
 drivers/net/fec_mxc.c |9 +++--
 drivers/net/fec_mxc.h |   10 ++
 2 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c
index bd83a24..9e9ef99 100644
--- a/drivers/net/fec_mxc.c
+++ b/drivers/net/fec_mxc.c
@@ -55,6 +55,7 @@ struct fec_priv gfec = {
.tbd_base  = NULL,
.tbd_index = 0,
.bd= NULL,
+   .status= FEC_HALT_STATUS,
 };

 /*
@@ -453,6 +454,7 @@ static int fec_init(struct eth_device *dev, bd_t* bd)
miiphy_restart_aneg(dev);

fec_open(dev);
+   fec-status = FEC_INIT_STATUS;
return 0;
 }

@@ -491,8 +493,11 @@ static void fec_halt(struct eth_device *dev)
writel(0, fec-eth-ecntrl);
fec-rbd_index = 0;
fec-tbd_index = 0;
-   free(fec-rdb_ptr);
-   free(fec-base_ptr);
+   if (fec-status == FEC_INIT_STATUS) {
+   free(fec-rdb_ptr);
+   free(fec-base_ptr);
+   }
+   fec-status = FEC_HALT_STATUS;
debug(eth_halt: done\n);
 }

diff --git a/drivers/net/fec_mxc.h b/drivers/net/fec_mxc.h
index 6cb1bfc..266b5d3 100644
--- a/drivers/net/fec_mxc.h
+++ b/drivers/net/fec_mxc.h
@@ -245,9 +245,19 @@ struct fec_priv {
bd_t *bd;
void *rdb_ptr;
void *base_ptr;
+   int status; /* whether fec is halted or not* */
 };

 /**
+ * @brief Possible values for status
+ *
+ * fec_halt() changes the status to FEC_HALT_STATUS and fec_init()
+ * changes the status to FEC_INIT_STATUS
+ */
+#define FEC_HALT_STATUS 0
+#define FEC_INIT_STATUS 1
+
+/**
  * @brief Numbers of buffer descriptors for receiving
  *
  * The number defines the stocked memory buffers for the receiving task.
-- 
Javier Martin
Vista Silicon S.L.
CDTUC - FASE C - Oficina S-345
Avda de los Castros s/n
39005- Santander. Cantabria. Spain
+34 942 25 32 60
www.vista-silicon.com
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot