summaryrefslogtreecommitdiff
path: root/arch/m68k
AgeCommit message (Collapse)Author
2012-01-22m68k: Fix assembler constraint to prevent overeager gcc optimisationAndreas Schwab
Passing the address of a variable as an operand to an asm statement doesn't mark the value of this variable as used, so gcc may optimize its initialisation away. Fix this by using the "m" constraint instead. Signed-off-by: Andreas Schwab <schwab@linux-m68k.org> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Cc: stable@vger.kernel.org
2012-01-22m68k/irq: Remove obsolete IRQ_FLG_* definitionsGeert Uytterhoeven
The m68k core irq code stopped honoring these flags during the irq restructuring in 2006. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2012-01-04m68k/mac: Make CONFIG_HEARTBEAT unavailable on MacGeert Uytterhoeven
mac_heartbeat() was never really implemented. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Acked-by: Greg Ungerer <gerg@uclinux.org>
2011-12-28m68k/serial: Remove references to obsolete serial config optionsGeert Uytterhoeven
- ATARI_MFPSER, ATARI_MIDI, MULTIFACE_III_TTY, and DN_SERIAL have no corresponding drivers (anymore), - Clean up SERIAL_CONSOLE dependencies and help text. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k: Don't comment out syscalls used by glibcAndreas Schwab
Define again the syscalls that are used by glibc so that it is possible to compile a feature-complete glibc with the newest kernel headers. Signed-off-by: Andreas Schwab <schwab@linux-m68k.org> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/atari: Move declaration of atari_SCC_reset_done to header fileGeert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/serial: Remove references to obsolete CONFIG_SERIAL167Geert Uytterhoeven
commit 51c9d654c2def97827395a7fbfd0c6f865c26544 ("Staging: delete tty drivers") removed the MVME167 serial driver, but forgot to remove these references. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/hp300: Export hp300_ledstateGeert Uytterhoeven
The accidental loss of CONFIG_DIO in commit 0e152d80507b75c00aac60f2ffc586360687cd52 ("m68k: reorganize Kconfig options to improve mmu/non-mmu selections") exposed a missing symbol export in m68k allmodconfig. If CONFIG_HP300=y but CONFIG_HPLANCE (which is bool, and depends on CONFIG_DIO) is not set, and CONFIG_MVME147=y and CONFIG_MVME147_NET=m, 7990.c is compiled as a module, giving: ERROR: "ledstate" [drivers/net/ethernet/amd/7990.ko] undefined! Add the missing export, and rename ledstate to hp300_ledstate while we're at it, as it's a too generic name. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k: Initconst section fixesAndi Kleen
Signed-off-by: Andi Kleen <ak@linux.intel.com> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/mac: cleanup macro caseFinn Thain
Code style convention has macro names in uppercase. Change MAC_VIA_IIci to MAC_VIA_IICI. Also remove an obsolete comment. Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10mac_scsi: fix mac_scsi on some powerbooksFinn Thain
Fix the mac_scsi interrupt edge trigger on non-RBV PowerBooks. This doesn't appear to help my PowerBook 520 but the NetBSD source reveals that the PowerBook 500 series is different than the others. Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/mac: fix powerbook 150 adb_typeFinn Thain
The PowerBook 150 is a actually a Duo underneath. Fix the adb_type. Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/mac: fix baboon irq disable and shutdownFinn Thain
The baboon_disabled hack is broken because it is missing an irq shutdown method. So releasing a Baboon irq kills the other Baboon irqs. But we don't really need this hack because we don't have media bay support and TREX uses a NuBus IRQ. Remove it. Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/mac: oss irq fixesFinn Thain
The IOP driver calls into the OSS driver to enable its IRQ. This undesirable coupling between drivers only exists because the OSS driver doesn't correctly handle all of its machspec IRQs. Fix OSS handling of enable/disable for VIA1 IRQs (8 thru 15) which includes MAC_IRQ_ADB. Back when I implemented pmac_zilog support I redefined IRQ_MAC_SCC incorrectly. Change this to a machspec IRQ so that it works on OSS. Clean up the unused OSS audio IRQ and OSS_IRQLEV_* cruft that only confuses things. Fix the OSS description in macints.c and remove an obsolete comment. Don't enable the VIA1 irq before registering the handler. Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/mac: fix nubus slot irq disable and shutdownFinn Thain
Improve NuBus slot interrupt handling code and documentation. This patch fixes the NuBus NIC (mac8390) in my Quadra 700. Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/mac: enable via_alt_mapping on performa 580Finn Thain
Enable via_alt_mapping on the Performa 588 and tidy up related documentation. I'm betting that remapped IRQs work just fine on the Performa 580 series since it works on the LC 630 and the logic board part numbers are reputedly the same. And the consensus seems to be that the Mac TV is essentially a Performa 550, not dissimilar to the Performa 520, so set the via_type accordingly. Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/mac: cleanup forward declarationsFinn Thain
Move some forward declarations into header files and adjust includes. Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/mac: cleanup mac_irq_pendingFinn Thain
mac_irq_pending() has only one caller (mac_esp.c). Nothing tests for Baboon, PSC or OSS pending interrupts. Until that need arises, let's keep it simple and remove all the unused abstraction. Replace it with a routine to check for SCSI DRQ. Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/mac: cleanup mac_clear_irqFinn Thain
mac_clear_irq() is dead code and has been dead for as long as I can recall. On certain Mac models, certain irqs can't be cleared this way. Outside of irq dispatch, this code appears be unusable without busy loops or worse, and for irq dispatch we duplicate the same logic. Remove mac_clear_irq() and supporting code. Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/mac: early consoleFinn Thain
Revive the old mac_serial_print() routine as mac_early_print(). mac_serial_print() did not function because it did not use the right offsets for its stack arguments. Fix this and make compilation conditional on CONFIG_EARLY_PRINTK instead of the obscure MAC_SERIAL_DEBUG macro. Give mac_early_print() a new string length parameter to fit the early console API. Send output to the framebuffer as well as serial ports. Change the line rate to 38400 baud to match the default for the real (pmac_zilog) serial console. Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/mvme16x: Add support for EARLY_PRINTKKars de Jong
Added support for EARLY_PRINTK when running on an MVME16x board. Signed-off-by: Kars de Jong <jongk@linux-m68k.org> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-10m68k/serial: SERIAL_PORT_DFNS only if CONFIG_ISAKars de Jong
Only define SERIAL_PORT_DFNS when CONFIG_ISA is defined. Otherwise the first 4 slots in the 8250 driver are unavailable on non-ISA machines. Signed-off-by: Kars de Jong <jongk@linux-m68k.org> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-12-06m68k: Wire up process_vm_{read,write}vGeert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Acked-by: Greg Ungerer <gerg@uclinux.org>
2011-11-08m68k/mac: Remove mac_irq_{en,dis}able() wrappersFinn Thain
Signed-off-by: Finn Thain <fthain@telegraphics.com.au> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-11-08m68k/irq: Remove obsolete support for user vector interrupt fixupsGeert Uytterhoeven
It was used on Apollo only, before its conversion to genirq. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-11-08m68k/irq: Remove obsolete m68k irq frameworkGeert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-11-08m68k/q40: Convert Q40/Q60 to genirqGeert Uytterhoeven
q40_irq_handler() must be kept to translate ISA IRQs to the range 1-15. q40_probe_irq_o{ff,n}() become unused. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Richard Zidlicky <rz@linux-m68k.org>
2011-11-08m68k/sun3: Convert Sun3/3x to genirqGeert Uytterhoeven
Replace the custom irq handler that masks the irq and calls do_IRQ(), and the unmasking in the individual handlers, by handle_level_irq(). Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Sam Creasey <sammy@sammy.net>
2011-11-08m68k/sun3: Use the kstat_irqs_cpu() wrapperGeert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Acked-by: Sam Creasey <sammy@sammy.net>
2011-11-08m68k/apollo: Convert Apollo to genirqGeert Uytterhoeven
Replace the custom user vector interrupt handler that calls do_IRQ() and does an EOI by handle_fasteoi_irq(). Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Peter De Schrijver <p2@debian.org>
2011-11-08m68k/vme: Convert VME to genirqGeert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Richard Hirst <rhirst@parisc-linux.org>
2011-11-08m68k/hp300: Convert HP9000/300 and HP9000/400 to genirqGeert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Philip Blundell <philb@gnu.org>
2011-11-08m68k/mac: Optimize interrupts using chain handlersGeert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-11-08m68k/mac: Convert Mac to genirqGeert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-11-08m68k/amiga: Optimize interrupts using chain handlersGeert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-11-08m68k/amiga: Convert Amiga to genirqGeert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-11-08m68k/amiga: Refactor amiints.cGeert Uytterhoeven
- Remove filename in comments, - Reorder functions so we no longer need forward declarations. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-11-08m68k/atari: Remove code and comments about different irq typesGeert Uytterhoeven
This code was obsoleted during the irq restructuring in 2006. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-11-08m68k/atari: Convert Atari to genirqGeert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> [v1] Acked-by: Thomas Gleixner <tglx@linutronix.de>
2011-11-08m68k/irq: Add genirq supportGeert Uytterhoeven
Disabled on all platforms for now Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> [v1] Acked-by: Thomas Gleixner <tglx@linutronix.de>
2011-11-08m68k/irq: Remove obsolete IRQ_FLG_* usersGeert Uytterhoeven
The m68k core irq code stopped honoring these flags during the irq restructuring in 2006. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-11-08m68k/irq: Rename {,__}m68k_handle_int()Geert Uytterhoeven
- Rename m68k_handle_int() to generic_handle_irq(), and drop the unneeded asmlinkage, - Rename __m68k_handle_int() to do_IRQ(). Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-11-08m68k/irq: Add m68k_setup_irq_controller()Geert Uytterhoeven
This is a wrapper around m68k_setup_irq_chip() that discards its dummy second parameter, to ease the future transition to genirq. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2011-11-08m68k/irq: Extract irq_set_chip()Geert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Acked-by: Thomas Gleixner <tglx@linutronix.de>
2011-11-08m68k/irq: Rename setup_irq() to m68k_setup_irq() and make it staticGeert Uytterhoeven
It has nothing to do with the standard one in <linux/irq.h> Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Acked-by: Thomas Gleixner <tglx@linutronix.de>
2011-11-08m68k/irq: Switch irq_chip methods to "struct irq_data *data"Geert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Acked-by: Thomas Gleixner <tglx@linutronix.de>
2011-11-08m68k/irq: Rename irq_node to irq_dataGeert Uytterhoeven
Make it more similar to the genirq version: - Add an irq field Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Acked-by: Thomas Gleixner <tglx@linutronix.de>
2011-11-08m68k/irq: Kill irq_node_t typedef, always use struct irq_nodeGeert Uytterhoeven
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Acked-by: Thomas Gleixner <tglx@linutronix.de>
2011-11-08m68k/irq: Rename irq_controller to irq_chipGeert Uytterhoeven
Make it more similar to the genirq version: - Remove lock (unused as we don't do SMP anyway), - Prepend methods with irq_, - Make irq_startup() return unsigned int. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Acked-by: Thomas Gleixner <tglx@linutronix.de>
2011-11-08m68k: Revive lost DIO bus config optionGeert Uytterhoeven
commit 0e152d80507b75c00aac60f2ffc586360687cd52 ("m68k: reorganize Kconfig options to improve mmu/non-mmu selections") accidentally dropped the DIO bus config option. Re-add it to the "Bus support" section. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>