summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CREDITS8
-rw-r--r--MAINTAINERS9
-rw-r--r--arch/parisc/Kconfig39
-rw-r--r--arch/parisc/kernel/irq.c4
-rw-r--r--arch/parisc/kernel/sys_parisc.c30
-rw-r--r--arch/parisc/lib/Makefile1
-rw-r--r--drivers/parisc/Kconfig36
-rw-r--r--drivers/parisc/led.c3
-rw-r--r--drivers/parport/Kconfig16
-rw-r--r--include/asm-parisc/mman.h2
10 files changed, 109 insertions, 39 deletions
diff --git a/CREDITS b/CREDITS
index 6f7fb8058925..768888cf3c7b 100644
--- a/CREDITS
+++ b/CREDITS
@@ -562,7 +562,7 @@ S: USA
N: Randolph Chung
E: tausq@debian.org
D: Linux/PA-RISC hacker
-S: Fremont, CA 94538
+S: Los Altos, CA 94022
S: USA
N: Juan Jose Ciarlante
@@ -1141,11 +1141,11 @@ S: Stellenbosch, Western Cape
S: South Africa
N: Grant Grundler
-E: grundler@puffin.external.hp.com
-W: http://www.grundler.net/
+E: grundler@parisc-linux.org
W: http://obmouse.sourceforge.net/
+W: http://www.parisc-linux.org/
D: obmouse - rewrote Olivier Florent's Omnibook 600 "pop-up" mouse driver
-D: PA-RISC - IO Interrupt/PCI HBA/IO MMU author and architect
+D: PA-RISC - Interrupt/PCI HBA/IOMMU author and architect
S: Mountain View, California
S: USA
diff --git a/MAINTAINERS b/MAINTAINERS
index a48bdd84659f..33c0ed3d1a9a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1283,6 +1283,15 @@ L: linux-parport@torque.net
W: http://www.torque.net/linux-pp.html
S: Maintained
+PARISC ARCHITECTURE
+P: Matthew Wilcox
+M: matthew@wil.cx
+P: Grant Grundler
+M: grundler@parisc-linux.org
+L: parisc-linux@parisc-linux.org
+W: http://www.parisc-linux.org/
+S: Maintained
+
PERSONALITY HANDLING
P: Christoph Hellwig
M: hch@infradead.org
diff --git a/arch/parisc/Kconfig b/arch/parisc/Kconfig
index 8ad755926b76..d5b4ddcae945 100644
--- a/arch/parisc/Kconfig
+++ b/arch/parisc/Kconfig
@@ -93,10 +93,27 @@ config PA11
config PARISC64
bool "64-bit kernel"
depends on PA8X00
+ help
+ Enable this if you want to support 64bit kernel on PA-RISC platform.
+
+ At the moment, only people willing to use more than 2GB of RAM,
+ or having a 64bit-only capable PA-RISC machine should say Y here.
+
+ Since there is no 64bit userland on PA-RISC, there is no point to
+ enable this option otherwise. The 64bit kernel is significantly bigger
+ and slower than the 32bit one.
config PDC_NARROW
bool "32-bit firmware"
depends on PARISC64
+ help
+ This option will enable owners of C160, C180, C200, C240, C360, J280,
+ J282, J2240 and some D/K/R class to run a 64bit kernel with their
+ 32bit PDC firmware.
+
+ Nobody should try this option unless they know what they are doing.
+
+ If unsure, say N.
config SMP
bool "Symmetric multi-processing support"
@@ -211,14 +228,11 @@ source "drivers/parport/Kconfig"
source "drivers/block/Kconfig"
-menu "ATA/IDE/MFM/RLL support"
- depends on SUPERIO
+menu "ATA/IDE/MFM/RLL support"
config IDE
tristate "ATA/IDE/MFM/RLL support"
-
source "drivers/ide/Kconfig"
-
endmenu
menu "SCSI support"
@@ -245,6 +259,7 @@ config SCSI
source drivers/scsi/Kconfig
+
endmenu
source "drivers/md/Kconfig"
@@ -323,9 +338,21 @@ menu "Console drivers"
config STI_CONSOLE
bool "STI console"
help
- The STI console is the builtin display/keyboard on HP-PARISC
- machines. Say Y here to build support for it into your kernel.
+ STI refers to the HP "Standard Text Interface" which is a set of
+ BIOS routines contained in a ROM chip in HP PA-RISC based machines.
+ Enabling this option will give you an 8 color text console on
+ most of the PA-RISC systems.
+ Really old HP boxes may not have STI, in which case you must use the
+ PDC console or your primary serial port as a console.
+
+ The text console uses a strange memory layout, and changing the
+ plane mask to create colored characters requires calls to the STI
+ routines. Because of that do not expect it to be actually very fast,
+ but it is sufficient for basic text console functions, including fonts.
+
The alternative is to use your primary serial port as a console.
+
+ It is safe to enable this option, so you should probably say "Y".
config DUMMY_CONSOLE
bool
diff --git a/arch/parisc/kernel/irq.c b/arch/parisc/kernel/irq.c
index 9eb560834785..d4a3b0e5ecab 100644
--- a/arch/parisc/kernel/irq.c
+++ b/arch/parisc/kernel/irq.c
@@ -235,7 +235,7 @@ int show_interrupts(struct seq_file *p, void *v)
#ifdef CONFIG_SMP
for (; j < NR_CPUS; j++)
#endif
- seq_printf(p, "%10u ", kstat.irqs[j][regnr][irq_no]);
+ seq_printf(p, "%10u ", kstat_cpu(j).irqs[regnr][irq_no]);
seq_printf(p, " %14s",
region->data.name ? region->data.name : "N/A");
@@ -372,7 +372,7 @@ void do_irq(struct irqaction *action, int irq, struct pt_regs * regs)
int cpu = smp_processor_id();
irq_enter();
- ++kstat.irqs[cpu][IRQ_REGION(irq)][IRQ_OFFSET(irq)];
+ ++kstat_cpu(cpu).irqs[IRQ_REGION(irq)][IRQ_OFFSET(irq)];
DBG_IRQ(irq, ("do_irq(%d) %d+%d\n", irq, IRQ_REGION(irq), IRQ_OFFSET(irq)));
diff --git a/arch/parisc/kernel/sys_parisc.c b/arch/parisc/kernel/sys_parisc.c
index a94fefc9991d..e879aa92a1bc 100644
--- a/arch/parisc/kernel/sys_parisc.c
+++ b/arch/parisc/kernel/sys_parisc.c
@@ -149,24 +149,42 @@ long sys_shmat_wrapper(int shmid, char *shmaddr, int shmflag)
/* Fucking broken ABI */
+#ifdef CONFIG_PARISC64
+extern asmlinkage long sys_truncate(const char *, unsigned long);
+extern asmlinkage long sys_ftruncate(unsigned int, unsigned long);
+asmlinkage long parisc_truncate64(const char * path,
+ unsigned int high, unsigned int low)
+{
+ return sys_truncate(path, (long)high << 32 | low);
+}
+
+asmlinkage long parisc_ftruncate64(unsigned int fd,
+ unsigned int high, unsigned int low)
+{
+ return sys_ftruncate(fd, (long)high << 32 | low);
+}
+#else
+
extern asmlinkage long sys_truncate64(const char *, loff_t);
extern asmlinkage long sys_ftruncate64(unsigned int, loff_t);
-extern asmlinkage ssize_t sys_pread64(unsigned int fd, char *buf,
- size_t count, loff_t pos);
-extern asmlinkage ssize_t sys_pwrite64(unsigned int fd, const char *buf,
- size_t count, loff_t pos);
asmlinkage long parisc_truncate64(const char * path,
unsigned int high, unsigned int low)
{
- return sys_truncate(path, (loff_t)high << 32 | low);
+ return sys_truncate64(path, (loff_t)high << 32 | low);
}
asmlinkage long parisc_ftruncate64(unsigned int fd,
unsigned int high, unsigned int low)
{
- return sys_ftruncate(fd, (loff_t)high << 32 | low);
+ return sys_ftruncate64(fd, (loff_t)high << 32 | low);
}
+#endif
+
+extern asmlinkage ssize_t sys_pread64(unsigned int fd, char *buf,
+ size_t count, loff_t pos);
+extern asmlinkage ssize_t sys_pwrite64(unsigned int fd, const char *buf,
+ size_t count, loff_t pos);
asmlinkage ssize_t parisc_pread64(unsigned int fd, char *buf, size_t count,
unsigned int high, unsigned int low)
diff --git a/arch/parisc/lib/Makefile b/arch/parisc/lib/Makefile
index e89a845ae549..1a3a8066d6a6 100644
--- a/arch/parisc/lib/Makefile
+++ b/arch/parisc/lib/Makefile
@@ -2,4 +2,5 @@
# Makefile for parisc-specific library files
#
+L_TARGET := lib.a
obj-y := lusercopy.o bitops.o checksum.o io.o memset.o
diff --git a/drivers/parisc/Kconfig b/drivers/parisc/Kconfig
index f315bd2db227..8919ff77718d 100644
--- a/drivers/parisc/Kconfig
+++ b/drivers/parisc/Kconfig
@@ -22,18 +22,22 @@ config GSC_LASI
bool "Lasi I/O support"
depends on GSC
help
- Say Y here to directly support the Lasi controller chip found on
- PA-RISC workstations. Linux-oriented documentation for this chip
- can be found at <http://www.parisc-linux.org/documentation/>.
+ Say Y here to support the Lasi multifunction chip found in
+ many PA-RISC workstations & servers. It includes interfaces
+ for a parallel port, serial port, NCR 53c710 SCSI, Apricot
+ Ethernet, Harmony audio, PS/2 keyboard & mouse, ISDN, telephony
+ and floppy. Note that you must still enable all the individual
+ drivers for these chips.
config GSC_WAX
bool "Wax I/O support"
depends on GSC
help
- Say Y here to support the Wax GSC to EISA Bridge found in some older
- systems, including B/C/D/R class. Some machines use Wax for other
- purposes, such as providing one of the serial ports or being an
- interface chip for an X.25 GSC card.
+ Say Y here to support the Wax multifunction chip found in some
+ older systems, including B/C/D/R class and 715/64, 715/80 and
+ 715/100. Wax includes an EISA adapter, a serial port (not always
+ used), a HIL interface chip and is also known to be used as the
+ GSC bridge for an X.25 GSC card.
config EISA
bool "EISA support"
@@ -64,7 +68,8 @@ config GSC_DINO
machines from the B132 to the C360, the J2240 and the A180. Some
GSC/HSC cards (eg gigabit & dual 100 Mbit Ethernet) have a Dino on
the card, and you also need to say Y here if you have such a card.
- If in doubt, say Y.
+ Note that Dino also supplies one of the serial ports on certain
+ machines. If in doubt, say Y.
config PCI_LBA
bool "LBA/Elroy PCI support"
@@ -84,6 +89,8 @@ config IOMMU_SBA
depends on PCI_LBA
default y
+source "drivers/pci/Kconfig"
+
#config PCI_EPIC
# bool "EPIC/SAGA PCI support"
# depends on PCI
@@ -93,11 +100,18 @@ config SUPERIO
depends on PCI
help
Say Y here to support the SuperIO chip found in Bxxxx, C3xxx and
- J5xxx+ machines.
-
-source "drivers/pci/Kconfig"
+ J5xxx+ machines. This enables IDE, Floppy, Parallel Port, and
+ Serial port on those machines.
config CHASSIS_LCD_LED
bool "Chassis LCD and LED support"
+ help
+ Say Y here if you want to enable support for the Heartbeat,
+ Disk/Network activities LEDs on some PA-RISC machines,
+ or support for the LCD that can be found on recent material.
+
+ This has nothing to do with LED State support for A, J and E class.
+
+ If unsure, say Y.
endmenu
diff --git a/drivers/parisc/led.c b/drivers/parisc/led.c
index 9ecaf2f3d139..d57179c44908 100644
--- a/drivers/parisc/led.c
+++ b/drivers/parisc/led.c
@@ -31,6 +31,7 @@
#include <linux/reboot.h>
#include <linux/proc_fs.h>
#include <linux/ctype.h>
+#include <linux/blkdev.h>
#include <asm/io.h>
#include <asm/processor.h>
#include <asm/hardware.h>
@@ -405,7 +406,7 @@ static void led_get_diskio_stats(int addvalue)
total = 0;
for (major = 0; major < DK_MAX_MAJOR; major++) {
for (disk = 0; disk < DK_MAX_DISK; disk++)
- total += kstat.dk_drive[major][disk];
+ total += dkstat.drive[major][disk];
}
total -= diskio_total_last;
diff --git a/drivers/parport/Kconfig b/drivers/parport/Kconfig
index a9740348c332..a3107142e38d 100644
--- a/drivers/parport/Kconfig
+++ b/drivers/parport/Kconfig
@@ -38,9 +38,10 @@ config PARPORT_PC
tristate "PC-style hardware"
depends on PARPORT
---help---
- You should say Y here if you have a PC-style parallel port. All IBM
- PC compatible computers and some Alphas have PC-style parallel
- ports.
+ You should say Y here if you have a PC-style parallel port. All
+ IBM PC compatible computers and some Alphas have PC-style
+ parallel ports. PA-RISC owners should only say Y here if they
+ have a SuperIO parallel port.
This code is also available as a module. If you want to compile it
as a module ( = code which can be inserted in and removed from the
@@ -121,12 +122,9 @@ config PARPORT_ATARI
called parport_atari.o. If in doubt, saying N is the safe plan.
config PARPORT_GSC
- tristate "LASI/ASP builtin parallel-port"
- depends on GSC_LASI && PARPORT
- help
- Say Y here to build in low-level parallel-support for PC-style
- hardware integrated in the LASI-Controller (on the GSC Bus) for
- HP-PARISC workstations.
+ tristate
+ depends on GSC
+ default PARPORT
config PARPORT_SUNBPP
tristate "Sparc hardware (EXPERIMENTAL)"
diff --git a/include/asm-parisc/mman.h b/include/asm-parisc/mman.h
index cab2285006d2..0ae731597f20 100644
--- a/include/asm-parisc/mman.h
+++ b/include/asm-parisc/mman.h
@@ -18,6 +18,8 @@
#define MAP_LOCKED 0x2000 /* pages are locked */
#define MAP_NORESERVE 0x4000 /* don't check for reservations */
#define MAP_GROWSDOWN 0x8000 /* stack-like segment */
+#define MAP_POPULATE 0x10000 /* populate (prefault) pagetables */
+#define MAP_NONBLOCK 0x20000 /* do not block on IO */
#define MS_SYNC 1 /* synchronous memory sync */
#define MS_ASYNC 2 /* sync memory asynchronously */