Index: Makefile =================================================================== RCS file: /home/cvs/linux/Makefile,v retrieving revision 1.209 diff -u -r1.209 Makefile --- Makefile 18 Dec 2003 11:33:24 -0000 1.209 +++ Makefile 29 Dec 2003 08:00:02 -0000 @@ -1,7 +1,7 @@ VERSION = 2 PATCHLEVEL = 6 SUBLEVEL = 0 -EXTRAVERSION = +EXTRAVERSION = iluxa_minimal # *DOCUMENTATION* # To see a list of typical targets execute "make help" Index: arch/mips/Makefile =================================================================== RCS file: /home/cvs/linux/arch/mips/Makefile,v retrieving revision 1.154 diff -u -r1.154 Makefile --- arch/mips/Makefile 22 Dec 2003 16:59:09 -0000 1.154 +++ arch/mips/Makefile 29 Dec 2003 08:00:09 -0000 @@ -35,13 +35,14 @@ endif ifdef CONFIG_MIPS64 gcc-abi = 64 -gas-abi = 32 +#gas-abi = 32 +gas-abi = o64 tool-prefix = $(64bit-tool-prefix) UTS_MACHINE := mips64 endif ifdef CONFIG_CROSSCOMPILE -CROSS_COMPILE := $(tool-prefix) +CROSS_COMPILE := /crossdev/$(UTS_MACHINE)/bin/$(tool-prefix) endif # @@ -98,7 +99,7 @@ else \ gcc_abi=; gcc_isa=-$(5); \ fi; \ -gas_abi=-Wa,-$(gcc-abi); gas_cpu=$$cpu; gas_isa=-Wa,$$isa; \ +gas_abi=-Wa,-mabi=$(gcc-abi); gas_cpu=$$cpu; gas_isa=-Wa,$$isa; \ while :; do \ for gas_opt in -Wa,-march= -Wa,-mcpu=; do \ $(CC) $$gas_abi $$gas_opt$$cpu $$gas_isa -Wa,-Z -c \ @@ -109,7 +110,7 @@ break; \ done; \ if test x$(gcc-abi) != x$(gas-abi); then \ - gas_abi="-Wa,-$(gas-abi) -Wa,-mgp$(gcc-abi)"; \ + gas_abi="-Wa,-mabi=$(gas-abi) -Wa,-mgp$(gcc-abi)"; \ fi; \ echo $$gcc_abi $$gcc_opt$$gcc_cpu $$gcc_isa $$gas_abi $$gas_opt$$gas_cpu $$gas_isa) @@ -612,7 +613,7 @@ # ELF files from 32-bit files by conversion. # #AS += -64 -#LDFLAGS += -m elf64bmip +LDFLAGS += -m elf64btsmip # # Choosing incompatible machines durings configuration will result in Index: arch/mips/pci/pci-ip32.c =================================================================== RCS file: /home/cvs/linux/arch/mips/pci/pci-ip32.c,v retrieving revision 1.9 diff -u -r1.9 pci-ip32.c --- arch/mips/pci/pci-ip32.c 18 Nov 2003 01:17:47 -0000 1.9 +++ arch/mips/pci/pci-ip32.c 29 Dec 2003 08:00:11 -0000 @@ -140,6 +140,7 @@ .io_resource = &mace_pci_io_resource, .iommu = 0, .mem_offset = MACE_PCI_MEM_OFFSET, + .io_offset = 0x0, }; @@ -167,8 +168,9 @@ void __init ip32_pci_setup(void) { u32 rev = mace_read_32(MACEPCI_REV); + PCIBIOS_MIN_IO=0x1000; - printk("MACE: PCI rev %d detected at %016lx\n", rev, + printk("MACE: PCI rev %d detected at %016Lx\n", rev, (u64) MACE_BASE + MACE_PCI); ioport_resource.end = mace_pci_io_resource.end; Index: arch/mips/sgi-ip32/ip32-setup.c =================================================================== RCS file: /home/cvs/linux/arch/mips/sgi-ip32/ip32-setup.c,v retrieving revision 1.12 diff -u -r1.12 ip32-setup.c --- arch/mips/sgi-ip32/ip32-setup.c 18 Nov 2003 05:15:20 -0000 1.12 +++ arch/mips/sgi-ip32/ip32-setup.c 29 Dec 2003 08:00:11 -0000 @@ -6,6 +6,8 @@ * for more details. * * Copyright (C) 2000 Harald Koerfgen + * + * Modified by Ilya A. Volynets. 2002-2003 */ #include #include @@ -59,9 +61,10 @@ #endif extern void ip32_time_init(void); -extern void ip32_be_init(void); -extern void __init ip32_timer_setup (struct irqaction *irq); -extern void __init crime_init (void); +extern void ip32_be_init(void); +extern void __init ip32_timer_setup (struct irqaction *irq); +extern void __init crime_init (void); +extern int console_setup(const char*); #ifdef CONFIG_SERIAL_8250 #include @@ -75,14 +78,40 @@ #endif /* CONFIG_SERIAL_8250 */ -static void __init ip32_setup(void) +static int __init ip32_setup(void) { - TLBMISS_HANDLER_SETUP (); + set_io_port_base((unsigned long)ioremap(MACEPCI_LOW_IO,0x2000000)); - set_io_port_base(UNCACHEDADDR(MACEPCI_HI_IO)); +#ifdef CONFIG_SERIAL_8250 + { + static struct uart_port sgio2_serial_ports[]={{},{}}; + memset(sgio2_serial_ports,0,sizeof(sgio2_serial_ports)); + sgio2_serial_ports[0].type = PORT_16550A; + sgio2_serial_ports[0].line = 0; + sgio2_serial_ports[0].irq = MACEISA_SERIAL1_IRQ; + sgio2_serial_ports[0].flags = STD_COM_FLAGS|UPF_RESOURCES; + sgio2_serial_ports[0].uartclk = BASE_BAUD*16; + sgio2_serial_ports[0].iotype = UPIO_MEM; + sgio2_serial_ports[0].membase = ioremap(MACE_BASE_OFFSET+MACEISA_SER1_BASE,0x8000); + sgio2_serial_ports[0].fifosize= 14; + /* How much to shift register offset by + i.e. in O2 it each UART register is + replicated over 256 byte space + */ + sgio2_serial_ports[0].regshift = 8; + sgio2_serial_ports[1].type = PORT_16550A; + sgio2_serial_ports[1].line = 1; + sgio2_serial_ports[1].irq = MACEISA_SERIAL2_IRQ; + sgio2_serial_ports[1].flags = STD_COM_FLAGS|UPF_RESOURCES; + sgio2_serial_ports[1].uartclk = BASE_BAUD*16; + sgio2_serial_ports[1].iotype = UPIO_MEM; + sgio2_serial_ports[1].membase = ioremap(MACE_BASE_OFFSET+MACEISA_SER2_BASE,0x8000); + sgio2_serial_ports[1].fifosize= 14; + sgio2_serial_ports[1].regshift = 8; - early_serial_setup(sgio2_serial_ports); - early_serial_setup(sgio2_serial_ports+1); + early_serial_setup(sgio2_serial_ports); + early_serial_setup(sgio2_serial_ports+1); + } #endif #ifdef CONFIG_SGI_O2MACE_ETH { @@ -114,6 +143,7 @@ crime_init(); ip32_pci_setup(); + return 0; } early_initcall(ip32_setup); Index: arch/mips/sgi-ip32/ip32-timer.c =================================================================== RCS file: /home/cvs/linux/arch/mips/sgi-ip32/ip32-timer.c,v retrieving revision 1.16 diff -u -r1.16 ip32-timer.c --- arch/mips/sgi-ip32/ip32-timer.c 28 Nov 2003 18:52:41 -0000 1.16 +++ arch/mips/sgi-ip32/ip32-timer.c 29 Dec 2003 08:00:11 -0000 @@ -27,6 +27,8 @@ #include #include +#include + extern volatile unsigned long wall_jiffies; u32 cc_interval; Index: include/asm-mips/page-64.h =================================================================== RCS file: /home/cvs/linux/include/asm-mips/page-64.h,v retrieving revision 1.3 diff -u -r1.3 page-64.h --- include/asm-mips/page-64.h 30 Nov 2003 01:52:25 -0000 1.3 +++ include/asm-mips/page-64.h 29 Dec 2003 08:00:25 -0000 @@ -15,7 +15,8 @@ * This handles the memory map. */ #ifdef CONFIG_DMA_NONCOHERENT -#define PAGE_OFFSET 0x9800000000000000UL +//#define PAGE_OFFSET 0x9800000000000000UL +#define PAGE_OFFSET 0xffffffff80000000UL #else #define PAGE_OFFSET 0xa800000000000000UL #endif Index: include/asm-mips/pci.h =================================================================== RCS file: /home/cvs/linux/include/asm-mips/pci.h,v retrieving revision 1.51 diff -u -r1.51 pci.h --- include/asm-mips/pci.h 11 Nov 2003 13:20:28 -0000 1.51 +++ include/asm-mips/pci.h 29 Dec 2003 08:00:25 -0000 @@ -71,6 +71,11 @@ #endif /* CONFIG_MAPPED_DMA_IO */ +#ifdef CONFIG_DMA_NONCOHERENT +#define dev_to_baddr(dev, addr) (addr) +#define baddr_to_dev(dev, addr) (addr) +#endif + /* This is always fine. */ #define pci_dac_dma_supported(pci_dev, mask) (1)