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