You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(165) |
Sep
(240) |
Oct
(424) |
Nov
(526) |
Dec
(293) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(242) |
Feb
(149) |
Mar
(143) |
Apr
(143) |
May
(76) |
Jun
(59) |
Jul
(20) |
Aug
(2) |
Sep
(49) |
Oct
(1) |
Nov
(4) |
Dec
|
2003 |
Jan
(1) |
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2004 |
Jan
|
Feb
|
Mar
|
Apr
(2) |
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(3) |
Nov
|
Dec
|
2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
(72) |
Jul
(36) |
Aug
(9) |
Sep
(16) |
Oct
(23) |
Nov
(9) |
Dec
(3) |
2010 |
Jan
|
Feb
(1) |
Mar
(35) |
Apr
(44) |
May
(56) |
Jun
(71) |
Jul
(41) |
Aug
(41) |
Sep
(22) |
Oct
(3) |
Nov
(1) |
Dec
(1) |
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2012 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2014 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
(1) |
Nov
(1) |
Dec
|
2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2017 |
Jan
|
Feb
|
Mar
(1) |
Apr
(1) |
May
(1) |
Jun
|
Jul
(1) |
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2021 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
(25) |
Oct
(105) |
Nov
(15) |
Dec
|
2025 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
(4) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: James S. <jsi...@us...> - 2001-11-28 17:05:37
|
Update of /cvsroot/linux-mips/linux/include/asm-mips In directory usw-pr-cvs1:/tmp/cvs-serv4309/asm-mips Modified Files: bcache.h Log Message: Match both <asm/bcache.h> variants. Index: bcache.h =================================================================== RCS file: /cvsroot/linux-mips/linux/include/asm-mips/bcache.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- bcache.h 2001/10/31 18:26:52 1.3 +++ bcache.h 2001/11/28 17:05:35 1.4 @@ -3,8 +3,8 @@ * License. See the file "COPYING" in the main directory of this archive * for more details. * - * Copyright (c) 1997, 1999, 2000 by Ralf Baechle - * Copyright (c) 2000 by Silicon Graphics, Inc. + * Copyright (c) 1997, 1999 by Ralf Baechle + * Copyright (c) 1999 Silicon Graphics, Inc. */ #ifndef _ASM_BCACHE_H #define _ASM_BCACHE_H @@ -12,7 +12,7 @@ #include <linux/config.h> /* Some R4000 / R4400 / R4600 / R5000 machines may have a non-dma-coherent, - chipset implemented caches. On machines with other CPUs the CPU does the + chipset implemented caches. On machines with other CPUs the CPU does the cache thing itself. */ struct bcache_ops { void (*bc_enable)(void); |
From: James S. <jsi...@us...> - 2001-11-28 17:04:10
|
Update of /cvsroot/linux-mips/linux/arch/mips/mm In directory usw-pr-cvs1:/tmp/cvs-serv3782 Modified Files: c-sb1.c Log Message: Use symbolic constant for the cacheop. Index: c-sb1.c =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/mm/c-sb1.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- c-sb1.c 2001/11/26 18:32:52 1.5 +++ c-sb1.c 2001/11/28 17:04:08 1.6 @@ -89,7 +89,7 @@ ".set noat \n" ".set mips4 \n" " move $1, %2 \n" /* Start at index 0 */ - "1: cache 0x1, 0($1) \n" /* WB/Invalidate this index */ + "1: cache %3, 0($1) \n" /* WB/Invalidate this index */ " addiu %1, %1, -1 \n" /* Decrement loop count */ " bnez %1, 1b \n" /* loop test */ " addu $1, $1, %0 \n" /* Next address */ |
From: James S. <jsi...@us...> - 2001-11-28 17:02:06
|
Update of /cvsroot/linux-mips/linux/arch/mips/sibyte/sb1250 In directory usw-pr-cvs1:/tmp/cvs-serv3172 Modified Files: irq.c irq_handler.S Log Message: Updates from Sibyte. Index: irq.c =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/sibyte/sb1250/irq.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- irq.c 2001/11/20 18:14:35 1.2 +++ irq.c 2001/11/28 17:02:03 1.3 @@ -128,6 +128,17 @@ static void ack_sb1250_irq(unsigned int irq) { + u64 pending; + + /* + * If the interrupt was an LDT interrupt, now is the time + * to clear it. + */ + pending = in64(KSEG1 + A_IMR_REGISTER(0,R_IMR_LDT_INTERRUPT)); + pending &= ((u64)1 << (irq)); + if (pending) + out64(pending, KSEG1+A_IMR_REGISTER(0,R_IMR_LDT_INTERRUPT_CLR)); + sb1250_mask_irq(0, irq); } Index: irq_handler.S =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/sibyte/sb1250/irq_handler.S,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- irq_handler.S 2001/11/20 18:14:35 1.2 +++ irq_handler.S 2001/11/28 17:02:03 1.3 @@ -62,9 +62,6 @@ /* Indicate kernel mode (set CU0, clear KSU,ERL,EXL, leave IE off) */ CLI - li s1, 0xb00a0020 - lw t1, 0(s1) - #ifdef CONFIG_SIBYTE_SB1250_PROF /* Set compare to count to silence count/compare timer interrupts */ mfc0 t1, CP0_COUNT @@ -72,7 +69,7 @@ #endif /* Read cause */ mfc0 s0, CP0_CAUSE - + #ifdef CONFIG_SIBYTE_SB1250_PROF /* Cpu performance counter interrupt is routed to IP[7] */ andi t1, s0, CAUSEF_IP7 @@ -92,13 +89,10 @@ nop jal sb1250_timer_interrupt move a0, sp /* Pass the registers along */ - lw t1, 4(s1) j ret_from_irq nop # delay slot 1: - lw t1, 8(s1) - #ifdef CONFIG_SMP /* Mailbox interrupt is routed to IP[3] */ andi t1, s0, CAUSEF_IP3 @@ -106,43 +100,22 @@ nop jal sb1250_mailbox_interrupt move a0, sp - lw t1, 12(s1) j ret_from_irq nop # delay slot 2: - lw t1, 16(s1) #endif + and t1, s0, CAUSEF_IP2 beqz t1, 4f nop + /* Default...we've hit an IP[2] interrupt, which means we've got to check the 1250 interrupt registers to figure out what to do */ la v0, KSEG1 + A_IMR_CPU0_BASE - ld s1, R_IMR_INTERRUPT_MASK(v0) - ld s0, R_IMR_INTERRUPT_SOURCE_STATUS(v0) - ld t0, R_IMR_LDT_INTERRUPT(v0) - nor s1, s1, zero /* Negate mask to turn it into an and mask */ - or s0, s0, t0 /* Merge pending system and LDT IRQS */ - and s0, s0, s1 /* Now s0 has a bitfield of unmasked pending IRQs */ - - /* - * Don't let timer interrupts or mailbox interrupts get dispatched - * through this mechanism - they get handled specially above - */ -#ifdef CONFIG_SMP - li t0, (_SB_MAKEMASK1(K_INT_TIMER_0) | _SB_MAKEMASK1(K_INT_TIMER_1) \ - | _SB_MAKEMASK1(K_INT_MBOX_0)) /* remove timer bits from mask */ -#else - li t0, _SB_MAKEMASK1(K_INT_TIMER_0) /* remove timer bits from mask */ -#endif - not t0 - and s0, s0, t0 /* timer interrupts don't count here */ - /* Now the timer and mailbox interrupts have been removed from the pending mask */ + ld s0, R_IMR_INTERRUPT_STATUS_BASE(v0) /* read IP[2] status */ - and t0, t0, s1 /* LDT interrupts we will service */ beqz s0, 4f /* No interrupts. Return */ daddiu a1, sp, 0 /* registers get passed along as the second argument */ - sd t0, R_IMR_LDT_INTERRUPT_CLR(v0) /* Clear what we'll service */ 3: dclz s1, s0 /* Find the next interrupt */ dsubu a0, zero, s1 |
From: James S. <jsi...@us...> - 2001-11-28 17:00:59
|
Update of /cvsroot/linux-mips/linux/arch/mips/configs In directory usw-pr-cvs1:/tmp/cvs-serv2821 Added Files: defconfig-spartacus Log Message: Added configuration for spartacus board (aka pb1000 type board). --- NEW FILE: defconfig-spartacus --- # # Automatically generated make config: don't edit # CONFIG_MIPS=y # CONFIG_SMP is not set # # Code maturity level options # CONFIG_EXPERIMENTAL=y # # Machine selection # # CONFIG_ACER_PICA_61 is not set # CONFIG_ALGOR_P4032 is not set # CONFIG_BAGET_MIPS is not set # CONFIG_COBALT_MICRO_SERVER is not set # CONFIG_DECSTATION is not set # CONFIG_DDB5074 is not set # CONFIG_NEC_OSPREY is not set # CONFIG_NEC_EAGLE is not set # CONFIG_NEC_KORVA is not set # CONFIG_MIPS_EV96100 is not set # CONFIG_MIPS_EV64120 is not set # CONFIG_MIPS_ATLAS is not set # CONFIG_MIPS_MALTA is not set # CONFIG_NINO is not set # CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set # CONFIG_DDB5477 is not set # CONFIG_OLIVETTI_M700 is not set # CONFIG_SGI_IP22 is not set # CONFIG_SNI_RM200_PCI is not set # CONFIG_MIPS_ITE8172 is not set # CONFIG_MIPS_IVR is not set CONFIG_MIPS_PB1000=y CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set # CONFIG_SBUS is not set CONFIG_MIPS_AU1000=y CONFIG_NEW_IRQ=y CONFIG_PCI=y CONFIG_PC_KEYB=y CONFIG_NEW_PCI=y CONFIG_PCI_AUTO=y # CONFIG_ISA is not set # CONFIG_EISA is not set # CONFIG_I8259 is not set # # Loadable module support # CONFIG_MODULES=y # CONFIG_MODVERSIONS is not set CONFIG_KMOD=y # # CPU selection # # CONFIG_CPU_R3000 is not set # CONFIG_CPU_TX39XX is not set # CONFIG_CPU_R6000 is not set # CONFIG_CPU_VR41XX is not set # CONFIG_CPU_R4300 is not set # CONFIG_CPU_R4X00 is not set # CONFIG_CPU_TX49XX is not set # CONFIG_CPU_R5000 is not set # CONFIG_CPU_R5432 is not set # CONFIG_CPU_R5900 is not set # CONFIG_CPU_RM7000 is not set # CONFIG_CPU_NEVADA is not set # CONFIG_CPU_R10000 is not set # CONFIG_CPU_SB1 is not set CONFIG_CPU_MIPS32=y # CONFIG_CPU_MIPS64 is not set CONFIG_CPU_ADVANCED=y CONFIG_CPU_HAS_LLSC=y # CONFIG_CPU_HAS_LLDSCD is not set CONFIG_CPU_HAS_WB=y # # General setup # CONFIG_CPU_LITTLE_ENDIAN=y CONFIG_KCORE_ELF=y CONFIG_ELF_KERNEL=y # CONFIG_BINFMT_AOUT is not set CONFIG_BINFMT_ELF=y # CONFIG_BINFMT_MISC is not set CONFIG_PM=y CONFIG_NET=y CONFIG_PCI_NAMES=y # CONFIG_HOTPLUG is not set # CONFIG_PCMCIA is not set CONFIG_SYSVIPC=y # CONFIG_BSD_PROCESS_ACCT is not set CONFIG_SYSCTL=y # # Memory Technology Devices (MTD) # # CONFIG_MTD is not set # # Parallel port support # # CONFIG_PARPORT is not set # # Block devices # # CONFIG_BLK_DEV_FD is not set # CONFIG_BLK_DEV_XD is not set # CONFIG_PARIDE is not set # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_CISS_DA is not set # CONFIG_BLK_DEV_DAC960 is not set # CONFIG_BLK_DEV_LOOP is not set # CONFIG_BLK_DEV_NBD is not set # CONFIG_BLK_DEV_RAM is not set # CONFIG_BLK_DEV_INITRD is not set # # Multi-device support (RAID and LVM) # # CONFIG_MD is not set # CONFIG_BLK_DEV_MD is not set # CONFIG_MD_LINEAR is not set # CONFIG_MD_RAID0 is not set # CONFIG_MD_RAID1 is not set # CONFIG_MD_RAID5 is not set # CONFIG_MD_MULTIPATH is not set # CONFIG_BLK_DEV_LVM is not set # # Networking options # CONFIG_PACKET=y # CONFIG_PACKET_MMAP is not set # CONFIG_NETLINK is not set # CONFIG_NETFILTER is not set # CONFIG_FILTER is not set CONFIG_UNIX=y CONFIG_INET=y # CONFIG_IP_MULTICAST is not set # CONFIG_IP_ADVANCED_ROUTER is not set CONFIG_IP_PNP=y # CONFIG_IP_PNP_DHCP is not set CONFIG_IP_PNP_BOOTP=y # CONFIG_IP_PNP_RARP is not set # CONFIG_NET_IPIP is not set # CONFIG_NET_IPGRE is not set # CONFIG_INET_ECN is not set # CONFIG_SYN_COOKIES is not set # CONFIG_IPV6 is not set # CONFIG_KHTTPD is not set # CONFIG_ATM is not set # # # # CONFIG_IPX is not set # CONFIG_ATALK is not set # CONFIG_DECNET is not set # CONFIG_BRIDGE is not set # CONFIG_X25 is not set # CONFIG_LAPB is not set # CONFIG_LLC is not set # CONFIG_NET_DIVERT is not set # CONFIG_ECONET is not set # CONFIG_WAN_ROUTER is not set # CONFIG_NET_FASTROUTE is not set # CONFIG_NET_HW_FLOWCONTROL is not set # # QoS and/or fair queueing # # CONFIG_NET_SCHED is not set # # Telephony Support # # CONFIG_PHONE is not set # CONFIG_PHONE_IXJ is not set # CONFIG_PHONE_IXJ_PCMCIA is not set # # ATA/IDE/MFM/RLL support # # CONFIG_IDE is not set # CONFIG_BLK_DEV_IDE_MODES is not set # CONFIG_BLK_DEV_HD is not set # # SCSI support # # CONFIG_SCSI is not set # # I2O device support # # CONFIG_I2O is not set # CONFIG_I2O_PCI is not set # CONFIG_I2O_BLOCK is not set # CONFIG_I2O_LAN is not set # CONFIG_I2O_SCSI is not set # CONFIG_I2O_PROC is not set # # Network device support # CONFIG_NETDEVICES=y # # ARCnet devices # # CONFIG_ARCNET is not set # CONFIG_DUMMY is not set # CONFIG_BONDING is not set # CONFIG_EQUALIZER is not set # CONFIG_TUN is not set # # Ethernet (10 or 100Mbit) # CONFIG_NET_ETHERNET=y # CONFIG_ARM_AM79C961A is not set CONFIG_MIPS_AU1000_ENET=y # CONFIG_SUNLANCE is not set # CONFIG_HAPPYMEAL is not set # CONFIG_SUNBMAC is not set # CONFIG_SUNQE is not set # CONFIG_SUNLANCE is not set # CONFIG_SUNGEM is not set # CONFIG_NET_VENDOR_3COM is not set # CONFIG_LANCE is not set # CONFIG_NET_VENDOR_SMC is not set # CONFIG_NET_VENDOR_RACAL is not set # CONFIG_HP100 is not set # CONFIG_NET_ISA is not set # CONFIG_NET_PCI is not set # CONFIG_NET_POCKET is not set # # Ethernet (1000 Mbit) # # CONFIG_ACENIC is not set # CONFIG_ACENIC_OMIT_TIGON_I is not set # CONFIG_DL2K is not set # CONFIG_MYRI_SBUS is not set # CONFIG_NS83820 is not set # CONFIG_HAMACHI is not set # CONFIG_YELLOWFIN is not set # CONFIG_SK98LIN is not set # CONFIG_FDDI is not set # CONFIG_HIPPI is not set # CONFIG_PLIP is not set # CONFIG_PPP is not set # CONFIG_SLIP is not set # # Wireless LAN (non-hamradio) # # CONFIG_NET_RADIO is not set # # Token Ring devices # # CONFIG_TR is not set # CONFIG_NET_FC is not set # CONFIG_RCPCI is not set # CONFIG_SHAPER is not set # # Wan interfaces # # CONFIG_WAN is not set # # Amateur Radio support # # CONFIG_HAMRADIO is not set # # IrDA (infrared) support # # CONFIG_IRDA is not set # # ISDN subsystem # # CONFIG_ISDN is not set # # Old CD-ROM drivers (not SCSI, not IDE) # # CONFIG_CD_NO_IDESCSI is not set # # Character devices # CONFIG_VT=y CONFIG_VT_CONSOLE=y # CONFIG_SERIAL is not set # CONFIG_SERIAL_EXTENDED is not set CONFIG_SERIAL_NONSTANDARD=y # CONFIG_COMPUTONE is not set # CONFIG_ROCKETPORT is not set # CONFIG_CYCLADES is not set # CONFIG_DIGIEPCA is not set # CONFIG_DIGI is not set # CONFIG_ESPSERIAL is not set # CONFIG_MOXA_INTELLIO is not set # CONFIG_MOXA_SMARTIO is not set # CONFIG_ISI is not set # CONFIG_SYNCLINK is not set # CONFIG_N_HDLC is not set # CONFIG_RISCOM8 is not set # CONFIG_SPECIALIX is not set # CONFIG_SX is not set # CONFIG_RIO is not set # CONFIG_STALDRV is not set # CONFIG_SERIAL_TX3912 is not set # CONFIG_SERIAL_TX3912_CONSOLE is not set CONFIG_AU1000_UART=y CONFIG_AU1000_SERIAL_CONSOLE=y CONFIG_UNIX98_PTYS=y CONFIG_UNIX98_PTY_COUNT=256 # # I2C support # # CONFIG_I2C is not set # # Mice # # CONFIG_BUSMOUSE is not set # CONFIG_MOUSE is not set # # Joysticks # # CONFIG_INPUT_GAMEPORT is not set # # Input core support is needed for gameports # # # Input core support is needed for joysticks # # CONFIG_QIC02_TAPE is not set # # Watchdog Cards # # CONFIG_WATCHDOG is not set # CONFIG_INTEL_RNG is not set # CONFIG_NVRAM is not set # CONFIG_RTC is not set # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set # CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver # # CONFIG_FTAPE is not set # CONFIG_AGP is not set # CONFIG_DRM is not set # # Multimedia devices # # CONFIG_VIDEO_DEV is not set # # File systems # # CONFIG_QUOTA is not set CONFIG_AUTOFS_FS=y CONFIG_AUTOFS4_FS=y # CONFIG_REISERFS_FS is not set # CONFIG_REISERFS_CHECK is not set # CONFIG_ADFS_FS is not set # CONFIG_ADFS_FS_RW is not set # CONFIG_AFFS_FS is not set # CONFIG_HFS_FS is not set # CONFIG_BFS_FS is not set # CONFIG_FAT_FS is not set # CONFIG_MSDOS_FS is not set # CONFIG_UMSDOS_FS is not set # CONFIG_VFAT_FS is not set # CONFIG_EFS_FS is not set # CONFIG_JFFS_FS is not set # CONFIG_JFFS2_FS is not set # CONFIG_CRAMFS is not set # CONFIG_TMPFS is not set # CONFIG_RAMFS is not set CONFIG_ISO9660_FS=y # CONFIG_JOLIET is not set # CONFIG_MINIX_FS is not set # CONFIG_VXFS_FS is not set # CONFIG_NTFS_FS is not set # CONFIG_NTFS_RW is not set # CONFIG_HPFS_FS is not set CONFIG_PROC_FS=y # CONFIG_DEVFS_FS is not set # CONFIG_DEVFS_MOUNT is not set # CONFIG_DEVFS_DEBUG is not set # CONFIG_DEVPTS_FS is not set # CONFIG_QNX4FS_FS is not set # CONFIG_QNX4FS_RW is not set # CONFIG_ROMFS_FS is not set CONFIG_EXT2_FS=y # CONFIG_SYSV_FS is not set # CONFIG_UDF_FS is not set # CONFIG_UDF_RW is not set # CONFIG_UFS_FS is not set # CONFIG_UFS_FS_WRITE is not set # # Network File Systems # # CONFIG_CODA_FS is not set CONFIG_NFS_FS=y # CONFIG_NFS_V3 is not set CONFIG_ROOT_NFS=y # CONFIG_NFSD is not set # CONFIG_NFSD_V3 is not set CONFIG_SUNRPC=y CONFIG_LOCKD=y # CONFIG_SMB_FS is not set # CONFIG_NCP_FS is not set # CONFIG_NCPFS_PACKET_SIGNING is not set # CONFIG_NCPFS_IOCTL_LOCKING is not set # CONFIG_NCPFS_STRONG is not set # CONFIG_NCPFS_NFS_NS is not set # CONFIG_NCPFS_OS2_NS is not set # CONFIG_NCPFS_SMALLDOS is not set # CONFIG_NCPFS_NLS is not set # CONFIG_NCPFS_EXTRAS is not set # # Partition Types # CONFIG_PARTITION_ADVANCED=y # CONFIG_ACORN_PARTITION is not set # CONFIG_OSF_PARTITION is not set # CONFIG_AMIGA_PARTITION is not set # CONFIG_ATARI_PARTITION is not set # CONFIG_MAC_PARTITION is not set CONFIG_MSDOS_PARTITION=y # CONFIG_BSD_DISKLABEL is not set # CONFIG_MINIX_SUBPARTITION is not set # CONFIG_SOLARIS_X86_PARTITION is not set # CONFIG_UNIXWARE_DISKLABEL is not set # CONFIG_LDM_PARTITION is not set CONFIG_SGI_PARTITION=y # CONFIG_ULTRIX_PARTITION is not set # CONFIG_SUN_PARTITION is not set # CONFIG_SMB_NLS is not set # CONFIG_NLS is not set # # Console drivers # # CONFIG_VGA_CONSOLE is not set # CONFIG_MDA_CONSOLE is not set # # Frame-buffer support # CONFIG_FB=y CONFIG_DUMMY_CONSOLE=y # CONFIG_FB_RIVA is not set # CONFIG_FB_CLGEN is not set # CONFIG_FB_PM2 is not set # CONFIG_FB_CYBER2000 is not set # CONFIG_FB_E1355 is not set # CONFIG_FB_PVR2 is not set # CONFIG_FB_PVR2_DEBUG is not set # CONFIG_FB_MQ200 is not set # CONFIG_FB_MATROX is not set # CONFIG_FB_ATY is not set # CONFIG_FB_RADEON is not set # CONFIG_FB_ATY128 is not set # CONFIG_FB_3DFX is not set # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_SIS is not set CONFIG_FB_E1356=y # CONFIG_PB1000_CRT is not set # CONFIG_PB1000_NTSC is not set # CONFIG_PB1000_TFT is not set # CONFIG_FB_VIRTUAL is not set CONFIG_FBCON_ADVANCED=y # CONFIG_FBCON_MFB is not set # CONFIG_FBCON_CFB2 is not set # CONFIG_FBCON_CFB4 is not set CONFIG_FBCON_CFB8=y CONFIG_FBCON_CFB16=y # CONFIG_FBCON_CFB24 is not set # CONFIG_FBCON_CFB32 is not set # CONFIG_FBCON_AFB is not set # CONFIG_FBCON_ILBM is not set # CONFIG_FBCON_IPLAN2P2 is not set # CONFIG_FBCON_IPLAN2P4 is not set # CONFIG_FBCON_IPLAN2P8 is not set # CONFIG_FBCON_MAC is not set # CONFIG_FBCON_VGA_PLANES is not set # CONFIG_FBCON_VGA is not set # CONFIG_FBCON_HGA is not set # CONFIG_FBCON_FONTWIDTH8_ONLY is not set # CONFIG_FBCON_FONTS is not set CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y # # Sound # # CONFIG_SOUND is not set # # USB support # # CONFIG_USB is not set # # Input core support # # CONFIG_INPUT is not set # CONFIG_INPUT_KEYBDEV is not set # CONFIG_INPUT_MOUSEDEV is not set # CONFIG_INPUT_JOYDEV is not set # CONFIG_INPUT_EVDEV is not set # # Kernel hacking # CONFIG_CROSSCOMPILE=y # CONFIG_DEBUG is not set # CONFIG_REMOTE_DEBUG is not set # CONFIG_GDB_CONSOLE is not set # CONFIG_MAGIC_SYSRQ is not set # CONFIG_MIPS_UNCACHED is not set |
From: Jun S. <ju...@us...> - 2001-11-28 02:49:17
|
Update of /cvsroot/linux-mips/linux/drivers/char In directory usw-pr-cvs1:/tmp/cvs-serv28150/drivers/char Added Files: mips_rtc.c Log Message: Previous RTC commit forgot about this file. --- NEW FILE: mips_rtc.c --- /* * A simple generic Real Time Clock interface for Linux/MIPS * * Copyright (C) 1996 Paul Gortmaker * * Copyright (C) 2001 Monta Vista Software * Author Jun Sun, js...@mv... or js...@ju... * * This is a simple generic RTC driver for MIPS boards configured * with CONFIG_NEW_TIME_C. For now, it makes use of the two * abstract kernel RTC functions introduced in include/asm-mips/time.h: * * extern unsigned long (*rtc_get_time)(void); * extern int (*rtc_set_time)(unsigned long); * * It uses the same protocol as the original drivers/char/rtc.c driver, * but only implements two ioctls: RTC_RD_TIME and RTC_SET_TIME. * * TODO : * * 1. we can extend the null rtc ops defined in arch/mips/time.c to * at least record the elapsed time (by recording/checking jiffies) * This way RTC_RD_TIME and RTC_SET_TIME will make more sense. * (Maybe not. A machine without a real RTC is broken anymore. * Just a thought.) * * 2. If we make use of timer bh, we can emulate many RTC functions * such as RTC alarm interrupt, periodic interrupts, etc. * * 3. It is possible to extend the kernel RTC abstractions to more * than two functions, so that perhaps we can implement more * full-featured RTC driver and also have a better abstraction * to support more RTC hardware than the original RTC driver. * It needs to be done very carefully. * * Change Log : * v1.0 - [jsun] initial version */ #define RTC_VERSION "1.0" #include <linux/config.h> #include <linux/module.h> #include <linux/kernel.h> #include <linux/types.h> #include <linux/miscdevice.h> #include <linux/fcntl.h> #include <linux/init.h> #include <linux/poll.h> #include <linux/proc_fs.h> #include <linux/spinlock.h> #include <asm/io.h> #include <asm/uaccess.h> #include <asm/system.h> /* * Check machine */ #if !defined(CONFIG_MIPS) || !defined(CONFIG_NEW_TIME_C) #error "This driver is for MIPS machines with CONFIG_NEW_TIME_C defined" #endif #include <asm/time.h> static unsigned long rtc_status = 0; /* bitmapped status byte. */ static int rtc_read_proc(char *page, char **start, off_t off, int count, int *eof, void *data); #define RTC_IS_OPEN 0x01 /* means /dev/rtc is in use */ static spinlock_t rtc_lock; static int rtc_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg) { struct rtc_time rtc_tm; ulong curr_time; switch (cmd) { case RTC_RD_TIME: /* Read the time/date from RTC */ curr_time = rtc_get_time(); to_tm(curr_time, &rtc_tm); rtc_tm.tm_year -= 1900; return copy_to_user((void *) arg, &rtc_tm, sizeof(rtc_tm)) ? -EFAULT : 0; case RTC_SET_TIME: /* Set the RTC */ if (!capable(CAP_SYS_TIME)) return -EACCES; if (copy_from_user(&rtc_tm, (struct rtc_time *) arg, sizeof(struct rtc_time))) return -EFAULT; curr_time = mktime(rtc_tm.tm_year + 1900, rtc_tm.tm_mon + 1, /* tm_mon starts from 0 */ rtc_tm.tm_mday, rtc_tm.tm_hour, rtc_tm.tm_min, rtc_tm.tm_sec); return rtc_set_time(curr_time); default: return -EINVAL; } } /* We use rtc_lock to protect against concurrent opens. So the BKL is not * needed here. Or anywhere else in this driver. */ static int rtc_open(struct inode *inode, struct file *file) { spin_lock_irq(&rtc_lock); if (rtc_status & RTC_IS_OPEN) { spin_unlock_irq(&rtc_lock); return -EBUSY; } rtc_status |= RTC_IS_OPEN; spin_unlock_irq(&rtc_lock); return 0; } static int rtc_release(struct inode *inode, struct file *file) { spin_lock_irq(&rtc_lock); rtc_status &= ~RTC_IS_OPEN; spin_unlock_irq(&rtc_lock); return 0; } /* * The various file operations we support. */ static struct file_operations rtc_fops = { owner:THIS_MODULE, llseek:no_llseek, ioctl:rtc_ioctl, open:rtc_open, release:rtc_release, }; static struct miscdevice rtc_dev = { RTC_MINOR, "rtc", &rtc_fops }; static int __init rtc_init(void) { misc_register(&rtc_dev); create_proc_read_entry("driver/rtc", 0, 0, rtc_read_proc, NULL); printk(KERN_INFO "Generic MIPS RTC Driver v" RTC_VERSION "\n"); return 0; } static void __exit rtc_exit(void) { remove_proc_entry("driver/rtc", NULL); misc_deregister(&rtc_dev); } module_init(rtc_init); module_exit(rtc_exit); EXPORT_NO_SYMBOLS; /* * Info exported via "/proc/driver/rtc". */ static int rtc_proc_output(char *buf) { char *p; struct rtc_time tm; unsigned long curr_time; curr_time = rtc_get_time(); to_tm(curr_time, &tm); p = buf; /* * There is no way to tell if the luser has the RTC set for local * time or for Universal Standard Time (GMT). Probably local though. */ p += sprintf(p, "rtc_time\t: %02d:%02d:%02d\n" "rtc_date\t: %04d-%02d-%02d\n" "rtc_epoch\t: %04lu\n", tm.tm_hour, tm.tm_min, tm.tm_sec, tm.tm_year, tm.tm_mon + 1, tm.tm_mday, 0L); return p - buf; } static int rtc_read_proc(char *page, char **start, off_t off, int count, int *eof, void *data) { int len = rtc_proc_output(page); if (len <= off + count) *eof = 1; *start = page + off; len -= off; if (len > count) len = count; if (len < 0) len = 0; return len; } MODULE_AUTHOR("Jun Sun"); MODULE_LICENSE("GPL"); |
From: James S. <jsi...@us...> - 2001-11-27 23:56:34
|
Update of /cvsroot/linux-mips/linux/Documentation In directory usw-pr-cvs1:/tmp/cvs-serv22284/Documentation Modified Files: Configure.help Log Message: Added in generic RTC support. Thanks Jun Sun. Index: Configure.help =================================================================== RCS file: /cvsroot/linux-mips/linux/Documentation/Configure.help,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- Configure.help 2001/11/06 09:10:21 1.5 +++ Configure.help 2001/11/27 23:56:30 1.6 @@ -15177,6 +15177,17 @@ #EFI Real Time Clock Services #CONFIG_EFI_RTC +Generic MIPS RTC Support +CONFIG_MIPS_RTC + + If your machine is a MIPS machine, this option provides a simple, + generic RTC driver for /dev/rtc device. It only implements two IOCTL + operations of the standard PC RTC driver: RTC_RD_TIME and RTC_SET_TIME. + It is sufficient to run hwclock program. + + You should say Y here if there is no machine-specific RTC driver for your + MIPS machine but you do want a simple RTC driver for your RTC device. + Tadpole ANA H8 Support CONFIG_H8 The Hitachi H8/337 is a microcontroller used to deal with the power |
From: James S. <jsi...@us...> - 2001-11-27 23:56:34
|
Update of /cvsroot/linux-mips/linux/drivers/char In directory usw-pr-cvs1:/tmp/cvs-serv22284/drivers/char Modified Files: Config.in Makefile Removed Files: rtc_dallas.c Log Message: Added in generic RTC support. Thanks Jun Sun. Index: Config.in =================================================================== RCS file: /cvsroot/linux-mips/linux/drivers/char/Config.in,v retrieving revision 1.27 retrieving revision 1.28 diff -u -d -r1.27 -r1.28 --- Config.in 2001/11/26 19:31:47 1.27 +++ Config.in 2001/11/27 23:56:31 1.28 @@ -200,14 +200,14 @@ dep_tristate 'Intel i8x0 Random Number Generator support' CONFIG_INTEL_RNG $CONFIG_PCI tristate '/dev/nvram support' CONFIG_NVRAM tristate 'Enhanced Real Time Clock Support' CONFIG_RTC -#if [ "$CONFIG_RTC" = "y" -a "$CONFIG_NEW_TIME_C" = "y" ]; then -# bool 'Generic Dallas PC style RTC chip support' CONFIG_DALLAS_RTC -#fi if [ "$CONFIG_IA64" = "y" ]; then bool 'EFI Real Time Clock Services' CONFIG_EFI_RTC fi if [ "$CONFIG_OBSOLETE" = "y" -a "$CONFIG_ALPHA_BOOK1" = "y" ]; then bool 'Tadpole ANA H8 Support' CONFIG_H8 +fi +if [ "$CONFIG_MIPS" = "y" -a "$CONFIG_NEW_TIME_C" = "y" ]; then + tristate 'Generic MIPS RTC Support' CONFIG_MIPS_RTC fi tristate 'Double Talk PC internal speech card support' CONFIG_DTLK Index: Makefile =================================================================== RCS file: /cvsroot/linux-mips/linux/drivers/char/Makefile,v retrieving revision 1.21 retrieving revision 1.22 diff -u -d -r1.21 -r1.22 --- Makefile 2001/11/20 17:51:14 1.21 +++ Makefile 2001/11/27 23:56:31 1.22 @@ -197,6 +197,7 @@ obj-$(CONFIG_RTC) += rtc.o obj-$(CONFIG_DALLAS_RTC) += rtc_dallas.o obj-$(CONFIG_EFI_RTC) += efirtc.o +obj-$(CONFIG_MIPS_RTC) += mips_rtc.o ifeq ($(CONFIG_PPC),) obj-$(CONFIG_NVRAM) += nvram.o endif --- rtc_dallas.c DELETED --- |
From: James S. <jsi...@us...> - 2001-11-27 23:52:15
|
Update of /cvsroot/linux-mips/linux/include/asm-mips64 In directory usw-pr-cvs1:/tmp/cvs-serv21292 Modified Files: io.h Log Message: Synced to new io management. Index: io.h =================================================================== RCS file: /cvsroot/linux-mips/linux/include/asm-mips64/io.h,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- io.h 2001/11/12 18:37:56 1.8 +++ io.h 2001/11/27 23:52:10 1.9 @@ -385,22 +385,7 @@ * be discarded. This operation is necessary before dma operations * to the memory. */ -#ifdef CONFIG_COHERENT_IO - -/* This is for example for IP27. */ -static inline void dma_cache_wback_inv(unsigned long start, unsigned long size) -{ -} - -static inline void dma_cache_wback(unsigned long start, unsigned long size) -{ -} - -static inline void dma_cache_inv(unsigned long start, unsigned long size) -{ -} - -#else +#ifdef CONFIG_NONCOHERENT_IO extern void (*_dma_cache_wback_inv)(unsigned long start, unsigned long size); extern void (*_dma_cache_wback)(unsigned long start, unsigned long size); @@ -410,6 +395,12 @@ #define dma_cache_wback(start,size) _dma_cache_wback(start,size) #define dma_cache_inv(start,size) _dma_cache_inv(start,size) -#endif +#else /* Sane hardware */ + +#define dma_cache_wback_inv(start,size) do { (start); (size); } while (0) +#define dma_cache_wback(start,size) do { (start); (size); } while (0) +#define dma_cache_inv(start,size) do { (start); (size); } while (0) + +#endif /* CONFIG_NONCOHERENT_IO */ #endif /* _ASM_IO_H */ |
Update of /cvsroot/linux-mips/linux/arch/mips/configs In directory usw-pr-cvs1:/tmp/cvs-serv14947 Modified Files: defconfig-atlas defconfig-cobalt defconfig-ddb5476 defconfig-ddb5477 defconfig-decstation defconfig-eagle defconfig-ev64120 defconfig-ev96100 defconfig-hp-lj defconfig-ip22 defconfig-it8172 defconfig-ivr defconfig-jmr3927 defconfig-korva defconfig-malta defconfig-nino defconfig-ocelot defconfig-osprey defconfig-pb1000 defconfig-rm200 defconfig-sb1250-swarm Log Message: New updates to default configs. Index: defconfig-atlas =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-atlas,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- defconfig-atlas 2001/11/19 18:31:01 1.11 +++ defconfig-atlas 2001/11/27 23:31:02 1.12 @@ -17,20 +17,22 @@ # CONFIG_COBALT_MICRO_SERVER is not set # CONFIG_DECSTATION is not set # CONFIG_DDB5074 is not set +# CONFIG_NEC_EAGLE is not set +# CONFIG_NEC_KORVA is not set # CONFIG_MIPS_EV96100 is not set # CONFIG_MIPS_EV64120 is not set CONFIG_MIPS_ATLAS=y # CONFIG_MIPS_MALTA is not set # CONFIG_NINO is not set -# CONFIG_PS2 is not set # CONFIG_SIBYTE_SB1250 is not set +# CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set # CONFIG_DDB5477 is not set # CONFIG_NEC_OSPREY is not set -# CONFIG_NEC_EAGLE is not set -# CONFIG_NEC_KORVA is not set # CONFIG_OLIVETTI_M700 is not set # CONFIG_SGI_IP22 is not set # CONFIG_SNI_RM200_PCI is not set @@ -38,10 +40,12 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set # CONFIG_SBUS is not set +CONFIG_NONCOHERENT_IO=y CONFIG_PCI=y CONFIG_SWAP_IO_SPACE=y # CONFIG_ISA is not set @@ -74,8 +78,8 @@ # CONFIG_CPU_MIPS64 is not set # CONFIG_CPU_ADVANCED is not set CONFIG_CPU_HAS_LLSC=y -CONFIG_CPU_HAS_LLDSCD=y # CONFIG_CPU_HAS_WB is not set +CONFIG_CPU_HAS_LLDSCD=y # # General setup @@ -246,7 +250,6 @@ # CONFIG_SCSI_NCR53C406A is not set # CONFIG_SCSI_NCR53C7xx is not set # CONFIG_SCSI_NCR53C8XX is not set -# CONFIG_SCSI_NCR_D700 is not set # CONFIG_SCSI_SYM53C8XX is not set # CONFIG_SCSI_PAS16 is not set # CONFIG_SCSI_PCI2000 is not set @@ -406,7 +409,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver Index: defconfig-cobalt =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-cobalt,v retrieving revision 1.13 retrieving revision 1.14 diff -u -d -r1.13 -r1.14 --- defconfig-cobalt 2001/11/27 21:49:13 1.13 +++ defconfig-cobalt 2001/11/27 23:31:02 1.14 @@ -1,5 +1,5 @@ # -# Automatically generated by make menuconfig: don't edit +# Automatically generated make config: don't edit # CONFIG_MIPS=y @@ -163,6 +163,10 @@ # CONFIG_KHTTPD is not set # CONFIG_ATM is not set # CONFIG_VLAN_8021Q is not set + +# +# +# # CONFIG_IPX is not set # CONFIG_ATALK is not set # CONFIG_DECNET is not set @@ -197,6 +201,10 @@ # IDE, ATA and ATAPI Block devices # CONFIG_BLK_DEV_IDE=y + +# +# Please see Documentation/ide.txt for help/info on IDE drives +# # CONFIG_BLK_DEV_HD_IDE is not set # CONFIG_BLK_DEV_HD is not set CONFIG_BLK_DEV_IDEDISK=y @@ -215,6 +223,10 @@ # CONFIG_BLK_DEV_IDETAPE is not set # CONFIG_BLK_DEV_IDEFLOPPY is not set # CONFIG_BLK_DEV_IDESCSI is not set + +# +# IDE chipset support/bugfixes +# # CONFIG_BLK_DEV_CMD640 is not set # CONFIG_BLK_DEV_CMD640_ENHANCED is not set # CONFIG_BLK_DEV_ISAPNP is not set @@ -416,6 +428,14 @@ # Joysticks # # CONFIG_INPUT_GAMEPORT is not set + +# +# Input core support is needed for gameports +# + +# +# Input core support is needed for joysticks +# # CONFIG_QIC02_TAPE is not set # @@ -529,9 +549,17 @@ # USB support # # CONFIG_USB is not set + +# +# USB Controllers +# # CONFIG_USB_UHCI is not set # CONFIG_USB_UHCI_ALT is not set # CONFIG_USB_OHCI is not set + +# +# USB Device Class drivers +# # CONFIG_USB_AUDIO is not set # CONFIG_USB_BLUETOOTH is not set # CONFIG_USB_STORAGE is not set @@ -545,16 +573,44 @@ # CONFIG_USB_STORAGE_JUMPSHOT is not set # CONFIG_USB_ACM is not set # CONFIG_USB_PRINTER is not set + +# +# USB Human Interface Devices (HID) +# + +# +# Input core support is needed for USB HID +# + +# +# USB Imaging devices +# # CONFIG_USB_DC2XX is not set # CONFIG_USB_MDC800 is not set # CONFIG_USB_SCANNER is not set # CONFIG_USB_MICROTEK is not set # CONFIG_USB_HPUSBSCSI is not set + +# +# USB Multimedia devices +# + +# +# Video4Linux support is needed for USB Multimedia device support +# + +# +# USB Network adaptors +# # CONFIG_USB_PEGASUS is not set # CONFIG_USB_KAWETH is not set # CONFIG_USB_CATC is not set # CONFIG_USB_CDCETHER is not set # CONFIG_USB_USBNET is not set + +# +# USB port drivers +# # CONFIG_USB_USS720 is not set # @@ -585,6 +641,10 @@ # CONFIG_USB_SERIAL_CYBERJACK is not set # CONFIG_USB_SERIAL_XIRCOM is not set # CONFIG_USB_SERIAL_OMNINET is not set + +# +# USB Miscellaneous drivers +# # CONFIG_USB_RIO500 is not set # Index: defconfig-ddb5476 =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-ddb5476,v retrieving revision 1.14 retrieving revision 1.15 diff -u -d -r1.14 -r1.15 --- defconfig-ddb5476 2001/11/19 18:31:01 1.14 +++ defconfig-ddb5476 2001/11/27 23:31:02 1.15 @@ -2,7 +2,6 @@ # Automatically generated make config: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -18,7 +17,6 @@ # CONFIG_COBALT_MICRO_SERVER is not set # CONFIG_DECSTATION is not set # CONFIG_DDB5074 is not set -# CONFIG_NEC_OSPREY is not set # CONFIG_NEC_EAGLE is not set # CONFIG_NEC_KORVA is not set # CONFIG_MIPS_EV96100 is not set @@ -28,6 +26,8 @@ # CONFIG_NINO is not set # CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set CONFIG_DDB5476=y @@ -40,6 +40,7 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set @@ -54,6 +55,7 @@ CONFIG_NEW_PCI=y CONFIG_PCI_AUTO=y CONFIG_NEW_TIME_C=y +CONFIG_NONCOHERENT_IO=y CONFIG_EISA=y # @@ -82,8 +84,8 @@ # CONFIG_CPU_MIPS64 is not set # CONFIG_CPU_ADVANCED is not set CONFIG_CPU_HAS_LLSC=y -CONFIG_CPU_HAS_LLDSCD=y # CONFIG_CPU_HAS_WB is not set +CONFIG_CPU_HAS_LLDSCD=y # # General setup @@ -107,7 +109,6 @@ # # CONFIG_PNP is not set # CONFIG_ISAPNP is not set -# CONFIG_PNPBIOS is not set # # Memory Technology Devices (MTD) @@ -309,7 +310,6 @@ # Ethernet (10 or 100Mbit) # CONFIG_NET_ETHERNET=y -# CONFIG_ARM_AM79C961A is not set # CONFIG_SUNLANCE is not set # CONFIG_HAPPYMEAL is not set # CONFIG_SUNBMAC is not set @@ -335,6 +335,7 @@ # CONFIG_TULIP_MMIO is not set # CONFIG_DE4X5 is not set # CONFIG_DGRS is not set +# CONFIG_TC35815 is not set # CONFIG_DM9102 is not set CONFIG_EEPRO100=y # CONFIG_LNE390 is not set @@ -361,7 +362,6 @@ # Ethernet (1000 Mbit) # # CONFIG_ACENIC is not set -# CONFIG_ACENIC_OMIT_TIGON_I is not set # CONFIG_DL2K is not set # CONFIG_MYRI_SBUS is not set # CONFIG_NS83820 is not set @@ -462,7 +462,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver @@ -570,8 +569,6 @@ # CONFIG_FB_PM2 is not set # CONFIG_FB_CYBER2000 is not set # CONFIG_FB_E1355 is not set -# CONFIG_FB_PVR2 is not set -# CONFIG_FB_PVR2_DEBUG is not set # CONFIG_FB_MQ200 is not set # CONFIG_FB_MATROX is not set # CONFIG_FB_ATY is not set @@ -581,6 +578,7 @@ CONFIG_FB_3DFX=y # CONFIG_FB_VOODOO1 is not set # CONFIG_FB_E1356 is not set +# CONFIG_FB_IT8181 is not set # CONFIG_FB_VIRTUAL is not set # CONFIG_FBCON_ADVANCED is not set CONFIG_FBCON_CFB8=y @@ -628,6 +626,7 @@ # # USB Human Interface Devices (HID) # + # # Input core support is needed for USB HID # Index: defconfig-ddb5477 =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-ddb5477,v retrieving revision 1.13 retrieving revision 1.14 diff -u -d -r1.13 -r1.14 --- defconfig-ddb5477 2001/11/19 18:31:01 1.13 +++ defconfig-ddb5477 2001/11/27 23:31:02 1.14 @@ -2,7 +2,6 @@ # Automatically generated make config: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -27,6 +26,8 @@ # CONFIG_NINO is not set # CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set @@ -39,6 +40,7 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set @@ -48,6 +50,7 @@ CONFIG_NEW_IRQ=y CONFIG_IRQ_CPU=y CONFIG_NEW_PCI=y +CONFIG_NONCOHERENT_IO=y CONFIG_PCI_AUTO=y CONFIG_DUMMY_KEYB=y # CONFIG_ISA is not set @@ -80,8 +83,8 @@ # CONFIG_CPU_MIPS64 is not set # CONFIG_CPU_ADVANCED is not set CONFIG_CPU_HAS_LLSC=y -CONFIG_CPU_HAS_LLDSCD=y # CONFIG_CPU_HAS_WB is not set +CONFIG_CPU_HAS_LLDSCD=y # # General setup @@ -251,6 +254,7 @@ # CONFIG_TULIP_MMIO is not set # CONFIG_DE4X5 is not set # CONFIG_DGRS is not set +# CONFIG_TC35815 is not set # CONFIG_DM9102 is not set # CONFIG_EEPRO100 is not set # CONFIG_LNE390 is not set @@ -372,7 +376,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver @@ -411,7 +414,7 @@ # CONFIG_RAMFS is not set # CONFIG_ISO9660_FS is not set # CONFIG_JOLIET is not set -# CONFIG_8139CP is not set +# CONFIG_ZISOFS is not set # CONFIG_MINIX_FS is not set # CONFIG_VXFS_FS is not set # CONFIG_NTFS_FS is not set Index: defconfig-decstation =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-decstation,v retrieving revision 1.12 retrieving revision 1.13 diff -u -d -r1.12 -r1.13 --- defconfig-decstation 2001/11/19 18:31:01 1.12 +++ defconfig-decstation 2001/11/27 23:31:02 1.13 @@ -2,7 +2,6 @@ # Automatically generated make config: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -27,6 +26,8 @@ # CONFIG_NINO is not set # CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set @@ -39,6 +40,7 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set @@ -237,7 +239,6 @@ # CONFIG_SCSI_INITIO is not set # CONFIG_SCSI_INIA100 is not set # CONFIG_SCSI_NCR53C406A is not set -# CONFIG_SCSI_NCR_D700 is not set # CONFIG_SCSI_NCR53C7xx is not set # CONFIG_SCSI_PAS16 is not set # CONFIG_SCSI_PCI2000 is not set @@ -382,7 +383,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver @@ -404,8 +404,6 @@ # CONFIG_DZ is not set CONFIG_ZS=y CONFIG_SERIAL_CONSOLE=y -CONFIG_UNIX98_PTYS=y -CONFIG_UNIX98_PTY_COUNT=256 # CONFIG_RTC is not set # Index: defconfig-eagle =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-eagle,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- defconfig-eagle 2001/11/19 18:31:01 1.10 +++ defconfig-eagle 2001/11/27 23:31:02 1.11 @@ -2,7 +2,6 @@ # Automatically generated make config: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -18,7 +17,6 @@ # CONFIG_COBALT_MICRO_SERVER is not set # CONFIG_DECSTATION is not set # CONFIG_DDB5074 is not set -# CONFIG_NEC_OSPREY is not set CONFIG_NEC_EAGLE=y CONFIG_NEC_EAGLE_MEM_SIZE=64 # CONFIG_NEC_KORVA is not set @@ -29,10 +27,13 @@ # CONFIG_NINO is not set # CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set # CONFIG_DDB5477 is not set +# CONFIG_NEC_OSPREY is not set # CONFIG_OLIVETTI_M700 is not set # CONFIG_SGI_IP22 is not set # CONFIG_SNI_RM200_PCI is not set @@ -40,6 +41,7 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set @@ -49,6 +51,8 @@ CONFIG_VRC4173=y CONFIG_NEW_IRQ=y CONFIG_NEW_TIME_C=y +CONFIG_NONCOHERENT_IO=y +CONFIG_DUMMY_KEYB=y CONFIG_PCI=y # CONFIG_ISA is not set # CONFIG_EISA is not set @@ -80,8 +84,8 @@ # CONFIG_CPU_MIPS64 is not set # CONFIG_CPU_ADVANCED is not set CONFIG_CPU_HAS_LLSC=y -CONFIG_CPU_HAS_LLDSCD=y # CONFIG_CPU_HAS_WB is not set +CONFIG_CPU_HAS_LLDSCD=y # # General setup @@ -159,6 +163,7 @@ # CONFIG_IPV6 is not set # CONFIG_KHTTPD is not set # CONFIG_ATM is not set +# CONFIG_VLAN_8021Q is not set # # @@ -228,7 +233,6 @@ # Ethernet (10 or 100Mbit) # CONFIG_NET_ETHERNET=y -# CONFIG_ARM_AM79C961A is not set # CONFIG_SUNLANCE is not set # CONFIG_HAPPYMEAL is not set # CONFIG_SUNBMAC is not set @@ -247,10 +251,9 @@ # CONFIG_APRICOT is not set # CONFIG_CS89x0 is not set # CONFIG_TULIP is not set -# CONFIG_TULIP_MWI is not set -# CONFIG_TULIP_MMIO is not set # CONFIG_DE4X5 is not set # CONFIG_DGRS is not set +# CONFIG_TC35815 is not set # CONFIG_DM9102 is not set # CONFIG_EEPRO100 is not set # CONFIG_LNE390 is not set @@ -259,6 +262,7 @@ # CONFIG_NE2K_PCI is not set # CONFIG_NE3210 is not set # CONFIG_ES3210 is not set +# CONFIG_8139CP is not set # CONFIG_8139TOO is not set # CONFIG_8139TOO_PIO is not set # CONFIG_8139TOO_TUNE_TWISTER is not set @@ -276,7 +280,6 @@ # Ethernet (1000 Mbit) # # CONFIG_ACENIC is not set -# CONFIG_ACENIC_OMIT_TIGON_I is not set # CONFIG_DL2K is not set # CONFIG_MYRI_SBUS is not set # CONFIG_NS83820 is not set @@ -374,7 +377,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver @@ -413,6 +415,7 @@ # CONFIG_RAMFS is not set CONFIG_ISO9660_FS=y # CONFIG_JOLIET is not set +# CONFIG_ZISOFS is not set # CONFIG_MINIX_FS is not set # CONFIG_VXFS_FS is not set # CONFIG_NTFS_FS is not set @@ -454,6 +457,8 @@ # CONFIG_NCPFS_SMALLDOS is not set # CONFIG_NCPFS_NLS is not set # CONFIG_NCPFS_EXTRAS is not set +# CONFIG_ZISOFS_FS is not set +# CONFIG_ZLIB_FS_INFLATE is not set # # Partition Types @@ -492,17 +497,16 @@ # CONFIG_FB_PM2 is not set # CONFIG_FB_CYBER2000 is not set # CONFIG_FB_E1355 is not set -# CONFIG_FB_PVR2 is not set -# CONFIG_FB_PVR2_DEBUG is not set CONFIG_FB_MQ200=y # CONFIG_FB_MATROX is not set # CONFIG_FB_ATY is not set # CONFIG_FB_RADEON is not set # CONFIG_FB_ATY128 is not set +# CONFIG_FB_SIS is not set # CONFIG_FB_3DFX is not set # CONFIG_FB_VOODOO1 is not set -# CONFIG_FB_SIS is not set # CONFIG_FB_E1356 is not set +# CONFIG_FB_IT8181 is not set CONFIG_FB_VIRTUAL=y CONFIG_FBCON_ADVANCED=y # CONFIG_FBCON_MFB is not set @@ -540,6 +544,103 @@ # USB support # # CONFIG_USB is not set + +# +# USB Controllers +# +# CONFIG_USB_UHCI is not set +# CONFIG_USB_UHCI_ALT is not set +# CONFIG_USB_OHCI is not set + +# +# USB Device Class drivers +# +# CONFIG_USB_AUDIO is not set +# CONFIG_USB_BLUETOOTH is not set +# CONFIG_USB_STORAGE is not set +# CONFIG_USB_STORAGE_DEBUG is not set +# CONFIG_USB_STORAGE_DATAFAB is not set +# CONFIG_USB_STORAGE_FREECOM is not set +# CONFIG_USB_STORAGE_ISD200 is not set +# CONFIG_USB_STORAGE_DPCM is not set +# CONFIG_USB_STORAGE_HP8200e is not set +# CONFIG_USB_STORAGE_SDDR09 is not set +# CONFIG_USB_STORAGE_JUMPSHOT is not set +# CONFIG_USB_ACM is not set +# CONFIG_USB_PRINTER is not set + +# +# USB Human Interface Devices (HID) +# + +# +# Input core support is needed for USB HID +# + +# +# USB Imaging devices +# +# CONFIG_USB_DC2XX is not set +# CONFIG_USB_MDC800 is not set +# CONFIG_USB_SCANNER is not set +# CONFIG_USB_MICROTEK is not set +# CONFIG_USB_HPUSBSCSI is not set + +# +# USB Multimedia devices +# + +# +# Video4Linux support is needed for USB Multimedia device support +# + +# +# USB Network adaptors +# +# CONFIG_USB_PEGASUS is not set +# CONFIG_USB_KAWETH is not set +# CONFIG_USB_CATC is not set +# CONFIG_USB_CDCETHER is not set +# CONFIG_USB_USBNET is not set + +# +# USB port drivers +# +# CONFIG_USB_USS720 is not set + +# +# USB Serial Converter support +# +# CONFIG_USB_SERIAL is not set +# CONFIG_USB_SERIAL_GENERIC is not set +# CONFIG_USB_SERIAL_BELKIN is not set +# CONFIG_USB_SERIAL_WHITEHEAT is not set +# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set +# CONFIG_USB_SERIAL_EMPEG is not set +# CONFIG_USB_SERIAL_FTDI_SIO is not set +# CONFIG_USB_SERIAL_VISOR is not set +# CONFIG_USB_SERIAL_IR is not set +# CONFIG_USB_SERIAL_EDGEPORT is not set +# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set +# CONFIG_USB_SERIAL_KEYSPAN is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28 is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28X is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28XA is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28XB is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19 is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA18X is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19W is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA49W is not set +# CONFIG_USB_SERIAL_MCT_U232 is not set +# CONFIG_USB_SERIAL_PL2303 is not set +# CONFIG_USB_SERIAL_CYBERJACK is not set +# CONFIG_USB_SERIAL_XIRCOM is not set +# CONFIG_USB_SERIAL_OMNINET is not set + +# +# USB Miscellaneous drivers +# +# CONFIG_USB_RIO500 is not set # # Input core support Index: defconfig-ev64120 =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-ev64120,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- defconfig-ev64120 2001/11/19 18:31:01 1.11 +++ defconfig-ev64120 2001/11/27 23:31:02 1.12 @@ -2,7 +2,6 @@ # Automatically generated make config: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -31,6 +30,8 @@ # CONFIG_NINO is not set # CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set @@ -43,6 +44,7 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set @@ -50,6 +52,7 @@ CONFIG_PCI=y # CONFIG_ISA is not set CONFIG_MIPS_GT64120=y +CONFIG_NONCOHERENT_IO=y CONFIG_OLD_TIME_C=y # CONFIG_ISA is not set # CONFIG_EISA is not set @@ -83,8 +86,8 @@ # CONFIG_CPU_MIPS64 is not set # CONFIG_CPU_ADVANCED is not set CONFIG_CPU_HAS_LLSC=y -CONFIG_CPU_HAS_LLDSCD=y # CONFIG_CPU_HAS_WB is not set +CONFIG_CPU_HAS_LLDSCD=y # # General setup @@ -253,6 +256,7 @@ # CONFIG_TULIP is not set # CONFIG_DE4X5 is not set # CONFIG_DGRS is not set +# CONFIG_TC35815 is not set # CONFIG_DM9102 is not set # CONFIG_EEPRO100 is not set # CONFIG_LNE390 is not set @@ -382,7 +386,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver Index: defconfig-ev96100 =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-ev96100,v retrieving revision 1.12 retrieving revision 1.13 diff -u -d -r1.12 -r1.13 --- defconfig-ev96100 2001/11/19 18:31:01 1.12 +++ defconfig-ev96100 2001/11/27 23:31:02 1.13 @@ -2,7 +2,6 @@ # Automatically generated make config: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -18,6 +17,8 @@ # CONFIG_COBALT_MICRO_SERVER is not set # CONFIG_DECSTATION is not set # CONFIG_DDB5074 is not set +# CONFIG_NEC_EAGLE is not set +# CONFIG_NEC_KORVA is not set CONFIG_MIPS_EV96100=y # CONFIG_MIPS_EV64120 is not set # CONFIG_MIPS_ATLAS is not set @@ -25,13 +26,13 @@ # CONFIG_NINO is not set # CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set # CONFIG_DDB5477 is not set # CONFIG_NEC_OSPREY is not set -# CONFIG_NEC_EAGLE is not set -# CONFIG_NEC_KORVA is not set # CONFIG_OLIVETTI_M700 is not set # CONFIG_SGI_IP22 is not set # CONFIG_SNI_RM200_PCI is not set @@ -39,6 +40,7 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set @@ -47,6 +49,7 @@ CONFIG_MIPS_GT96100=y CONFIG_SWAP_IO_SPACE=y CONFIG_NEW_PCI=y +CONFIG_NONCOHERENT_IO=y CONFIG_PCI_AUTO=y # CONFIG_ISA is not set # CONFIG_EISA is not set @@ -80,8 +83,8 @@ # CONFIG_CPU_MIPS64 is not set # CONFIG_CPU_ADVANCED is not set CONFIG_CPU_HAS_LLSC=y -CONFIG_CPU_HAS_LLDSCD=y # CONFIG_CPU_HAS_WB is not set +CONFIG_CPU_HAS_LLDSCD=y # # General setup @@ -253,6 +256,7 @@ # CONFIG_TULIP_MMIO is not set # CONFIG_DE4X5 is not set # CONFIG_DGRS is not set +# CONFIG_TC35815 is not set # CONFIG_DM9102 is not set # CONFIG_EEPRO100 is not set # CONFIG_LNE390 is not set @@ -375,7 +379,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver Index: defconfig-hp-lj =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-hp-lj,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- defconfig-hp-lj 2001/11/19 18:31:01 1.1 +++ defconfig-hp-lj 2001/11/27 23:31:02 1.2 @@ -14,14 +14,20 @@ # CONFIG_ACER_PICA_61 is not set # CONFIG_ALGOR_P4032 is not set # CONFIG_BAGET_MIPS is not set +# CONFIG_COBALT_MICRO_SERVER is not set # CONFIG_DECSTATION is not set # CONFIG_DDB5074 is not set +# CONFIG_NEC_EAGLE is not set +# CONFIG_NEC_KORVA is not set # CONFIG_MIPS_EV96100 is not set # CONFIG_MIPS_EV64120 is not set # CONFIG_MIPS_ATLAS is not set # CONFIG_MIPS_MALTA is not set # CONFIG_NINO is not set # CONFIG_SIBYTE_SB1250 is not set +# CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set @@ -34,15 +40,19 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set CONFIG_HP_LASERJET=y +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set # CONFIG_SBUS is not set CONFIG_PCI=y +CONFIG_IRQ_CPU=y CONFIG_NEW_TIME_C=y CONFIG_NEW_IRQ=y CONFIG_IRQ_CPU=y CONFIG_NEW_PCI=y +CONFIG_NONCOHERENT_IO=y +CONFIG_PCI=y # CONFIG_ISA is not set # CONFIG_EISA is not set # CONFIG_I8259 is not set @@ -66,6 +76,7 @@ # CONFIG_CPU_TX49XX is not set CONFIG_CPU_R5000=y # CONFIG_CPU_R5432 is not set +# CONFIG_CPU_R5900 is not set # CONFIG_CPU_RM7000 is not set # CONFIG_CPU_NEVADA is not set # CONFIG_CPU_R10000 is not set @@ -74,8 +85,8 @@ # CONFIG_CPU_MIPS64 is not set # CONFIG_CPU_ADVANCED is not set CONFIG_CPU_HAS_LLSC=y -CONFIG_CPU_HAS_LLDSCD=y # CONFIG_CPU_HAS_WB is not set +CONFIG_CPU_HAS_LLDSCD=y # # General setup @@ -379,6 +390,7 @@ # CONFIG_TULIP_MMIO is not set # CONFIG_DE4X5 is not set # CONFIG_DGRS is not set +# CONFIG_TC35815 is not set # CONFIG_DM9102 is not set # CONFIG_EEPRO100 is not set # CONFIG_LNE390 is not set Index: defconfig-ip22 =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-ip22,v retrieving revision 1.12 retrieving revision 1.13 diff -u -d -r1.12 -r1.13 --- defconfig-ip22 2001/11/19 18:31:01 1.12 +++ defconfig-ip22 2001/11/27 23:31:02 1.13 @@ -2,7 +2,6 @@ # Automatically generated make config: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -25,7 +24,10 @@ # CONFIG_MIPS_ATLAS is not set # CONFIG_MIPS_MALTA is not set # CONFIG_NINO is not set +# CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set @@ -38,16 +40,19 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set # CONFIG_SBUS is not set CONFIG_ARC32=y CONFIG_BOARD_SCACHE=y +CONFIG_IRQ_CPU=y CONFIG_PC_KEYB=y CONFIG_SGI=y CONFIG_NEW_IRQ=y -CONFIG_OLD_TIME_C=y +CONFIG_NEW_TIME_C=y +CONFIG_NONCOHERENT_IO=y # CONFIG_ISA is not set # CONFIG_EISA is not set # CONFIG_PCI is not set @@ -81,8 +86,8 @@ # CONFIG_CPU_MIPS64 is not set # CONFIG_CPU_ADVANCED is not set CONFIG_CPU_HAS_LLSC=y -CONFIG_CPU_HAS_LLDSCD=y # CONFIG_CPU_HAS_WB is not set +CONFIG_CPU_HAS_LLDSCD=y # # General setup @@ -249,7 +254,6 @@ # CONFIG_SCSI_INITIO is not set # CONFIG_SCSI_INIA100 is not set # CONFIG_SCSI_NCR53C406A is not set -# CONFIG_SCSI_NCR_D700 is not set # CONFIG_SCSI_NCR53C7xx is not set # CONFIG_SCSI_PAS16 is not set # CONFIG_SCSI_PCI2000 is not set @@ -398,7 +402,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver @@ -415,8 +418,6 @@ # # SGI Character devices # -CONFIG_VT=y -CONFIG_VT_CONSOLE=y CONFIG_SGI_NEWPORT_CONSOLE=y CONFIG_FONT_8x16=y CONFIG_PSMOUSE=y Index: defconfig-it8172 =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-it8172,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- defconfig-it8172 2001/11/19 18:31:01 1.15 +++ defconfig-it8172 2001/11/27 23:31:02 1.16 @@ -1,5 +1,5 @@ # -# Automatically generated by make menuconfig: don't edit +# Automatically generated make config: don't edit # CONFIG_MIPS=y @@ -50,8 +50,11 @@ CONFIG_IT8712=y CONFIG_PC_KEYB=y CONFIG_NEW_PCI=y +CONFIG_NONCOHERENT_IO=y CONFIG_PCI_AUTO=y CONFIG_IT8172_CIR=y +CONFIG_NEW_IRQ=y +CONFIG_NEW_TIME_C=y # CONFIG_ISA is not set # CONFIG_EISA is not set # CONFIG_I8259 is not set @@ -84,8 +87,8 @@ # CONFIG_CPU_MIPS64 is not set # CONFIG_CPU_ADVANCED is not set CONFIG_CPU_HAS_LLSC=y -CONFIG_CPU_HAS_LLDSCD=y # CONFIG_CPU_HAS_WB is not set +CONFIG_CPU_HAS_LLDSCD=y # # General setup @@ -111,6 +114,10 @@ # CONFIG_MTD_DEBUG is not set # CONFIG_MTD_PARTITIONS is not set # CONFIG_MTD_REDBOOT_PARTS is not set + +# +# User Modules And Translation Layers +# CONFIG_MTD_CHAR=y # CONFIG_MTD_BLOCK is not set # CONFIG_MTD_BLOCK_RO is not set @@ -151,6 +158,10 @@ # CONFIG_MTD_SLRAM is not set # CONFIG_MTD_MTDRAM is not set # CONFIG_MTD_BLKMTD is not set + +# +# Disk-On-Chip Device Drivers +# # CONFIG_MTD_DOC1000 is not set # CONFIG_MTD_DOC2000 is not set # CONFIG_MTD_DOC2001 is not set @@ -216,6 +227,10 @@ # CONFIG_KHTTPD is not set # CONFIG_ATM is not set # CONFIG_VLAN_8021Q is not set + +# +# +# # CONFIG_IPX is not set # CONFIG_ATALK is not set # CONFIG_DECNET is not set @@ -250,6 +265,10 @@ # IDE, ATA and ATAPI Block devices # CONFIG_BLK_DEV_IDE=y + +# +# Please see Documentation/ide.txt for help/info on IDE drives +# # CONFIG_BLK_DEV_HD_IDE is not set # CONFIG_BLK_DEV_HD is not set CONFIG_BLK_DEV_IDEDISK=y @@ -268,6 +287,10 @@ # CONFIG_BLK_DEV_IDETAPE is not set # CONFIG_BLK_DEV_IDEFLOPPY is not set # CONFIG_BLK_DEV_IDESCSI is not set + +# +# IDE chipset support/bugfixes +# # CONFIG_BLK_DEV_CMD640 is not set # CONFIG_BLK_DEV_CMD640_ENHANCED is not set # CONFIG_BLK_DEV_ISAPNP is not set @@ -295,8 +318,6 @@ # CONFIG_BLK_DEV_HPT366 is not set CONFIG_BLK_DEV_IT8172=y CONFIG_IT8172_TUNING=y -CONFIG_BLK_DEV_IT8172=y -CONFIG_IT8172_TUNING=y # CONFIG_BLK_DEV_NS87415 is not set # CONFIG_BLK_DEV_OPTI621 is not set # CONFIG_BLK_DEV_PDC202XX is not set @@ -308,6 +329,10 @@ # CONFIG_BLK_DEV_TRM290 is not set # CONFIG_BLK_DEV_VIA82CXXX is not set CONFIG_IDE_CHIPSETS=y + +# +# Note: most of these also require special kernel boot parameters +# # CONFIG_BLK_DEV_4DRIVES is not set # CONFIG_BLK_DEV_ALI14XX is not set # CONFIG_BLK_DEV_DTC2278 is not set @@ -485,6 +510,14 @@ # Joysticks # # CONFIG_INPUT_GAMEPORT is not set + +# +# Input core support is needed for gameports +# + +# +# Input core support is needed for joysticks +# # CONFIG_QIC02_TAPE is not set # @@ -620,9 +653,17 @@ # USB support # # CONFIG_USB is not set + +# +# USB Controllers +# # CONFIG_USB_UHCI is not set # CONFIG_USB_UHCI_ALT is not set # CONFIG_USB_OHCI is not set + +# +# USB Device Class drivers +# # CONFIG_USB_AUDIO is not set # CONFIG_USB_BLUETOOTH is not set # CONFIG_USB_STORAGE is not set @@ -636,16 +677,44 @@ # CONFIG_USB_STORAGE_JUMPSHOT is not set # CONFIG_USB_ACM is not set # CONFIG_USB_PRINTER is not set + +# +# USB Human Interface Devices (HID) +# + +# +# Input core support is needed for USB HID +# + +# +# USB Imaging devices +# # CONFIG_USB_DC2XX is not set # CONFIG_USB_MDC800 is not set # CONFIG_USB_SCANNER is not set # CONFIG_USB_MICROTEK is not set # CONFIG_USB_HPUSBSCSI is not set + +# +# USB Multimedia devices +# + +# +# Video4Linux support is needed for USB Multimedia device support +# + +# +# USB Network adaptors +# # CONFIG_USB_PEGASUS is not set # CONFIG_USB_KAWETH is not set # CONFIG_USB_CATC is not set # CONFIG_USB_CDCETHER is not set # CONFIG_USB_USBNET is not set + +# +# USB port drivers +# # CONFIG_USB_USS720 is not set # @@ -676,6 +745,10 @@ # CONFIG_USB_SERIAL_CYBERJACK is not set # CONFIG_USB_SERIAL_XIRCOM is not set # CONFIG_USB_SERIAL_OMNINET is not set + +# +# USB Miscellaneous drivers +# # CONFIG_USB_RIO500 is not set # Index: defconfig-ivr =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-ivr,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- defconfig-ivr 2001/11/22 01:19:24 1.1 +++ defconfig-ivr 2001/11/27 23:31:02 1.2 @@ -48,6 +48,7 @@ CONFIG_PCI=y CONFIG_PC_KEYB=y CONFIG_NEW_PCI=y +CONFIG_NONCOHERENT_IO=y CONFIG_PCI_AUTO=y CONFIG_IT8172_CIR=y CONFIG_NEW_IRQ=y @@ -84,8 +85,8 @@ # CONFIG_CPU_MIPS64 is not set # CONFIG_CPU_ADVANCED is not set CONFIG_CPU_HAS_LLSC=y -CONFIG_CPU_HAS_LLDSCD=y # CONFIG_CPU_HAS_WB is not set +CONFIG_CPU_HAS_LLDSCD=y # # General setup @@ -475,7 +476,6 @@ # CONFIG_INTEL_RNG is not set # CONFIG_NVRAM is not set CONFIG_RTC=y -# CONFIG_DALLAS_RTC is not set # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set Index: defconfig-jmr3927 =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-jmr3927,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- defconfig-jmr3927 2001/11/19 18:31:01 1.2 +++ defconfig-jmr3927 2001/11/27 23:31:02 1.3 @@ -1,5 +1,5 @@ # -# Automatically generated by make menuconfig: don't edit +# Automatically generated make config: don't edit # CONFIG_MIPS=y @@ -17,20 +17,22 @@ # CONFIG_COBALT_MICRO_SERVER is not set # CONFIG_DECSTATION is not set # CONFIG_DDB5074 is not set +# CONFIG_NEC_EAGLE is not set +# CONFIG_NEC_KORVA is not set # CONFIG_MIPS_EV96100 is not set # CONFIG_MIPS_EV64120 is not set # CONFIG_MIPS_ATLAS is not set # CONFIG_MIPS_MALTA is not set # CONFIG_NINO is not set -# CONFIG_PS2 is not set # CONFIG_SIBYTE_SB1250 is not set +# CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set # CONFIG_DDB5477 is not set # CONFIG_NEC_OSPREY is not set -# CONFIG_NEC_EAGLE is not set -# CONFIG_NEC_KORVA is not set # CONFIG_OLIVETTI_M700 is not set # CONFIG_SGI_IP22 is not set # CONFIG_SNI_RM200_PCI is not set @@ -72,6 +74,7 @@ # CONFIG_CPU_TX49XX is not set # CONFIG_CPU_R5000 is not set # CONFIG_CPU_R5432 is not set +# CONFIG_CPU_R5900 is not set # CONFIG_CPU_RM7000 is not set # CONFIG_CPU_NEVADA is not set # CONFIG_CPU_R10000 is not set @@ -163,6 +166,10 @@ # CONFIG_KHTTPD is not set # CONFIG_ATM is not set # CONFIG_VLAN_8021Q is not set + +# +# +# # CONFIG_IPX is not set # CONFIG_ATALK is not set # CONFIG_DECNET is not set @@ -246,9 +253,9 @@ # CONFIG_APRICOT is not set # CONFIG_CS89x0 is not set # CONFIG_TULIP is not set -CONFIG_TC35815=y # CONFIG_DE4X5 is not set # CONFIG_DGRS is not set +CONFIG_TC35815=y # CONFIG_DM9102 is not set # CONFIG_EEPRO100 is not set # CONFIG_LNE390 is not set @@ -341,7 +348,6 @@ # CONFIG_ESPSERIAL is not set # CONFIG_MOXA_INTELLIO is not set # CONFIG_MOXA_SMARTIO is not set -# CONFIG_ISI is not set # CONFIG_SYNCLINK is not set # CONFIG_N_HDLC is not set # CONFIG_RISCOM8 is not set @@ -372,6 +378,14 @@ # Joysticks # # CONFIG_INPUT_GAMEPORT is not set + +# +# Input core support is needed for gameports +# + +# +# Input core support is needed for joysticks +# # CONFIG_QIC02_TAPE is not set # @@ -490,6 +504,8 @@ # CONFIG_FB_CLGEN is not set # CONFIG_FB_PM2 is not set # CONFIG_FB_CYBER2000 is not set +# CONFIG_FB_E1355 is not set +# CONFIG_FB_MQ200 is not set # CONFIG_FB_MATROX is not set # CONFIG_FB_ATY is not set # CONFIG_FB_RADEON is not set @@ -497,6 +513,8 @@ # CONFIG_FB_SIS is not set # CONFIG_FB_3DFX is not set # CONFIG_FB_VOODOO1 is not set +# CONFIG_FB_E1356 is not set +# CONFIG_FB_IT8181 is not set # CONFIG_FB_VIRTUAL is not set CONFIG_FBCON_ADVANCED=y CONFIG_FBCON_MFB=y @@ -529,9 +547,17 @@ # USB support # # CONFIG_USB is not set + +# +# USB Controllers +# # CONFIG_USB_UHCI is not set # CONFIG_USB_UHCI_ALT is not set # CONFIG_USB_OHCI is not set + +# +# USB Device Class drivers +# # CONFIG_USB_AUDIO is not set # CONFIG_USB_BLUETOOTH is not set # CONFIG_USB_STORAGE is not set @@ -545,16 +571,44 @@ # CONFIG_USB_STORAGE_JUMPSHOT is not set # CONFIG_USB_ACM is not set # CONFIG_USB_PRINTER is not set + +# +# USB Human Interface Devices (HID) +# + +# +# Input core support is needed for USB HID +# + +# +# USB Imaging devices +# # CONFIG_USB_DC2XX is not set # CONFIG_USB_MDC800 is not set # CONFIG_USB_SCANNER is not set # CONFIG_USB_MICROTEK is not set # CONFIG_USB_HPUSBSCSI is not set + +# +# USB Multimedia devices +# + +# +# Video4Linux support is needed for USB Multimedia device support +# + +# +# USB Network adaptors +# # CONFIG_USB_PEGASUS is not set # CONFIG_USB_KAWETH is not set # CONFIG_USB_CATC is not set # CONFIG_USB_CDCETHER is not set # CONFIG_USB_USBNET is not set + +# +# USB port drivers +# # CONFIG_USB_USS720 is not set # @@ -585,6 +639,10 @@ # CONFIG_USB_SERIAL_CYBERJACK is not set # CONFIG_USB_SERIAL_XIRCOM is not set # CONFIG_USB_SERIAL_OMNINET is not set + +# +# USB Miscellaneous drivers +# # CONFIG_USB_RIO500 is not set # Index: defconfig-korva =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-korva,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- defconfig-korva 2001/11/19 18:31:01 1.7 +++ defconfig-korva 2001/11/27 23:31:02 1.8 @@ -2,7 +2,6 @@ # Automatically generated make config: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -18,7 +17,6 @@ # CONFIG_COBALT_MICRO_SERVER is not set # CONFIG_DECSTATION is not set # CONFIG_DDB5074 is not set -# CONFIG_NEC_OSPREY is not set # CONFIG_NEC_EAGLE is not set CONFIG_NEC_KORVA=y # CONFIG_MIPS_EV96100 is not set @@ -28,10 +26,13 @@ # CONFIG_NINO is not set # CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set # CONFIG_DDB5477 is not set +# CONFIG_NEC_OSPREY is not set # CONFIG_OLIVETTI_M700 is not set # CONFIG_SGI_IP22 is not set # CONFIG_SNI_RM200_PCI is not set @@ -39,6 +40,7 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set @@ -48,6 +50,7 @@ CONFIG_SERIAL_MANY_PORTS=y CONFIG_NEW_IRQ=y CONFIG_NEW_TIME_C=y +CONFIG_NONCOHERENT_IO=y # CONFIG_SCSI is not set # CONFIG_ISA is not set # CONFIG_EISA is not set @@ -160,6 +163,7 @@ # CONFIG_IPV6 is not set # CONFIG_KHTTPD is not set # CONFIG_ATM is not set +# CONFIG_VLAN_8021Q is not set # # @@ -228,7 +232,6 @@ # Ethernet (10 or 100Mbit) # CONFIG_NET_ETHERNET=y -# CONFIG_ARM_AM79C961A is not set # CONFIG_SUNLANCE is not set # CONFIG_SUNBMAC is not set # CONFIG_SUNQE is not set @@ -247,7 +250,6 @@ # Ethernet (1000 Mbit) # # CONFIG_ACENIC is not set -# CONFIG_ACENIC_OMIT_TIGON_I is not set # CONFIG_DL2K is not set # CONFIG_MYRI_SBUS is not set # CONFIG_NS83820 is not set @@ -347,7 +349,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver @@ -386,6 +387,7 @@ # CONFIG_RAMFS is not set # CONFIG_ISO9660_FS is not set # CONFIG_JOLIET is not set +# CONFIG_ZISOFS is not set # CONFIG_MINIX_FS is not set # CONFIG_VXFS_FS is not set # CONFIG_NTFS_FS is not set @@ -427,6 +429,8 @@ # CONFIG_NCPFS_SMALLDOS is not set # CONFIG_NCPFS_NLS is not set # CONFIG_NCPFS_EXTRAS is not set +# CONFIG_ZISOFS_FS is not set +# CONFIG_ZLIB_FS_INFLATE is not set # # Partition Types @@ -445,6 +449,103 @@ # USB support # # CONFIG_USB is not set + +# +# USB Controllers +# +# CONFIG_USB_UHCI is not set +# CONFIG_USB_UHCI_ALT is not set +# CONFIG_USB_OHCI is not set + +# +# USB Device Class drivers +# +# CONFIG_USB_AUDIO is not set +# CONFIG_USB_BLUETOOTH is not set +# CONFIG_USB_STORAGE is not set +# CONFIG_USB_STORAGE_DEBUG is not set +# CONFIG_USB_STORAGE_DATAFAB is not set +# CONFIG_USB_STORAGE_FREECOM is not set +# CONFIG_USB_STORAGE_ISD200 is not set +# CONFIG_USB_STORAGE_DPCM is not set +# CONFIG_USB_STORAGE_HP8200e is not set +# CONFIG_USB_STORAGE_SDDR09 is not set +# CONFIG_USB_STORAGE_JUMPSHOT is not set +# CONFIG_USB_ACM is not set +# CONFIG_USB_PRINTER is not set + +# +# USB Human Interface Devices (HID) +# + +# +# Input core support is needed for USB HID +# + +# +# USB Imaging devices +# +# CONFIG_USB_DC2XX is not set +# CONFIG_USB_MDC800 is not set +# CONFIG_USB_SCANNER is not set +# CONFIG_USB_MICROTEK is not set +# CONFIG_USB_HPUSBSCSI is not set + +# +# USB Multimedia devices +# + +# +# Video4Linux support is needed for USB Multimedia device support +# + +# +# USB Network adaptors +# +# CONFIG_USB_PEGASUS is not set +# CONFIG_USB_KAWETH is not set +# CONFIG_USB_CATC is not set +# CONFIG_USB_CDCETHER is not set +# CONFIG_USB_USBNET is not set + +# +# USB port drivers +# +# CONFIG_USB_USS720 is not set + +# +# USB Serial Converter support +# +# CONFIG_USB_SERIAL is not set +# CONFIG_USB_SERIAL_GENERIC is not set +# CONFIG_USB_SERIAL_BELKIN is not set +# CONFIG_USB_SERIAL_WHITEHEAT is not set +# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set +# CONFIG_USB_SERIAL_EMPEG is not set +# CONFIG_USB_SERIAL_FTDI_SIO is not set +# CONFIG_USB_SERIAL_VISOR is not set +# CONFIG_USB_SERIAL_IR is not set +# CONFIG_USB_SERIAL_EDGEPORT is not set +# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set +# CONFIG_USB_SERIAL_KEYSPAN is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28 is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28X is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28XA is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28XB is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19 is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA18X is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19W is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA49W is not set +# CONFIG_USB_SERIAL_MCT_U232 is not set +# CONFIG_USB_SERIAL_PL2303 is not set +# CONFIG_USB_SERIAL_CYBERJACK is not set +# CONFIG_USB_SERIAL_XIRCOM is not set +# CONFIG_USB_SERIAL_OMNINET is not set + +# +# USB Miscellaneous drivers +# +# CONFIG_USB_RIO500 is not set # # Input core support Index: defconfig-malta =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-malta,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- defconfig-malta 2001/11/19 18:31:01 1.11 +++ defconfig-malta 2001/11/27 23:31:02 1.12 @@ -2,7 +2,6 @@ # Automatically generated make config: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -25,7 +24,10 @@ # CONFIG_MIPS_ATLAS is not set CONFIG_MIPS_MALTA=y # CONFIG_NINO is not set +# CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set @@ -38,6 +40,7 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set @@ -46,6 +49,7 @@ CONFIG_PCI=y CONFIG_HAVE_STD_PC_SERIAL_PORT=y CONFIG_NEW_IRQ=y +CONFIG_NONCOHERENT_IO=y CONFIG_SWAP_IO_SPACE=y # CONFIG_ISA is not set # CONFIG_EISA is not set @@ -76,8 +80,8 @@ # CONFIG_CPU_MIPS64 is not set # CONFIG_CPU_ADVANCED is not set CONFIG_CPU_HAS_LLSC=y -# CONFIG_CPU_HAS_LLDSCD is not set # CONFIG_CPU_HAS_WB is not set +# CONFIG_CPU_HAS_LLDSCD is not set # # General setup @@ -244,7 +248,6 @@ # CONFIG_SCSI_INITIO is not set # CONFIG_SCSI_INIA100 is not set # CONFIG_SCSI_NCR53C406A is not set -# CONFIG_SCSI_NCR_D700 is not set # CONFIG_SCSI_NCR53C7xx is not set # CONFIG_SCSI_NCR53C8XX is not set # CONFIG_SCSI_SYM53C8XX is not set @@ -311,6 +314,7 @@ # CONFIG_TULIP is not set # CONFIG_DE4X5 is not set # CONFIG_DGRS is not set +# CONFIG_TC35815 is not set # CONFIG_DM9102 is not set # CONFIG_EEPRO100 is not set # CONFIG_LNE390 is not set @@ -319,6 +323,7 @@ # CONFIG_NE2K_PCI is not set # CONFIG_NE3210 is not set # CONFIG_ES3210 is not set +# CONFIG_8139CP is not set # CONFIG_8139TOO is not set # CONFIG_8139TOO_PIO is not set # CONFIG_8139TOO_TUNE_TWISTER is not set @@ -432,7 +437,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver Index: defconfig-nino =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-nino,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- defconfig-nino 2001/11/19 18:31:01 1.15 +++ defconfig-nino 2001/11/27 23:31:02 1.16 @@ -2,7 +2,6 @@ # Automatically generated make config: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -30,6 +29,8 @@ # CONFIG_NINO_16MB is not set # CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set @@ -42,12 +43,14 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set # CONFIG_SBUS is not set CONFIG_NEW_IRQ=y CONFIG_NEW_TIME_C=y +CONFIG_NONCOHERENT_IO=y CONFIG_PC_KEYB=y # CONFIG_ISA is not set # CONFIG_EISA is not set @@ -125,6 +128,7 @@ CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM_SIZE=512 CONFIG_BLK_DEV_INITRD=y +# CONFIG_EMBEDDED_RAMDISK is not set # # Multi-device support (RAID and LVM) @@ -160,8 +164,8 @@ # CONFIG_ATM is not set # CONFIG_VLAN_8021Q is not set -# # +# # # CONFIG_IPX is not set # CONFIG_ATALK is not set @@ -261,6 +265,7 @@ CONFIG_SERIAL_TX3912=y CONFIG_SERIAL_TX3912_CONSOLE=y # CONFIG_AU1000_UART is not set +# CONFIG_TXX927_SERIAL is not set # CONFIG_UNIX98_PTYS is not set # @@ -298,7 +303,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver @@ -402,6 +406,9 @@ CONFIG_FB=y CONFIG_DUMMY_CONSOLE=y # CONFIG_FB_CYBER2000 is not set +# CONFIG_FB_E1355 is not set +# CONFIG_FB_MQ200 is not set +# CONFIG_FB_IT8181 is not set CONFIG_FB_TX3912=y # CONFIG_FB_VIRTUAL is not set CONFIG_FBCON_ADVANCED=y Index: defconfig-ocelot =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-ocelot,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- defconfig-ocelot 2001/11/19 18:31:01 1.11 +++ defconfig-ocelot 2001/11/27 23:31:02 1.12 @@ -2,7 +2,6 @@ # Automatically generated make config: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -25,7 +24,10 @@ # CONFIG_MIPS_ATLAS is not set # CONFIG_MIPS_MALTA is not set # CONFIG_NINO is not set +# CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set CONFIG_MOMENCO_OCELOT=y # CONFIG_DDB5476 is not set @@ -38,6 +40,7 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set @@ -46,7 +49,8 @@ CONFIG_SYSCLK_100=y CONFIG_SWAP_IO_SPACE=y CONFIG_NEW_IRQ=y -CONFIG_OLD_TIME_C=y +CONFIG_NONCOHERENT_IO=y +CONFIG_NEW_TIME_C=y # CONFIG_ISA is not set # CONFIG_EISA is not set # CONFIG_I8259 is not set @@ -77,8 +81,8 @@ # CONFIG_CPU_MIPS64 is not set # CONFIG_CPU_ADVANCED is not set CONFIG_CPU_HAS_LLSC=y -CONFIG_CPU_HAS_LLDSCD=y # CONFIG_CPU_HAS_WB is not set +CONFIG_CPU_HAS_LLDSCD=y # # General setup @@ -247,6 +251,7 @@ # CONFIG_TULIP is not set # CONFIG_DE4X5 is not set # CONFIG_DGRS is not set +# CONFIG_TC35815 is not set # CONFIG_DM9102 is not set CONFIG_EEPRO100=y # CONFIG_LNE390 is not set @@ -255,6 +260,7 @@ # CONFIG_NE2K_PCI is not set # CONFIG_NE3210 is not set # CONFIG_ES3210 is not set +# CONFIG_8139CP is not set # CONFIG_8139TOO is not set # CONFIG_8139TOO_PIO is not set # CONFIG_8139TOO_TUNE_TWISTER is not set @@ -368,7 +374,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver Index: defconfig-osprey =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-osprey,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- defconfig-osprey 2001/11/19 18:31:01 1.10 +++ defconfig-osprey 2001/11/27 23:31:02 1.11 @@ -2,7 +2,6 @@ # Automatically generated make config: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -25,7 +24,10 @@ # CONFIG_MIPS_ATLAS is not set # CONFIG_MIPS_MALTA is not set # CONFIG_NINO is not set +# CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set @@ -38,6 +40,7 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set @@ -49,6 +52,7 @@ CONFIG_NEW_IRQ=y CONFIG_IRQ_CPU=y CONFIG_NEW_TIME_C=y +CONFIG_NONCOHERENT_IO=y CONFIG_DUMMY_KEYB=y # CONFIG_SCSI is not set # CONFIG_ISA is not set @@ -346,7 +350,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver Index: defconfig-pb1000 =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-pb1000,v retrieving revision 1.14 retrieving revision 1.15 diff -u -d -r1.14 -r1.15 --- defconfig-pb1000 2001/11/19 18:31:01 1.14 +++ defconfig-pb1000 2001/11/27 23:31:02 1.15 @@ -2,7 +2,6 @@ # Automatically generated make config: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -25,7 +24,10 @@ # CONFIG_MIPS_ATLAS is not set # CONFIG_MIPS_MALTA is not set # CONFIG_NINO is not set +# CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set @@ -39,6 +41,7 @@ CONFIG_MIPS_PB1000=y CONFIG_PCI_AUTO=y # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set @@ -47,6 +50,7 @@ CONFIG_NEW_IRQ=y CONFIG_PCI=y CONFIG_NEW_PCI=y +CONFIG_NONCOHERENT_IO=y CONFIG_PC_KEYB=y MAX_HWIFS=1 # CONFIG_ISA is not set @@ -329,6 +333,7 @@ # CONFIG_SERIAL_TX3912_CONSOLE is not set CONFIG_AU1000_UART=y CONFIG_AU1000_SERIAL_CONSOLE=y +# CONFIG_TXX927_SERIAL is not set CONFIG_UNIX98_PTYS=y CONFIG_UNIX98_PTY_COUNT=256 @@ -367,7 +372,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver @@ -490,18 +494,19 @@ # CONFIG_FB_PM2 is not set # CONFIG_FB_CYBER2000 is not set # CONFIG_FB_E1355 is not set -# CONFIG_FB_PVR2 is not set -# CONFIG_FB_PVR2_DEBUG is not set # CONFIG_FB_MQ200 is not set # CONFIG_FB_MATROX is not set # CONFIG_FB_ATY is not set +# CONFIG_FB_RADEON is not set # CONFIG_FB_ATY128 is not set -# CONFIG_FB_3DFX is not set # CONFIG_FB_SIS is not set +# CONFIG_FB_3DFX is not set +# CONFIG_FB_VOODOO1 is not set CONFIG_FB_E1356=y # CONFIG_PB1000_CRT is not set # CONFIG_PB1000_NTSC is not set # CONFIG_PB1000_TFT is not set +# CONFIG_FB_IT8181 is not set # CONFIG_FB_VIRTUAL is not set CONFIG_FBCON_ADVANCED=y # CONFIG_FBCON_MFB is not set Index: defconfig-rm200 =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-rm200,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- defconfig-rm200 2001/11/19 18:31:01 1.11 +++ defconfig-rm200 2001/11/27 23:31:02 1.12 @@ -2,7 +2,6 @@ # Automatically generated make config: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -18,7 +17,6 @@ # CONFIG_COBALT_MICRO_SERVER is not set # CONFIG_DECSTATION is not set # CONFIG_DDB5074 is not set -# CONFIG_NEC_OSPREY is not set # CONFIG_NEC_EAGLE is not set # CONFIG_NEC_KORVA is not set # CONFIG_MIPS_EV96100 is not set @@ -26,7 +24,10 @@ # CONFIG_MIPS_ATLAS is not set # CONFIG_MIPS_MALTA is not set # CONFIG_NINO is not set +# CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set @@ -39,6 +40,7 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set @@ -47,9 +49,10 @@ CONFIG_I8259=y CONFIG_ISA=y CONFIG_NEW_IRQ=y +CONFIG_NONCOHERENT_IO=y +CONFIG_OLD_TIME_C=y CONFIG_PC_KEYB=y CONFIG_PCI=y -CONFIG_OLD_TIME_C=y CONFIG_EISA=y # @@ -80,8 +83,8 @@ # CONFIG_CPU_MIPS64 is not set # CONFIG_CPU_ADVANCED is not set CONFIG_CPU_HAS_LLSC=y -CONFIG_CPU_HAS_LLDSCD=y # CONFIG_CPU_HAS_WB is not set +CONFIG_CPU_HAS_LLDSCD=y # # General setup @@ -106,7 +109,6 @@ # # CONFIG_PNP is not set # CONFIG_ISAPNP is not set -# CONFIG_PNPBIOS is not set # # Memory Technology Devices (MTD) @@ -287,7 +289,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver Index: defconfig-sb1250-swarm =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-sb1250-swarm,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- defconfig-sb1250-swarm 2001/11/20 17:51:14 1.4 +++ defconfig-sb1250-swarm 2001/11/27 23:31:02 1.5 @@ -14,8 +14,11 @@ # CONFIG_ACER_PICA_61 is not set # CONFIG_ALGOR_P4032 is not set # CONFIG_BAGET_MIPS is not set +# CONFIG_COBALT_MICRO_SERVER is not set # CONFIG_DECSTATION is not set # CONFIG_DDB5074 is not set +# CONFIG_NEC_EAGLE is not set +# CONFIG_NEC_KORVA is not set # CONFIG_MIPS_EV96100 is not set # CONFIG_MIPS_EV64120 is not set # CONFIG_MIPS_ATLAS is not set @@ -32,12 +35,9 @@ # CONFIG_SWARM_STANDALONE is not set CONFIG_SIBYTE_SWARM_MAX_MEM_REGIONS=16 CONFIG_SMP=y -CONFIG_EMBEDDED_RAMDISK=y -# CONFIG_SIBYTE_RAMDISK_SIMPLE_INIT is not set -CONFIG_SIBYTE_RAMDISK_GENERAL=y -# CONFIG_SIBYTE_RAMDISK_PROMICE_CONSOLE is not set -# CONFIG_SIBYTE_RAMDISK_NIDEMO is not set -# CONFIG_SIBYTE_RAMDISK_SCREENING is not set +# CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set @@ -49,11 +49,12 @@ # CONFIG_MIPS_ITE8172 is not set # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set +# CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set # CONFIG_SBUS is not set -CONFIG_COHERENT_IO=y CONFIG_NEW_IRQ=y # CONFIG_PCI is not set CONFIG_SWAP_IO_SPACE=y @@ -81,6 +82,7 @@ # CONFIG_CPU_TX49XX is not set # CONFIG_CPU_R5000 is not set # CONFIG_CPU_R5432 is not set +# CONFIG_CPU_R5900 is not set # CONFIG_CPU_RM7000 is not set # CONFIG_CPU_NEVADA is not set # CONFIG_CPU_R10000 is not set @@ -89,10 +91,11 @@ # CONFIG_CPU_MIPS64 is not set CONFIG_SB1_PASS_1_WORKAROUNDS=y CONFIG_SB1_CACHE_ERROR=y +CONFIG_VTAG_ICACHE=y # CONFIG_CPU_ADVANCED is not set CONFIG_CPU_HAS_LLSC=y -CONFIG_CPU_HAS_LLDSCD=y # CONFIG_CPU_HAS_WB is not set +CONFIG_CPU_HAS_LLDSCD=y # # General setup @@ -331,6 +334,7 @@ # CONFIG_SERIAL_TX3912 is not set # CONFIG_SERIAL_TX3912_CONSOLE is not set # CONFIG_AU1000_UART is not set +# CONFIG_TXX927_SERIAL is not set CONFIG_SIBYTE_SB1250_DUART=y CONFIG_SIBYTE_SB1250_DUART_CONSOLE=y CONFIG_SB1250_DUART_OUTPUT_BUF_SIZE=1024 |
From: Jim P. <jim...@us...> - 2001-11-27 23:14:52
|
Update of /cvsroot/linux-mips/linux/include/asm-mips/vr4121 In directory usw-pr-cvs1:/tmp/cvs-serv10919 Modified Files: vr4121.h Log Message: Rewritten to use vr4111.h as a base Index: vr4121.h =================================================================== RCS file: /cvsroot/linux-mips/linux/include/asm-mips/vr4121/vr4121.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- vr4121.h 2001/11/27 22:51:19 1.2 +++ vr4121.h 2001/11/27 23:14:49 1.3 @@ -4,504 +4,23 @@ * for more details. * * Copyright (C) 1999 by Michael Klar + * + * Simplified to use vr4111.h by Johannes Stezenbach <js...@co...> */ -#ifndef __ASM_VR4121_VR4121_H -#define __ASM_VR4121_VR4121_H - -#include <asm/addrspace.h> - -#define VR41XX_CPU_IRQ_BASE 0 -#define VR41XX_NUM_CPU_IRQ 8 - -#define VR41XX_SYS_IRQ_BASE 8 -#define VR41XX_NUM_SYS_IRQ 32 - -#define VR41XX_GPIO_IRQ_BASE 40 -#define VR41XX_NUM_GPIO_IRQ 32 - -/* CPU interrupts */ -#define VR41XX_IRQ_SW1 0 /* IP0 - Software interrupt */ -#define VR41XX_IRQ_SW2 1 /* IP1 - Software interrupt */ -#define VR41XX_IRQ_INT0 2 /* IP2 - All but battery, high speed modem, and real time clock */ -#define VR41XX_IRQ_INT1 3 /* IP3 - RTC Long1 (system timer) */ -#define VR41XX_IRQ_INT2 4 /* IP4 - RTC Long2 */ -#define VR41XX_IRQ_INT3 5 /* IP5 - High Speed Modem */ -#define VR41XX_IRQ_INT4 6 /* IP6 - Unused */ -#define VR41XX_IRQ_TIMER 7 /* IP7 - Timer interrupt from CPO_COMPARE (Note: RTC Long1 is the system timer.) */ - -/* Cascaded from VR41XX_IRQ_INT0 (ICU mapped interrupts) */ -#define VR41XX_IRQ_BATTERY 8 -#define VR41XX_IRQ_POWER 9 -#define VR41XX_IRQ_RTCL1 10 /* Use VR41XX_IRQ_INT1 instead. */ -#define VR41XX_IRQ_ETIMER 11 -#define VR41XX_IRQ_RFU12 12 -#define VR41XX_IRQ_PIU 13 -#define VR41XX_IRQ_AIU 14 -#define VR41XX_IRQ_KIU 15 -#define VR41XX_IRQ_GIU 16 /* This is a cascade to IRQs 40-71. Do not use. */ -#define VR41XX_IRQ_SIU 17 -#define VR41XX_IRQ_WRBERR 18 -#define VR41XX_IRQ_SOFT 19 -#define VR41XX_IRQ_RFU20 20 -#define VR41XX_IRQ_DOZEPIU 21 -#define VR41XX_IRQ_RFU22 22 -#define VR41XX_IRQ_RFU23 23 -#define VR41XX_IRQ_RTCL2 24 /* Use VR41XX_IRQ_INT2 instead. */ -#define VR41XX_IRQ_LED 25 -#define VR41XX_IRQ_HSP 26 /* Use VR41XX_IRQ_INT3 instead. */ -#define VR41XX_IRQ_TCLK 27 -#define VR41XX_IRQ_FIR 28 -#define VR41XX_IRQ_DSIU 29 -#define VR41XX_IRQ_RFU30 30 -#define VR41XX_IRQ_RFU31 31 -#define VR41XX_IRQ_RFU32 32 -#define VR41XX_IRQ_RFU33 33 -#define VR41XX_IRQ_RFU34 34 -#define VR41XX_IRQ_RFU35 35 -#define VR41XX_IRQ_RFU36 36 -#define VR41XX_IRQ_RFU37 37 -#define VR41XX_IRQ_RFU38 38 -#define VR41XX_IRQ_RFU39 39 - -/* Cascaded from VR41XX_IRQ_GIU */ -#define VR41XX_IRQ_GPIO0 40 -#define VR41XX_IRQ_GPIO1 41 -#define VR41XX_IRQ_GPIO2 42 -#define VR41XX_IRQ_GPIO3 43 -#define VR41XX_IRQ_GPIO4 44 -#define VR41XX_IRQ_GPIO5 45 -#define VR41XX_IRQ_GPIO6 46 -#define VR41XX_IRQ_GPIO7 47 -#define VR41XX_IRQ_GPIO8 48 -#define VR41XX_IRQ_GPIO9 49 -#define VR41XX_IRQ_GPIO10 50 -#define VR41XX_IRQ_GPIO11 51 -#define VR41XX_IRQ_GPIO12 52 -#define VR41XX_IRQ_GPIO13 53 -#define VR41XX_IRQ_GPIO14 54 -#define VR41XX_IRQ_GPIO15 55 -#define VR41XX_IRQ_GPIO16 56 -#define VR41XX_IRQ_GPIO17 57 -#define VR41XX_IRQ_GPIO18 58 -#define VR41XX_IRQ_GPIO19 59 -#define VR41XX_IRQ_GPIO20 60 -#define VR41XX_IRQ_GPIO21 61 -#define VR41XX_IRQ_GPIO22 62 -#define VR41XX_IRQ_GPIO23 63 -#define VR41XX_IRQ_GPIO24 64 -#define VR41XX_IRQ_GPIO25 65 -#define VR41XX_IRQ_GPIO26 66 -#define VR41XX_IRQ_GPIO27 67 -#define VR41XX_IRQ_GPIO28 68 -#define VR41XX_IRQ_GPIO29 69 -#define VR41XX_IRQ_GPIO30 70 -#define VR41XX_IRQ_GPIO31 71 - -/* Alternative to above GPIO IRQ defines */ -#define VR41XX_IRQ_GPIO(pin) ((VR41XX_IRQ_GPIO0) + (pin)) - -#define VR41XX_SYSINT1_IRQ_BASE 8 -#define VR41XX_SYSINT2_IRQ_BASE 24 -#define VR41XX_GIUINTL_IRQ_BASE 40 -#define VR41XX_GIUINTH_IRQ_BASE 56 - -#define VR41XX_IRQ_MAX 71 +#ifndef __ASM_VR4121_VR4121_H +#define __ASM_VR4121_VR4121_H -#ifndef _LANGUAGE_ASSEMBLY -#define __preg8 (volatile unsigned char*) -#define __preg16 (volatile unsigned short*) -#define __preg32 (volatile unsigned int*) -#else -#define __preg8 -#define __preg16 -#define __preg32 -#endif +#include <asm/vr4111/vr4111.h> -/* Embedded CPU peripheral registers */ -/* Bus Control Unit (BCU) */ -#define VR41XX_BCUCNTREG1 __preg16(KSEG1 + 0x0B000000) /* BCU Control Register 1 (R/W) */ -#define VR41XX_BCUCNTREG2 __preg16(KSEG1 + 0x0B000002) /* BCU Control Register 2 (R/W) */ +/* Additional Bus Control Unit (BCU) registers */ #define VR41XX_ROMSIZEREG __preg16(KSEG1 + 0x0B000004) /* ROM Size Register (R/W) */ #define VR41XX_RAMSIZEREG __preg16(KSEG1 + 0x0B000006) /* DRAM Size Register (R/W) */ -#define VR41XX_BCUSPEEDREG __preg16(KSEG1 + 0x0B00000A) /* BCU Access Cycle Change Register (R/W) */ -#define VR41XX_BCUERRSTREG __preg16(KSEG1 + 0x0B00000C) /* BCU BUS ERROR Status Register (R/W) */ -#define VR41XX_BCURFCNTREG __preg16(KSEG1 + 0x0B00000E) /* BCU Refresh Control Register (R/W) */ -#define VR41XX_REVIDREG __preg16(KSEG1 + 0x0B000010) /* Revision ID Register (R) */ -#define VR41XX_BCURFCOUNTREG __preg16(KSEG1 + 0x0B000012) /* BCU Refresh Count Register (R/W) */ -#define VR41XX_CLKSPEEDREG __preg16(KSEG1 + 0x0B000014) /* Clock Speed Register (R) */ -#define VR41XX_BCUCNTREG3 __preg16(KSEG1 + 0x0B000016) /* BCU Control Register 3 (R/W) */ #define VR41XX_SDRAMMODEREG __preg16(KSEG1 + 0x0B00001A) /* SDRAM Mode Register */ #define VR41XX_SROMMODEREG __preg16(KSEG1 + 0x0B00001C) /* SROM Mode Register */ #define VR41XX_SDRAMCNTREG __preg16(KSEG1 + 0x0B00001E) /* SDRAM Control Register */ #define VR41XX_BCUTOUTCNTREG __preg16(KSEG1 + 0x0B000300) /* BCU Timeout Control Register */ #define VR41XX_BCUTOUTCOUNTREG __preg16(KSEG1 + 0x0B000302) /* BCU Timeout Count Register */ -/* DMA Address Unit (DMAAU) */ -#define VR41XX_AIUIBALREG __preg16(KSEG1 + 0x0B000020) /* AIU IN DMA Base Address Register Low (R/W) */ -#define VR41XX_AIUIBAHREG __preg16(KSEG1 + 0x0B000022) /* AIU IN DMA Base Address Register High (R/W) */ -#define VR41XX_AIUIALREG __preg16(KSEG1 + 0x0B000024) /* AIU IN DMA Address Register Low (R/W) */ -#define VR41XX_AIUIAHREG __preg16(KSEG1 + 0x0B000026) /* AIU IN DMA Address Register High (R/W) */ -#define VR41XX_AIUOBALREG __preg16(KSEG1 + 0x0B000028) /* AIU OUT DMA Base Address Register Low (R/W) */ -#define VR41XX_AIUOBAHREG __preg16(KSEG1 + 0x0B00002A) /* AIU OUT DMA Base Address Register High (R/W) */ -#define VR41XX_AIUOALREG __preg16(KSEG1 + 0x0B00002C) /* AIU OUT DMA Address Register Low (R/W) */ -#define VR41XX_AIUOAHREG __preg16(KSEG1 + 0x0B00002E) /* AIU OUT DMA Address Register High (R/W) */ -#define VR41XX_FIRBALREG __preg16(KSEG1 + 0x0B000030) /* FIR DMA Base Address Register Low (R/W) */ -#define VR41XX_FIRBAHREG __preg16(KSEG1 + 0x0B000032) /* FIR DMA Base Address Register High (R/W) */ -#define VR41XX_FIRALREG __preg16(KSEG1 + 0x0B000034) /* FIR DMA Address Register Low (R/W) */ -#define VR41XX_FIRAHREG __preg16(KSEG1 + 0x0B000036) /* FIR DMA Address Register High (R/W) */ - -/* DMA Control Unit (DCU) */ -#define VR41XX_DMARSTREG __preg16(KSEG1 + 0x0B000040) /* DMA Reset Register (R/W) */ -#define VR41XX_DMAIDLEREG __preg16(KSEG1 + 0x0B000042) /* DMA Idle Register (R) */ -#define VR41XX_DMASENREG __preg16(KSEG1 + 0x0B000044) /* DMA Sequencer Enable Register (R/W) */ -#define VR41XX_DMAMSKREG __preg16(KSEG1 + 0x0B000046) /* DMA Mask Register (R/W) */ -#define VR41XX_DMAREQREG __preg16(KSEG1 + 0x0B000048) /* DMA Request Register (R) */ -#define VR41XX_TDREG __preg16(KSEG1 + 0x0B00004A) /* Transfer Direction Register (R/W) */ - -/* Clock Mask Unit (CMU) */ -#define VR41XX_CMUCLKMSK __preg16(KSEG1 + 0x0B000060) /* CMU Clock Mask Register (R/W) */ -#define VR41XX_CMUCLKMSK_MSKPIU 0x0001 -#define VR41XX_CMUCLKMSK_MSKSIU 0x0002 -#define VR41XX_CMUCLKMSK_MSKAIU 0x0004 -#define VR41XX_CMUCLKMSK_MSKKIU 0x0008 -#define VR41XX_CMUCLKMSK_MSKFIR 0x0010 -#define VR41XX_CMUCLKMSK_MSKDSIU 0x0020 -#define VR41XX_CMUCLKMSK_MSKSSIU 0x0100 -#define VR41XX_CMUCLKMSK_MSKSHSP 0x0200 -#define VR41XX_CMUCLKMSK_MSKFFIR 0x0400 - -#ifndef _LANGUAGE_ASSEMBLY -extern void vr41xx_clock_supply(unsigned short mask); -extern void vr41xx_clock_mask(unsigned short mask); -#endif - -/* Interrupt Control Unit (ICU) */ -#define VR41XX_SYSINT1REG __preg16(KSEG1 + 0x0B000080) /* Level 1 System interrupt register 1 (R) */ -#define VR41XX_PIUINTREGro __preg16(KSEG1 + 0x0B000082) /* Level 2 PIU interrupt register (R) */ -#define VR41XX_AIUINTREG __preg16(KSEG1 + 0x0B000084) /* Level 2 AIU interrupt register (R) */ -#define VR41XX_KIUINTREG __preg16(KSEG1 + 0x0B000086) /* Level 2 KIU interrupt register (R) */ -#define VR41XX_GIUINTLREG __preg16(KSEG1 + 0x0B000088) /* Level 2 GIU interrupt register Low (R) */ -#define VR41XX_DSIUINTREG __preg16(KSEG1 + 0x0B00008A) /* Level 2 DSIU interrupt register (R) */ -#define VR41XX_MSYSINT1REG __preg16(KSEG1 + 0x0B00008C) /* Level 1 mask system interrupt register 1 (R/W) */ -#define VR41XX_MPIUINTREG __preg16(KSEG1 + 0x0B00008E) /* Level 2 mask PIU interrupt register (R/W) */ -#define VR41XX_MAIUINTREG __preg16(KSEG1 + 0x0B000090) /* Level 2 mask AIU interrupt register (R/W) */ -#define VR41XX_MKIUINTREG __preg16(KSEG1 + 0x0B000092) /* Level 2 mask KIU interrupt register (R/W) */ -#define VR41XX_MGIUINTLREG __preg16(KSEG1 + 0x0B000094) /* Level 2 mask GIU interrupt register Low (R/W) */ -#define VR41XX_MDSIUINTREG __preg16(KSEG1 + 0x0B000096) /* Level 2 mask DSIU interrupt register (R/W) */ -#define VR41XX_NMIREG __preg16(KSEG1 + 0x0B000098) /* NMI register (R/W) */ -#define VR41XX_SOFTINTREG __preg16(KSEG1 + 0x0B00009A) /* Software interrupt register (R/W) */ -#define VR41XX_SYSINT2REG __preg16(KSEG1 + 0x0B000200) /* Level 1 System interrupt register 2 (R) */ -#define VR41XX_GIUINTHREG __preg16(KSEG1 + 0x0B000202) /* Level 2 GIU interrupt register High (R) */ -#define VR41XX_FIRINTREG __preg16(KSEG1 + 0x0B000204) /* Level 2 FIR interrupt register (R) */ -#define VR41XX_MSYSINT2REG __preg16(KSEG1 + 0x0B000206) /* Level 1 mask system interrupt register 2 (R/W) */ -#define VR41XX_MGIUINTHREG __preg16(KSEG1 + 0x0B000208) /* Level 2 mask GIU interrupt register High (R/W) */ -#define VR41XX_MFIRINTREG __preg16(KSEG1 + 0x0B00020A) /* Level 2 mask FIR interrupt register (R/W) */ - -/* Power Management Unit (PMU) */ -#define VR41XX_PMUINTREG __preg16(KSEG1 + 0x0B0000A0) /* PMU Status Register (R/W) */ -#define VR41XX_PMUINT_POWERSW 0x1 /* Power switch */ -#define VR41XX_PMUINT_BATT 0x2 /* Low batt during normal operation */ -#define VR41XX_PMUINT_DEADMAN 0x4 /* Deadman's switch */ -#define VR41XX_PMUINT_RESET 0x8 /* Reset switch */ -#define VR41XX_PMUINT_RTCRESET 0x10 /* RTC Reset */ -#define VR41XX_PMUINT_TIMEOUT 0x20 /* HAL Timer Reset */ -#define VR41XX_PMUINT_BATTLOW 0x100 /* Battery low */ -#define VR41XX_PMUINT_RTC 0x200 /* RTC Alarm */ -#define VR41XX_PMUINT_DCD 0x400 /* DCD# */ -#define VR41XX_PMUINT_GPIO0 0x1000 /* GPIO0 */ -#define VR41XX_PMUINT_GPIO1 0x2000 /* GPIO1 */ -#define VR41XX_PMUINT_GPIO2 0x4000 /* GPIO2 */ -#define VR41XX_PMUINT_GPIO3 0x8000 /* GPIO3 */ - -#define VR41XX_PMUCNTREG __preg16(KSEG1 + 0x0B0000A2) /* PMU Control Register (R/W) */ -#define VR41XX_PMUWAITREG __preg16(KSEG1 + 0x0B0000A8) /* PMU Wait Counter Register (R/W) */ -#define VR41XX_PMUINT2REG __preg16(KSEG1 + 0x0B0000A4) /* PMU Interrupt/Status 2 Register (R/W) */ -#define VR41XX_PMUCNT2REG __preg16(KSEG1 + 0x0B0000A6) /* PMU Control 2 Resister (R/W) */ - -/* Real Time Clock Unit (RTC) */ -#define VR41XX_ETIMELREG __preg16(KSEG1 + 0x0B0000C0) /* Elapsed Time L Register (R/W) */ -#define VR41XX_ETIMEMREG __preg16(KSEG1 + 0x0B0000C2) /* Elapsed Time M Register (R/W) */ -#define VR41XX_ETIMEHREG __preg16(KSEG1 + 0x0B0000C4) /* Elapsed Time H Register (R/W) */ -#define VR41XX_ECMPLREG __preg16(KSEG1 + 0x0B0000C8) /* Elapsed Compare L Register (R/W) */ -#define VR41XX_ECMPMREG __preg16(KSEG1 + 0x0B0000CA) /* Elapsed Compare M Register (R/W) */ -#define VR41XX_ECMPHREG __preg16(KSEG1 + 0x0B0000CC) /* Elapsed Compare H Register (R/W) */ -#define VR41XX_RTCL1LREG __preg16(KSEG1 + 0x0B0000D0) /* RTC Long 1 L Register (R/W) */ -#define VR41XX_RTCL1HREG __preg16(KSEG1 + 0x0B0000D2) /* RTC Long 1 H Register (R/W) */ -#define VR41XX_RTCL1CNTLREG __preg16(KSEG1 + 0x0B0000D4) /* RTC Long 1 Count L Register (R) */ -#define VR41XX_RTCL1CNTHREG __preg16(KSEG1 + 0x0B0000D6) /* RTC Long 1 Count H Register (R) */ -#define VR41XX_RTCL2LREG __preg16(KSEG1 + 0x0B0000D8) /* RTC Long 2 L Register (R/W) */ -#define VR41XX_RTCL2HREG __preg16(KSEG1 + 0x0B0000DA) /* RTC Long 2 H Register (R/W) */ -#define VR41XX_RTCL2CNTLREG __preg16(KSEG1 + 0x0B0000DC) /* RTC Long 2 Count L Register (R) */ -#define VR41XX_RTCL2CNTHREG __preg16(KSEG1 + 0x0B0000DE) /* RTC Long 2 Count H Register (R) */ -#define VR41XX_RTCINTREG __preg16(KSEG1 + 0x0B0001DE) /* RTC Interrupt Register (R/W) */ -#define VR41XX_TCLKLREG __preg16(KSEG1 + 0x0B0001C0) /* TCLK L Register (R/W) */ -#define VR41XX_TCLKHREG __preg16(KSEG1 + 0x0B0001C2) /* TCLK H Register (R/W) */ -#define VR41XX_TCLKCNTLREG __preg16(KSEG1 + 0x0B0001C4) /* TCLK Count L Register (R) */ -#define VR41XX_TCLKCNTHREG __preg16(KSEG1 + 0x0B0001C6) /* TCLK Count H Register (R) */ - -/* Deadman's Switch Unit (DSU) */ -#define VR41XX_DSUCNTREG __preg16(KSEG1 + 0x0B0000E0) /* DSU Control Register (R/W) */ -#define VR41XX_DSUSETREG __preg16(KSEG1 + 0x0B0000E2) /* DSU Dead Time Set Register (R/W) */ -#define VR41XX_DSUCLRREG __preg16(KSEG1 + 0x0B0000E4) /* DSU Clear Register (W) */ -#define VR41XX_DSUTIMREG __preg16(KSEG1 + 0x0B0000E6) /* DSU Elapsed Time Register (R/W) */ - -/* General Purpose I/O Unit (GIU) */ -#define VR41XX_GIUIOSELL __preg16(KSEG1 + 0x0B000100) /* GPIO Input/Output Select Register L (R/W) */ -#define VR41XX_GIUIOSELH __preg16(KSEG1 + 0x0B000102) /* GPIO Input/Output Select Register H (R/W) */ -#define VR41XX_GIUPIODL __preg16(KSEG1 + 0x0B000104) /* GPIO Port Input/Output Data Register L (R/W) */ -#define VR41XX_GIUPIODL_GPIO15 0x8000 -#define VR41XX_GIUPIODL_GPIO14 0x4000 -#define VR41XX_GIUPIODL_GPIO13 0x2000 -#define VR41XX_GIUPIODL_GPIO12 0x1000 -#define VR41XX_GIUPIODL_GPIO11 0x0800 -#define VR41XX_GIUPIODL_GPIO10 0x0400 -#define VR41XX_GIUPIODL_GPIO9 0x0200 -#define VR41XX_GIUPIODL_GPIO8 0x0100 -#define VR41XX_GIUPIODL_GPIO7 0x0080 -#define VR41XX_GIUPIODL_GPIO6 0x0040 -#define VR41XX_GIUPIODL_GPIO5 0x0020 -#define VR41XX_GIUPIODL_GPIO4 0x0010 -#define VR41XX_GIUPIODL_GPIO3 0x0008 -#define VR41XX_GIUPIODL_GPIO2 0x0004 -#define VR41XX_GIUPIODL_GPIO1 0x0002 -#define VR41XX_GIUPIODL_GPIO0 0x0001 -#define VR41XX_GIUPIODH __preg16(KSEG1 + 0x0B000106) /* GPIO Port Input/Output Data Register H (R/W) */ -#define VR41XX_GIUPIODH_GPIO31 0x8000 -#define VR41XX_GIUPIODH_GPIO30 0x4000 -#define VR41XX_GIUPIODH_GPIO29 0x2000 -#define VR41XX_GIUPIODH_GPIO28 0x1000 -#define VR41XX_GIUPIODH_GPIO27 0x0800 -#define VR41XX_GIUPIODH_GPIO26 0x0400 -#define VR41XX_GIUPIODH_GPIO25 0x0200 -#define VR41XX_GIUPIODH_GPIO24 0x0100 -#define VR41XX_GIUPIODH_GPIO23 0x0080 -#define VR41XX_GIUPIODH_GPIO22 0x0040 -#define VR41XX_GIUPIODH_GPIO21 0x0020 -#define VR41XX_GIUPIODH_GPIO20 0x0010 -#define VR41XX_GIUPIODH_GPIO19 0x0008 -#define VR41XX_GIUPIODH_GPIO18 0x0004 -#define VR41XX_GIUPIODH_GPIO17 0x0002 -#define VR41XX_GIUPIODH_GPIO16 0x0001 -#define VR41XX_GIUINTSTATL __preg16(KSEG1 + 0x0B000108) /* GPIO Interrupt Status Register L (R/W) */ -#define VR41XX_GIUINTSTATH __preg16(KSEG1 + 0x0B00010A) /* GPIO Interrupt Status Register H (R/W) */ -#define VR41XX_GIUINTENL __preg16(KSEG1 + 0x0B00010C) /* GPIO Interrupt Enable Register L (R/W) */ -#define VR41XX_GIUINTENH __preg16(KSEG1 + 0x0B00010E) /* GPIO Interrupt Enable Register H (R/W) */ -#define VR41XX_GIUINTTYPL __preg16(KSEG1 + 0x0B000110) /* GPIO Interrupt Type (Edge or Level) Select Register (R/W) */ -#define VR41XX_GIUINTTYPH __preg16(KSEG1 + 0x0B000112) /* GPIO Interrupt Type (Edge or Level) Select Register (R/W) */ -#define VR41XX_GIUINTALSELL __preg16(KSEG1 + 0x0B000114) /* GPIO Interrupt Active Level Select Register L (R/W) */ -#define VR41XX_GIUINTALSELH __preg16(KSEG1 + 0x0B000116) /* GPIO Interrupt Active Level Select Register H (R/W) */ -#define VR41XX_GIUINTHTSELL __preg16(KSEG1 + 0x0B000118) /* GPIO Interrupt Hold/Through Select Register L (R/W) */ -#define VR41XX_GIUINTHTSELH __preg16(KSEG1 + 0x0B00011A) /* GPIO Interrupt Hold/Through Select Register H (R/W) */ - -#define VR41XX_GIUPODATL __preg16(KSEG1 + 0x0B00011C) /* GPIO Port Output Data Register L (R/W) */ -#define VR41XX_GIUPODATL_GPIO47 0x8000 -#define VR41XX_GIUPODATL_GPIO46 0x4000 -#define VR41XX_GIUPODATL_GPIO45 0x2000 -#define VR41XX_GIUPODATL_GPIO44 0x1000 -#define VR41XX_GIUPODATL_GPIO43 0x0800 -#define VR41XX_GIUPODATL_GPIO42 0x0400 -#define VR41XX_GIUPODATL_GPIO41 0x0200 -#define VR41XX_GIUPODATL_GPIO40 0x0100 -#define VR41XX_GIUPODATL_GPIO39 0x0080 -#define VR41XX_GIUPODATL_GPIO38 0x0040 -#define VR41XX_GIUPODATL_GPIO37 0x0020 -#define VR41XX_GIUPODATL_GPIO36 0x0010 -#define VR41XX_GIUPODATL_GPIO35 0x0008 -#define VR41XX_GIUPODATL_GPIO34 0x0004 -#define VR41XX_GIUPODATL_GPIO33 0x0002 -#define VR41XX_GIUPODATL_GPIO32 0x0001 -#define VR41XX_GIUPODATL_PODAT15 0x8000 -#define VR41XX_GIUPODATL_PODAT14 0x4000 -#define VR41XX_GIUPODATL_PODAT13 0x2000 -#define VR41XX_GIUPODATL_PODAT12 0x1000 -#define VR41XX_GIUPODATL_PODAT11 0x0800 -#define VR41XX_GIUPODATL_PODAT10 0x0400 -#define VR41XX_GIUPODATL_PODAT9 0x0200 -#define VR41XX_GIUPODATL_PODAT8 0x0100 -#define VR41XX_GIUPODATL_PODAT7 0x0080 -#define VR41XX_GIUPODATL_PODAT6 0x0040 -#define VR41XX_GIUPODATL_PODAT5 0x0020 -#define VR41XX_GIUPODATL_PODAT4 0x0010 -#define VR41XX_GIUPODATL_PODAT3 0x0008 -#define VR41XX_GIUPODATL_PODAT2 0x0004 -#define VR41XX_GIUPODATL_PODAT1 0x0002 -#define VR41XX_GIUPODATL_PODAT0 0x0001 -#define VR41XX_GIUPODATH __preg16(KSEG1 + 0x0B00011E) /* GPIO Port Output Data Register H (R/W) */ -#define VR41XX_GIUPODATH_GPIO51 0x0008 -#define VR41XX_GIUPODATH_GPIO50 0x0004 -#define VR41XX_GIUPODATH_GPIO49 0x0002 -#define VR41XX_GIUPODATH_GPIO48 0x0001 -#define VR41XX_GIUPODATH_PODAT3 0x0008 -#define VR41XX_GIUPODATH_PODAT2 0x0004 -#define VR41XX_GIUPODATH_PODAT1 0x0002 -#define VR41XX_GIUPODATH_PODAT0 0x0001 -#define VR41XX_GIUUSEUPDN __preg16(KSEG1 + 0x0B0002E0) /* GPIO Pullup/Down User Register (R/W) */ -#define VR41XX_GIUTERMUPDN __preg16(KSEG1 + 0x0B0002E2) /* GPIO Terminal Pullup/Down Register (R/W) */ -#define VR41XX_SECIRQMASKL VR41XX_GIUINTENL -#define VR41XX_SECIRQMASKH VR41XX_GIUINTENH - -/* Touch Panel Interface Unit (PIU) */ -#define VR41XX_PIUCNTREG __preg16(KSEG1 + 0x0B000122) /* PIU Control register (R/W) */ -#define VR41XX_PIUCNTREG_PIUSEQEN 0x0004 -#define VR41XX_PIUCNTREG_PIUPWR 0x0002 -#define VR41XX_PIUCNTREG_PADRST 0x0001 - -#define VR41XX_PIUINTREG __preg16(KSEG1 + 0x0B000124) /* PIU Interrupt cause register (R/W) */ -#define VR41XX_PIUINTREG_OVP 0x8000 -#define VR41XX_PIUINTREG_PADCMD 0x0040 -#define VR41XX_PIUINTREG_PADADP 0x0020 -#define VR41XX_PIUINTREG_PADPAGE1 0x0010 -#define VR41XX_PIUINTREG_PADPAGE0 0x0008 -#define VR41XX_PIUINTREG_PADDLOST 0x0004 -#define VR41XX_PIUINTREG_PENCHG 0x0001 - -#define VR41XX_PIUSIVLREG __preg16(KSEG1 + 0x0B000126) /* PIU Data sampling interval register (R/W) */ -#define VR41XX_PIUSTBLREG __preg16(KSEG1 + 0x0B000128) /* PIU A/D converter start delay register (R/W) */ -#define VR41XX_PIUCMDREG __preg16(KSEG1 + 0x0B00012A) /* PIU A/D command register (R/W) */ -#define VR41XX_PIUASCNREG __preg16(KSEG1 + 0x0B000130) /* PIU A/D port scan register (R/W) */ -#define VR41XX_PIUAMSKREG __preg16(KSEG1 + 0x0B000132) /* PIU A/D scan mask register (R/W) */ -#define VR41XX_PIUCIVLREG __preg16(KSEG1 + 0x0B00013E) /* PIU Check interval register (R) */ -#define VR41XX_PIUPB00REG __preg16(KSEG1 + 0x0B0002A0) /* PIU Page 0 Buffer 0 register (R/W) */ -#define VR41XX_PIUPB01REG __preg16(KSEG1 + 0x0B0002A2) /* PIU Page 0 Buffer 1 register (R/W) */ -#define VR41XX_PIUPB02REG __preg16(KSEG1 + 0x0B0002A4) /* PIU Page 0 Buffer 2 register (R/W) */ -#define VR41XX_PIUPB03REG __preg16(KSEG1 + 0x0B0002A6) /* PIU Page 0 Buffer 3 register (R/W) */ -#define VR41XX_PIUPB10REG __preg16(KSEG1 + 0x0B0002A8) /* PIU Page 1 Buffer 0 register (R/W) */ -#define VR41XX_PIUPB11REG __preg16(KSEG1 + 0x0B0002AA) /* PIU Page 1 Buffer 1 register (R/W) */ -#define VR41XX_PIUPB12REG __preg16(KSEG1 + 0x0B0002AC) /* PIU Page 1 Buffer 2 register (R/W) */ -#define VR41XX_PIUPB13REG __preg16(KSEG1 + 0x0B0002AE) /* PIU Page 1 Buffer 3 register (R/W) */ -#define VR41XX_PIUAB0REG __preg16(KSEG1 + 0x0B0002B0) /* PIU A/D scan Buffer 0 register (R/W) */ -#define VR41XX_PIUAB1REG __preg16(KSEG1 + 0x0B0002B2) /* PIU A/D scan Buffer 1 register (R/W) */ -#define VR41XX_PIUAB2REG __preg16(KSEG1 + 0x0B0002B4) /* PIU A/D scan Buffer 2 register (R/W) */ -#define VR41XX_PIUAB3REG __preg16(KSEG1 + 0x0B0002B6) /* PIU A/D scan Buffer 3 register (R/W) */ -#define VR41XX_PIUPB04REG __preg16(KSEG1 + 0x0B0002BC) /* PIU Page 0 Buffer 4 register (R/W) */ -#define VR41XX_PIUPB14REG __preg16(KSEG1 + 0x0B0002BE) /* PIU Page 1 Buffer 4 register (R/W) */ - -/* Audio Interface Unit (AIU) */ -#define VR41XX_SODATREG __preg16(KSEG1 + 0x0B000166) /* Speaker Output Data Register (R/W) */ -#define VR41XX_SCNTREG __preg16(KSEG1 + 0x0B000168) /* Speaker Output Control Register (R/W) */ -#define VR41XX_MIDATREG __preg16(KSEG1 + 0x0B000170) /* Mike Input Data Register (R/W) */ -#define VR41XX_MCNTREG __preg16(KSEG1 + 0x0B000172) /* Mike Input Control Register (R/W) */ -#define VR41XX_DVALIDREG __preg16(KSEG1 + 0x0B000178) /* Data Valid Register (R/W) */ -#define VR41XX_SEQREG __preg16(KSEG1 + 0x0B00017A) /* Sequential Register (R/W) */ -#define VR41XX_INTREG __preg16(KSEG1 + 0x0B00017C) /* Interrupt Register (R/W) */ -#define VR41XX_MDMADATREG __preg16(KSEG1 + 0x0B000160) /* Mike DMA Data Register (R/W) */ -#define VR41XX_SDMADATREG __preg16(KSEG1 + 0x0B000162) /* Speaker DMA Data Register (R/W) */ -#define VR41XX_SCNVRREG __preg16(KSEG1 + 0x0B00016A) /* Speaker Conversion Rate Register (R/W) */ -#define VR41XX_MCNVRREG __preg16(KSEG1 + 0x0B000174) /* Mike Conversion Rate Register (R/W) */ - -/* Keyboard Interface Unit (KIU) */ -#define VR41XX_KIUDAT0 __preg16(KSEG1 + 0x0B000180) /* KIU Data0 Register (R/W) */ -#define VR41XX_KIUDAT1 __preg16(KSEG1 + 0x0B000182) /* KIU Data1 Register (R/W) */ -#define VR41XX_KIUDAT2 __preg16(KSEG1 + 0x0B000184) /* KIU Data2 Register (R/W) */ -#define VR41XX_KIUDAT3 __preg16(KSEG1 + 0x0B000186) /* KIU Data3 Register (R/W) */ -#define VR41XX_KIUDAT4 __preg16(KSEG1 + 0x0B000188) /* KIU Data4 Register (R/W) */ -#define VR41XX_KIUDAT5 __preg16(KSEG1 + 0x0B00018A) /* KIU Data5 Register (R/W) */ -#define VR41XX_KIUSCANREP __preg16(KSEG1 + 0x0B000190) /* KIU Scan/Repeat Register (R/W) */ -#define VR41XX_KIUSCANREP_KEYEN 0x8000 -#define VR41XX_KIUSCANREP_SCANSTP 0x0008 -#define VR41XX_KIUSCANREP_SCANSTART 0x0004 -#define VR41XX_KIUSCANREP_ATSTP 0x0002 -#define VR41XX_KIUSCANREP_ATSCAN 0x0001 -#define VR41XX_KIUSCANS __preg16(KSEG1 + 0x0B000192) /* KIU Scan Status Register (R) */ -#define VR41XX_KIUWKS __preg16(KSEG1 + 0x0B000194) /* KIU Wait Keyscan Stable Register (R/W) */ -#define VR41XX_KIUWKI __preg16(KSEG1 + 0x0B000196) /* KIU Wait Keyscan Interval Register (R/W) */ -#define VR41XX_KIUINT __preg16(KSEG1 + 0x0B000198) /* KIU Interrupt Register (R/W) */ -#define VR41XX_KIUINT_KDATLOST 0x0004 -#define VR41XX_KIUINT_KDATRDY 0x0002 -#define VR41XX_KIUINT_SCANINT 0x0001 -#define VR41XX_KIURST __preg16(KSEG1 + 0x0B00019A) /* KIU Reset Register (W) */ -#define VR41XX_KIUGPEN __preg16(KSEG1 + 0x0B00019C) /* KIU General Purpose Output Enable (R/W) */ -#define VR41XX_SCANLINE __preg16(KSEG1 + 0x0B00019E) /* KIU Scan Line Register (R/W) */ - -/* Debug Serial Interface Unit (DSIU) */ -#define VR41XX_PORTREG __preg16(KSEG1 + 0x0B0001A0) /* Port Change Register (R/W) */ -#define VR41XX_MODEMREG __preg16(KSEG1 + 0x0B0001A2) /* Modem Control Register (R) */ -#define VR41XX_ASIM00REG __preg16(KSEG1 + 0x0B0001A4) /* Asynchronous Mode 0 Register (R/W) */ -#define VR41XX_ASIM01REG __preg16(KSEG1 + 0x0B0001A6) /* Asynchronous Mode 1 Register (R/W) */ -#define VR41XX_RXB0RREG __preg16(KSEG1 + 0x0B0001A8) /* Receive Buffer Register (Extended) (R) */ -#define VR41XX_RXB0LREG __preg16(KSEG1 + 0x0B0001AA) /* Receive Buffer Register (R) */ -#define VR41XX_TXS0RREG __preg16(KSEG1 + 0x0B0001AC) /* Transmit Data Register (Extended) (R/W) */ -#define VR41XX_TXS0LREG __preg16(KSEG1 + 0x0B0001AE) /* Transmit Data Register (R/W) */ -#define VR41XX_ASIS0REG __preg16(KSEG1 + 0x0B0001B0) /* Status Register (R) */ -#define VR41XX_INTR0REG __preg16(KSEG1 + 0x0B0001B2) /* Debug SIU Interrupt Register (R/W) */ -#define VR41XX_BPRM0REG __preg16(KSEG1 + 0x0B0001B6) /* Baud rate Generator Prescaler Mode Register (R/W) */ -#define VR41XX_DSIURESETREG __preg16(KSEG1 + 0x0B0001B8) /* Debug SIU Reset Register (R/W) */ - -/* LED Control Unit (LED) */ -#define VR41XX_LEDHTSREG __preg16(KSEG1 + 0x0B000240) /* LED H Time Set register (R/W) */ -#define VR41XX_LEDLTSREG __preg16(KSEG1 + 0x0B000242) /* LED L Time Set register (R/W) */ -#define VR41XX_LEDCNTREG __preg16(KSEG1 + 0x0B000248) /* LED Control register (R/W) */ -#define VR41XX_LEDASTCREG __preg16(KSEG1 + 0x0B00024A) /* LED Auto Stop Time Count register (R/W) */ -#define VR41XX_LEDINTREG __preg16(KSEG1 + 0x0B00024C) /* LED Interrupt register (R/W) */ - -/* Serial Interface Unit (SIU / SIU1 and SIU2) */ -#define VR41XX_SIURB __preg8(KSEG1 + 0x0C000000) /* Receiver Buffer Register (Read) DLAB = 0 (R) */ -#define VR41XX_SIUTH __preg8(KSEG1 + 0x0C000000) /* Transmitter Holding Register (Write) DLAB = 0 (W) */ -#define VR41XX_SIUDLL __preg8(KSEG1 + 0x0C000000) /* Divisor Latch (Least Significant Byte) DLAB = 1 (R/W) */ -#define VR41XX_SIUIE __preg8(KSEG1 + 0x0C000001) /* Interrupt Enable DLAB = 0 (R/W) */ -#define VR41XX_SIUDLM __preg8(KSEG1 + 0x0C000001) /* Divisor Latch (Most Significant Byte) DLAB = 1 (R/W) */ -#define VR41XX_SIUIID __preg8(KSEG1 + 0x0C000002) /* Interrupt Identification Register (Read) (R) */ -#define VR41XX_SIUFC __preg8(KSEG1 + 0x0C000002) /* FIFO Control Register (Write) (W) */ -#define VR41XX_SIULC __preg8(KSEG1 + 0x0C000003) /* Line Control Register (R/W) */ -#define VR41XX_SIUMC __preg8(KSEG1 + 0x0C000004) /* MODEM Control Register (R/W) */ -#define VR41XX_SIULS __preg8(KSEG1 + 0x0C000005) /* Line Status Register (R/W) */ -#define VR41XX_SIUMS __preg8(KSEG1 + 0x0C000006) /* MODEM Status Register (R/W) */ -#define VR41XX_SIUSC __preg8(KSEG1 + 0x0C000007) /* Scratch Register (R/W) */ -#define VR41XX_SIUIRSEL __preg8(KSEG1 + 0x0C000008) /* SIU/FIR IrDA Selector (R/W) */ -#define VR41XX_SIUIRSEL_SIRSEL 0x1 -#define VR41XX_SIUIRSEL_IRUSESEL 0x2 -#define VR41XX_SIURESET __preg8(KSEG1 + 0x0C000009) /* SIU Reset Register (R/W) */ -#define VR41XX_SIUCSEL __preg8(KSEG1 + 0x0C00000A) /* SIU Echo-Back Control Register (R/W) */ - -/* Modem Interface Unit (HSP) */ -/* Not sure if some of these are right type, some may be 16 bit regs: */ -#define VR41XX_HSPINIT __preg8(KSEG1 + 0x0C000020) /* HSP Initialize Register (R/W) */ -#define VR41XX_HSPDATAL __preg8(KSEG1 + 0x0C000022) /* HSP Data Register L (R/W) */ -#define VR41XX_HSPDATAH __preg8(KSEG1 + 0x0C000023) /* HSP Data Register H (R/W) */ -#define VR41XX_HSPINDEX __preg8(KSEG1 + 0x0C000024) /* HSP Index Register (W) */ -#define VR41XX_HSPID __preg8(KSEG1 + 0x0C000028) /* HSP ID Register (R) */ -#define VR41XX_HSPPCS __preg8(KSEG1 + 0x0C000029) /* HSP I/O Address Program Confirmation Register (R) */ -#define VR41XX_HSPPCTEL __preg8(KSEG1 + 0x0C000029) /* HSP Signature Checking Port (W) */ - -/* Fast IrDA Interface Unit (FIR) */ -#define VR41XX_FRSTR __preg16(KSEG1 + 0x0C000040) /* FIR Reset register (R/W) */ -#define VR41XX_DPINTR __preg16(KSEG1 + 0x0C000042) /* DMA Page Interrupt register (R/W) */ -#define VR41XX_DPCNTR __preg16(KSEG1 + 0x0C000044) /* DMA Control register (R/W) */ -#define VR41XX_TDR __preg16(KSEG1 + 0x0C000050) /* Transmit Data register (W) */ -#define VR41XX_RDR __preg16(KSEG1 + 0x0C000052) /* Receive Data register (R) */ -#define VR41XX_IMR __preg16(KSEG1 + 0x0C000054) /* Interrupt Mask register (R/W) */ -#define VR41XX_FSR __preg16(KSEG1 + 0x0C000056) /* FIFO Setup register (R/W) */ -#define VR41XX_IRSR1 __preg16(KSEG1 + 0x0C000058) /* Infrared Setup register 1 (R/W) */ -#define VR41XX_CRCSR __preg16(KSEG1 + 0x0C00005C) /* CRC Setup register (R/W) */ -#define VR41XX_FIRCR __preg16(KSEG1 + 0x0C00005E) /* FIR Control register (R/W) */ -#define VR41XX_MIRCR __preg16(KSEG1 + 0x0C000060) /* MIR Control register (R/W) */ -#define VR41XX_DMACR __preg16(KSEG1 + 0x0C000062) /* DMA Control register (R/W) */ -#define VR41XX_DMAER __preg16(KSEG1 + 0x0C000064) /* DMA Enable register (R/W) */ -#define VR41XX_TXIR __preg16(KSEG1 + 0x0C000066) /* Transmit Indication register (R) */ -#define VR41XX_RXIR __preg16(KSEG1 + 0x0C000068) /* Receive Indication register (R) */ -#define VR41XX_IFR __preg16(KSEG1 + 0x0C00006A) /* Interrupt Flag register (R) */ -#define VR41XX_RXSTS __preg16(KSEG1 + 0x0C00006C) /* Receive Status (R) */ -#define VR41XX_TXFL __preg16(KSEG1 + 0x0C00006E) /* Transmit Frame Length (R/W) */ -#define VR41XX_MRXF __preg16(KSEG1 + 0x0C000070) /* Maximum Receive Frame Length (R/W) */ -#define VR41XX_RXFL __preg16(KSEG1 + 0x0C000074) /* Receive Frame Length (R) */ - -/* physical address spaces */ -#define VR41XX_LCD 0x0a000000 -#define VR41XX_INTERNAL_IO_2 0x0b000000 -#define VR41XX_INTERNAL_IO_1 0x0c000000 -#define VR41XX_ISA_MEM 0x10000000 -#define VR41XX_ISA_IO 0x14000000 -#define VR41XX_ROM 0x18000000 - -/* This is the base address for IO port decoding to which the 16 bit - * IO port address is added. Defining it to 0 will usually cause a - * kernel oops any time port IO is attempted, which can be handy for - * turning up parts of the kernel that make incorrect architecture - * assumptions (by assuming that everything acts like a PC), but we - * need it correctly defined to use the PCMCIA/CF controller: - */ -#define VR41XX_PORT_BASE (KSEG1 + VR41XX_ISA_IO) -#define VR41XX_ISAMEM_BASE (KSEG1 + VR41XX_ISA_MEM) #endif /* __ASM_VR4121_VR4121_H */ |
From: Jun S. <ju...@us...> - 2001-11-27 22:58:27
|
Update of /cvsroot/linux-mips/linux/drivers/net/tulip In directory usw-pr-cvs1:/tmp/cvs-serv5891/drivers/net/tulip Modified Files: tulip_core.c Log Message: Sync with 2.4.16 Linus tree for DDB boards. Lost patience for waiting for Ralf's merge. Index: tulip_core.c =================================================================== RCS file: /cvsroot/linux-mips/linux/drivers/net/tulip/tulip_core.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- tulip_core.c 2001/11/06 20:23:55 1.11 +++ tulip_core.c 2001/11/27 22:58:23 1.12 @@ -1621,6 +1621,22 @@ sa_offset = 2; /* Grrr, damn Matrox boards. */ multiport_cnt = 4; } +#ifdef CONFIG_DDB5476 + if ((pdev->bus->number == 0) && (PCI_SLOT(pdev->devfn) == 6)) { + /* DDB5476 MAC address in first EEPROM locations. */ + sa_offset = 0; + /* No media table either */ + tp->flags &= ~HAS_MEDIA_TABLE; + } +#endif +#ifdef CONFIG_DDB5477 + if ((pdev->bus->number == 0) && (PCI_SLOT(pdev->devfn) == 4)) { + /* DDB5477 MAC address in first EEPROM locations. */ + sa_offset = 0; + /* No media table either */ + tp->flags &= ~HAS_MEDIA_TABLE; + } +#endif for (i = 0; i < 6; i ++) { dev->dev_addr[i] = ee_data[i + sa_offset]; sum += ee_data[i + sa_offset]; |
From: Jim P. <jim...@us...> - 2001-11-27 22:52:21
|
Update of /cvsroot/linux-mips/linux/arch/mips/vr4111/mobilepro In directory usw-pr-cvs1:/tmp/cvs-serv4596 Added Files: Makefile prom.c setup.c Log Message: NEC MobilePro 780 PDA patch from Johannes Stezenbach --- NEW FILE: Makefile --- # # Makefile for the NEC MobilePro 780 PDA # # Note! Dependencies are done automagically by 'make dep', which also # removes any old dependencies. DON'T put your own dependencies here # unless it's something special (ie not a .c file). # .S.s: $(CPP) $(AFLAGS) $< -o $@ .S.o: $(CC) $(AFLAGS) -c $< -o $@ O_TARGET := mobilepro.o all: mobilepro.o obj-y := setup.o prom.o include $(TOPDIR)/Rules.make --- NEW FILE: prom.c --- /* * arch/mips/vr4111/mobilepro/prom.c * * Copyright (C) 1999 Bradley D. LaRonde and Michael Klar * * Copyright (C) 2001 Jim Paris <ji...@jt...> * * Adapted for NEC MobilePro PDA by Johannes Stezenbach <js...@co...>. * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. * */ #include <linux/init.h> #include <linux/config.h> #include <linux/kernel.h> #include <linux/string.h> #include <linux/mm.h> #include <linux/bootmem.h> #include <asm/bootinfo.h> #include <asm/vr41xx.h> char arcs_cmdline[COMMAND_LINE_SIZE]; extern unsigned long probe_ram_size(void); void __init prom_init(int argc, char **argv, char **envp) { unsigned long mem_detected; int i; /* * Clear ERL and EXL in case the bootloader got us here * through an exception */ write_32bit_cp0_register(CP0_STATUS, 0); /* * Collect args and prepare cmd_line */ strcpy(arcs_cmdline, ""); for (i = 1; i < argc; i++) { strcat(arcs_cmdline, argv[i]); if (i < (argc - 1)) strcat(arcs_cmdline, " "); } mips_machgroup = MACH_GROUP_NEC_VR41XX; #ifdef CONFIG_NEC_MOBILEPRO_780 /* add #ifdef for MOBILEPRO_770 later... */ mips_machtype = MACH_NEC_MOBILEPRO_780; #endif mem_detected = probe_ram_size(); printk("Detected %dMB of memory.\n",(int)mem_detected >> 20); add_memory_region(0, mem_detected, BOOT_MEM_RAM); } void __init prom_free_prom_memory(void) { } --- NEW FILE: setup.c --- /* * linux/arch/mips/vr4111/setup.c * * VR41xx setup routines * * Copyright (C) 1999 Bradley D. LaRonde * Copyright (C) 1999, 2000 Michael Klar * * Copyright 2001 MontaVista Software Inc. * Author: js...@mv... or js...@ju... * * Copyright 2001 Jim Paris <ji...@jt...> * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. * */ #include <linux/config.h> #include <linux/console.h> #include <linux/init.h> #include <linux/delay.h> #include <asm/time.h> #include <asm/reboot.h> #include <asm/vr41xx.h> #include <asm/io.h> extern void vr41xx_restart(char *c); extern void vr4111_hibernate(void); extern void vr4111_wait(void); extern void vr4111_time_init(void); extern void vr4111_timer_setup(struct irqaction *irq); extern void vr4111_init_serial(void); void __init nec_mobilepro_setup(void) { set_io_port_base(VR41XX_PORT_BASE); isa_slot_offset = VR41XX_ISAMEM_BASE; board_time_init = vr4111_time_init; board_timer_setup = vr4111_timer_setup; _machine_restart = vr41xx_restart; _machine_halt = vr4111_hibernate; _machine_power_off = vr4111_hibernate; cpu_wait = vr4111_wait; #ifdef CONFIG_FB conswitchp = &dummy_con; #endif vr4111_init_serial(); } |
From: Jim P. <jim...@us...> - 2001-11-27 22:51:37
|
Update of /cvsroot/linux-mips/linux/arch/mips/vr4111/mobilepro In directory usw-pr-cvs1:/tmp/cvs-serv4478/mobilepro Log Message: Directory /cvsroot/linux-mips/linux/arch/mips/vr4111/mobilepro added to the repository |
From: Jim P. <jim...@us...> - 2001-11-27 22:51:22
|
Update of /cvsroot/linux-mips/linux/include/asm-mips/vr4121 In directory usw-pr-cvs1:/tmp/cvs-serv4226/include/asm-mips/vr4121 Modified Files: vr4121.h Log Message: NEC MobilePro 780 PDA patch from Johannes Stezenbach Index: vr4121.h =================================================================== RCS file: /cvsroot/linux-mips/linux/include/asm-mips/vr4121/vr4121.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- vr4121.h 2001/10/29 08:20:55 1.1 +++ vr4121.h 2001/11/27 22:51:19 1.2 @@ -10,6 +10,15 @@ #include <asm/addrspace.h> +#define VR41XX_CPU_IRQ_BASE 0 +#define VR41XX_NUM_CPU_IRQ 8 + +#define VR41XX_SYS_IRQ_BASE 8 +#define VR41XX_NUM_SYS_IRQ 32 + +#define VR41XX_GPIO_IRQ_BASE 40 +#define VR41XX_NUM_GPIO_IRQ 32 + /* CPU interrupts */ #define VR41XX_IRQ_SW1 0 /* IP0 - Software interrupt */ #define VR41XX_IRQ_SW2 1 /* IP1 - Software interrupt */ @@ -91,6 +100,11 @@ /* Alternative to above GPIO IRQ defines */ #define VR41XX_IRQ_GPIO(pin) ((VR41XX_IRQ_GPIO0) + (pin)) +#define VR41XX_SYSINT1_IRQ_BASE 8 +#define VR41XX_SYSINT2_IRQ_BASE 24 +#define VR41XX_GIUINTL_IRQ_BASE 40 +#define VR41XX_GIUINTH_IRQ_BASE 56 + #define VR41XX_IRQ_MAX 71 #ifndef _LANGUAGE_ASSEMBLY @@ -147,8 +161,20 @@ /* Clock Mask Unit (CMU) */ #define VR41XX_CMUCLKMSK __preg16(KSEG1 + 0x0B000060) /* CMU Clock Mask Register (R/W) */ -#define VR41XX_CMUCLKMSK_MSKPIUPCLK 0x0001 -#define VR41XX_CMUCLKMSK_MSKSIU 0x0102 +#define VR41XX_CMUCLKMSK_MSKPIU 0x0001 +#define VR41XX_CMUCLKMSK_MSKSIU 0x0002 +#define VR41XX_CMUCLKMSK_MSKAIU 0x0004 +#define VR41XX_CMUCLKMSK_MSKKIU 0x0008 +#define VR41XX_CMUCLKMSK_MSKFIR 0x0010 +#define VR41XX_CMUCLKMSK_MSKDSIU 0x0020 +#define VR41XX_CMUCLKMSK_MSKSSIU 0x0100 +#define VR41XX_CMUCLKMSK_MSKSHSP 0x0200 +#define VR41XX_CMUCLKMSK_MSKFFIR 0x0400 + +#ifndef _LANGUAGE_ASSEMBLY +extern void vr41xx_clock_supply(unsigned short mask); +extern void vr41xx_clock_mask(unsigned short mask); +#endif /* Interrupt Control Unit (ICU) */ #define VR41XX_SYSINT1REG __preg16(KSEG1 + 0x0B000080) /* Level 1 System interrupt register 1 (R) */ @@ -423,6 +449,8 @@ #define VR41XX_SIUMS __preg8(KSEG1 + 0x0C000006) /* MODEM Status Register (R/W) */ #define VR41XX_SIUSC __preg8(KSEG1 + 0x0C000007) /* Scratch Register (R/W) */ #define VR41XX_SIUIRSEL __preg8(KSEG1 + 0x0C000008) /* SIU/FIR IrDA Selector (R/W) */ +#define VR41XX_SIUIRSEL_SIRSEL 0x1 +#define VR41XX_SIUIRSEL_IRUSESEL 0x2 #define VR41XX_SIURESET __preg8(KSEG1 + 0x0C000009) /* SIU Reset Register (R/W) */ #define VR41XX_SIUCSEL __preg8(KSEG1 + 0x0C00000A) /* SIU Echo-Back Control Register (R/W) */ |
From: Jim P. <jim...@us...> - 2001-11-27 22:51:22
|
Update of /cvsroot/linux-mips/linux/include/asm-mips/vr4111 In directory usw-pr-cvs1:/tmp/cvs-serv4226/include/asm-mips/vr4111 Modified Files: vr4111.h Log Message: NEC MobilePro 780 PDA patch from Johannes Stezenbach Index: vr4111.h =================================================================== RCS file: /cvsroot/linux-mips/linux/include/asm-mips/vr4111/vr4111.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- vr4111.h 2001/10/29 08:20:55 1.2 +++ vr4111.h 2001/11/27 22:51:19 1.3 @@ -168,8 +168,8 @@ #define VR41XX_CMUCLKMSK_MSKFFIR 0x0400 #ifndef _LANGUAGE_ASSEMBLY -extern void vr4111_clock_supply(unsigned short mask); -extern void vr4111_clock_mask(unsigned short mask); +extern void vr41xx_clock_supply(unsigned short mask); +extern void vr41xx_clock_mask(unsigned short mask); #endif /* Interrupt Control Unit (ICU) */ |
From: Jim P. <jim...@us...> - 2001-11-27 22:51:22
|
Update of /cvsroot/linux-mips/linux/include/asm-mips In directory usw-pr-cvs1:/tmp/cvs-serv4226/include/asm-mips Modified Files: bootinfo.h Log Message: NEC MobilePro 780 PDA patch from Johannes Stezenbach Index: bootinfo.h =================================================================== RCS file: /cvsroot/linux-mips/linux/include/asm-mips/bootinfo.h,v retrieving revision 1.14 retrieving revision 1.15 diff -u -d -r1.14 -r1.15 --- bootinfo.h 2001/11/26 18:06:55 1.14 +++ bootinfo.h 2001/11/27 22:51:19 1.15 @@ -206,8 +206,10 @@ #define MACH_NEC_EAGLE 1 /* NEC Eagle board */ #define MACH_NEC_KORVA 2 /* NEC korva board */ #define MACH_VADEM_CLIO_1000 3 /* Vadem Clio 1000 */ +#define MACH_NEC_MOBILEPRO_780 4 /* NEC MobilePro 780 PDA */ -#define GROUP_NEC_VR41XX_NAMES { "Osprey", "Eagle", "Korva", "Clio 1000" } +#define GROUP_NEC_VR41XX_NAMES { "Osprey", "Eagle", "Korva", "Clio 1000", \ + "MobilePro 780" } /* * Valid machtype for group EE |
From: Jim P. <jim...@us...> - 2001-11-27 22:51:22
|
Update of /cvsroot/linux-mips/linux/arch/mips In directory usw-pr-cvs1:/tmp/cvs-serv4226/arch/mips Modified Files: Makefile config.in Log Message: NEC MobilePro 780 PDA patch from Johannes Stezenbach Index: Makefile =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/Makefile,v retrieving revision 1.32 retrieving revision 1.33 diff -u -d -r1.32 -r1.33 --- Makefile 2001/11/27 17:59:52 1.32 +++ Makefile 2001/11/27 22:51:18 1.33 @@ -379,6 +379,19 @@ LOADADDR += 0x80001000 endif +# +# NEC MobilePro 780 PDA (vr4121) +# +ifdef CONFIG_NEC_MOBILEPRO_780 +SUBDIRS += arch/mips/vr41xx/common \ + arch/mips/vr4111/common \ + arch/mips/vr4111/mobilepro +LIBS += arch/mips/vr41xx/common/vr41xx.o \ + arch/mips/vr4111/common/vr4111.o \ + arch/mips/vr4111/mobilepro/mobilepro.o +LOADADDR += 0x80001000 +endif + ifdef CONFIG_TOSHIBA_JMR3927 CORE_FILES += arch/mips/jmr3927/rbhma3100/jmr3927.o arch/mips/jmr3927/common/tx3927.o SUBDIRS += arch/mips/jmr3927/rbhma3100 arch/mips/jmr3927/common Index: config.in =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/config.in,v retrieving revision 1.56 retrieving revision 1.57 diff -u -d -r1.56 -r1.57 --- config.in 2001/11/27 00:45:17 1.56 +++ config.in 2001/11/27 22:51:18 1.57 @@ -66,6 +66,7 @@ bool 'Support for Sony PlayStation 2' CONFIG_PS2 bool 'Support for Casio Cassiopeia BE-300 (EXPERIMENTAL)' CONFIG_CASIO_BE300 bool 'Support for Vadem Clio 1000 (EXPERIMENTAL)' CONFIG_VADEM_CLIO_1000 + bool 'Support for NEC MobilePro 780 PDA (EXPERIMENTAL)' CONFIG_NEC_MOBILEPRO_780 fi bool 'Support for Mips Magnum 4000' CONFIG_MIPS_MAGNUM_4000 bool 'Support for Momentum Ocelot board' CONFIG_MOMENCO_OCELOT @@ -315,6 +316,18 @@ define_bool CONFIG_NONCOHERENT_IO y define_bool CONFIG_DUMMY_KEYB y fi +if [ "$CONFIG_NEC_MOBILEPRO_780" = "y" ]; then + define_bool CONFIG_CPU_VR41XX y + define_bool CONFIG_VR4121 y + define_bool CONFIG_NONCOHERENT_IO y + define_bool CONFIG_SERIAL y + define_bool CONFIG_SERIAL_MANY_PORTS y + define_bool CONFIG_NEW_IRQ y + define_bool CONFIG_IRQ_CPU y + define_bool CONFIG_NEW_TIME_C y + define_bool CONFIG_ISA y + define_bool CONFIG_DUMMY_KEYB y +fi if [ "$CONFIG_NINO" = "y" ]; then define_bool CONFIG_NEW_IRQ y define_bool CONFIG_NEW_TIME_C y @@ -451,6 +464,7 @@ "$CONFIG_DDB5074" = "y" -o \ "$CONFIG_NINO" = "y" -o \ "$CONFIG_VR4111" = "y" -o \ + "$CONFIG_VR4121" = "y" -o \ "$CONFIG_NEC_KORVA" = "y" ]; then define_bool CONFIG_CPU_LITTLE_ENDIAN y else |
From: Jim P. <jim...@us...> - 2001-11-27 22:51:22
|
Update of /cvsroot/linux-mips/linux/arch/mips/kernel In directory usw-pr-cvs1:/tmp/cvs-serv4226/arch/mips/kernel Modified Files: setup.c Log Message: NEC MobilePro 780 PDA patch from Johannes Stezenbach Index: setup.c =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/kernel/setup.c,v retrieving revision 1.34 retrieving revision 1.35 diff -u -d -r1.34 -r1.35 --- setup.c 2001/11/27 17:53:47 1.34 +++ setup.c 2001/11/27 22:51:18 1.35 @@ -686,6 +686,7 @@ void nec_korva_setup(void); void ps2_setup(void); void clio_1000_setup(void); + void nec_mobilepro_setup(void); void jmr3927_setup(void); void it8172_setup(void); void swarm_setup(void); @@ -794,6 +795,11 @@ #ifdef CONFIG_VADEM_CLIO_1000 case MACH_GROUP_NEC_VR41XX: clio_1000_setup(); + break; +#endif +#ifdef CONFIG_NEC_MOBILEPRO_780 + case MACH_GROUP_NEC_VR41XX: + nec_mobilepro_setup(); break; #endif #ifdef CONFIG_MIPS_EV96100 |
From: Jim P. <jim...@us...> - 2001-11-27 22:51:22
|
Update of /cvsroot/linux-mips/linux/arch/mips/vr4111/common In directory usw-pr-cvs1:/tmp/cvs-serv4226/arch/mips/vr4111/common Modified Files: icu.c Log Message: NEC MobilePro 780 PDA patch from Johannes Stezenbach Index: icu.c =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/vr4111/common/icu.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- icu.c 2001/11/26 01:38:57 1.2 +++ icu.c 2001/11/27 22:51:19 1.3 @@ -19,6 +19,9 @@ #include <asm/types.h> #include <asm/vr41xx.h> +/* defined in arch/mips/kernel/irq.c */ +extern asmlinkage unsigned int do_IRQ(int irq, struct pt_regs *regs); + /* * Determine whether it's a SYSINT1, SYSINT2, GIUINTL, or GIUINTH * interrupt, set the base IRQ to the appropriate value and read the |
From: James S. <jsi...@us...> - 2001-11-27 21:49:18
|
Update of /cvsroot/linux-mips/linux/arch/mips/configs In directory usw-pr-cvs1:/tmp/cvs-serv19396 Modified Files: defconfig-cobalt Log Message: Working default config for qube. Index: defconfig-cobalt =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/configs/defconfig-cobalt,v retrieving revision 1.12 retrieving revision 1.13 diff -u -d -r1.12 -r1.13 --- defconfig-cobalt 2001/11/19 18:31:01 1.12 +++ defconfig-cobalt 2001/11/27 21:49:13 1.13 @@ -1,8 +1,7 @@ # -# Automatically generated make config: don't edit +# Automatically generated by make menuconfig: don't edit # CONFIG_MIPS=y -# CONFIG_SMP is not set # # Code maturity level options @@ -18,7 +17,6 @@ CONFIG_COBALT_MICRO_SERVER=y # CONFIG_DECSTATION is not set # CONFIG_DDB5074 is not set -# CONFIG_NEC_OSPREY is not set # CONFIG_NEC_EAGLE is not set # CONFIG_NEC_KORVA is not set # CONFIG_MIPS_EV96100 is not set @@ -28,10 +26,13 @@ # CONFIG_NINO is not set # CONFIG_SIBYTE_SB1250 is not set # CONFIG_PS2 is not set +# CONFIG_CASIO_BE300 is not set +# CONFIG_VADEM_CLIO_1000 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set # CONFIG_DDB5477 is not set +# CONFIG_NEC_OSPREY is not set # CONFIG_OLIVETTI_M700 is not set # CONFIG_SGI_IP22 is not set # CONFIG_SNI_RM200_PCI is not set @@ -39,6 +40,7 @@ # CONFIG_MIPS_IVR is not set # CONFIG_MIPS_PB1000 is not set # CONFIG_HP_LASERJET is not set +# CONFIG_TOSHIBA_JMR3927 is not set CONFIG_RWSEM_GENERIC_SPINLOCK=y # CONFIG_RWSEM_XCHGADD_ALGORITHM is not set # CONFIG_MCA is not set @@ -50,6 +52,7 @@ CONFIG_NO_VIDEO_CONSOLE=y CONFIG_COBALT_LCD=y CONFIG_PCI=y +CONFIG_NONCOHERENT_IO=y CONFIG_OLD_TIME_C=y # CONFIG_ISA is not set # CONFIG_EISA is not set @@ -122,7 +125,7 @@ # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_CISS_DA is not set # CONFIG_BLK_DEV_DAC960 is not set -CONFIG_BLK_DEV_LOOP=m +# CONFIG_BLK_DEV_LOOP is not set # CONFIG_BLK_DEV_NBD is not set # CONFIG_BLK_DEV_RAM is not set # CONFIG_BLK_DEV_INITRD is not set @@ -151,10 +154,7 @@ CONFIG_INET=y # CONFIG_IP_MULTICAST is not set # CONFIG_IP_ADVANCED_ROUTER is not set -CONFIG_IP_PNP=y -CONFIG_IP_PNP_DHCP=y -CONFIG_IP_PNP_BOOTP=y -# CONFIG_IP_PNP_RARP is not set +# CONFIG_IP_PNP is not set # CONFIG_NET_IPIP is not set # CONFIG_NET_IPGRE is not set CONFIG_INET_ECN=y @@ -162,10 +162,7 @@ # CONFIG_IPV6 is not set # CONFIG_KHTTPD is not set # CONFIG_ATM is not set - -# -# -# +# CONFIG_VLAN_8021Q is not set # CONFIG_IPX is not set # CONFIG_ATALK is not set # CONFIG_DECNET is not set @@ -200,10 +197,6 @@ # IDE, ATA and ATAPI Block devices # CONFIG_BLK_DEV_IDE=y - -# -# Please see Documentation/ide.txt for help/info on IDE drives -# # CONFIG_BLK_DEV_HD_IDE is not set # CONFIG_BLK_DEV_HD is not set CONFIG_BLK_DEV_IDEDISK=y @@ -222,10 +215,6 @@ # CONFIG_BLK_DEV_IDETAPE is not set # CONFIG_BLK_DEV_IDEFLOPPY is not set # CONFIG_BLK_DEV_IDESCSI is not set - -# -# IDE chipset support/bugfixes -# # CONFIG_BLK_DEV_CMD640 is not set # CONFIG_BLK_DEV_CMD640_ENHANCED is not set # CONFIG_BLK_DEV_ISAPNP is not set @@ -303,7 +292,6 @@ # Ethernet (10 or 100Mbit) # CONFIG_NET_ETHERNET=y -# CONFIG_ARM_AM79C961A is not set # CONFIG_SUNLANCE is not set # CONFIG_HAPPYMEAL is not set # CONFIG_SUNBMAC is not set @@ -326,6 +314,7 @@ # CONFIG_TULIP_MMIO is not set # CONFIG_DE4X5 is not set # CONFIG_DGRS is not set +# CONFIG_TC35815 is not set # CONFIG_DM9102 is not set # CONFIG_EEPRO100 is not set # CONFIG_LNE390 is not set @@ -334,6 +323,7 @@ # CONFIG_NE2K_PCI is not set # CONFIG_NE3210 is not set # CONFIG_ES3210 is not set +# CONFIG_8139CP is not set # CONFIG_8139TOO is not set # CONFIG_8139TOO_PIO is not set # CONFIG_8139TOO_TUNE_TWISTER is not set @@ -351,7 +341,6 @@ # Ethernet (1000 Mbit) # # CONFIG_ACENIC is not set -# CONFIG_ACENIC_OMIT_TIGON_I is not set # CONFIG_DL2K is not set # CONFIG_MYRI_SBUS is not set # CONFIG_NS83820 is not set @@ -427,14 +416,6 @@ # Joysticks # # CONFIG_INPUT_GAMEPORT is not set - -# -# Input core support is needed for gameports -# - -# -# Input core support is needed for joysticks -# # CONFIG_QIC02_TAPE is not set # @@ -447,7 +428,6 @@ # CONFIG_DTLK is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set # # Ftape, the floppy tape device driver @@ -486,6 +466,7 @@ # CONFIG_RAMFS is not set # CONFIG_ISO9660_FS is not set # CONFIG_JOLIET is not set +# CONFIG_ZISOFS is not set # CONFIG_MINIX_FS is not set # CONFIG_VXFS_FS is not set # CONFIG_NTFS_FS is not set @@ -510,13 +491,13 @@ # Network File Systems # # CONFIG_CODA_FS is not set -CONFIG_NFS_FS=y +CONFIG_NFS_FS=m CONFIG_NFS_V3=y # CONFIG_ROOT_NFS is not set # CONFIG_NFSD is not set # CONFIG_NFSD_V3 is not set -CONFIG_SUNRPC=y -CONFIG_LOCKD=y +CONFIG_SUNRPC=m +CONFIG_LOCKD=m CONFIG_LOCKD_V4=y # CONFIG_SMB_FS is not set # CONFIG_NCP_FS is not set @@ -528,6 +509,8 @@ # CONFIG_NCPFS_SMALLDOS is not set # CONFIG_NCPFS_NLS is not set # CONFIG_NCPFS_EXTRAS is not set +# CONFIG_ZISOFS_FS is not set +# CONFIG_ZLIB_FS_INFLATE is not set # # Partition Types @@ -546,6 +529,63 @@ # USB support # # CONFIG_USB is not set +# CONFIG_USB_UHCI is not set +# CONFIG_USB_UHCI_ALT is not set +# CONFIG_USB_OHCI is not set +# CONFIG_USB_AUDIO is not set +# CONFIG_USB_BLUETOOTH is not set +# CONFIG_USB_STORAGE is not set +# CONFIG_USB_STORAGE_DEBUG is not set +# CONFIG_USB_STORAGE_DATAFAB is not set +# CONFIG_USB_STORAGE_FREECOM is not set +# CONFIG_USB_STORAGE_ISD200 is not set +# CONFIG_USB_STORAGE_DPCM is not set +# CONFIG_USB_STORAGE_HP8200e is not set +# CONFIG_USB_STORAGE_SDDR09 is not set +# CONFIG_USB_STORAGE_JUMPSHOT is not set +# CONFIG_USB_ACM is not set +# CONFIG_USB_PRINTER is not set +# CONFIG_USB_DC2XX is not set +# CONFIG_USB_MDC800 is not set +# CONFIG_USB_SCANNER is not set +# CONFIG_USB_MICROTEK is not set +# CONFIG_USB_HPUSBSCSI is not set +# CONFIG_USB_PEGASUS is not set +# CONFIG_USB_KAWETH is not set +# CONFIG_USB_CATC is not set +# CONFIG_USB_CDCETHER is not set +# CONFIG_USB_USBNET is not set +# CONFIG_USB_USS720 is not set + +# +# USB Serial Converter support +# +# CONFIG_USB_SERIAL is not set +# CONFIG_USB_SERIAL_GENERIC is not set +# CONFIG_USB_SERIAL_BELKIN is not set +# CONFIG_USB_SERIAL_WHITEHEAT is not set +# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set +# CONFIG_USB_SERIAL_EMPEG is not set +# CONFIG_USB_SERIAL_FTDI_SIO is not set +# CONFIG_USB_SERIAL_VISOR is not set +# CONFIG_USB_SERIAL_IR is not set +# CONFIG_USB_SERIAL_EDGEPORT is not set +# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set +# CONFIG_USB_SERIAL_KEYSPAN is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28 is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28X is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28XA is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA28XB is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19 is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA18X is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA19W is not set +# CONFIG_USB_SERIAL_KEYSPAN_USA49W is not set +# CONFIG_USB_SERIAL_MCT_U232 is not set +# CONFIG_USB_SERIAL_PL2303 is not set +# CONFIG_USB_SERIAL_CYBERJACK is not set +# CONFIG_USB_SERIAL_XIRCOM is not set +# CONFIG_USB_SERIAL_OMNINET is not set +# CONFIG_USB_RIO500 is not set # # Input core support |
From: Jim P. <jim...@us...> - 2001-11-27 18:49:26
|
Update of /cvsroot/linux-mips/linux/arch/mips/vr4111/clio-1000 In directory usw-pr-cvs1:/tmp/cvs-serv26988/vr4111/clio-1000 Modified Files: prom.c Log Message: - moved ram probe from vr4111/clio-1000 to vr4111/common - moved clock mask routines from vr4111/common to vr41xx/common Index: prom.c =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/vr4111/clio-1000/prom.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- prom.c 2001/10/28 23:04:19 1.1 +++ prom.c 2001/11/27 18:49:21 1.2 @@ -18,50 +18,11 @@ #include <linux/mm.h> #include <linux/bootmem.h> #include <asm/bootinfo.h> -#include <asm/addrspace.h> -#include <asm/page.h> #include <asm/vr41xx.h> char arcs_cmdline[COMMAND_LINE_SIZE]; -extern int _end; - -#define min(a,b) (((a)<(b))?(a):(b)) - -unsigned long __init probe_ram_size(void) -{ - unsigned long ramsize; - unsigned int *p1, *p2; - unsigned int d1, d2; - /* Begin probe starting with the first 1MB past the global data */ - ramsize = ((unsigned long)&_end + 0x000fffff) & 0x1ff00000; - - /* Probe sequential 1MB areas, looking for a lack of RAM */ - while (ramsize < 0x04000000) { - /* Save the data and replace with a pattern */ - p1 = (unsigned int *)(KSEG1 + ramsize + 0x000ffff0); - d1 = *p1; - *p1 = 0x1234a5a5; - barrier(); - - /* Do it again to ensure it's not an empty bus */ - p2 = (unsigned int *)(KSEG1 + ramsize + 0x000fffe0); - d2 = *p2; - *p2 = 0x00ff5a5a; - barrier(); - - /* Is the first pattern there? */ - if (*p1 != 0x1234a5a5) - break; - - /* Put the old data back */ - *p1 = d1; - *p2 = d2; - - ramsize += 0x00100000; - } - return ramsize; -} +extern unsigned long probe_ram_size(void); void __init prom_init(int argc, char **argv, char **envp) { |
From: Jim P. <jim...@us...> - 2001-11-27 18:49:25
|
Update of /cvsroot/linux-mips/linux/arch/mips/vr4111/common In directory usw-pr-cvs1:/tmp/cvs-serv26988/vr4111/common Modified Files: Makefile serial.c Added Files: probe-ram.c Removed Files: cmu.c Log Message: - moved ram probe from vr4111/clio-1000 to vr4111/common - moved clock mask routines from vr4111/common to vr41xx/common --- NEW FILE: probe-ram.c --- /* * arch/mips/vr4111/common/probe-ram.c * * Copyright (C) 1999 Bradley D. LaRonde and Michael Klar * * Copyright (C) 2001 Jim Paris <ji...@jt...> * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. * */ #include <linux/init.h> #include <linux/config.h> #include <linux/kernel.h> #include <linux/mm.h> #include <asm/vr41xx.h> extern int _end; unsigned long __init probe_ram_size(void) { unsigned long ramsize; unsigned int *p1, *p2; unsigned int d1, d2; /* Begin probe starting with the first 1MB past the global data */ ramsize = ((unsigned long)&_end + 0x000fffff) & 0x1ff00000; /* Probe sequential 1MB areas, looking for a lack of RAM */ while (ramsize < 0x04000000) { /* Save the data and replace with a pattern */ p1 = (unsigned int *)(KSEG1 + ramsize + 0x000ffff0); d1 = *p1; *p1 = 0x1234a5a5; barrier(); /* Do it again to ensure it's not an empty bus */ p2 = (unsigned int *)(KSEG1 + ramsize + 0x000fffe0); d2 = *p2; *p2 = 0x00ff5a5a; barrier(); /* Is the first pattern there? */ if (*p1 != 0x1234a5a5) break; /* Put the old data back */ *p1 = d1; *p2 = d2; ramsize += 0x00100000; } return ramsize; } Index: Makefile =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/vr4111/common/Makefile,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- Makefile 2001/10/28 23:04:19 1.1 +++ Makefile 2001/11/27 18:49:22 1.2 @@ -13,6 +13,6 @@ O_TARGET:= vr4111.o -obj-y := irq.o int-handler.o icu.o serial.o time.o power.o cmu.o +obj-y := irq.o int-handler.o icu.o serial.o time.o power.o probe-ram.o include $(TOPDIR)/Rules.make Index: serial.c =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/vr4111/common/serial.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- serial.c 2001/10/28 23:04:19 1.1 +++ serial.c 2001/11/27 18:49:22 1.2 @@ -41,9 +41,9 @@ *VR41XX_SIUIRSEL &= ~VR41XX_SIUIRSEL_SIRSEL; /* Supply clocks to all serial units */ - vr4111_clock_supply(VR41XX_CMUCLKMSK_MSKSIU); - vr4111_clock_supply(VR41XX_CMUCLKMSK_MSKDSIU); - vr4111_clock_supply(VR41XX_CMUCLKMSK_MSKSSIU); + vr41xx_clock_supply(VR41XX_CMUCLKMSK_MSKSIU); + vr41xx_clock_supply(VR41XX_CMUCLKMSK_MSKDSIU); + vr41xx_clock_supply(VR41XX_CMUCLKMSK_MSKSSIU); memset(&s, 0, sizeof(s)); s.line = 0; --- cmu.c DELETED --- |
From: Jim P. <jim...@us...> - 2001-11-27 18:49:25
|
Update of /cvsroot/linux-mips/linux/arch/mips/vr41xx/common In directory usw-pr-cvs1:/tmp/cvs-serv26988/vr41xx/common Modified Files: Makefile Added Files: cmu.c Log Message: - moved ram probe from vr4111/clio-1000 to vr4111/common - moved clock mask routines from vr4111/common to vr41xx/common --- NEW FILE: cmu.c --- /* * NEC Vr41xx Clock Mask Unit routines. * * Copyright 2001 MontaVista Software Inc. * Author: Yoichi Yuasa * yy...@mv... or so...@mv... * * Copyright 2001 Jim Paris <ji...@jt...> * */ #include <linux/config.h> #include <asm/vr41xx.h> void vr41xx_clock_supply(unsigned short mask) { *VR41XX_CMUCLKMSK |= mask; } void vr41xx_clock_mask(unsigned short mask) { *VR41XX_CMUCLKMSK &= ~mask; } Index: Makefile =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/vr41xx/common/Makefile,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- Makefile 2001/10/28 23:04:19 1.3 +++ Makefile 2001/11/27 18:49:22 1.4 @@ -8,6 +8,6 @@ O_TARGET:= vr41xx.o -obj-y := reset.o +obj-y := reset.o cmu.o include $(TOPDIR)/Rules.make |
From: James S. <jsi...@us...> - 2001-11-27 17:59:56
|
Update of /cvsroot/linux-mips/linux/arch/mips/sgi-ip22 In directory usw-pr-cvs1:/tmp/cvs-serv13634/sgi-ip22 Added Files: Makefile ip22-hpc.c ip22-int.c ip22-irq.S ip22-mc.c ip22-rtc.c ip22-sc.c ip22-time.c reset.c setup.c system.c Log Message: Rearrange IP22 files the same way as 64-bit IP22. --- NEW FILE: Makefile --- # # Makefile for the SGI specific kernel interface routines # under Linux. # # Note! Dependencies are done automagically by 'make dep', which also # removes any old dependencies. DON'T put your own dependencies here # unless it's something special (ie not a .c file). # # Note 2! The CFLAGS definitions are now in the main makefile... .S.s: $(CPP) $(CFLAGS) $< -o $*.s .S.o: $(CC) $(CFLAGS) -c $< -o $*.o O_TARGET := ip22-kern.o all: ip22-kern.o ip22-irq.o obj-y += ip22-mc.o ip22-sc.o ip22-hpc.o ip22-int.o ip22-time.o ip22-rtc.o \ ip22-irq.o system.o reset.o setup.o ip22-irq.o: ip22-irq.S include $(TOPDIR)/Rules.make --- NEW FILE: ip22-hpc.c --- /* * ip22-hpc.c: Routines for generic manipulation of the HPC controllers. * * Copyright (C) 1996 David S. Miller (dm...@en...) * Copyright (C) 1998 Ralf Baechle */ #include <linux/init.h> #include <linux/types.h> #include <asm/addrspace.h> #include <asm/sgi/sgihpc.h> #include <asm/sgi/sgint23.h> #include <asm/sgialib.h> #include <asm/bootinfo.h> /* #define DEBUG_SGIHPC */ struct hpc3_regs *hpc3c0, *hpc3c1; struct hpc3_miscregs *hpc3mregs; /* We need software copies of these because they are write only. */ unsigned int sgi_hpc_write1, sgi_hpc_write2; /* Machine specific identifier knobs. */ int sgi_has_ioc2 = 0; int sgi_guiness = 0; int sgi_boardid; void __init sgihpc_init(void) { unsigned long sid, crev, brev; hpc3c0 = (struct hpc3_regs *) (KSEG1 + HPC3_CHIP0_PBASE); hpc3c1 = (struct hpc3_regs *) (KSEG1 + HPC3_CHIP1_PBASE); hpc3mregs = (struct hpc3_miscregs *) (KSEG1 + HPC3_MREGS_PBASE); sid = hpc3mregs->sysid; sid &= 0xff; crev = (sid & 0xe0) >> 5; brev = (sid & 0x1e) >> 1; #ifdef DEBUG_SGIHPC prom_printf("sgihpc_init: crev<%2x> brev<%2x>\n", crev, brev); prom_printf("sgihpc_init: "); #endif /* This test works now thanks to William J. Earl */ if ((sid & 1) == 0 ) { #ifdef DEBUG_SGIHPC prom_printf("GUINESS "); #endif sgi_guiness = 1; mips_machtype = MACH_SGI_INDY; } else { #ifdef DEBUG_SGIHPC prom_printf("FULLHOUSE "); #endif mips_machtype = MACH_SGI_INDIGO2; sgi_guiness = 0; } sgi_boardid = brev; #ifdef DEBUG_SGIHPC prom_printf("sgi_boardid<%d> ", sgi_boardid); #endif if(crev == 1) { if((sid & 1) || (brev >= 2)) { #ifdef DEBUG_SGIHPC prom_printf("IOC2 "); #endif sgi_has_ioc2 = 1; } else { #ifdef DEBUG_SGIHPC prom_printf("IOC1 revision 1 "); #endif } } else { #ifdef DEBUG_SGIHPC prom_printf("IOC1 revision 0 "); #endif } #ifdef DEBUG_SGIHPC prom_printf("\n"); #endif sgi_hpc_write1 = (HPC3_WRITE1_PRESET | HPC3_WRITE1_KMRESET | HPC3_WRITE1_ERESET | HPC3_WRITE1_LC0OFF); sgi_hpc_write2 = (HPC3_WRITE2_EASEL | HPC3_WRITE2_NTHRESH | HPC3_WRITE2_TPSPEED | HPC3_WRITE2_EPSEL | HPC3_WRITE2_U0AMODE | HPC3_WRITE2_U1AMODE); if(!sgi_guiness) sgi_hpc_write1 |= HPC3_WRITE1_GRESET; hpc3mregs->write1 = sgi_hpc_write1; hpc3mregs->write2 = sgi_hpc_write2; hpc3c0->pbus_piocfgs[0][6] |= HPC3_PIOPCFG_HW; } --- NEW FILE: ip22-int.c --- /* * ip22-int.c: Routines for generic manipulation of the INT[23] ASIC * found on INDY and Indigo2 workstations.. * * Copyright (C) 1996 David S. Miller (dm...@en...) * Copyright (C) 1997, 1998 Ralf Baechle (ra...@gn...) * Copyright (C) 1999 Andrew R. Baker (an...@ua...) * - Indigo2 changes * - Interrupt handling fixes * Copyright (C) 2001 Ladislav Michl (la...@ps...) */ #include <linux/types.h> #include <linux/init.h> #include <linux/kernel_stat.h> #include <linux/signal.h> #include <linux/sched.h> #include <linux/interrupt.h> #include <asm/irq.h> #include <asm/mipsregs.h> #include <asm/addrspace.h> #include <asm/gdb-stub.h> #include <asm/sgi/sgint23.h> #include <asm/sgi/sgihpc.h> /* #define DEBUG_SGINT */ #undef I_REALLY_NEED_THIS_IRQ struct sgi_int2_regs *sgi_i2regs; struct sgi_int3_regs *sgi_i3regs; struct sgi_ioc_ints *ioc_icontrol; struct sgi_ioc_timers *ioc_timers; volatile unsigned char *ioc_tclear; static char lc0msk_to_irqnr[256]; static char lc1msk_to_irqnr[256]; static char lc2msk_to_irqnr[256]; static char lc3msk_to_irqnr[256]; extern asmlinkage void indyIRQ(void); extern void do_IRQ(int irq, struct pt_regs *regs); static void enable_local0_irq(unsigned int irq) { unsigned long flags; save_and_cli(flags); /* don't allow mappable interrupt to be enabled from setup_irq, * we have our own way to do so */ if (irq != SGI_MAP_0_IRQ) ioc_icontrol->imask0 |= (1 << (irq - SGINT_LOCAL0)); restore_flags(flags); } static unsigned int startup_local0_irq(unsigned int irq) { enable_local0_irq(irq); return 0; /* Never anything pending */ } static void disable_local0_irq(unsigned int irq) { unsigned long flags; save_and_cli(flags); ioc_icontrol->imask0 &= ~(1 << (irq - SGINT_LOCAL0)); restore_flags(flags); } #define shutdown_local0_irq disable_local0_irq #define mask_and_ack_local0_irq disable_local0_irq static void end_local0_irq (unsigned int irq) { if (!(irq_desc[irq].status & (IRQ_DISABLED|IRQ_INPROGRESS))) enable_local0_irq(irq); } static struct hw_interrupt_type ip22_local0_irq_type = { "IP22 local 0", startup_local0_irq, shutdown_local0_irq, enable_local0_irq, disable_local0_irq, mask_and_ack_local0_irq, end_local0_irq, NULL }; static void enable_local1_irq(unsigned int irq) { unsigned long flags; save_and_cli(flags); /* don't allow mappable interrupt to be enabled from setup_irq, * we have our own way to do so */ if (irq != SGI_MAP_1_IRQ) ioc_icontrol->imask1 |= (1 << (irq - SGINT_LOCAL1)); restore_flags(flags); } static unsigned int startup_local1_irq(unsigned int irq) { enable_local1_irq(irq); return 0; /* Never anything pending */ } void disable_local1_irq(unsigned int irq) { unsigned long flags; save_and_cli(flags); ioc_icontrol->imask1 &= ~(1 << (irq - SGINT_LOCAL1)); restore_flags(flags); } #define shutdown_local1_irq disable_local1_irq #define mask_and_ack_local1_irq disable_local1_irq static void end_local1_irq (unsigned int irq) { if (!(irq_desc[irq].status & (IRQ_DISABLED|IRQ_INPROGRESS))) enable_local1_irq(irq); } static struct hw_interrupt_type ip22_local1_irq_type = { "IP22 local 1", startup_local1_irq, shutdown_local1_irq, enable_local1_irq, disable_local1_irq, mask_and_ack_local1_irq, end_local1_irq, NULL }; static void enable_local2_irq(unsigned int irq) { unsigned long flags; save_and_cli(flags); ioc_icontrol->imask0 |= (1 << (SGI_MAP_0_IRQ - SGINT_LOCAL0)); ioc_icontrol->cmeimask0 |= (1 << (irq - SGINT_LOCAL2)); restore_flags(flags); } static unsigned int startup_local2_irq(unsigned int irq) { enable_local2_irq(irq); return 0; /* Never anything pending */ } void disable_local2_irq(unsigned int irq) { unsigned long flags; save_and_cli(flags); ioc_icontrol->cmeimask0 &= ~(1 << (irq - SGINT_LOCAL2)); if (!ioc_icontrol->cmeimask0) ioc_icontrol->imask0 &= ~(1 << (SGI_MAP_0_IRQ - SGINT_LOCAL0)); restore_flags(flags); } #define shutdown_local2_irq disable_local2_irq #define mask_and_ack_local2_irq disable_local2_irq static void end_local2_irq (unsigned int irq) { if (!(irq_desc[irq].status & (IRQ_DISABLED|IRQ_INPROGRESS))) enable_local2_irq(irq); } static struct hw_interrupt_type ip22_local2_irq_type = { "IP22 local 2", startup_local2_irq, shutdown_local2_irq, enable_local2_irq, disable_local2_irq, mask_and_ack_local2_irq, end_local2_irq, NULL }; static void enable_local3_irq(unsigned int irq) { #ifdef I_REALLY_NEED_THIS_IRQ unsigned long flags; save_and_cli(flags); ioc_icontrol->imask1 |= (1 << (SGI_MAP_1_IRQ - SGINT_LOCAL1)); ioc_icontrol->cmeimask1 |= (1 << (irq - SGINT_LOCAL3)); restore_flags(flags); #else panic("Who need local 3 irq? see ip22-int.c\n"); #endif } static unsigned int startup_local3_irq(unsigned int irq) { enable_local3_irq(irq); return 0; /* Never anything pending */ } void disable_local3_irq(unsigned int irq) { unsigned long flags; save_and_cli(flags); ioc_icontrol->cmeimask1 &= ~(1 << (irq - SGINT_LOCAL3)); if (!ioc_icontrol->cmeimask1) ioc_icontrol->imask1 &= ~(1 << (SGI_MAP_1_IRQ - SGINT_LOCAL1)); restore_flags(flags); } #define shutdown_local3_irq disable_local3_irq #define mask_and_ack_local3_irq disable_local3_irq static void end_local3_irq (unsigned int irq) { if (!(irq_desc[irq].status & (IRQ_DISABLED|IRQ_INPROGRESS))) enable_local3_irq(irq); } static struct hw_interrupt_type ip22_local3_irq_type = { "IP22 local 3", startup_local3_irq, shutdown_local3_irq, enable_local3_irq, disable_local3_irq, mask_and_ack_local3_irq, end_local3_irq, NULL }; void indy_local0_irqdispatch(struct pt_regs *regs) { unsigned char mask = ioc_icontrol->istat0; unsigned char mask2 = 0; int irq; mask &= ioc_icontrol->imask0; if (mask & ISTAT0_LIO2) { mask2 = ioc_icontrol->vmeistat; mask2 &= ioc_icontrol->cmeimask0; irq = lc2msk_to_irqnr[mask2]; } else { irq = lc0msk_to_irqnr[mask]; } /* if irq == 0, then the interrupt has already been cleared */ if (irq) do_IRQ(irq, regs); return; } void indy_local1_irqdispatch(struct pt_regs *regs) { unsigned char mask = ioc_icontrol->istat1; unsigned char mask2 = 0; int irq; mask &= ioc_icontrol->imask1; if (mask & ISTAT1_LIO3) { #ifndef I_REALLY_NEED_THIS_IRQ printk("Whee: Got an LIO3 irq, winging it...\n"); #endif mask2 = ioc_icontrol->vmeistat; mask2 &= ioc_icontrol->cmeimask1; irq = lc3msk_to_irqnr[mask2]; } else { irq = lc1msk_to_irqnr[mask]; } /* if irq == 0, then the interrupt has already been cleared */ if (irq) do_IRQ(irq, regs); return; } void indy_buserror_irq(struct pt_regs *regs) { int cpu = smp_processor_id(); int irq = SGI_BUSERR_IRQ; irq_enter(cpu, irq); kstat.irqs[cpu][irq]++; die("Got a bus error IRQ, shouldn't happen yet\n", regs); printk("Spinning...\n"); while(1); irq_exit(cpu, irq); } static struct irqaction local0_cascade = { no_action, SA_INTERRUPT, 0, "local0 cascade", NULL, NULL }; static struct irqaction local1_cascade = { no_action, SA_INTERRUPT, 0, "local1 cascade", NULL, NULL }; static struct irqaction buserr = { no_action, SA_INTERRUPT, 0, "Bus Error", NULL, NULL }; static struct irqaction map0_cascade = { no_action, SA_INTERRUPT, 0, "mappable0 cascade", NULL, NULL }; #ifdef I_REALLY_NEED_THIS_IRQ static struct irqaction map1_cascade = { no_action, SA_INTERRUPT, 0, "mappable1 cascade", NULL, NULL }; #endif extern int setup_irq(unsigned int irq, struct irqaction *irqaction); extern void mips_cpu_irq_init(u32 irq_base); extern void init_generic_irq(void); void __init init_IRQ(void) { int i; sgi_i2regs = (struct sgi_int2_regs *) (KSEG1 + SGI_INT2_BASE); sgi_i3regs = (struct sgi_int3_regs *) (KSEG1 + SGI_INT3_BASE); /* Init local mask --> irq tables. */ for (i = 0; i < 256; i++) { if (i & 0x80) { lc0msk_to_irqnr[i] = SGINT_LOCAL0 + 7; lc1msk_to_irqnr[i] = SGINT_LOCAL1 + 7; lc2msk_to_irqnr[i] = SGINT_LOCAL2 + 7; lc3msk_to_irqnr[i] = SGINT_LOCAL3 + 7; } else if (i & 0x40) { lc0msk_to_irqnr[i] = SGINT_LOCAL0 + 6; lc1msk_to_irqnr[i] = SGINT_LOCAL1 + 6; lc2msk_to_irqnr[i] = SGINT_LOCAL2 + 6; lc3msk_to_irqnr[i] = SGINT_LOCAL3 + 6; } else if (i & 0x20) { lc0msk_to_irqnr[i] = SGINT_LOCAL0 + 5; lc1msk_to_irqnr[i] = SGINT_LOCAL1 + 5; lc2msk_to_irqnr[i] = SGINT_LOCAL2 + 5; lc3msk_to_irqnr[i] = SGINT_LOCAL3 + 5; } else if (i & 0x10) { lc0msk_to_irqnr[i] = SGINT_LOCAL0 + 4; lc1msk_to_irqnr[i] = SGINT_LOCAL1 + 4; lc2msk_to_irqnr[i] = SGINT_LOCAL2 + 4; lc3msk_to_irqnr[i] = SGINT_LOCAL3 + 4; } else if (i & 0x08) { lc0msk_to_irqnr[i] = SGINT_LOCAL0 + 3; lc1msk_to_irqnr[i] = SGINT_LOCAL1 + 3; lc2msk_to_irqnr[i] = SGINT_LOCAL2 + 3; lc3msk_to_irqnr[i] = SGINT_LOCAL3 + 3; } else if (i & 0x04) { lc0msk_to_irqnr[i] = SGINT_LOCAL0 + 2; lc1msk_to_irqnr[i] = SGINT_LOCAL1 + 2; lc2msk_to_irqnr[i] = SGINT_LOCAL2 + 2; lc3msk_to_irqnr[i] = SGINT_LOCAL3 + 2; } else if (i & 0x02) { lc0msk_to_irqnr[i] = SGINT_LOCAL0 + 1; lc1msk_to_irqnr[i] = SGINT_LOCAL1 + 1; lc2msk_to_irqnr[i] = SGINT_LOCAL2 + 1; lc3msk_to_irqnr[i] = SGINT_LOCAL3 + 1; } else if (i & 0x01) { lc0msk_to_irqnr[i] = SGINT_LOCAL0 + 0; lc1msk_to_irqnr[i] = SGINT_LOCAL1 + 0; lc2msk_to_irqnr[i] = SGINT_LOCAL2 + 0; lc3msk_to_irqnr[i] = SGINT_LOCAL3 + 0; } else { lc0msk_to_irqnr[i] = 0; lc1msk_to_irqnr[i] = 0; lc2msk_to_irqnr[i] = 0; lc3msk_to_irqnr[i] = 0; } } /* Indy uses an INT3, Indigo2 uses an INT2 */ if (sgi_guiness) { ioc_icontrol = &sgi_i3regs->ints; ioc_timers = &sgi_i3regs->timers; ioc_tclear = &sgi_i3regs->tclear; } else { ioc_icontrol = &sgi_i2regs->ints; ioc_timers = &sgi_i2regs->timers; ioc_tclear = &sgi_i2regs->tclear; } /* Mask out all interrupts. */ ioc_icontrol->imask0 = 0; ioc_icontrol->imask1 = 0; ioc_icontrol->cmeimask0 = 0; ioc_icontrol->cmeimask1 = 0; set_except_vector(0, indyIRQ); init_generic_irq(); /* init CPU irqs */ mips_cpu_irq_init(SGINT_CPU); for (i = SGINT_LOCAL0; i < SGINT_END; i++) { hw_irq_controller *handler; if (i < SGINT_LOCAL1) handler = &ip22_local0_irq_type; else if (i < SGINT_LOCAL2) handler = &ip22_local1_irq_type; else if (i < SGINT_LOCAL3) handler = &ip22_local2_irq_type; else handler = &ip22_local3_irq_type; irq_desc[i].status = IRQ_DISABLED; irq_desc[i].action = 0; irq_desc[i].depth = 1; irq_desc[i].handler = handler; } /* vector handler. this register the IRQ as non-sharable */ setup_irq(SGI_LOCAL_0_IRQ, &local0_cascade); setup_irq(SGI_LOCAL_1_IRQ, &local1_cascade); setup_irq(SGI_BUSERR_IRQ, &buserr); /* cascade in cascade. i love Indy ;-) */ setup_irq(SGI_MAP_0_IRQ, &map0_cascade); #ifdef I_REALLY_NEED_THIS_IRQ setup_irq(SGI_MAP_1_IRQ, &map1_cascade); #endif } --- NEW FILE: ip22-irq.S --- /* * ip22-irq.S: Interrupt exception dispatch code for FullHouse and * Guiness. * * Copyright (C) 1996 David S. Miller (dm...@en...) */ #include <asm/asm.h> #include <asm/mipsregs.h> #include <asm/regdef.h> #include <asm/stackframe.h> /* A lot of complication here is taken away because: * * 1) We handle one interrupt and return, sitting in a loop * and moving across all the pending IRQ bits in the cause * register is _NOT_ the answer, the common case is one * pending IRQ so optimize in that direction. * * 2) We need not check against bits in the status register * IRQ mask, that would make this routine slow as hell. * * 3) Linux only thinks in terms of all IRQs on or all IRQs * off, nothing in between like BSD spl() brain-damage. * * Furthermore, the IRQs on the INDY look basically (barring * software IRQs which we don't use at all) like: * * MIPS IRQ Source * -------- ------ * 0 Software (ignored) * 1 Software (ignored) * 2 Local IRQ level zero * 3 Local IRQ level one * 4 8254 Timer zero * 5 8254 Timer one * 6 Bus Error * 7 R4k timer (what we use) * * We handle the IRQ according to _our_ priority which is: * * Highest ---- R4k Timer * Local IRQ zero * Local IRQ one * Bus Error * 8254 Timer zero * Lowest ---- 8254 Timer one * * then we just return, if multiple IRQs are pending then * we will just take another exception, big deal. */ .text .set noreorder .set noat .align 5 NESTED(indyIRQ, PT_SIZE, sp) SAVE_ALL CLI .set at mfc0 s0, CP0_CAUSE # get irq mask /* First we check for r4k counter/timer IRQ. */ andi a0, s0, CAUSEF_IP7 beq a0, zero, 1f andi a0, s0, CAUSEF_IP2 # delay slot, check local level zero /* Wheee, a timer interrupt. */ move a0, sp jal indy_r4k_timer_interrupt nop # delay slot j ret_from_irq nop # delay slot 1: beq a0, zero, 1f andi a0, s0, CAUSEF_IP3 # delay slot, check local level one /* Wheee, local level zero interrupt. */ jal indy_local0_irqdispatch move a0, sp # delay slot j ret_from_irq nop # delay slot 1: beq a0, zero, 1f andi a0, s0, CAUSEF_IP6 # delay slot, check bus error /* Wheee, local level one interrupt. */ move a0, sp jal indy_local1_irqdispatch nop j ret_from_irq nop 1: beq a0, zero, 1f nop /* Wheee, an asynchronous bus error... */ move a0, sp jal indy_buserror_irq nop j ret_from_irq nop 1: /* Here by mistake? It is possible, that by the time we take * the exception the IRQ pin goes low, so just leave if this * is the case. */ andi a0, s0, (CAUSEF_IP4 | CAUSEF_IP5) beq a0, zero, 1f /* Must be one of the 8254 timers... */ move a0, sp jal indy_8254timer_irq nop 1: j ret_from_irq nop END(indyIRQ) --- NEW FILE: ip22-mc.c --- /* * ip22-mc.c: Routines for manipulating the INDY memory controller. * * Copyright (C) 1996 David S. Miller (dm...@en...) * Copyright (C) 1999 Andrew R. Baker (an...@ua...) - Indigo2 changes */ #include <linux/init.h> #include <linux/kernel.h> #include <asm/addrspace.h> #include <asm/ptrace.h> #include <asm/sgi/sgimc.h> #include <asm/sgi/sgihpc.h> #include <asm/sgialib.h> /* #define DEBUG_SGIMC */ struct sgimc_misc_ctrl *mcmisc_regs; u32 *rpsscounter; struct sgimc_dma_ctrl *dmactrlregs; static inline char *mconfig_string(unsigned long val) { switch(val & SGIMC_MCONFIG_RMASK) { case SGIMC_MCONFIG_FOURMB: return "4MB"; case SGIMC_MCONFIG_EIGHTMB: return "8MB"; case SGIMC_MCONFIG_SXTEENMB: return "16MB"; case SGIMC_MCONFIG_TTWOMB: return "32MB"; case SGIMC_MCONFIG_SFOURMB: return "64MB"; case SGIMC_MCONFIG_OTEIGHTMB: return "128MB"; default: return "wheee, unknown"; }; } void __init sgimc_init(void) { unsigned long tmpreg; mcmisc_regs = (struct sgimc_misc_ctrl *)(KSEG1+0x1fa00000); rpsscounter = (unsigned int *) (KSEG1 + 0x1fa01004); dmactrlregs = (struct sgimc_dma_ctrl *) (KSEG1+0x1fa02000); printk("MC: SGI memory controller Revision %d\n", (int) mcmisc_regs->systemid & SGIMC_SYSID_MASKREV); #if 0 /* XXX Until I figure out what this bit really indicates XXX */ /* XXX Is this systemid bit reliable? */ if(mcmisc_regs->systemid & SGIMC_SYSID_EPRESENT) { EISA_bus = 1; printk("with EISA\n"); } else { EISA_bus = 0; printk("no EISA\n"); } #endif #ifdef DEBUG_SGIMC prom_printf("sgimc_init: memconfig0<%s> mconfig1<%s>\n", mconfig_string(mcmisc_regs->mconfig0), mconfig_string(mcmisc_regs->mconfig1)); prom_printf("mcdump: cpuctrl0<%08lx> cpuctrl1<%08lx>\n", mcmisc_regs->cpuctrl0, mcmisc_regs->cpuctrl1); prom_printf("mcdump: divider<%08lx>, gioparm<%04x>\n", mcmisc_regs->divider, mcmisc_regs->gioparm); #endif /* Place the MC into a known state. This must be done before * interrupts are first enabled etc. */ /* Step 1: The CPU/GIO error status registers will not latch * up a new error status until the register has been * cleared by the cpu. These status registers are * cleared by writing any value to them. */ mcmisc_regs->cstat = mcmisc_regs->gstat = 0; /* Step 2: Enable all parity checking in cpu control register * zero. */ tmpreg = mcmisc_regs->cpuctrl0; tmpreg |= (SGIMC_CCTRL0_EPERRGIO | SGIMC_CCTRL0_EPERRMEM | SGIMC_CCTRL0_R4KNOCHKPARR); mcmisc_regs->cpuctrl0 = tmpreg; /* Step 3: Setup the MC write buffer depth, this is controlled * in cpu control register 1 in the lower 4 bits. */ tmpreg = mcmisc_regs->cpuctrl1; tmpreg &= ~0xf; tmpreg |= 0xd; mcmisc_regs->cpuctrl1 = tmpreg; /* Step 4: Initialize the RPSS divider register to run as fast * as it can correctly operate. The register is laid * out as follows: * * ---------------------------------------- * | RESERVED | INCREMENT | DIVIDER | * ---------------------------------------- * 31 16 15 8 7 0 * * DIVIDER determines how often a 'tick' happens, * INCREMENT determines by how the RPSS increment * registers value increases at each 'tick'. Thus, * for IP22 we get INCREMENT=1, DIVIDER=1 == 0x101 */ mcmisc_regs->divider = 0x101; /* Step 5: Initialize GIO64 arbitrator configuration register. * * NOTE: If you dork with startup code the HPC init code in * sgihpc_init() must run before us because of how we * need to know Guiness vs. FullHouse and the board * revision on this machine. You have been warned. */ /* First the basic invariants across all gio64 implementations. */ tmpreg = SGIMC_GIOPARM_HPC64; /* All 1st HPC's interface at 64bits. */ tmpreg |= SGIMC_GIOPARM_ONEBUS; /* Only one physical GIO bus exists. */ if(sgi_guiness) { /* Guiness specific settings. */ tmpreg |= SGIMC_GIOPARM_EISA64; /* MC talks to EISA at 64bits */ tmpreg |= SGIMC_GIOPARM_MASTEREISA; /* EISA bus can act as master */ } else { /* Fullhouse specific settings. */ if(sgi_boardid < 2) { tmpreg |= SGIMC_GIOPARM_HPC264; /* 2nd HPC at 64bits */ tmpreg |= SGIMC_GIOPARM_PLINEEXP0; /* exp0 pipelines */ tmpreg |= SGIMC_GIOPARM_MASTEREXP1;/* exp1 masters */ tmpreg |= SGIMC_GIOPARM_RTIMEEXP0; /* exp0 is realtime */ } else { tmpreg |= SGIMC_GIOPARM_HPC264; /* 2nd HPC 64bits */ tmpreg |= SGIMC_GIOPARM_PLINEEXP0; /* exp[01] pipelined */ tmpreg |= SGIMC_GIOPARM_PLINEEXP1; tmpreg |= SGIMC_GIOPARM_MASTEREISA;/* EISA masters */ tmpreg |= SGIMC_GIOPARM_GFX64; /* GFX at 64 bits */ } } mcmisc_regs->gioparm = tmpreg; /* poof */ } --- NEW FILE: ip22-rtc.c --- /* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. * * RTC routines for Indy style attached Dallas chip. * * Copyright (C) 1998, 2001 by Ralf Baechle */ #include <asm/ds1286.h> #include <asm/sgi/sgihpc.h> static unsigned char indy_rtc_read_data(unsigned long addr) { volatile unsigned int *rtcregs = (void *)INDY_CLOCK_REGS; return rtcregs[addr]; } static void indy_rtc_write_data(unsigned char data, unsigned long addr) { volatile unsigned int *rtcregs = (void *)INDY_CLOCK_REGS; rtcregs[addr] = data; } static int indy_rtc_bcd_mode(void) { return 0; } struct rtc_ops indy_rtc_ops = { &indy_rtc_read_data, &indy_rtc_write_data, &indy_rtc_bcd_mode }; --- NEW FILE: ip22-sc.c --- /* * ip22-sc.c: Indy cache management functions. * * Copyright (C) 1997, 2001 Ralf Baechle (ra...@gn...), * derived from r4xx0.c by David S. Miller (dm...@en...). */ #include <linux/init.h> #include <linux/kernel.h> #include <linux/sched.h> #include <linux/mm.h> #include <asm/bcache.h> #include <asm/sgi/sgi.h> #include <asm/sgi/sgimc.h> #include <asm/page.h> #include <asm/pgtable.h> #include <asm/system.h> #include <asm/bootinfo.h> #include <asm/sgialib.h> #include <asm/mmu_context.h> /* Secondary cache size in bytes, if present. */ static unsigned long scache_size; #undef DEBUG_CACHE #define SC_SIZE 0x00080000 #define SC_LINE 32 #define CI_MASK (SC_SIZE - SC_LINE) #define SC_INDEX(n) ((n) & CI_MASK) static inline void indy_sc_wipe(unsigned long first, unsigned long last) { unsigned long tmp; __asm__ __volatile__( ".set\tnoreorder\t\t\t# indy_sc_wipe\n\t" ".set\tmips3\n\t" ".set\tnoat\n\t" "mfc0\t%2, $12\n\t" "li\t$1, 0x80\t\t\t# Go 64 bit\n\t" "mtc0\t$1, $12\n\t" "dli\t$1, 0x9000000080000000\n\t" "or\t%0, $1\t\t\t# first line to flush\n\t" "or\t%1, $1\t\t\t# last line to flush\n\t" ".set\tat\n\t" "1:\tsw\t$0, 0(%0)\n\t" "bne\t%0, %1, 1b\n\t" "daddu\t%0, 32\n\t" "mtc0\t%2, $12\t\t\t# Back to 32 bit\n\t" "nop; nop; nop; nop;\n\t" ".set\tmips0\n\t" ".set\treorder" : "=r" (first), "=r" (last), "=&r" (tmp) : "0" (first), "1" (last)); } static void indy_sc_wback_invalidate(unsigned long addr, unsigned long size) { unsigned long first_line, last_line; unsigned int flags; #ifdef DEBUG_CACHE printk("indy_sc_wback_invalidate[%08lx,%08lx]", addr, size); #endif if (!size) return; /* Which lines to flush? */ first_line = SC_INDEX(addr); last_line = SC_INDEX(addr + size - 1); __save_and_cli(flags); if (first_line <= last_line) { indy_sc_wipe(first_line, last_line); goto out; } indy_sc_wipe(first_line, SC_SIZE - SC_LINE); indy_sc_wipe(0, last_line); out: __restore_flags(flags); } static void indy_sc_enable(void) { unsigned long addr, tmp1, tmp2; /* This is really cool... */ #ifdef DEBUG_CACHE printk("Enabling R4600 SCACHE\n"); #endif __asm__ __volatile__( ".set\tpush\n\t" ".set\tnoreorder\n\t" ".set\tmips3\n\t" "mfc0\t%2, $12\n\t" "nop; nop; nop; nop;\n\t" "li\t%1, 0x80\n\t" "mtc0\t%1, $12\n\t" "nop; nop; nop; nop;\n\t" "li\t%0, 0x1\n\t" "dsll\t%0, 31\n\t" "lui\t%1, 0x9000\n\t" "dsll32\t%1, 0\n\t" "or\t%0, %1, %0\n\t" "sb\t$0, 0(%0)\n\t" "mtc0\t$0, $12\n\t" "nop; nop; nop; nop;\n\t" "mtc0\t%2, $12\n\t" "nop; nop; nop; nop;\n\t" ".set\tpop" : "=r" (tmp1), "=r" (tmp2), "=r" (addr)); } static void indy_sc_disable(void) { unsigned long tmp1, tmp2, tmp3; #ifdef DEBUG_CACHE printk("Disabling R4600 SCACHE\n"); #endif __asm__ __volatile__( ".set\tpush\n\t" ".set\tnoreorder\n\t" ".set\tmips3\n\t" "li\t%0, 0x1\n\t" "dsll\t%0, 31\n\t" "lui\t%1, 0x9000\n\t" "dsll32\t%1, 0\n\t" "or\t%0, %1, %0\n\t" "mfc0\t%2, $12\n\t" "nop; nop; nop; nop\n\t" "li\t%1, 0x80\n\t" "mtc0\t%1, $12\n\t" "nop; nop; nop; nop\n\t" "sh\t$0, 0(%0)\n\t" "mtc0\t$0, $12\n\t" "nop; nop; nop; nop\n\t" "mtc0\t%2, $12\n\t" "nop; nop; nop; nop\n\t" ".set\tpop" : "=r" (tmp1), "=r" (tmp2), "=r" (tmp3)); } static inline int __init indy_sc_probe(void) { volatile unsigned int *cpu_control; unsigned short cmd = 0xc220; unsigned long data = 0; int i, n; #ifdef __MIPSEB__ cpu_control = (volatile unsigned int *) KSEG1ADDR(0x1fa00034); #else cpu_control = (volatile unsigned int *) KSEG1ADDR(0x1fa00030); #endif #define DEASSERT(bit) (*(cpu_control) &= (~(bit))) #define ASSERT(bit) (*(cpu_control) |= (bit)) #define DELAY for(n = 0; n < 100000; n++) __asm__ __volatile__("") DEASSERT(SGIMC_EEPROM_PRE); DEASSERT(SGIMC_EEPROM_SDATAO); DEASSERT(SGIMC_EEPROM_SECLOCK); DEASSERT(SGIMC_EEPROM_PRE); DELAY; ASSERT(SGIMC_EEPROM_CSEL); ASSERT(SGIMC_EEPROM_SECLOCK); for(i = 0; i < 11; i++) { if(cmd & (1<<15)) ASSERT(SGIMC_EEPROM_SDATAO); else DEASSERT(SGIMC_EEPROM_SDATAO); DEASSERT(SGIMC_EEPROM_SECLOCK); ASSERT(SGIMC_EEPROM_SECLOCK); cmd <<= 1; } DEASSERT(SGIMC_EEPROM_SDATAO); for(i = 0; i < (sizeof(unsigned short) * 8); i++) { unsigned int tmp; DEASSERT(SGIMC_EEPROM_SECLOCK); DELAY; ASSERT(SGIMC_EEPROM_SECLOCK); DELAY; data <<= 1; tmp = *cpu_control; if(tmp & SGIMC_EEPROM_SDATAI) data |= 1; } DEASSERT(SGIMC_EEPROM_SECLOCK); DEASSERT(SGIMC_EEPROM_CSEL); ASSERT(SGIMC_EEPROM_PRE); ASSERT(SGIMC_EEPROM_SECLOCK); data <<= PAGE_SHIFT; if (data == 0) return 0; scache_size = data; printk("R4600/R5000 SCACHE size %ldK, linesize 32 bytes.\n", scache_size >> 10); return 1; } /* XXX Check with wje if the Indy caches can differenciate between writeback + invalidate and just invalidate. */ struct bcache_ops indy_sc_ops = { indy_sc_enable, indy_sc_disable, indy_sc_wback_invalidate, indy_sc_wback_invalidate }; void __init indy_sc_init(void) { if (indy_sc_probe()) { indy_sc_enable(); bcops = &indy_sc_ops; } } --- NEW FILE: ip22-time.c --- /* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. * * Time operations for IP22 machines. Original code may come from * Ralf Baechle or David S. Miller (sorry guys, i'm really not sure) * * Copyright (C) 2001 by Ladislav Michl */ #include <linux/config.h> #include <linux/kernel.h> #include <linux/interrupt.h> #include <linux/kernel_stat.h> #include <asm/cpu.h> #include <asm/mipsregs.h> #include <asm/io.h> #include <asm/irq.h> #include <asm/time.h> #include <asm/ds1286.h> #include <asm/sgialib.h> #include <asm/sgi/sgint23.h> /* * note that mktime uses month from 1 to 12 while to_tm * uses 0 to 11. */ static unsigned long indy_rtc_get_time(void) { unsigned char yrs, mon, day, hrs, min, sec; unsigned char save_control; save_control = CMOS_READ(RTC_CMD); CMOS_WRITE((save_control|RTC_TE), RTC_CMD); sec = CMOS_READ(RTC_SECONDS); min = CMOS_READ(RTC_MINUTES); hrs = CMOS_READ(RTC_HOURS) & 0x1f; day = CMOS_READ(RTC_DATE); mon = CMOS_READ(RTC_MONTH) & 0x1f; yrs = CMOS_READ(RTC_YEAR); CMOS_WRITE(save_control, RTC_CMD); BCD_TO_BIN(sec); BCD_TO_BIN(min); BCD_TO_BIN(hrs); BCD_TO_BIN(day); BCD_TO_BIN(mon); BCD_TO_BIN(yrs); if (yrs < 45) yrs += 30; if ((yrs += 40) < 70) yrs += 100; return mktime((int)yrs + 1900, mon, day, hrs, min, sec); } static int indy_rtc_set_time(unsigned long tim) { struct rtc_time tm; unsigned char save_control; to_tm(tim, &tm); tm.tm_year -= 1900; tm.tm_mon += 1; if (tm.tm_year >= 100) tm.tm_year -= 100; BIN_TO_BCD(tm.tm_sec); BIN_TO_BCD(tm.tm_min); BIN_TO_BCD(tm.tm_hour); BIN_TO_BCD(tm.tm_mday); BIN_TO_BCD(tm.tm_mon); BIN_TO_BCD(tm.tm_year); save_control = CMOS_READ(RTC_CMD); CMOS_WRITE((save_control|RTC_TE), RTC_CMD); CMOS_WRITE(tm.tm_year, RTC_YEAR); CMOS_WRITE(tm.tm_mon, RTC_MONTH); CMOS_WRITE(tm.tm_mday, RTC_DATE); CMOS_WRITE(tm.tm_hour, RTC_HOURS); CMOS_WRITE(tm.tm_min, RTC_MINUTES); CMOS_WRITE(tm.tm_sec, RTC_SECONDS); CMOS_WRITE(0, RTC_HUNDREDTH_SECOND); CMOS_WRITE(save_control, RTC_CMD); return 0; } static unsigned long dosample(volatile unsigned char *tcwp, volatile unsigned char *tc2p) { unsigned long ct0, ct1; unsigned char msb, lsb; /* Start the counter. */ *tcwp = (SGINT_TCWORD_CNT2 | SGINT_TCWORD_CALL | SGINT_TCWORD_MRGEN); *tc2p = (SGINT_TCSAMP_COUNTER & 0xff); *tc2p = (SGINT_TCSAMP_COUNTER >> 8); /* Get initial counter invariant */ ct0 = read_32bit_cp0_register(CP0_COUNT); /* Latch and spin until top byte of counter2 is zero */ do { *tcwp = (SGINT_TCWORD_CNT2 | SGINT_TCWORD_CLAT); lsb = *tc2p; msb = *tc2p; ct1 = read_32bit_cp0_register(CP0_COUNT); } while(msb); /* Stop the counter. */ *tcwp = (SGINT_TCWORD_CNT2 | SGINT_TCWORD_CALL | SGINT_TCWORD_MSWST); /* * Return the difference, this is how far the r4k counter increments * for every 1/HZ seconds. We round off the nearest 1 MHz of master * clock (= 1000000 / 100 / 2 = 5000 count). */ return ((ct1 - ct0) / 5000) * 5000; } void indy_time_init(void) { /* Here we need to calibrate the cycle counter to at least be close. * We don't need to actually register the irq handler because that's * all done in indyIRQ.S. */ struct sgi_ioc_timers *p; volatile unsigned char *tcwp, *tc2p; unsigned long r4k_ticks[3]; unsigned long r4k_tick; /* Figure out the r4k offset, the algorithm is very simple * and works in _all_ cases as long as the 8254 counter * register itself works ok (as an interrupt driving timer * it does not because of bug, this is why we are using * the onchip r4k counter/compare register to serve this * purpose, but for r4k_offset calculation it will work * ok for us). There are other very complicated ways * of performing this calculation but this one works just * fine so I am not going to futz around. ;-) */ p = ioc_timers; tcwp = &p->tcword; tc2p = &p->tcnt2; printk("Calibrating system timer... "); dosample(tcwp, tc2p); /* Prime cache. */ dosample(tcwp, tc2p); /* Prime cache. */ /* Zero is NOT an option. */ do { r4k_ticks[0] = dosample (tcwp, tc2p); } while (!r4k_ticks[0]); do { r4k_ticks[1] = dosample (tcwp, tc2p); } while (!r4k_ticks[1]); if (r4k_ticks[0] != r4k_ticks[1]) { printk ("warning: timer counts differ, retrying..."); r4k_ticks[2] = dosample (tcwp, tc2p); if (r4k_ticks[2] == r4k_ticks[0] || r4k_ticks[2] == r4k_ticks[1]) r4k_tick = r4k_ticks[2]; else { printk ("disagreement, using average..."); r4k_tick = (r4k_ticks[0] + r4k_ticks[1] + r4k_ticks[2]) / 3; } } else r4k_tick = r4k_ticks[0]; printk("%d [%d.%02d MHz CPU]\n", (int) r4k_tick, (int) (r4k_tick / 5000), (int) (r4k_tick % 5000) / 50); mips_counter_frequency = r4k_tick * HZ; } /* Generic SGI handler for (spurious) 8254 interrupts */ void indy_8254timer_irq(struct pt_regs *regs) { int cpu = smp_processor_id(); int irq = SGI_8254_0_IRQ; irq_enter(cpu, irq); kstat.irqs[cpu][irq]++; printk("indy_8254timer_irq: Whoops, should not have gotten this IRQ\n"); prom_getchar(); ArcEnterInteractiveMode(); irq_exit(cpu, irq); } void indy_r4k_timer_interrupt(struct pt_regs *regs) { int cpu = smp_processor_id(); int irq = SGI_TIMER_IRQ; irq_enter(cpu, irq); kstat.irqs[cpu][irq]++; timer_interrupt(irq, NULL, regs); irq_exit(cpu, irq); if (softirq_pending(cpu)) do_softirq(); } extern int setup_irq(unsigned int irq, struct irqaction *irqaction); static void indy_timer_setup(struct irqaction *irq) { /* over-write the handler. we use our own way */ irq->handler = no_action; /* setup irqaction */ setup_irq(SGI_TIMER_IRQ, irq); } void sgitime_init(void) { /* setup hookup functions */ rtc_get_time = indy_rtc_get_time; rtc_set_time = indy_rtc_set_time; board_time_init = indy_time_init; board_timer_setup = indy_timer_setup; } --- NEW FILE: reset.c --- /* * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. * * Copyright (C) 1997, 1998, 2001 by Ralf Baechle */ #include <linux/kernel.h> #include <linux/sched.h> #include <linux/notifier.h> #include <linux/timer.h> #include <asm/io.h> #include <asm/irq.h> #include <asm/system.h> #include <asm/reboot.h> #include <asm/sgialib.h> #include <asm/sgi/sgihpc.h> #include <asm/sgi/sgint23.h> /* * Just powerdown if init hasn't done after POWERDOWN_TIMEOUT seconds. * I'm not sure if this feature is a good idea, for now it's here just to * make the power button make behave just like under IRIX. */ #define POWERDOWN_TIMEOUT 120 /* * Blink frequency during reboot grace period and when paniced. */ #define POWERDOWN_FREQ (HZ / 4) #define PANIC_FREQ (HZ / 8) static unsigned char sgi_volume; static struct timer_list power_timer, blink_timer, debounce_timer, volume_timer; static int shuting_down, has_paniced; static void sgi_machine_restart(char *command) __attribute__((noreturn)); static void sgi_machine_halt(void) __attribute__((noreturn)); static void sgi_machine_power_off(void) __attribute__((noreturn)); /* XXX How to pass the reboot command to the firmware??? */ static void sgi_machine_restart(char *command) { if (shuting_down) sgi_machine_power_off(); prom_reboot(); } static void sgi_machine_halt(void) { if (shuting_down) sgi_machine_power_off(); ArcEnterInteractiveMode(); } static void sgi_machine_power_off(void) { struct indy_clock *clock = (struct indy_clock *)INDY_CLOCK_REGS; cli(); clock->cmd |= 0x08; /* Disable watchdog */ clock->whsec = 0; clock->wsec = 0; while(1) { hpc3mregs->panel=0xfe; /* Good bye cruel world ... */ /* If we're still running, we probably got sent an alarm interrupt. Read the flag to clear it. */ clock->halarm; } } static void power_timeout(unsigned long data) { sgi_machine_power_off(); } static void blink_timeout(unsigned long data) { /* XXX fix this for fullhouse */ sgi_hpc_write1 ^= (HPC3_WRITE1_LC0OFF|HPC3_WRITE1_LC1OFF); hpc3mregs->write1 = sgi_hpc_write1; mod_timer(&blink_timer, jiffies+data); } static void debounce(unsigned long data) { del_timer(&debounce_timer); if (ioc_icontrol->istat1 & 2) { /* Interrupt still being sent. */ debounce_timer.expires = jiffies + 5; /* 0.05s */ add_timer(&debounce_timer); hpc3mregs->panel = 0xf3; return; } if (has_paniced) prom_reboot(); enable_irq(SGI_PANEL_IRQ); } static inline void power_button(void) { if (has_paniced) return; if (shuting_down || kill_proc(1, SIGINT, 1)) { /* No init process or button pressed twice. */ sgi_machine_power_off(); } shuting_down = 1; blink_timer.data = POWERDOWN_FREQ; blink_timeout(POWERDOWN_FREQ); init_timer(&power_timer); power_timer.function = power_timeout; power_timer.expires = jiffies + POWERDOWN_TIMEOUT * HZ; add_timer(&power_timer); } void inline sgi_volume_set(unsigned char volume) { sgi_volume = volume; hpc3c0->pbus_extregs[2][0] = sgi_volume; hpc3c0->pbus_extregs[2][1] = sgi_volume; } void inline sgi_volume_get(unsigned char *volume) { *volume = sgi_volume; } static inline void volume_up_button(unsigned long data) { del_timer(&volume_timer); if (sgi_volume < 0xff) sgi_volume++; hpc3c0->pbus_extregs[2][0] = sgi_volume; hpc3c0->pbus_extregs[2][1] = sgi_volume; if (ioc_icontrol->istat1 & 2) { volume_timer.expires = jiffies + 1; add_timer(&volume_timer); } } static inline void volume_down_button(unsigned long data) { del_timer(&volume_timer); if (sgi_volume > 0) sgi_volume--; hpc3c0->pbus_extregs[2][0] = sgi_volume; hpc3c0->pbus_extregs[2][1] = sgi_volume; if (ioc_icontrol->istat1 & 2) { volume_timer.expires = jiffies + 1; add_timer(&volume_timer); } } static void panel_int(int irq, void *dev_id, struct pt_regs *regs) { unsigned int buttons; buttons = hpc3mregs->panel; hpc3mregs->panel = 3; /* power_interrupt | power_supply_on */ if (ioc_icontrol->istat1 & 2) { /* Wait until interrupt goes away */ disable_irq(SGI_PANEL_IRQ); init_timer(&debounce_timer); debounce_timer.function = debounce; debounce_timer.expires = jiffies + 5; add_timer(&debounce_timer); } if (!(buttons & 2)) /* Power button was pressed */ power_button(); if (!(buttons & 0x40)) { /* Volume up button was pressed */ init_timer(&volume_timer); volume_timer.function = volume_up_button; volume_timer.expires = jiffies + 1; add_timer(&volume_timer); } if (!(buttons & 0x10)) { /* Volume down button was pressed */ init_timer(&volume_timer); volume_timer.function = volume_down_button; volume_timer.expires = jiffies + 1; add_timer(&volume_timer); } } static int panic_event(struct notifier_block *this, unsigned long event, void *ptr) { if (has_paniced) return NOTIFY_DONE; has_paniced = 1; blink_timer.data = PANIC_FREQ; blink_timeout(PANIC_FREQ); return NOTIFY_DONE; } static struct notifier_block panic_block = { panic_event, NULL, 0 }; void indy_reboot_setup(void) { static int setup_done; if (setup_done) return; setup_done = 1; _machine_restart = sgi_machine_restart; _machine_halt = sgi_machine_halt; _machine_power_off = sgi_machine_power_off; request_irq(SGI_PANEL_IRQ, panel_int, 0, "Front Panel", NULL); init_timer(&blink_timer); blink_timer.function = blink_timeout; notifier_chain_register(&panic_notifier_list, &panic_block); } --- NEW FILE: setup.c --- /* * setup.c: SGI specific setup, including init of the feature struct. * * Copyright (C) 1996 David S. Miller (dm...@en...) * Copyright (C) 1997, 1998 Ralf Baechle (ra...@gn...) */ #include <linux/config.h> #include <linux/init.h> #include <linux/kbd_ll.h> #include <linux/kernel.h> #include <linux/kdev_t.h> #include <linux/types.h> #include <linux/console.h> #include <linux/sched.h> #include <linux/pc_keyb.h> #include <asm/addrspace.h> #include <asm/bcache.h> #include <asm/keyboard.h> #include <asm/irq.h> #include <asm/reboot.h> #include <asm/ds1286.h> #include <asm/sgialib.h> #include <asm/sgi/sgimc.h> #include <asm/sgi/sgihpc.h> #include <asm/sgi/sgint23.h> #include <asm/time.h> #include <asm/gdb-stub.h> #ifdef CONFIG_REMOTE_DEBUG extern void rs_kgdb_hook(int); extern void breakpoint(void); static int remote_debug = 0; #endif #if defined(CONFIG_SERIAL_CONSOLE) || defined(CONFIG_ARC_CONSOLE) extern void console_setup(char *); #endif extern void sgitime_init(void); extern struct rtc_ops indy_rtc_ops; void indy_reboot_setup(void); void sgi_volume_set(unsigned char); #define sgi_kh ((struct hpc_keyb *) (KSEG1 + 0x1fbd9800 + 64)) #define KBD_STAT_IBF 0x02 /* Keyboard input buffer full */ static void sgi_request_region(void) { /* No I/O ports are being used on the Indy. */ } static int sgi_request_irq(void (*handler)(int, void *, struct pt_regs *)) { /* Dirty hack, this get's called as a callback from the keyboard driver. We piggyback the initialization of the front panel button handling on it even though they're technically not related with the keyboard driver in any way. Doing it from indy_setup wouldn't work since kmalloc isn't initialized yet. */ indy_reboot_setup(); return request_irq(SGI_KEYBOARD_IRQ, handler, 0, "keyboard", NULL); } static int sgi_aux_request_irq(void (*handler)(int, void *, struct pt_regs *)) { /* Nothing to do, interrupt is shared with the keyboard hw */ return 0; } static void sgi_aux_free_irq(void) { /* Nothing to do, interrupt is shared with the keyboard hw */ } static unsigned char sgi_read_input(void) { return sgi_kh->data; } static void sgi_write_output(unsigned char val) { int status; do { status = sgi_kh->command; } while (status & KBD_STAT_IBF); sgi_kh->data = val; } static void sgi_write_command(unsigned char val) { int status; do { status = sgi_kh->command; } while (status & KBD_STAT_IBF); sgi_kh->command = val; } static unsigned char sgi_read_status(void) { return sgi_kh->command; } struct kbd_ops sgi_kbd_ops = { sgi_request_region, sgi_request_irq, sgi_aux_request_irq, sgi_aux_free_irq, sgi_read_input, sgi_write_output, sgi_write_command, sgi_read_status }; void __init sgi_setup(void) { #ifdef CONFIG_SERIAL_CONSOLE char *ctype; #endif #ifdef CONFIG_REMOTE_DEBUG char *kgdb_ttyd; #endif sgitime_init(); /* Init the INDY HPC I/O controller. Need to call this before * fucking with the memory controller because it needs to know the * boardID and whether this is a Guiness or a FullHouse machine. */ sgihpc_init(); /* Init INDY memory controller. */ sgimc_init(); /* Now enable boardcaches, if any. */ indy_sc_init(); #ifdef CONFIG_SERIAL_CONSOLE /* ARCS console environment variable is set to "g?" for * graphics console, it is set to "d" for the first serial * line and "d2" for the second serial line. */ ctype = ArcGetEnvironmentVariable("console"); if(*ctype == 'd') { if(*(ctype+1)=='2') console_setup ("ttyS1"); else console_setup ("ttyS0"); } #endif #ifdef CONFIG_REMOTE_DEBUG kgdb_ttyd = prom_getcmdline(); if ((kgdb_ttyd = strstr(kgdb_ttyd, "kgdb=ttyd")) != NULL) { int line; kgdb_ttyd += strlen("kgdb=ttyd"); if (*kgdb_ttyd != '1' && *kgdb_ttyd != '2') printk("KGDB: Uknown serial line /dev/ttyd%c, " "falling back to /dev/ttyd1\n", *kgdb_ttyd); line = *kgdb_ttyd == '2' ? 0 : 1; printk("KGDB: Using serial line /dev/ttyd%d for session\n", line ? 1 : 2); rs_kgdb_hook(line); printk("KGDB: Using serial line /dev/ttyd%d for session, " "please connect your debugger\n", line ? 1 : 2); remote_debug = 1; /* Breakpoints and stuff are in sgi_irq_setup() */ } #endif #ifdef CONFIG_ARC_CONSOLE console_setup("ttyS0"); #endif sgi_volume_set(simple_strtoul(ArcGetEnvironmentVariable("volume"), NULL, 10)); #ifdef CONFIG_VT #ifdef CONFIG_SGI_NEWPORT_CONSOLE conswitchp = &newport_con; screen_info = (struct screen_info) { 0, 0, /* orig-x, orig-y */ 0, /* unused */ 0, /* orig_video_page */ 0, /* orig_video_mode */ 160, /* orig_video_cols */ 0, 0, 0, /* unused, ega_bx, unused */ 64, /* orig_video_lines */ 0, /* orig_video_isVGA */ 16 /* orig_video_points */ }; #else conswitchp = &dummy_con; #endif #endif rtc_ops = &indy_rtc_ops; kbd_ops = &sgi_kbd_ops; #ifdef CONFIG_PSMOUSE aux_device_present = 0xaa; #endif } --- NEW FILE: system.c --- /* * system.c: Probe the system type using ARCS prom interface library. * * Copyright (C) 1996 David S. Miller (dm...@en...) */ #include <linux/init.h> #include <linux/kernel.h> #include <linux/types.h> #include <linux/string.h> #include <asm/sgi/sgi.h> #include <asm/sgialib.h> #include <asm/bootinfo.h> enum sgi_mach sgimach; struct smatch { char *name; int type; }; static struct smatch sgi_cputable[] = { { "MIPS-R2000", CPU_R2000 }, { "MIPS-R3000", CPU_R3000 }, { "MIPS-R3000A", CPU_R3000A }, { "MIPS-R4000", CPU_R4000SC }, { "MIPS-R4400", CPU_R4400SC }, { "MIPS-R4600", CPU_R4600 }, { "MIPS-R8000", CPU_R8000 }, { "MIPS-R5000", CPU_R5000 }, { "MIPS-R5000A", CPU_R5000A } }; #define NUM_CPUS 9 /* for now */ static int __init string_to_cpu(char *s) { int i; for(i = 0; i < NUM_CPUS; i++) { if(!strcmp(s, sgi_cputable[i].name)) return sgi_cputable[i].type; } prom_printf("\nYeee, could not determine MIPS cpu type <%s>\n", s); prom_printf("press a key to reboot\n"); prom_getchar(); romvec->imode(); return 0; } /* * We' call this early before loadmmu(). If we do the other way around * the firmware will crash and burn. */ void __init sgi_sysinit(void) { pcomponent *p, *toplev, *cpup = 0; int cputype = -1; /* The root component tells us what machine architecture we * have here. */ p = prom_getchild(PROM_NULL_COMPONENT); /* Now scan for cpu(s). */ toplev = p = prom_getchild(p); while(p) { int ncpus = 0; if(p->type == Cpu) { if(++ncpus > 1) { prom_printf("\nYeee, SGI MP not ready yet\n"); prom_printf("press a key to reboot\n"); prom_getchar(); romvec->imode(); } printk("CPU: %s ", p->iname); cpup = p; cputype = string_to_cpu(cpup->iname); } p = prom_getsibling(p); } if(cputype == -1) { prom_printf("\nYeee, could not find cpu ARCS component\n"); prom_printf("press a key to reboot\n"); prom_getchar(); romvec->imode(); } p = prom_getchild(cpup); while(p) { switch(p->class) { case processor: switch(p->type) { case Fpu: printk("FPU<%s> ", p->iname); break; default: break; }; break; case cache: switch(p->type) { case picache: printk("ICACHE "); break; case pdcache: printk("DCACHE "); break; case sccache: printk("SCACHE "); break; default: break; }; break; default: break; }; p = prom_getsibling(p); } printk("\n"); } |
From: James S. <jsi...@us...> - 2001-11-27 17:59:55
|
Update of /cvsroot/linux-mips/linux/arch/mips/sgi/kernel In directory usw-pr-cvs1:/tmp/cvs-serv13634/sgi/kernel Removed Files: Makefile indy_int.c indy_rtc.c indy_sc.c indy_time.c reset.c setup.c Log Message: Rearrange IP22 files the same way as 64-bit IP22. --- Makefile DELETED --- --- indy_int.c DELETED --- --- indy_rtc.c DELETED --- --- indy_sc.c DELETED --- --- indy_time.c DELETED --- --- reset.c DELETED --- --- setup.c DELETED --- |