patches/linux/2.6.11.3/linux-2.6.11-allow-gcc-4.0-ppc-mikpe.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sat Feb 24 11:00:05 2007 +0000 (2007-02-24)
changeset 1 eeea35fbf182
permissions -rw-r--r--
Add the full crosstool-NG sources to the new repository of its own.
You might just say: 'Yeah! crosstool-NG's got its own repo!".
Unfortunately, that's because the previous repo got damaged beyond repair and I had no backup.
That means I'm putting backups in place in the afternoon.
That also means we've lost history... :-(
yann@1
     1
yann@1
     2
Fixes
yann@1
     3
yann@1
     4
In file included from arch/ppc/kernel/time.c:68:
yann@1
     5
arch/ppc/kernel/time.c:92: error: static declaration of 'time_offset' follows non-static declaration
yann@1
     6
include/linux/timex.h:236: error: previous declaration of 'time_offset' was here
yann@1
     7
make[1]: *** [arch/ppc/kernel/time.o] Error 1
yann@1
     8
yann@1
     9
when compiling with gcc-4.0
yann@1
    10
yann@1
    11
Taken from
yann@1
    12
http://user.it.uu.se/~mikpe/linux/patches/2.6/patch-gcc4-fixes-v2-2.6.11
yann@1
    13
Also removes some obsolete externs that caused problems for Mike
yann@1
    14
Mike's patch has a bit more stuff in it, but this was enough for me
yann@1
    15
yann@1
    16
yann@1
    17
diff -rupN linux-2.6.11/arch/ppc/kernel/time.c linux-2.6.11.gcc4-fixes-v2/arch/ppc/kernel/time.c
yann@1
    18
--- linux-2.6.11/arch/ppc/kernel/time.c	2005-03-02 19:24:14.000000000 +0100
yann@1
    19
+++ linux-2.6.11.gcc4-fixes-v2/arch/ppc/kernel/time.c	2005-03-02 19:36:26.000000000 +0100
yann@1
    20
@@ -89,7 +89,7 @@ unsigned long tb_to_ns_scale;
yann@1
    21
 
yann@1
    22
 extern unsigned long wall_jiffies;
yann@1
    23
 
yann@1
    24
-static long time_offset;
yann@1
    25
+static long ppc_time_offset;
yann@1
    26
 
yann@1
    27
 DEFINE_SPINLOCK(rtc_lock);
yann@1
    28
 
yann@1
    29
@@ -172,7 +172,7 @@ void timer_interrupt(struct pt_regs * re
yann@1
    30
 		     xtime.tv_sec - last_rtc_update >= 659 &&
yann@1
    31
 		     abs((xtime.tv_nsec / 1000) - (1000000-1000000/HZ)) < 500000/HZ &&
yann@1
    32
 		     jiffies - wall_jiffies == 1) {
yann@1
    33
-		  	if (ppc_md.set_rtc_time(xtime.tv_sec+1 + time_offset) == 0)
yann@1
    34
+		  	if (ppc_md.set_rtc_time(xtime.tv_sec+1 + ppc_time_offset) == 0)
yann@1
    35
 				last_rtc_update = xtime.tv_sec+1;
yann@1
    36
 			else
yann@1
    37
 				/* Try again one minute later */
yann@1
    38
@@ -289,7 +289,7 @@ void __init time_init(void)
yann@1
    39
 	unsigned old_stamp, stamp, elapsed;
yann@1
    40
 
yann@1
    41
         if (ppc_md.time_init != NULL)
yann@1
    42
-                time_offset = ppc_md.time_init();
yann@1
    43
+                ppc_time_offset = ppc_md.time_init();
yann@1
    44
 
yann@1
    45
 	if (__USE_RTC()) {
yann@1
    46
 		/* 601 processor: dec counts down by 128 every 128ns */
yann@1
    47
@@ -334,10 +334,10 @@ void __init time_init(void)
yann@1
    48
 	set_dec(tb_ticks_per_jiffy);
yann@1
    49
 
yann@1
    50
 	/* If platform provided a timezone (pmac), we correct the time */
yann@1
    51
-        if (time_offset) {
yann@1
    52
-		sys_tz.tz_minuteswest = -time_offset / 60;
yann@1
    53
+        if (ppc_time_offset) {
yann@1
    54
+		sys_tz.tz_minuteswest = -ppc_time_offset / 60;
yann@1
    55
 		sys_tz.tz_dsttime = 0;
yann@1
    56
-		xtime.tv_sec -= time_offset;
yann@1
    57
+		xtime.tv_sec -= ppc_time_offset;
yann@1
    58
         }
yann@1
    59
         set_normalized_timespec(&wall_to_monotonic,
yann@1
    60
                                 -xtime.tv_sec, -xtime.tv_nsec);
yann@1
    61
diff -rupN linux-2.6.11/arch/ppc/syslib/open_pic_defs.h linux-2.6.11.gcc4-fixes-v2/arch/ppc/syslib/open_pic_defs.h
yann@1
    62
--- linux-2.6.11/arch/ppc/syslib/open_pic_defs.h	2005-03-02 19:24:14.000000000 +0100
yann@1
    63
+++ linux-2.6.11.gcc4-fixes-v2/arch/ppc/syslib/open_pic_defs.h	2005-03-02 19:36:26.000000000 +0100
yann@1
    64
@@ -172,9 +172,6 @@ struct OpenPIC {
yann@1
    65
     OpenPIC_Processor Processor[OPENPIC_MAX_PROCESSORS];
yann@1
    66
 };
yann@1
    67
 
yann@1
    68
-extern volatile struct OpenPIC __iomem *OpenPIC;
yann@1
    69
-
yann@1
    70
-
yann@1
    71
     /*
yann@1
    72
      *  Current Task Priority Register
yann@1
    73
      */
yann@1
    74
diff -rupN linux-2.6.11/include/asm-ppc/prom.h linux-2.6.11.gcc4-fixes-v2/include/asm-ppc/prom.h
yann@1
    75
--- linux-2.6.11/include/asm-ppc/prom.h	2003-09-28 12:19:57.000000000 +0200
yann@1
    76
+++ linux-2.6.11.gcc4-fixes-v2/include/asm-ppc/prom.h	2005-03-02 19:36:26.000000000 +0100
yann@1
    77
@@ -13,9 +13,6 @@
yann@1
    78
 typedef void *phandle;
yann@1
    79
 typedef void *ihandle;
yann@1
    80
 
yann@1
    81
-extern char *prom_display_paths[];
yann@1
    82
-extern unsigned int prom_num_displays;
yann@1
    83
-
yann@1
    84
 struct address_range {
yann@1
    85
 	unsigned int space;
yann@1
    86
 	unsigned int address;