
Hello Marek,
On 05/11/10 04:25, Marek Vasut wrote:
Dne Út 11. května 2010 05:47:40 Marek Vasut napsal(a):
Dne Út 11. května 2010 05:28:38 Marek Vasut napsal(a):
Dne Pá 7. května 2010 18:58:34 Thomas Weber napsal(a):
On 07.05.2010 17:15, Wolfgang Denk wrote: Dear Thomas Weber,
In message 1273242366-6552-1-git-send-email-weber@corscience.de
1273242366-6552-1-git-send-email-weber@corscience.de you wrote: In commit a45dde2293c816138e53c26eca6fd0322583f9a6 the I/O accessor for
the DM9000 is changed.
The definition of __io is required to use the standard I/O accessors from asm/io.h.
Signed-off-by: Thomas Weber weber@corscience.de weber@corscience.de
include/configs/devkit8000.h | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/include/configs/devkit8000.h b/include/configs/devkit8000.h index 7d1332f..6e53c0d 100644 --- a/include/configs/devkit8000.h +++ b/include/configs/devkit8000.h @@ -31,6 +31,7 @@
#ifndef __CONFIG_H #define __CONFIG_H
Unrelated (und unneeded) change. Please omit this.
/* High Level Configuration Options */
#define CONFIG_ARMCORTEXA8 1 /* This is an ARM V7 CPU core */ #define CONFIG_OMAP 1 /* in a TI OMAP core */
@@ -79,6 +80,7 @@
#define CONFIG_DM9000_USE_16BIT 1 #define CONFIG_DM9000_NO_SROM 1 #undef CONFIG_DM9000_DEBUG
+#define __io
Hm... the commit message says "__io is required to use the standard
I/O accessors" - but I don't see any of these in this definition here?
Best regards,
Wolfgang Denk
Hi,
thanks for reviewing the patch.
In dm9000.c is <asm/io.h> included and outb, etc. used and in arch/arm/include/asm/io.h +201 I found #ifdef __io but __io wasn't defined.
I also think, that all arm-boards that uses the dm9000 will have this problem at the moment. I tried to compile at91sam9261 and got the same problem.
Because I have an other problem with gcc I cannot compile completely.
Thomas
52dbac69c27dee67a4c051b1055d93b0ac4e2062 <-- this one probably causes the other errors
Interesting ... the commit 'doesn't seem to be there'
It seems someone made some inccorect operation with git and some patches were forgotten/rewritten by old files.
I take what I said back, it's there, I mislooked.
But, here's a workaround-patch (unapplicable obviously). Conclusion from why it works with this is up to you:
diff --git a/include/common.h b/include/common.h index 8bca04f..ce67403 100644 --- a/include/common.h +++ b/include/common.h @@ -218,7 +218,7 @@ void hang (void) __attribute__ ((noreturn)); /* */ phys_size_t initdram (int); int display_options (void); -void print_size(unsigned long long, const char *); +void print_size(unsigned /*long*/ long, const char *); int print_buffer (ulong addr, void* data, uint width, uint count, uint linelen);
/* common/main.c */ diff --git a/lib/display_options.c b/lib/display_options.c index 86df05d..146e50a 100644 --- a/lib/display_options.c +++ b/lib/display_options.c @@ -43,11 +43,11 @@ int display_options (void)
- xxx GiB, xxx.y GiB, etc as needed; allow for optional trailing string
- (like "\n")
*/ -void print_size(unsigned long long size, const char *s) +void print_size(unsigned /*long*/ long size, const char *s) { unsigned long m = 0, n;
static const char names[] = {'E', 'P', 'T', 'G', 'M', 'K'};
unsigned long long d = 1ULL << (10 * ARRAY_SIZE(names));
static const char names[] = {/*'E', 'P', 'T',*/ 'G', 'M', 'K'};
unsigned long /*long*/ d = 1ULL << (10 * ARRAY_SIZE(names)); char c = 0; unsigned int i;
@@ -59,7 +59,7 @@ void print_size(unsigned long long size, const char *s) }
if (!c) {
printf("%llu Bytes%s", size, s);
printf("%lu Bytes%s", size, s); return; }
I think you need: Message-Id: 1273525682-27308-1-git-send-email-wd@denx.de
Thomas