diff -ur GPL-4/src/Makefile GPL-4-new/src/Makefile --- GPL-4/src/Makefile 2003-11-10 15:21:28.000000000 -0500 +++ GPL-4-new/src/Makefile 2004-08-28 19:38:41.000000000 -0400 @@ -14,7 +14,8 @@ SRCBASE := $(shell pwd) RELEASEDIR := $(shell (cd $(SRCBASE)/.. && pwd -P)) -PATH := $(RELEASEDIR)/tools:/opt/brcm/hndtools-mipsel-linux/bin:/opt/brcm/hndtools-mipsel-uclibc/bin:$(PATH) +#PATH := $(RELEASEDIR)/tools:/opt/brcm/hndtools-mipsel-linux/bin:/opt/brcm/hndtools-mipsel-uclibc/bin:$(PATH) +PATH := $(RELEASEDIR)/tools:/home/darkness/tmp/toolchain/gcc-3.3.x/toolchain_mipsel_nofpu/bin:$(PATH) install: all install -d $(RELEASEDIR)/image/$(CUSTOMER) diff -ur GPL-4/src/cfe/build/broadcom/bcm947xx/Makefile GPL-4-new/src/cfe/build/broadcom/bcm947xx/Makefile --- GPL-4/src/cfe/build/broadcom/bcm947xx/Makefile 2003-10-30 11:57:23.000000000 -0500 +++ GPL-4-new/src/cfe/build/broadcom/bcm947xx/Makefile 2004-08-28 23:16:28.000000000 -0400 @@ -52,7 +52,7 @@ CFLAGS += -G 0 -mno-abicalls -fno-pic # Discard unused sections if supported -CFLAGS += -ffunction-sections $(call check_gcc, -fvtable-gc, ) +CFLAGS += -ffunction-sections LDFLAGS += -static --gc-sections else diff -ur GPL-4/src/cfe/cfe/arch/mips/common/src/disasm.c GPL-4-new/src/cfe/cfe/arch/mips/common/src/disasm.c --- GPL-4/src/cfe/cfe/arch/mips/common/src/disasm.c 2003-06-19 17:54:04.000000000 -0400 +++ GPL-4-new/src/cfe/cfe/arch/mips/common/src/disasm.c 2004-08-28 23:30:24.000000000 -0400 @@ -1788,7 +1788,7 @@ case DC_J: snprintf(buf, buf_size, "%-8s 0x%" PF_64 "x", instname, - (pc & UINT64_T(0xfffffffff0000000)) | ((inst & 0x3ffffff)<<2)); + (pc & UINT64_T(0xfffffffff0000000ULL)) | ((inst & 0x3ffffff)<<2)); break; case DC_RD_RS: snprintf(buf, buf_size, "%-8s %s,%s", diff -ur GPL-4/src/cfe/cfe/arch/mips/cpu/bcmcore/src/bcmcore_arena.c GPL-4-new/src/cfe/cfe/arch/mips/cpu/bcmcore/src/bcmcore_arena.c --- GPL-4/src/cfe/cfe/arch/mips/cpu/bcmcore/src/bcmcore_arena.c 2003-06-19 17:54:04.000000000 -0400 +++ GPL-4-new/src/cfe/cfe/arch/mips/cpu/bcmcore/src/bcmcore_arena.c 2004-08-28 23:31:02.000000000 -0400 @@ -108,7 +108,7 @@ { int64_t memleft; - arena_init(&cfe_arena,0x0,0x100000000); /* 2^32 physical bytes */ + arena_init(&cfe_arena,0x0,0x100000000ULL); /* 2^32 physical bytes */ /* * Mark the ranges from the SB1250's memory map diff -ur GPL-4/src/cfe/cfe/include/cfe_bootblock.h GPL-4-new/src/cfe/cfe/include/cfe_bootblock.h --- GPL-4/src/cfe/cfe/include/cfe_bootblock.h 2003-06-19 17:54:04.000000000 -0400 +++ GPL-4-new/src/cfe/cfe/include/cfe_bootblock.h 2004-08-29 00:01:13.000000000 -0400 @@ -100,15 +100,15 @@ * Fields within the boot block */ #define _U64(x) ((uint64_t) x) -#define BOOT_MAGIC_NUMBER _U64(0x43465631424f4f54) -#define BOOT_HDR_CHECKSUM_MASK _U64(0x00000000FFFFFFFF) -#define BOOT_HDR_VER_MASK _U64(0x000000FF00000000) +#define BOOT_MAGIC_NUMBER _U64(0x43465631424f4f54ULL) +#define BOOT_HDR_CHECKSUM_MASK _U64(0x00000000FFFFFFFFULL) +#define BOOT_HDR_VER_MASK _U64(0x000000FF00000000ULL) #define BOOT_HDR_VER_SHIFT 32 -#define BOOT_HDR_FLAGS_MASK _U64(0xFF00000000000000) -#define BOOT_SECSIZE_MASK _U64(0x00000000FFFFFFFF) -#define BOOT_DATA_CHECKSUM_MASK _U64(0xFFFFFFFF00000000) +#define BOOT_HDR_FLAGS_MASK _U64(0xFF00000000000000ULL) +#define BOOT_SECSIZE_MASK _U64(0x00000000FFFFFFFFULL) +#define BOOT_DATA_CHECKSUM_MASK _U64(0xFFFFFFFF00000000ULL) #define BOOT_DATA_CHECKSUM_SHIFT 32 -#define BOOT_ARCHINFO_MASK _U64(0x00000000FFFFFFFF) +#define BOOT_ARCHINFO_MASK _U64(0x00000000FFFFFFFFULL) #define BOOT_HDR_VERSION 1 diff -ur GPL-4/src/cfe/cfe/lib/lib_qsort.c GPL-4-new/src/cfe/cfe/lib/lib_qsort.c --- GPL-4/src/cfe/cfe/lib/lib_qsort.c 2003-06-19 17:54:04.000000000 -0400 +++ GPL-4-new/src/cfe/cfe/lib/lib_qsort.c 2004-08-28 23:57:30.000000000 -0400 @@ -13,14 +13,18 @@ ******************/ for (i = sizeof(int); i <= size; i += sizeof(int)) { - int t = *((int *)a); - *(((int *)a)++) = *((int *)b); - *(((int *)b)++) = t; + int* a_int = (int*)a; + int* b_int = (int*)b; + int t = *a_int; + *(a_int++) = *b_int; + *(b_int++) = t; } for (i = i - sizeof(int) + 1; i <= size; i++) { - char t = *((char *)a); - *(((char *)a)++) = *((char *)b); - *(((char *)b)++) = t; + char* a_char = (char*)a; + char* b_char = (char*)b; + char t = *a_char; + *(a_char++) = *b_char; + *(b_char++) = t; } } diff -ur GPL-4/src/cfe/cfe/ui/ui_examcmds.c GPL-4-new/src/cfe/cfe/ui/ui_examcmds.c --- GPL-4/src/cfe/cfe/ui/ui_examcmds.c 2003-06-19 17:54:04.000000000 -0400 +++ GPL-4-new/src/cfe/cfe/ui/ui_examcmds.c 2004-08-29 00:11:53.000000000 -0400 @@ -550,11 +550,11 @@ } MEMTEST(ptr,len,(idx*8)); MEMTEST(ptr,len, 0); - MEMTEST(ptr,len,0xFFFFFFFFFFFFFFFF); - MEMTEST(ptr,len,0x5555555555555555); - MEMTEST(ptr,len,0xAAAAAAAAAAAAAAAA); - MEMTEST(ptr,len,0xFF00FF00FF00FF00); - MEMTEST(ptr,len,0x00FF00FF00FF00FF); + MEMTEST(ptr,len,0xFFFFFFFFFFFFFFFFULL); + MEMTEST(ptr,len,0x5555555555555555ULL); + MEMTEST(ptr,len,0xAAAAAAAAAAAAAAAAULL); + MEMTEST(ptr,len,0xFF00FF00FF00FF00ULL); + MEMTEST(ptr,len,0x00FF00FF00FF00FFULL); if (!loopmode) break; pass++; } diff -ur GPL-4/src/include/bcmnvram.h GPL-4-new/src/include/bcmnvram.h --- GPL-4/src/include/bcmnvram.h 2003-10-30 13:24:40.000000000 -0500 +++ GPL-4-new/src/include/bcmnvram.h 2004-08-28 23:18:42.000000000 -0400 @@ -18,7 +18,7 @@ #ifndef _LANGUAGE_ASSEMBLY //Gerald20030113, remarked due to bool confilict. #include -#define INLINE inline //Gerald20030113, added +//#define INLINE inline //Gerald20030113, added struct nvram_header { unsigned long magic; diff -ur GPL-4/src/linux/linux/arch/mips/Makefile GPL-4-new/src/linux/linux/arch/mips/Makefile --- GPL-4/src/linux/linux/arch/mips/Makefile 2003-06-19 17:54:08.000000000 -0400 +++ GPL-4-new/src/linux/linux/arch/mips/Makefile 2004-08-28 23:00:17.000000000 -0400 @@ -75,7 +75,8 @@ GCCFLAGS += -mcpu=r4600 -mips2 -Wa,--trap endif ifdef CONFIG_CPU_MIPS32 -GCCFLAGS += -mcpu=r4600 -mips2 -Wa,--trap +#GCCFLAGS += -mcpu=r4600 -mips2 -Wa,--trap +GCCFLAGS += -mips2 -Wa,--trap endif ifdef CONFIG_CPU_MIPS64 GCCFLAGS += -mcpu=r4600 -mips2 -Wa,--trap diff -ur GPL-4/src/pmon/GNUmakefile GPL-4-new/src/pmon/GNUmakefile --- GPL-4/src/pmon/GNUmakefile 2003-10-30 11:57:23.000000000 -0500 +++ GPL-4-new/src/pmon/GNUmakefile 2004-08-28 23:12:58.000000000 -0400 @@ -14,7 +14,7 @@ # Options CROSS_COMPILE := mipsel-linux- -EXTRA_CFLAGS := -mcpu=r4600 -mips2 -Ulinux -fno-builtin +EXTRA_CFLAGS := -mips2 -Ulinux -fno-builtin ENDIAN := lg DEBUG := false diff -ur GPL-4/src/router/Makefile GPL-4-new/src/router/Makefile --- GPL-4/src/router/Makefile 2003-11-10 15:21:29.000000000 -0500 +++ GPL-4-new/src/router/Makefile 2004-08-28 19:39:00.000000000 -0400 @@ -43,7 +43,7 @@ endif ifeq ($(PLATFORM),mipsel-uclibc) -export CROSS_COMPILE := mipsel-uclibc- +export CROSS_COMPILE := mipsel-linux-uclibc- export CONFIGURE := ./configure mipsel-linux --build=$(BUILD) export TOOLCHAIN := $(shell cd $(dir $(shell which $(CROSS_COMPILE)gcc))/.. && pwd -P) endif diff -ur GPL-4/src/router/busybox/Config.h GPL-4-new/src/router/busybox/Config.h --- GPL-4/src/router/busybox/Config.h 2003-11-10 15:21:29.000000000 -0500 +++ GPL-4-new/src/router/busybox/Config.h 2003-10-30 13:24:40.000000000 -0500 @@ -117,8 +117,8 @@ //#define BB_TEE //#define BB_TEST //#define BB_TELNET -//#define BB_TFTP -//#define BB_TOUCH +#define BB_TFTP +#define BB_TOUCH //#define BB_TR //#define BB_TRACEROUTE //#define BB_TRUE_FALSE diff -ur GPL-4/src/router/ppp/pppoecd/pppoe.c GPL-4-new/src/router/ppp/pppoecd/pppoe.c --- GPL-4/src/router/ppp/pppoecd/pppoe.c 2003-12-09 18:25:15.000000000 -0500 +++ GPL-4-new/src/router/ppp/pppoecd/pppoe.c 2004-08-28 19:41:30.000000000 -0400 @@ -133,8 +133,7 @@ if (pppoe_srv_name !=NULL) { if (strlen (pppoe_srv_name) > 255) { - poe_error (ses," Service name too long - (maximum allowed 256 chars)"); + poe_error (ses," Service name too long (maximum allowed 256 chars)"); poe_die(-1); } ses->filt->stag = make_filter_tag(PTT_SRV_NAME, diff -ur GPL-4/src/router/vlan/vconfig.c GPL-4-new/src/router/vlan/vconfig.c --- GPL-4/src/router/vlan/vconfig.c 2003-10-30 11:58:29.000000000 -0500 +++ GPL-4-new/src/router/vlan/vconfig.c 2004-08-28 19:58:36.000000000 -0400 @@ -37,30 +37,30 @@ static char* usage = - " -Usage: add [interface-name] [vlan_id] - rem [vlan-name] - set_flag [interface-name] [flag-num] [0 | 1] - set_egress_map [vlan-name] [skb_priority] [vlan_qos] - set_ingress_map [vlan-name] [skb_priority] [vlan_qos] - set_name_type [name-type] - -* The [interface-name] is the name of the ethernet card that hosts - the VLAN you are talking about. -* The vlan_id is the identifier (0-4095) of the VLAN you are operating on. -* skb_priority is the priority in the socket buffer (sk_buff). -* vlan_qos is the 3 bit priority in the VLAN header -* name-type: VLAN_PLUS_VID (vlan0005), VLAN_PLUS_VID_NO_PAD (vlan5), - DEV_PLUS_VID (eth0.0005), DEV_PLUS_VID_NO_PAD (eth0.5) -* bind-type: PER_DEVICE # Allows vlan 5 on eth0 and eth1 to be unique. - PER_KERNEL # Forces vlan 5 to be unique across all devices. -* FLAGS: 1 REORDER_HDR When this is set, the VLAN device will move the - ethernet header around to make it look exactly like a real - ethernet device. This may help programs such as DHCPd which - read the raw ethernet packet and make assumptions about the - location of bytes. If you don't need it, don't turn it on, because - there will be at least a small performance degradation. Default - is OFF. + "\n\ +Usage: add [interface-name] [vlan_id]\n\ + rem [vlan-name]\n\ + set_flag [interface-name] [flag-num] [0 | 1]\n\ + set_egress_map [vlan-name] [skb_priority] [vlan_qos]\n\ + set_ingress_map [vlan-name] [skb_priority] [vlan_qos]\n\ + set_name_type [name-type]\n\ +\n\ +* The [interface-name] is the name of the ethernet card that hosts\n\ + the VLAN you are talking about.\n\ +* The vlan_id is the identifier (0-4095) of the VLAN you are operating on.\n\ +* skb_priority is the priority in the socket buffer (sk_buff).\n\ +* vlan_qos is the 3 bit priority in the VLAN header\n\ +* name-type: VLAN_PLUS_VID (vlan0005), VLAN_PLUS_VID_NO_PAD (vlan5),\n\ + DEV_PLUS_VID (eth0.0005), DEV_PLUS_VID_NO_PAD (eth0.5)\n\ +* bind-type: PER_DEVICE # Allows vlan 5 on eth0 and eth1 to be unique.\n\ + PER_KERNEL # Forces vlan 5 to be unique across all devices.\n\ +* FLAGS: 1 REORDER_HDR When this is set, the VLAN device will move the\n\ + ethernet header around to make it look exactly like a real\n\ + ethernet device. This may help programs such as DHCPd which\n\ + read the raw ethernet packet and make assumptions about the\n\ + location of bytes. If you don't need it, don't turn it on, because\n\ + there will be at least a small performance degradation. Default\n\ + is OFF.\n\ "; void show_usage() { diff -ur GPL-4/src/shared/bcmutils.c GPL-4-new/src/shared/bcmutils.c --- GPL-4/src/shared/bcmutils.c 2003-10-30 11:57:24.000000000 -0500 +++ GPL-4-new/src/shared/bcmutils.c 2004-08-28 23:48:35.000000000 -0400 @@ -632,7 +632,8 @@ /* handle bulk of data as 32-bit words */ pend = pdata + (nbytes & 0xfffffffc); while (pdata < pend) { - *tptr = *((ulong *)pdata)++; + ulong *pdata_ulong = (ulong*)pdata; + *tptr = *pdata_ulong++; CRC_INNER_LOOP(32, crc, tmp[0]); CRC_INNER_LOOP(32, crc, tmp[1]); CRC_INNER_LOOP(32, crc, tmp[2]); diff -ur GPL-4/src/shared/sbutils.c GPL-4-new/src/shared/sbutils.c --- GPL-4/src/shared/sbutils.c 2003-11-10 15:21:29.000000000 -0500 +++ GPL-4-new/src/shared/sbutils.c 2004-08-28 23:35:40.000000000 -0400 @@ -135,7 +135,7 @@ INTR_OFF(si, intr_val); tmp = 1; OSL_PCMCIA_WRITE_ATTR(si->osh, MEM_SEG, &tmp, 1); - (uint32)sbr &= ~(1 << 11); /* mask out bit 11*/ + sbr = (uint32*) (((uint32)sbr) & ~(1 << 11)); /* mask out bit 11*/ } val = R_REG(sbr); @@ -169,7 +169,7 @@ INTR_OFF(si, intr_val); tmp = 1; OSL_PCMCIA_WRITE_ATTR(si->osh, MEM_SEG, &tmp, 1); - (uint32)sbr &= ~(1 << 11); /* mask out bit 11 */ + sbr = (uint32*) (((uint32)sbr) & ~(1 << 11)); /* mask out bit 11 */ } if ((si->bus == PCMCIA_BUS) || (si->bus == PCI_BUS)) {