357 Commits

Author SHA1 Message Date
1cc7724810 [WATCHDOG] softdog-timer-running-oops.patch
The softdog watchdog timer has a bug that can create an oops:

1.  Load the module without the nowayout option.
2.  Open the driver and close it without writing 'V' before close.
3.  Unload the module.  The timer will continue to run...
4.  Oops happens when timer fires.

Reported Sun, 10 Oct 2004, by Michael Schierl <schierlm@gmx.de>

Fix is easy: always take a reference on the module on open.
Release it only when the device is closed and no timer is running.
Tested on 2.6.13-rc6 using the soft_noboot option.  While the
timer is running and the device is closed, the module use count
stays at 1.  After the timer fires, it drops to 0.  Repeatedly
opening and closing the driver caused no problems.  Please apply.

Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
2005-09-03 13:59:46 +02:00
93642ecd46 [WATCHDOG] w83627hf_wdt.c-initialized_bios_bug
Attached is a small update to the w83627hf watchdog driver
to initialise appropriately if it was already initialised
in the BIOS. On tyan motherboards for e.g. you can init
the watchdog to 4 mins, then when the driver is loaded it
sets the watchdog to "seconds" mode, and then machine will
reboot within 4 seconds. So this patch resets the timeout
to the configured value if the watchdog is already running.

Signed-off-by: P@draig Brady <P@draigBrady.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
2005-09-03 13:58:03 +02:00
94f1e9f316 [WATCHDOG] s3c2410 watchdog - replace reboot notifier
Patch from Dimitry Andric <dimitry.andric@tomtom.com>

Change to using platfrom driver's .shutdown method instead
of an reboot notifier

Signed-off-by: Dimitry Andric <dimitry.andric@tomtom.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
2005-09-03 13:56:06 +02:00
af4bb822bc [WATCHDOG] s3c2410 watchdog power management
Patch from Dimitry Andric <dimitry.andric@tomtom.com>, updated
by Ben Dooks <ben-linux@fluff.org>. Patch is against 2.6.11-mm2

Add power management support to the s3c2410 watchdog, so that
it is shut-down over suspend, and re-initialised on resume.

Also add Dimitry to the list of authors.

Signed-off-by: Dimitry Andric <dimitry.andric@tomtom.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
2005-09-03 13:54:16 +02:00
2dab3cabc4 [WATCHDOG] correct sysfs name for watchdog devices
While looking for possible candidates for our udev.rules package,
I found a few odd ->name properties. /dev/watchdog has minor 130
according to devices.txt. Since all watchdog drivers use the
misc_register() call, they will end up in /sys/class/misc/$foo.
udev may create the /dev/watchdog node if the driver is loaded.
I dont have such a device, so I cant test it.
The drivers below provide names with spaces and even with / in it.
Not a big deal, but apps may expect /dev/watchdog.

Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
2005-09-03 13:51:18 +02:00
09c8a9a0c0 [WATCHDOG] Kconfig+Makefile-clean
Clean the Kconfig+Makefile according to a sorted list
of the drivers of each architecture (and sub-architecture).

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
2005-09-03 13:46:56 +02:00
be3df0f94d [WATCHDOG] Makefile-probe_order-patch
Re-arrange Makefile according to what we want to probe first.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
2005-09-03 13:15:32 +02:00
129521dcc9 Merge linux-2.6 into linux-acpi-2.6 test 2005-09-03 02:44:09 -04:00
ebede60741 [SPARC32]: More dependencies fallout
More stuff that got exposed to sparc32 build due to inclusion of
drivers/char/Kconfig in arch/sparc/Kconfig needs to be excluded.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-09-02 12:20:18 -07:00
138307b475 Merge HEAD from master.kernel.org:/home/rmk/linux-2.6-serial 2005-09-02 00:53:36 -07:00
29db35edb2 [AGPGART] Remove trailing space before \n
From: Denis Vlasenko <vda@ilport.com.ua>
Signed-off-by: Dave Jones <davej@redhat.com>
2005-09-01 10:50:13 -07:00
f8dd49fa05 [SERIAL] mwave is no longer broken
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-09-01 14:25:45 +01:00
986632fd70 Auto-update from upstream 2005-08-31 14:19:44 -07:00
5981d64420 [SERIAL] Convert mwave to use serial8250_(un)?register_port
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-08-31 22:19:33 +01:00
0f302dc354 [ARM] 2866/1: add i.MX set_mctrl / get_mctrl functions
Patch from Sascha Hauer

This patch adds support for setting and getting RTS / CTS via
set_mtctrl / get_mctrl functions.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2005-08-31 21:48:47 +01:00
4fbd151417 [ACPI] check acpi_disabled in IPMI
Signed-off-by: Yann Droneaud <ydroneaud@mandriva.com>
Signed-off-by: Len Brown <len.brown@intel.com>
2005-08-31 16:36:24 -04:00
288ceb8f14 Auto-update from upstream 2005-08-30 09:30:09 -07:00
3cb904caa9 Merge refs/heads/drm-latest from master.kernel.org:/pub/scm/linux/kernel/git/airlied/drm-2.6 2005-08-30 07:45:15 -07:00
8bc2bee26b Merge HEAD from master.kernel.org:/pub/scm/linux/kernel/git/paulus/ppc64-2.6 2005-08-29 21:44:33 -07:00
fb120da678 [PATCH] Make MODULE_DEVICE_TABLE work for vio devices
Make MODULE_DEVICE_TABLE work for vio devices.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-08-30 13:31:56 +10:00
c4365c9235 [RANDOM]: Introduce secure_dccp_sequence_number
Code contributed by Stephen Hemminger.

Signed-off-by: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2005-08-29 15:49:40 -07:00
95ecc5e5a3 Pull unaligned-snsc_event into release branch 2005-08-29 14:13:49 -07:00
27a639a92d Auto-update from upstream 2005-08-29 17:02:17 -04:00
f786648b89 [PATCH] Remove race between con_open and con_close
[ Same race and same patch also by Steven Rostedt <rostedt@goodmis.org> ]

I have a laptop (G3 powerbook) which will pretty reliably hit a race
between con_open and con_close late in the boot process and oops in
vt_ioctl due to tty->driver_data being NULL.

What happens is this: process A opens /dev/tty6; it comes into
con_open() (drivers/char/vt.c) and assign a non-NULL value to
tty->driver_data.  Then process A closes that and concurrently process
B opens /dev/tty6.  Process A gets through con_close() and clears
tty->driver_data, since tty->count == 1.  However, before process A
can decrement tty->count, we switch to process B (e.g. at the
down(&tty_sem) call at drivers/char/tty_io.c line 1626).

So process B gets to run and comes into con_open with tty->count == 2,
as tty->count is incremented (in init_dev) before con_open is called.
Because tty->count != 1, we don't set tty->driver_data.  Then when the
process tries to do anything with that fd, it oopses.

The simple and effective fix for this is to test tty->driver_data
rather than tty->count in con_open.  The testing and setting of
tty->driver_data is serialized with respect to the clearing of
tty->driver_data in con_close by the console_sem.  We can't get a
situation where con_open sees tty->driver_data != NULL and then
con_close on a different fd clears tty->driver_data, because
tty->count is incremented before con_open is called.  Thus this patch
eliminates the race, and in fact with this patch my laptop doesn't
oops.

Signed-off-by: Paul Mackerras <paulus@samba.org>
[ Same patch
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
  in http://marc.theaimsgroup.com/?l=linux-kernel&m=112450820432121&w=2 ]
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-08-27 18:03:42 -07:00
09d4a80e66 Merge HEAD from ../from-linus 2005-08-25 12:45:49 -04:00
76f5858482 [ACPI] delete CONFIG_ACPI_BUS
it is a synonym for CONFIG_ACPI

Signed-off-by: Len Brown <len.brown@intel.com>
2005-08-24 12:11:34 -04:00
8466361ad5 [ACPI] delete CONFIG_ACPI_INTERPRETER
it is a synonym for CONFIG_ACPI

Signed-off-by: Len Brown <len.brown@intel.com>
2005-08-24 12:10:43 -04:00
a238b56350 [PATCH] Kconfig fix (sparc32 drivers/char dependencies)
since sparc32 Kconfig includes drivers/char/Kconfig (instead of duplicating
its parts) we need several new dependencies there to exclude the stuff
broken on sparc32 and not excluded by existing dependencies.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-08-23 18:43:43 -07:00
253a9c3308 [PATCH] Kconfig fix (m32r genrtc)
genrtc is not for m32r; marked as such.  Probably ought to put that into
arch/* - list of "don't build it on <platform>" is getting too long.

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-08-23 18:43:40 -07:00
e9bcb173dd [PATCH] Kconfig fix (epca on 64bit)
epca is broken on 64bit; marked as such

Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-08-23 18:43:39 -07:00
7a9aff3cff drm: fix a bad VERSION check.
I found why my G5 was crashing when using the linux-2.6 version of the
DRM + git-drm.patch from 2.6.13-rc6-mm1, but not with the CVS DRM.
The reason was that dev->agp->cant_use_aperture wasn't getting set,
and the reason for that was that <linux/version.h> no longer gets
included and the #if LINUX_VERSION_CODE < 0x020408 in drm_agpsupport.c
was going the wrong way.  With this patch (and a few others) a 32-bit
server works correctly, as does DRI.

From: Paul Mackerras <paulus@samba.org>
Signed-off-by: Dave Airlie <airlied@linux.ie>
2005-08-23 12:15:43 +10:00
88f399cd0a drm: fixes for powerpc
Remove a bogus check on whether an area is memory (we need a better interface)
also change pgprot flags for powerpc
don't check on x86-64 either

From: Paul Mackerras <paulus@samba.org>
Signed-off-by: Dave Airlie <airlied@linux.ie>
2005-08-20 17:43:33 +10:00
ffbbf7a3cc drm: add new texture upload code from r300 project
Paul Mackerras did some new upload code for r300, I forgot to add it
to the kernel with r300 merge.

Signed-off-by: Dave Airlie <airlied@linux.ie>
2005-08-20 17:40:04 +10:00
8c8b83854e Fix up various printk levels and whitespace corrections.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Dave Jones <davej@redhat.com>
2005-08-17 23:08:11 -07:00
a8b3e6f10f Merge /pub/scm/linux/kernel/git/torvalds/linux-2.6 2005-08-17 22:56:07 -07:00
c8b432dc0c drm: update pci ids for savage and via
Fixup savage and via pci ids

From: Dave Airlie <airlied@linux.ie>
2005-08-16 20:54:18 +10:00
414ed53799 drm: add initial r300 3D support.
This adds initial r300 3D support to the radeon DRM.

From: Nicolai Haehnle, Vladimir Dergachev, and others.
Signed-off-by: David Airlie <airlied@linux.ie>
2005-08-16 20:43:16 +10:00
1a402aaca5 [IA64-SGI] fix unaligned memory access in snsc_event.c
It's been pointed out that environmental events from the system
controllers on Altix machines cause the kernel to complain about
unaligned memory accesses.  This turns out to be because
"be32_to_cpup()" didn't do everything I thought/hoped it did.
I've added calls to pull the offending integers out of the
buffers using get_unaligned() before feeding them to
be32_to_cpup().

Signed-off-by: Greg Howard <ghoward@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
2005-08-15 14:17:49 -07:00
09d9200271 Merge from-linus to-akpm 2005-08-15 16:07:26 -04:00
4bb82551e1 Fix up mmap of /dev/kmem
This leaves the issue of whether we should deprecate the whole thing (or
if we should check the whole mmap range, for that matter) open. Just do
the minimal fix for now.
2005-08-13 14:22:59 -07:00
46acac3b4f [AGPGART] Drop duplicate setting of info->mode in agp_copy_info()
Spotted by Jeremy Fitzhardinge, this change crept in with the multiple
backend support.  It's clearly incorrect to overwrite info->mode after
we just went to lengths to determine which bits to mask out.

Signed-off-by: Dave Jones <davej@redhat.com>
2005-08-11 20:28:56 -07:00
95f193aa4f Merge ../to-linus 2005-08-11 00:56:08 -04:00
01df0e3a79 [PATCH] i8xx_tco.c: arm watchdog only when started
i8xx_tco.c v0.08: only "arm" the watchdog when the watchdog has been
started.  (Kernel Bug 4251: system reset when battery is read and i8xx_tco
driver loaded)

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-08-09 12:08:21 -07:00
282a16749b drm: add savage driver
Add driver for savage chipsets.

From: Felix Kuehling
Signed-off-by: Dave Airlie <airlied@linux.ie>
2005-08-07 15:43:54 +10:00
d27c9b548a drm: remove version.h and any version checks..
This patch removes all the drm kernel conditionals from the kernel DRM tree.

Signed-off-by: Dave Airlie <airlied@linux.ie>
2005-08-07 15:19:58 +10:00
f9abb02040 [PATCH] tpm_infineon: Support for new TPM 1.2 and PNPACPI
This patch includes support for the new Infineon Trusted Platform Module
SLB 9635 TT 1.2 and does further include ACPI-support for both chip
versions (SLD 9630 TT 1.1 and SLB9635 TT 1.2).  Since the ioports and
configuration registers are not correctly set on some machines, the
configuration is now done via PNPACPI, which reads out the correct values
out of the DSDT-table.  Note that you have to have CONFIG_PNP,
CONFIG_ACPI_BUS and CONFIG_PNPACPI enabled to run this driver (assuming
that mainboards including a TPM do have the need for ACPI anyway).

Signed-off-by: Marcel Selhorst <selhorst@crypto.rub.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-08-05 12:22:37 -07:00
e872d4cace Merge ../from-linus 2005-08-05 13:03:06 -04:00
403fe5ae57 [PATCH] rtc: msleep() cannot be used from interrupt
Since the beginning of July my Opteron box was randomly crashing and
being rebooted by hardware watchdog.  Today it finally did it in front
of me, and this patch will hopefully fix it.

The problem is that at the end of June (the 28th, to be exact: commit
47f176fdaf8924bc83fddcf9658f2fd3ef60d573, "[PATCH] Using msleep()
instead of HZ") rtc_get_rtc_time was converted to use msleep() instead
of busy waiting.  But rtc_get_rtc_time is used by hpet_rtc_interrupt,
and scheduling is not allowed during interrupt.  So I'm reverting this
part of original change, replacing msleep() back with busy loop.

The original code was busy waiting for up to 20ms, but on my hardware in
the worst case update-in-progress bit was asserted for at most 363
passes through loop (on 2GHz dual Opteron), much less than even one
jiffie, not even talking about 20ms.  So I changed code to just wait
only as long as necessary.  Otherwise when RTC was set to generate
8192Hz timer, it stopped doing anything for 20ms (160 pulses were
skipped!) from time to time, and this is rather suboptimal as far as I
can tell.

Signed-off-by: Petr Vandrovec <vandrove@vc.cvut.cz>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-08-05 06:57:44 -07:00
aa0ca6b4bb drm: fix warning in drm_pci.c
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Dave Airlie <airlied@linux.ie>
2005-08-05 23:09:14 +10:00
1fad99499a drm: remove the gamma driver
The gamma driver has been broken for quite a while, it doesn't build,
we don't have a userspace, mine is in Ireland etc...

Signed-off-by: Dave Airlie <airlied@linux.ie>
2005-08-05 22:40:34 +10:00