Re: [U-Boot] [PATCH 1/2] Update i386 code (sc520_cdp)

2008-09-10 Thread Graeme Russ
Dear Wolfgang,

On Wed, Sep 10, 2008 at 7:32 AM, Wolfgang Denk [EMAIL PROTECTED] wrote:
 Dear Graeme Russ,

 In message [EMAIL PROTECTED] you wrote:


 
  Including asm/string.h seems bogus to me as this is already done in
  linux/string.h which is  included  just  two  lines  above.  Please
  check.

 I've rechecked, but removing this include results in an implicit
 declaration of function 'strncpy' on line 401 of /include/image.h

 But this makes no sense to me. That's the relevant code from
 include/linux/string.h:

  18 /*
  19  * Include machine specific inline routines
  20  */
  21 #include asm/string.h
  22
  23 #ifndef __HAVE_ARCH_STRCPY
  24 extern char * strcpy(char *,const char *);
  25 #endif
  26 #ifndef __HAVE_ARCH_STRNCPY
  27 extern char * strncpy(char *,const char *, __kernel_size_t);
  28 #endif

 You include linux/string.h, which in turn unconditionally  includes
 asm/string.h,  so including asm/string.h another time in makes no
 sense to me.

 Can you please dig a bit deeper  what's  happening  there?  gcc  -E
 might help...


OK, I've found the source of the confusion...

The warning occurs when compiling /examples/82559_eeprom.c (which is
only built for i386 architectures). This file #defines _PPC_STRING_H_
and _LINUX_STRING_H_. It is the #define _LINUX_STRING_H_ which
prevents the entire /include/linux/string.h from being processed, and
hence the necessity to include /include/asm/string.h

I don't know why _PPC_STRING_H_ is #defined - The only attachment to
_PPC_STRING_H_ is the OXC board (PPC platform) which uses
eepro100_eeprom.c which, according to lines 130-135 of
/examples/Makefile is '# Utility for resetting i82559 EEPROM', BUT,
eepro100_eeprom.c is not built for i386 and 82559_eeprom.c is not
built for PPC

So I guess it gets more confusing, not less

Back to /examples/82559_eeprom.c - If I remove #define
_LINUX_STRING_H_ from 82559_eeprom.c and the extra
/include/asm/string.h from /include/image.h, Make all succeeds with
only an ld warning (cannot find entry symbol 82559_eeprom; defaulting
to 0004)

Should I re-pull (rebase? - sorry, not up with all the lingo yet) the
master git repository, check the patch (with above changes) applies
cleanly and resubmit (after checking my email client) or does this all
warrant a closer inspection?

Also remember that I have had to disable SATA and PCI for the
sc520_cdp as mentioned previously and my primary interest is not in
the sc520_cdp (I don't own one, so I can't test this build) but rather
another sc520 based product I am trying to port linux to.

Regards,

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


Re: [U-Boot] [PATCH 1/2] Update i386 code (sc520_cdp)

2008-09-10 Thread Wolfgang Denk
Dear Jean-Christophe PLAGNIOL-VILLARD,

In message [EMAIL PROTECTED] you wrote:

 I've work on this in the past and send patch for fix all x86
 Could you take a look on it

Please always provide a link to such messages - which exact patch are
you talking about?

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED]
Can you imagine how life could be improved if we could do away with
jealousy, greed, hate ...
It can also be improved by eliminating love, tenderness, sentiment
-- the other side of the coin
-- Dr. Roger Corby and Kirk, What are Little Girls Made Of?,
   stardate 2712.4
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/2] Update i386 code (sc520_cdp)

2008-09-09 Thread Wolfgang Denk
Dear Graeme Russ,

In message [EMAIL PROTECTED] you wrote:
 Attempt to bring i386 / sc520 inline with master

To make some progress, I manually fixed the wrapped lines (you owe me
a beer for that) and applied most of your patch.

I omitted this part though:

 diff --git a/include/image.h b/include/image.h
 index 9be806e..e095a32 100644
 --- a/include/image.h
 +++ b/include/image.h
 @@ -40,7 +40,7 @@
  #include lmb.h
  #include linux/string.h
  #include asm/u-boot.h
 -
 +#include asm/string.h
  #else

Including asm/string.h seems bogus to me as this is already done in
linux/string.h which is  included  just  two  lines  above.  Please
check.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED]
panic: kernel trap (ignored)
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/2] Update i386 code (sc520_cdp)

2008-09-09 Thread Graeme Russ
On Tue, Sep 9, 2008 at 7:49 PM, Wolfgang Denk [EMAIL PROTECTED] wrote:
 Dear Graeme Russ,

 In message [EMAIL PROTECTED] you wrote:
 Attempt to bring i386 / sc520 inline with master

 To make some progress, I manually fixed the wrapped lines (you owe me
 a beer for that) and applied most of your patch.

Agreed


 I omitted this part though:

 diff --git a/include/image.h b/include/image.h
 index 9be806e..e095a32 100644
 --- a/include/image.h
 +++ b/include/image.h
 @@ -40,7 +40,7 @@
  #include lmb.h
  #include linux/string.h
  #include asm/u-boot.h
 -
 +#include asm/string.h
  #else

 Including asm/string.h seems bogus to me as this is already done in
 linux/string.h which is  included  just  two  lines  above.  Please
 check.

I've rechecked, but removing this include results in an implicit
declaration of function 'strncpy' on line 401 of /include/image.h


 Best regards,

 Wolfgang Denk

 --
 DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
 HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
 Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED]
 panic: kernel trap (ignored)

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


Re: [U-Boot] [PATCH 1/2] Update i386 code (sc520_cdp)

2008-09-09 Thread Wolfgang Denk
Dear Graeme Russ,

In message [EMAIL PROTECTED] you wrote:

  @@ -40,7 +40,7 @@
   #include lmb.h
   #include linux/string.h
   #include asm/u-boot.h
  -
  +#include asm/string.h
   #else
 
  Including asm/string.h seems bogus to me as this is already done in
  linux/string.h which is  included  just  two  lines  above.  Please
  check.
 
 I've rechecked, but removing this include results in an implicit
 declaration of function 'strncpy' on line 401 of /include/image.h

But this makes no sense to me. That's the relevant code from
include/linux/string.h:

 18 /*
 19  * Include machine specific inline routines
 20  */
 21 #include asm/string.h
 22 
 23 #ifndef __HAVE_ARCH_STRCPY
 24 extern char * strcpy(char *,const char *);
 25 #endif
 26 #ifndef __HAVE_ARCH_STRNCPY
 27 extern char * strncpy(char *,const char *, __kernel_size_t);
 28 #endif

You include linux/string.h, which in turn unconditionally  includes
asm/string.h,  so including asm/string.h another time in makes no
sense to me.

Can you please dig a bit deeper  what's  happening  there?  gcc  -E
might help...

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED]
Life is a game. Money is how we keep score.  - Ted Turner
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/2] Update i386 code (sc520_cdp)

2008-09-08 Thread JerryVanBaren
Graeme Russ wrote:
 Third time lucky maybe - ditched Evolution (can't adjust line wrap
 width) for Thunderbird. I don't have git-send-email installed - will
 investigate

Read the kernel Documentation/email-clients.txt:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/email-clients.txt;h=2ebb94d6ed8e547d5cb84cdc6feeba126388baf3;hb=HEAD

Evolution and Tbird reportedly can work if you jump the right hoops. 
Maybe.  It's the clicky-gooey curse.[1]

See also my previous diatribe about letting our tools rule us.
   http://lists.denx.de/pipermail/u-boot/2008-September/040195.html

Curmudgeonly yours,
gvb


[1] The Hitchhiker's Guide to the Galaxy, in a moment of reasoned 
lucidity which is almost unique among its current tally of five million, 
nine hundred and seventy-three thousand, five hundred and nine pages, 
says of the Sirius Cybernetics Corporation products that it is very 
easy to be blinded to the essential uselessness of them by the sense of 
achievement you get from getting them to work at all. In other words, - 
and this is the rock-solid principle on which the whole of the 
Corporation's Galaxywide success is founded - their fundamental design 
flaws are completely hidden by their superficial design flaws.

- The Hitchhiker's Guide to the Galaxy / Douglas Adams (1952 - 2001). 
1st American ed. New York : Harmony Books, 1980, c1979
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/2] Update i386 code (sc520_cdp) - Last gasp attempt

2008-09-07 Thread Wolfgang Denk
Dear Graeme Russ,

In message [EMAIL PROTECTED] you wrote:
 OK, Thunderbird is not wrapping my email to gmail and gmail is not
 stripping white spaces when I forward
 
 This should not be that hard :(

I agree. But something is messing with your formatting.

 diff --git a/board/sc520_cdp/sc520_cdp.c b/board/sc520_cdp/sc520_cdp.c
 index f21c730..bfb473e 100644
 --- a/board/sc520_cdp/sc520_cdp.c
 +++ b/board/sc520_cdp/sc520_cdp.c
 @@ -114,7 +114,7 @@ static void irq_init(void)
 
 }
^^^ Corrupted. Leading ' ' missin - here like in all other lines.
 
 -
 +#ifdef CONFIG_PCI
 /* PCI stuff */
 static void pci_sc520_cdp_fixup_irq(struct pci_controller *hose, pci_dev_t 
 dev)
 {
 @@ -129,7 +129,7 @@ static void pci_sc520_cdp_fixup_irq(struct
 pci_controller *hose, pci_dev_t dev)
^^^ and wrapped lines again, too.



Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED]
There are certain things men must do to remain men.
-- Kirk, The Ultimate Computer, stardate 4929.4
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/2] Update i386 code (sc520_cdp)

2008-09-06 Thread Wolfgang Denk
Dear Graeme Russ,

In message [EMAIL PROTECTED] you wrote:
 Attempt to bring i386 / sc520 inline with master
 
 NOTE: Previous patches have been rejected by the mailing list due to
 non-ASCII characters in the copyright headers. I have deleted the
 offending characters - I hope patch does not complain

You patch will not apply if you just try and omit such characters.

Also, your patch is severely corrupted. It seems you copy  pasted it
and lost a lot of the original white spaces then.

 Signed-off-by: Graeme Russ [EMAIL PROTECTED]
 
 diff --git a/board/sc520_cdp/sc520_cdp.c b/board/sc520_cdp/sc520_cdp.c
 index f21c730..20284e4 100644
 --- a/board/sc520_cdp/sc520_cdp.c
 +++ b/board/sc520_cdp/sc520_cdp.c
 @@ -1,7 +1,7 @@
 /*
  *
  * (C) Copyright 2002
 - * Daniel Engstrm, Omicron Ceti AB [EMAIL PROTECTED].
 + * Daniel Engstrm, Omicron Ceti AB [EMAIL PROTECTED].

Does not apply. The original line is

 * Daniel Engström, Omicron Ceti AB [EMAIL PROTECTED].

Note there is a character (o-umlaut) between the 'r' and the 'm' in
Engström.

  * Serial EEPROM opcodes, including start bit
 diff --git a/examples/82559_eeprom.c b/examples/82559_eeprom.c
 index 1a121d4..d99af26 100644
 --- a/examples/82559_eeprom.c
 +++ b/examples/82559_eeprom.c
 @@ -51,13 +51,17 @@ static inline unsigned short swap16(unsigned short x)
 }
 
 
 -static inline void *memcpy(void *dst, const void *src, unsigned int len)
 +void * memcpy(void * dest,const void *src,size_t count)
 {
 - void * ret = dst;
 - while (len--  0) *((char *)dst)++ = *((char *)src)++;
 - return ret;
 + char *tmp = (char *) dest, *s = (char *) src;
 +
 + while (count--)
 + *tmp++ = *s++;
 +
 + return dest;
 }

Indentation incorrect.

 /* The EEPROM commands include the alway-set leading bit. */
 #define EE_WRITE_CMD (5)
 #define EE_READ_CMD (6)
 @@ -156,7 +160,7 @@ static int reset_eeprom(unsigned long ioaddr,
 unsigned char *hwaddr)
 int size_test;
 int i;
 
 - printf(Resetting i82559 EEPROM @ 0x%08x ... , ioaddr);
 + printf(Resetting i82559 EEPROM @ 0x%08lx ... , ioaddr);

Indentation incorrect.

 size_test = do_eeprom_cmd(ioaddr, (EE_READ_CMD  8)  16, 27);
 eeprom_addr_size = (size_test  0xffe) == 0xffe ? 8 : 6;
 @@ -305,7 +309,7 @@ write_config_word(int bus, int dev, int func, int
 reg, u16 data)
 int main (int argc, char *argv[])
 {
 unsigned char *eth_addr;
 - char buf[6];
 + uchar buf[6];
 int instance;

Indentation incorrect.

 app_startup(argv);
 diff --git a/include/asm-i386/byteorder.h b/include/asm-i386/byteorder.h
 index a9c69d5..7dfeb8b 100644
 --- a/include/asm-i386/byteorder.h
 +++ b/include/asm-i386/byteorder.h
 @@ -6,7 +6,7 @@
 #ifdef __GNUC__
 
 
 -static __inline__ __const__ __u32 ___arch__swab32(__u32 x)
 +static __inline__ __u32 ___arch__swab32(__u32 x)
 {
 #ifdef CONFIG_X86_BSWAP
 __asm__(bswap %0 : =r (x) : 0 (x));
 @@ -20,7 +20,7 @@ static __inline__ __const__ __u32 ___arch__swab32(__u32 x)
 return x;
 }
 
 -static __inline__ __const__ __u16 ___arch__swab16(__u16 x)
 +static __inline__ __u16 ___arch__swab16(__u16 x)
 {
 __asm__(xchgb %b0,%h0 /* swap bytes */ \
 : =q (x) \

Ditto.

and so on an on.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED]
I must follow the people.  Am I not their leader? - Benjamin Disraeli
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/2] Update i386 code (sc520_cdp)

2008-09-06 Thread Graeme Russ
Third time lucky maybe - ditched Evolution (can't adjust line wrap width) for 
Thunderbird. I don't have git-send-email installed - will investigate

Attempt to bring i386 / sc520 inline with master

Signed-off-by: Graeme Russ graeme.russ at gmail.com 
http://lists.denx.de/mailman/listinfo/u-boot


diff --git a/board/sc520_cdp/sc520_cdp.c b/board/sc520_cdp/sc520_cdp.c
index f21c730..bfb473e 100644
--- a/board/sc520_cdp/sc520_cdp.c
+++ b/board/sc520_cdp/sc520_cdp.c
@@ -114,7 +114,7 @@ static void irq_init(void)
 
 }
 
-
+#ifdef CONFIG_PCI
 /* PCI stuff */
 static void pci_sc520_cdp_fixup_irq(struct pci_controller *hose, 
pci_dev_t dev)
 {
@@ -129,7 +129,7 @@ static void pci_sc520_cdp_fixup_irq(struct 
pci_controller *hose, pci_dev_t dev)
 };
 static int next_irq_index=0;
 
-char tmp_pin;
+uchar tmp_pin;
 int pin;
 
 pci_hose_read_config_byte(hose, dev, PCI_INTERRUPT_PIN, tmp_pin);
@@ -193,7 +193,7 @@ void pci_init_board(void)
 {
 pci_sc520_init(sc520_cdp_hose);
 }
-
+#endif
 
 static void silence_uart(int port)
 {
@@ -563,12 +563,12 @@ void spi_eeprom_probe(int x)
 {
 }
 
-int spi_eeprom_read(int x, int offset, char *buffer, int len)
+int spi_eeprom_read(int x, int offset, uchar *buffer, int len)
 {
return 0;
 }
 
-int spi_eeprom_write(int x, int offset, char *buffer, int len)
+int spi_eeprom_write(int x, int offset, uchar *buffer, int len)
 {
return 0;
 }
diff --git a/drivers/mtd/mw_eeprom.c b/drivers/mtd/mw_eeprom.c
index f32ced4..f7791b5 100644
--- a/drivers/mtd/mw_eeprom.c
+++ b/drivers/mtd/mw_eeprom.c
@@ -1,7 +1,7 @@
 /* Three-wire (MicroWire) serial eeprom driver (for 93C46 and 
compatibles) */
 
 #include common.h
-#include ssi.h
+#include asm/ic/ssi.h
 
 /*
  * Serial EEPROM opcodes, including start bit
diff --git a/examples/82559_eeprom.c b/examples/82559_eeprom.c
index 1a121d4..d99af26 100644
--- a/examples/82559_eeprom.c
+++ b/examples/82559_eeprom.c
@@ -51,13 +51,17 @@ static inline unsigned short swap16(unsigned short x)
 }
 
 
-static inline void *memcpy(void *dst, const void *src, unsigned int len)
+void * memcpy(void * dest,const void *src,size_t count)
 {
-void * ret = dst;
-while (len--  0) *((char *)dst)++ = *((char *)src)++;
-return ret;
+char *tmp = (char *) dest, *s = (char *) src;
+
+while (count--)
+*tmp++ = *s++;
+
+return dest;
 }
 
+
 /* The EEPROM commands include the alway-set leading bit. */
 #define EE_WRITE_CMD(5)
 #define EE_READ_CMD(6)
@@ -156,7 +160,7 @@ static int reset_eeprom(unsigned long ioaddr, 
unsigned char *hwaddr)
 int size_test;
 int i;
 
-printf(Resetting i82559 EEPROM @ 0x%08x ... , ioaddr);
+printf(Resetting i82559 EEPROM @ 0x%08lx ... , ioaddr);
 
 size_test = do_eeprom_cmd(ioaddr, (EE_READ_CMD  8)  16, 27);
 eeprom_addr_size = (size_test  0xffe) == 0xffe ? 8 : 6;
@@ -305,7 +309,7 @@ write_config_word(int bus, int dev, int func, int 
reg, u16 data)
 int main (int argc, char *argv[])
 {
 unsigned char *eth_addr;
-char buf[6];
+uchar buf[6];
 int instance;
 
 app_startup(argv);
diff --git a/include/asm-i386/byteorder.h b/include/asm-i386/byteorder.h
index a9c69d5..7dfeb8b 100644
--- a/include/asm-i386/byteorder.h
+++ b/include/asm-i386/byteorder.h
@@ -6,7 +6,7 @@
 #ifdef __GNUC__
 
 
-static __inline__ __const__ __u32 ___arch__swab32(__u32 x)
+static __inline__ __u32 ___arch__swab32(__u32 x)
 {
 #ifdef CONFIG_X86_BSWAP
 __asm__(bswap %0 : =r (x) : 0 (x));
@@ -20,7 +20,7 @@ static __inline__ __const__ __u32 ___arch__swab32(__u32 x)
 return x;
 }
 
-static __inline__ __const__ __u16 ___arch__swab16(__u16 x)
+static __inline__ __u16 ___arch__swab16(__u16 x)
 {
 __asm__(xchgb %b0,%h0/* swap bytes*/ \
 : =q (x) \
diff --git a/include/asm-i386/global_data.h b/include/asm-i386/global_data.h
index 5dfb595..f31bac6 100644
--- a/include/asm-i386/global_data.h
+++ b/include/asm-i386/global_data.h
@@ -58,8 +58,8 @@ typedefstruct {
 #defineGD_FLG_POSTSTOP0x00010/* POST seqeunce aborted   
 */
 #defineGD_FLG_LOGINIT0x00020/* Log Buffer has been 
initialized*/
 
-extern gd_t *global_data;
+extern gd_t *gd;
 
-#define DECLARE_GLOBAL_DATA_PTR gd_t *gd = global_data
+#define DECLARE_GLOBAL_DATA_PTR
 
 #endif /* __ASM_GBL_DATA_H */
diff --git a/include/asm-i386/ic/ssi.h b/include/asm-i386/ic/ssi.h
new file mode 100644
index 000..bd48eab
--- /dev/null
+++ b/include/asm-i386/ic/ssi.h
@@ -0,0 +1,34 @@
+/*
+ * (C) Copyright 2008
+ * Graeme Russ [EMAIL PROTECTED].
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will 

Re: [U-Boot] [PATCH 1/2] Update i386 code (sc520_cdp)

2008-09-06 Thread Wolfgang Denk
Dear Graeme Russ,

In message [EMAIL PROTECTED] you wrote:
 Third time lucky maybe - ditched Evolution (can't adjust line wrap width) for 
 Thunderbird. I don't have git-send-email installed - will investigate

This has nothing to do with luck - an this mailing list is not a good
place to try out your mailer.

 +#ifdef CONFIG_PCI
  /* PCI stuff */
  static void pci_sc520_cdp_fixup_irq(struct pci_controller *hose, 
 pci_dev_t dev)
^

Line wrapped again.

 diff --git a/drivers/mtd/mw_eeprom.c b/drivers/mtd/mw_eeprom.c
 index f32ced4..f7791b5 100644
 --- a/drivers/mtd/mw_eeprom.c
 +++ b/drivers/mtd/mw_eeprom.c
 @@ -1,7 +1,7 @@
  /* Three-wire (MicroWire) serial eeprom driver (for 93C46 and 
 compatibles) */



etc.

Please fix this before you post here again.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH, MD: Wolfgang Denk  Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: [EMAIL PROTECTED]
[Doctors and Bartenders], We both get the same two kinds of customers
-- the living and the dying.
-- Dr. Boyce, The Menagerie (The Cage), stardate unknown
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/2] Update i386 code (sc520_cdp)

2008-09-06 Thread Graeme Russ
OK, last try then I'm completely giving up :(

Attempt to bring i386 / sc520 inline with master

Signed-off-by: Graeme Russ [EMAIL PROTECTED]


diff --git a/board/sc520_cdp/sc520_cdp.c b/board/sc520_cdp/sc520_cdp.c
index f21c730..bfb473e 100644
--- a/board/sc520_cdp/sc520_cdp.c
+++ b/board/sc520_cdp/sc520_cdp.c
@@ -114,7 +114,7 @@ static void irq_init(void)
 
 }
 
-
+#ifdef CONFIG_PCI
 /* PCI stuff */
 static void pci_sc520_cdp_fixup_irq(struct pci_controller *hose, 
pci_dev_t dev)
 {
@@ -129,7 +129,7 @@ static void pci_sc520_cdp_fixup_irq(struct 
pci_controller *hose, pci_dev_t dev)
 };
 static int next_irq_index=0;
 
-char tmp_pin;
+uchar tmp_pin;
 int pin;
 
 pci_hose_read_config_byte(hose, dev, PCI_INTERRUPT_PIN, tmp_pin);
@@ -193,7 +193,7 @@ void pci_init_board(void)
 {
 pci_sc520_init(sc520_cdp_hose);
 }
-
+#endif
 
 static void silence_uart(int port)
 {
@@ -563,12 +563,12 @@ void spi_eeprom_probe(int x)
 {
 }
 
-int spi_eeprom_read(int x, int offset, char *buffer, int len)
+int spi_eeprom_read(int x, int offset, uchar *buffer, int len)
 {
return 0;
 }
 
-int spi_eeprom_write(int x, int offset, char *buffer, int len)
+int spi_eeprom_write(int x, int offset, uchar *buffer, int len)
 {
return 0;
 }
diff --git a/drivers/mtd/mw_eeprom.c b/drivers/mtd/mw_eeprom.c
index f32ced4..f7791b5 100644
--- a/drivers/mtd/mw_eeprom.c
+++ b/drivers/mtd/mw_eeprom.c
@@ -1,7 +1,7 @@
 /* Three-wire (MicroWire) serial eeprom driver (for 93C46 and 
compatibles) */
 
 #include common.h
-#include ssi.h
+#include asm/ic/ssi.h
 
 /*
  * Serial EEPROM opcodes, including start bit
diff --git a/examples/82559_eeprom.c b/examples/82559_eeprom.c
index 1a121d4..d99af26 100644
--- a/examples/82559_eeprom.c
+++ b/examples/82559_eeprom.c
@@ -51,13 +51,17 @@ static inline unsigned short swap16(unsigned short x)
 }
 
 
-static inline void *memcpy(void *dst, const void *src, unsigned int len)
+void * memcpy(void * dest,const void *src,size_t count)
 {
-void * ret = dst;
-while (len--  0) *((char *)dst)++ = *((char *)src)++;
-return ret;
+char *tmp = (char *) dest, *s = (char *) src;
+
+while (count--)
+*tmp++ = *s++;
+
+return dest;
 }
 
+
 /* The EEPROM commands include the alway-set leading bit. */
 #define EE_WRITE_CMD(5)
 #define EE_READ_CMD(6)
@@ -156,7 +160,7 @@ static int reset_eeprom(unsigned long ioaddr, 
unsigned char *hwaddr)
 int size_test;
 int i;
 
-printf(Resetting i82559 EEPROM @ 0x%08x ... , ioaddr);
+printf(Resetting i82559 EEPROM @ 0x%08lx ... , ioaddr);
 
 size_test = do_eeprom_cmd(ioaddr, (EE_READ_CMD  8)  16, 27);
 eeprom_addr_size = (size_test  0xffe) == 0xffe ? 8 : 6;
@@ -305,7 +309,7 @@ write_config_word(int bus, int dev, int func, int 
reg, u16 data)
 int main (int argc, char *argv[])
 {
 unsigned char *eth_addr;
-char buf[6];
+uchar buf[6];
 int instance;
 
 app_startup(argv);
diff --git a/include/asm-i386/byteorder.h b/include/asm-i386/byteorder.h
index a9c69d5..7dfeb8b 100644
--- a/include/asm-i386/byteorder.h
+++ b/include/asm-i386/byteorder.h
@@ -6,7 +6,7 @@
 #ifdef __GNUC__
 
 
-static __inline__ __const__ __u32 ___arch__swab32(__u32 x)
+static __inline__ __u32 ___arch__swab32(__u32 x)
 {
 #ifdef CONFIG_X86_BSWAP
 __asm__(bswap %0 : =r (x) : 0 (x));
@@ -20,7 +20,7 @@ static __inline__ __const__ __u32 ___arch__swab32(__u32 x)
 return x;
 }
 
-static __inline__ __const__ __u16 ___arch__swab16(__u16 x)
+static __inline__ __u16 ___arch__swab16(__u16 x)
 {
 __asm__(xchgb %b0,%h0/* swap bytes*/ \
 : =q (x) \
diff --git a/include/asm-i386/global_data.h b/include/asm-i386/global_data.h
index 5dfb595..f31bac6 100644
--- a/include/asm-i386/global_data.h
+++ b/include/asm-i386/global_data.h
@@ -58,8 +58,8 @@ typedefstruct {
 #defineGD_FLG_POSTSTOP0x00010/* POST seqeunce aborted   
 */
 #defineGD_FLG_LOGINIT0x00020/* Log Buffer has been 
initialized*/
 
-extern gd_t *global_data;
+extern gd_t *gd;
 
-#define DECLARE_GLOBAL_DATA_PTR gd_t *gd = global_data
+#define DECLARE_GLOBAL_DATA_PTR
 
 #endif /* __ASM_GBL_DATA_H */
diff --git a/include/asm-i386/ic/ssi.h b/include/asm-i386/ic/ssi.h
new file mode 100644
index 000..bd48eab
--- /dev/null
+++ b/include/asm-i386/ic/ssi.h
@@ -0,0 +1,34 @@
+/*
+ * (C) Copyright 2008
+ * Graeme Russ [EMAIL PROTECTED].
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU