From: Andy P. <at...@us...> - 2002-04-09 12:33:53
|
Update of /cvsroot/linux-vax/kernel-2.4/include/asm-arm/arch-cl7500 In directory usw-pr-cvs1:/tmp/cvs-serv9454/asm-arm/arch-cl7500 Modified Files: hardware.h io.h irq.h irqs.h keyboard.h memory.h system.h time.h uncompress.h Removed Files: shmparam.h Log Message: Synch to 2.4.15 commit 1 Index: hardware.h =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/include/asm-arm/arch-cl7500/hardware.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- hardware.h 14 Jan 2001 16:58:52 -0000 1.1.1.1 +++ hardware.h 9 Apr 2002 12:33:08 -0000 1.2 @@ -49,47 +49,18 @@ #define FLUSH_BASE 0xdf000000 - -#ifndef __ASSEMBLY__ - -/* - * for use with inb/outb - */ -#define IO_VIDC_AUDIO_BASE 0x80140000 -#define IO_VIDC_BASE 0x80100000 -#define IO_IOMD_BASE 0x80080000 -#define IOC_BASE 0x80080000 - -/* - * IO definitions - */ -#define EXPMASK_BASE ((volatile unsigned char *)0xe0360000) -#define IOEB_BASE ((volatile unsigned char *)0xe0350050) -#define PCIO_FLOPPYDMABASE ((volatile unsigned char *)0xe002a000) +#define VIDC_BASE 0xe0400000 +#define IOMD_BASE 0xe0200000 +#define IOC_BASE 0xe0200000 +#define FLOPPYDMA_BASE 0xe002a000 #define PCIO_BASE 0xe0010000 -/* in/out bias for the ISA slot region */ -#define ISASLOT_IO 0x80400000 - -/* - * RAM definitions - */ -#define GET_MEMORY_END(p) (PAGE_OFFSET + p->u1.s.page_size * \ - (p->u1.s.pages_in_bank[0] + \ - p->u1.s.pages_in_bank[1] + \ - p->u1.s.pages_in_bank[2] + \ - p->u1.s.pages_in_bank[3])) #define FLUSH_BASE_PHYS 0x00000000 /* ROM */ -#else +#define vidc_writel(val) __raw_writel(val, VIDC_BASE) -#define VIDC_SND_BASE 0xe0500000 -#define VIDC_BASE 0xe0400000 -#define IOMD_BASE 0xe0200000 -#define IOC_BASE 0xe0200000 -#define PCIO_FLOPPYDMABASE 0xe002a000 -#define PCIO_BASE 0xe0010000 +/* in/out bias for the ISA slot region */ +#define ISASLOT_IO 0x80400000 -#endif #endif Index: io.h =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/include/asm-arm/arch-cl7500/io.h,v retrieving revision 1.1.1.2 retrieving revision 1.2 diff -u -r1.1.1.2 -r1.2 --- io.h 25 Feb 2001 23:14:53 -0000 1.1.1.2 +++ io.h 9 Apr 2002 12:33:08 -0000 1.2 @@ -68,7 +68,7 @@ * Dynamic IO functions - let the compiler * optimize the expressions */ -extern __inline__ void __outb (unsigned int value, unsigned int port) +static inline void __outb (unsigned int value, unsigned int port) { unsigned long temp; __asm__ __volatile__( @@ -81,7 +81,7 @@ : "cc"); } -extern __inline__ void __outw (unsigned int value, unsigned int port) +static inline void __outw (unsigned int value, unsigned int port) { unsigned long temp; __asm__ __volatile__( @@ -94,7 +94,7 @@ : "cc"); } -extern __inline__ void __outl (unsigned int value, unsigned int port) +static inline void __outl (unsigned int value, unsigned int port) { unsigned long temp; __asm__ __volatile__( @@ -108,7 +108,7 @@ } #define DECLARE_DYN_IN(sz,fnsuffix,instr) \ -extern __inline__ unsigned sz __in##fnsuffix (unsigned int port) \ +static inline unsigned sz __in##fnsuffix (unsigned int port) \ { \ unsigned long temp, value; \ __asm__ __volatile__( \ @@ -122,7 +122,7 @@ return (unsigned sz)value; \ } -extern __inline__ unsigned int __ioaddr (unsigned int port) \ +static inline unsigned int __ioaddr (unsigned int port) \ { \ if (__PORT_PCIO(port)) \ return (unsigned int)(PCIO_BASE + (port << 2)); \ Index: irq.h =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/include/asm-arm/arch-cl7500/irq.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- irq.h 14 Jan 2001 16:58:54 -0000 1.1.1.1 +++ irq.h 9 Apr 2002 12:33:08 -0000 1.2 @@ -2,14 +2,16 @@ * include/asm-arm/arch-cl7500/irq.h * * Copyright (C) 1996 Russell King - * Copyright (C) 1999 Nexus Electronics Ltd. + * Copyright (C) 1999, 2001 Nexus Electronics Ltd. * * Changelog: * 10-10-1996 RMK Brought up to date with arch-sa110eval * 22-08-1998 RMK Restructured IRQ routines * 11-08-1999 PJB Created ARM7500 version, derived from RiscPC code */ + #include <asm/hardware/iomd.h> +#include <asm/io.h> static inline int fixup_irq(unsigned int irq) { @@ -19,7 +21,7 @@ printk("Spurious ISA IRQ!\n"); return irq; } - irq = 40; + irq = IRQ_ISA_BASE; while (!(isabits & 1)) { irq++; isabits >>= 1; @@ -31,161 +33,121 @@ static void cl7500_mask_irq_ack_a(unsigned int irq) { - unsigned int temp; + unsigned int val, mask; - __asm__ __volatile__( - "ldrb %0, [%2]\n" -" bic %0, %0, %1\n" -" strb %0, [%2]\n" -" strb %1, [%3]" - : "=&r" (temp) - : "r" (1 << (irq & 7)), "r" (ioaddr(IOMD_IRQMASKA)), - "r" (ioaddr(IOMD_IRQCLRA))); + mask = 1 << irq; + val = iomd_readb(IOMD_IRQMASKA); + iomd_writeb(val & ~mask, IOMD_IRQMASKA); + iomd_writeb(mask, IOMD_IRQCLRA); } static void cl7500_mask_irq_a(unsigned int irq) { - unsigned int temp; + unsigned int val, mask; - __asm__ __volatile__( - "ldrb %0, [%2]\n" -" bic %0, %0, %1\n" -" strb %0, [%2]" - : "=&r" (temp) - : "r" (1 << (irq & 7)), "r" (ioaddr(IOMD_IRQMASKA))); + mask = 1 << irq; + val = iomd_readb(IOMD_IRQMASKA); + iomd_writeb(val & ~mask, IOMD_IRQMASKA); } static void cl7500_unmask_irq_a(unsigned int irq) { - unsigned int temp; + unsigned int val, mask; - __asm__ __volatile__( - "ldrb %0, [%2]\n" -" orr %0, %0, %1\n" -" strb %0, [%2]" - : "=&r" (temp) - : "r" (1 << (irq & 7)), "r" (ioaddr(IOMD_IRQMASKA))); + mask = 1 << irq; + val = iomd_readb(IOMD_IRQMASKA); + iomd_writeb(val | mask, IOMD_IRQMASKA); } static void cl7500_mask_irq_b(unsigned int irq) { - unsigned int temp; + unsigned int val, mask; - __asm__ __volatile__( - "ldrb %0, [%2]\n" -" bic %0, %0, %1\n" -" strb %0, [%2]" - : "=&r" (temp) - : "r" (1 << (irq & 7)), "r" (ioaddr(IOMD_IRQMASKB))); + mask = 1 << (irq & 7); + val = iomd_readb(IOMD_IRQMASKB); + iomd_writeb(val & ~mask, IOMD_IRQMASKB); } static void cl7500_unmask_irq_b(unsigned int irq) { - unsigned int temp; + unsigned int val, mask; - __asm__ __volatile__( - "ldrb %0, [%2]\n" -" orr %0, %0, %1\n" -" strb %0, [%2]" - : "=&r" (temp) - : "r" (1 << (irq & 7)), "r" (ioaddr(IOMD_IRQMASKB))); + mask = 1 << (irq & 7); + val = iomd_readb(IOMD_IRQMASKB); + iomd_writeb(val | mask, IOMD_IRQMASKB); } static void cl7500_mask_irq_c(unsigned int irq) { - unsigned int temp; + unsigned int val, mask; - __asm__ __volatile__( - "ldrb %0, [%2]\n" -" bic %0, %0, %1\n" -" strb %0, [%2]" - : "=&r" (temp) - : "r" (1 << (irq & 7)), "r" (ioaddr(IOMD_IRQMASKC))); + mask = 1 << (irq & 7); + val = iomd_readb(IOMD_IRQMASKC); + iomd_writeb(val & ~mask, IOMD_IRQMASKC); } static void cl7500_unmask_irq_c(unsigned int irq) { - unsigned int temp; + unsigned int val, mask; - __asm__ __volatile__( - "ldrb %0, [%2]\n" -" orr %0, %0, %1\n" -" strb %0, [%2]" - : "=&r" (temp) - : "r" (1 << (irq & 7)), "r" (ioaddr(IOMD_IRQMASKC))); + mask = 1 << (irq & 7); + val = iomd_readb(IOMD_IRQMASKC); + iomd_writeb(val | mask, IOMD_IRQMASKC); } static void cl7500_mask_irq_d(unsigned int irq) { - unsigned int temp; + unsigned int val, mask; - __asm__ __volatile__( - "ldrb %0, [%2]\n" -" bic %0, %0, %1\n" -" strb %0, [%2]" - : "=&r" (temp) - : "r" (1 << (irq & 7)), "r" (ioaddr(IOMD_IRQMASKD))); + mask = 1 << (irq & 7); + val = iomd_readb(IOMD_IRQMASKD); + iomd_writeb(val & ~mask, IOMD_IRQMASKD); } static void cl7500_unmask_irq_d(unsigned int irq) { - unsigned int temp; + unsigned int val, mask; - __asm__ __volatile__( - "ldrb %0, [%2]\n" -" orr %0, %0, %1\n" -" strb %0, [%2]" - : "=&r" (temp) - : "r" (1 << (irq & 7)), "r" (ioaddr(IOMD_IRQMASKD))); + mask = 1 << (irq & 7); + val = iomd_readb(IOMD_IRQMASKD); + iomd_writeb(val | mask, IOMD_IRQMASKD); } static void cl7500_mask_irq_dma(unsigned int irq) { - unsigned int temp; + unsigned int val, mask; - __asm__ __volatile__( - "ldrb %0, [%2]\n" -" bic %0, %0, %1\n" -" strb %0, [%2]" - : "=&r" (temp) - : "r" (1 << (irq & 7)), "r" (ioaddr(IOMD_DMAMASK))); + mask = 1 << (irq & 7); + val = iomd_readb(IOMD_DMAMASK); + iomd_writeb(val & ~mask, IOMD_DMAMASK); } static void cl7500_unmask_irq_dma(unsigned int irq) { - unsigned int temp; + unsigned int val, mask; - __asm__ __volatile__( - "ldrb %0, [%2]\n" -" orr %0, %0, %1\n" -" strb %0, [%2]" - : "=&r" (temp) - : "r" (1 << (irq & 7)), "r" (ioaddr(IOMD_DMAMASK))); + mask = 1 << (irq & 7); + val = iomd_readb(IOMD_DMAMASK); + iomd_writeb(val | mask, IOMD_DMAMASK); } static void cl7500_mask_irq_fiq(unsigned int irq) { - unsigned int temp; + unsigned int val, mask; - __asm__ __volatile__( - "ldrb %0, [%2]\n" -" bic %0, %0, %1\n" -" strb %0, [%2]" - : "=&r" (temp) - : "r" (1 << (irq & 7)), "r" (ioaddr(IOMD_FIQMASK))); + mask = 1 << (irq & 7); + val = iomd_readb(IOMD_FIQMASK); + iomd_writeb(val & ~mask, IOMD_FIQMASK); } static void cl7500_unmask_irq_fiq(unsigned int irq) { - unsigned int temp; + unsigned int val, mask; - __asm__ __volatile__( - "ldrb %0, [%2]\n" -" orr %0, %0, %1\n" -" strb %0, [%2]" - : "=&r" (temp) - : "r" (1 << (irq & 7)), "r" (ioaddr(IOMD_FIQMASK))); + mask = 1 << (irq & 7); + val = iomd_readb(IOMD_FIQMASK); + iomd_writeb(val | mask, IOMD_FIQMASK); } static void no_action(int cpl, void *dev_id, struct pt_regs *regs) @@ -196,14 +158,12 @@ static __inline__ void irq_init_irq(void) { - extern void ecard_disableirq(unsigned int irq); - extern void ecard_enableirq(unsigned int irq); int irq; - outb(0, IOMD_IRQMASKA); - outb(0, IOMD_IRQMASKB); - outb(0, IOMD_FIQMASK); - outb(0, IOMD_DMAMASK); + iomd_writeb(0, IOMD_IRQMASKA); + iomd_writeb(0, IOMD_IRQMASKB); + iomd_writeb(0, IOMD_FIQMASK); + iomd_writeb(0, IOMD_DMAMASK); for (irq = 0; irq < NR_IRQS; irq++) { switch (irq) { @@ -239,14 +199,14 @@ irq_desc[irq].unmask = cl7500_unmask_irq_c; break; - case 32 ... 39: + case 40 ... 47: irq_desc[irq].valid = 1; irq_desc[irq].mask_ack = cl7500_mask_irq_d; irq_desc[irq].mask = cl7500_mask_irq_d; irq_desc[irq].unmask = cl7500_unmask_irq_d; break; - case 40 ... 47: + case 48 ... 55: irq_desc[irq].valid = 1; irq_desc[irq].probe_ok = 1; irq_desc[irq].mask_ack = no_action; Index: irqs.h =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/include/asm-arm/arch-cl7500/irqs.h,v retrieving revision 1.1.1.2 retrieving revision 1.2 diff -u -r1.1.1.2 -r1.2 --- irqs.h 25 Feb 2001 23:14:53 -0000 1.1.1.2 +++ irqs.h 9 Apr 2002 12:33:08 -0000 1.2 @@ -35,20 +35,22 @@ #define IRQ_IOP5 29 #define IRQ_IOP6 30 #define IRQ_IOP7 31 -#define IRQ_MOUSERX 32 -#define IRQ_MOUSETX 33 -#define IRQ_ADC 34 -#define IRQ_EVENT1 35 -#define IRQ_EVENT2 36 -#define IRQ_ISA_3 40 -#define IRQ_ISA_4 41 -#define IRQ_ISA_5 42 -#define IRQ_ISA_7 43 -#define IRQ_ISA_9 44 -#define IRQ_ISA_10 45 -#define IRQ_ISA_11 46 -#define IRQ_ISA_14 47 +#define IRQ_MOUSERX 40 +#define IRQ_MOUSETX 41 +#define IRQ_ADC 42 +#define IRQ_EVENT1 43 +#define IRQ_EVENT2 44 + +#define IRQ_ISA_BASE 48 +#define IRQ_ISA_3 48 +#define IRQ_ISA_4 49 +#define IRQ_ISA_5 50 +#define IRQ_ISA_7 51 +#define IRQ_ISA_9 52 +#define IRQ_ISA_10 53 +#define IRQ_ISA_11 54 +#define IRQ_ISA_14 55 #define FIQ_INT9 0 #define FIQ_INT5 1 Index: keyboard.h =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/include/asm-arm/arch-cl7500/keyboard.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- keyboard.h 14 Jan 2001 16:58:54 -0000 1.1.1.1 +++ keyboard.h 9 Apr 2002 12:33:08 -0000 1.2 @@ -4,26 +4,12 @@ * * Keyboard driver definitions for CL7500 architecture * - * (C) 1998 Russell King + * Copyright (C) 1998-2001 Russell King */ - -#include <asm/irq.h> - #define NR_SCANCODES 128 -extern void ps2kbd_leds(unsigned char leds); -extern void ps2kbd_init_hw(void); -extern unsigned char ps2kbd_sysrq_xlate[NR_SCANCODES]; - -#define kbd_setkeycode(sc,kc) (-EINVAL) -#define kbd_getkeycode(sc) (-EINVAL) - -#define kbd_translate(sc, kcp, rm) ({ *(kcp) = (sc); 1; }) -#define kbd_unexpected_up(kc) (0200) -#define kbd_leds(leds) ps2kbd_leds(leds) -#define kbd_init_hw() ps2kbd_init_hw() -#define kbd_sysrq_xlate ps2kbd_sysrq_xlate -#define kbd_disable_irq() disable_irq(IRQ_KEYBOARDRX) -#define kbd_enable_irq() enable_irq(IRQ_KEYBOARDRX) +extern int ps2kbd_init_hw(void); -#define SYSRQ_KEY 13 +#define kbd_disable_irq() disable_irq(IRQ_KEYBOARDRX) +#define kbd_enable_irq() enable_irq(IRQ_KEYBOARDRX) +#define kbd_init_hw() ps2kbd_init_hw() Index: memory.h =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/include/asm-arm/arch-cl7500/memory.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- memory.h 14 Jan 2001 16:58:54 -0000 1.1.1.1 +++ memory.h 9 Apr 2002 12:33:08 -0000 1.2 @@ -46,4 +46,6 @@ #define __bus_to_virt__is_a_macro #define __bus_to_virt(x) __phys_to_virt(x) +#define PHYS_TO_NID(addr) (0) + #endif Index: system.h =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/include/asm-arm/arch-cl7500/system.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- system.h 14 Jan 2001 16:58:55 -0000 1.1.1.1 +++ system.h 9 Apr 2002 12:33:08 -0000 1.2 @@ -11,12 +11,12 @@ static void arch_idle(void) { while (!current->need_resched && !hlt_counter) - outb(0, IOMD_SUSMODE); + iomd_writeb(0, IOMD_SUSMODE); } #define arch_reset(mode) \ do { \ - outb (0, IOMD_ROMCR0); \ + iomd_writeb(0, IOMD_ROMCR0); \ cpu_reset(0); \ } while (0); Index: time.h =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/include/asm-arm/arch-cl7500/time.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- time.h 14 Jan 2001 16:58:55 -0000 1.1.1.1 +++ time.h 9 Apr 2002 12:33:08 -0000 1.2 @@ -13,25 +13,27 @@ { do_timer(regs); do_set_rtc(); + do_profile(regs); { /* Twinkle the lights. */ - static int count, state = 0xff; + static int count, state = 0xff00; if (count-- == 0) { - state ^= 1; + state ^= 0x100; count = 25; - *((volatile unsigned int *)(0xe002ba00)) = state; + *((volatile unsigned int *)LED_ADDRESS) = state; } } - - do_profile(regs); } /* * Set up timer interrupt. */ -extern __inline__ void setup_timer(void) +static inline void setup_timer(void) { + extern void ioctime_init(void); + ioctime_init(); + timer_irq.handler = timer_interrupt; setup_arm_irq(IRQ_TIMER, &timer_irq); Index: uncompress.h =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/include/asm-arm/arch-cl7500/uncompress.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- uncompress.h 14 Jan 2001 16:58:55 -0000 1.1.1.1 +++ uncompress.h 9 Apr 2002 12:33:08 -0000 1.2 @@ -1,11 +1,11 @@ /* * linux/include/asm-arm/arch-cl7500/uncompress.h * - * Copyright (C) 1999 Nexus Electronics Ltd. + * Copyright (C) 1999, 2000 Nexus Electronics Ltd. */ #define BASE 0x03010000 -#define SERBASE (BASE + (0x3f8 << 2)) +#define SERBASE (BASE + (0x2f8 << 2)) static __inline__ void putc(char c) { --- shmparam.h DELETED --- |