Age | Commit message (Collapse) | Author |
|
Kernel-sync:
This patch is required to allow compilation of the tree with kernel
2.6.19.
This is the original description of the original patch, signed by
David Howells <dhowells@redhat.com>:
Maintain a per-CPU global "struct pt_regs *" variable which can be used instead
of passing regs around manually through all ~1800 interrupt handlers in the
Linux kernel.
The regs pointer is used in few places, but it potentially costs both stack
space and code to pass it around. On the FRV arch, removing the regs parameter
from all the genirq function results in a 20% speed up of the IRQ exit path
(ie: from leaving timer_interrupt() to leaving do_IRQ()).
Where appropriate, an arch may override the generic storage facility and do
something different with the variable. On FRV, for instance, the address is
maintained in GR28 at all times inside the kernel as part of general exception
handling.
Having looked over the code, it appears that the parameter may be handed down
through up to twenty or so layers of functions. Consider a USB character
device attached to a USB hub, attached to a USB controller that posts its
interrupts through a cascaded auxiliary interrupt controller. A character
device driver may want to pass regs to the sysrq handler through the input
layer which adds another few layers of parameter passing.
I've build this code with allyesconfig for x86_64 and i386. I've runtested the
main part of the code on FRV and i386, though I can't test most of the drivers.
I've also done partial conversion for powerpc and MIPS - these at least compile
with minimal configurations.
This will affect all archs. Mostly the changes should be relatively easy.
Take do_IRQ(), store the regs pointer at the beginning, saving the old one:
struct pt_regs *old_regs = set_irq_regs(regs);
And put the old one back at the end:
set_irq_regs(old_regs);
Don't pass regs through to generic_handle_irq() or __do_IRQ().
In timer_interrupt(), this sort of change will be necessary:
- update_process_times(user_mode(regs));
- profile_tick(CPU_PROFILING, regs);
+ update_process_times(user_mode(get_irq_regs()));
+ profile_tick(CPU_PROFILING);
I'd like to move update_process_times()'s use of get_irq_regs() into itself,
except that i386, alone of the archs, uses something other than user_mode().
Some notes on the interrupt handling in the drivers:
(*) input_dev() is now gone entirely. The regs pointer is no longer stored in
the input_dev struct.
(*) finish_unlinks() in drivers/usb/host/ohci-q.c needs checking. It does
something different depending on whether it's been supplied with a regs
pointer or not.
(*) Various IRQ handler function pointers have been moved to type
irq_handler_t.
Signed-Off-By: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Applied the rellevant v4l-dvb part of this patch from
David Brownell <dbrownell@users.sourceforge.net>
kernel-sync:
Original description:
Small driver suspend() fixes in preparation for the PRETHAW events:
- Only compare message events for equality against PM_EVENT_* codes;
not against integers, or using greater/less-than comparisons.
(PM_EVENT_* should really become a __bitwise thing.)
- Explicitly test for SUSPEND events (rather than not-something-else)
before suspending devices.
- Removes more of the confusion between a pm_message_t (wraps event code)
and a "state" ... suspend() originally took a target system state.
These updates are correct and appropriate even without new PM_EVENT codes.
benh: "I think in the Mesh case, we should handle the freeze case as well or
we might get wild DMA."
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
This patch includes at the v4l-dvb tree several documentation
fixes applied at kernel tree.
kernel-sync:
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Jörn Engel <joern@wohnheim.fh-wedel.de>
kernel-sync:
Kernel adds "-include include/linux/autoconf.h" for every file to be
compiled, so, including config.h is not required.
Signed-off-by: Jörn Engel <joern@wohnheim.fh-wedel.de>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
kernel-sync
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Trent Piepho <xyzzy@speakeasy.org>
The Kernel config programs expect 'default y' and don't understand
'default "yes"'.
Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Dyks, Axel (XL) <xl@xlsigned.net>
cinergyt2_poll()" shouldn't return (POLLIN | POLLRDNORM | POLLPRI) when
there are no pending events. User space programs that do non-bocking IO
using "select()" and/or "poll()" would otherwise produce high system load.
Signed-off-by: Axel Dyks <xl@xlsigned.net>
Acked-by: Andreas Oberritter <obi@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Andrew de Quincey <adq_dvb@lidskialf.net>
Currently in /sys/class/dvb/dvbX.demuxY/ we have:
dev
uevent
With the patch, we have (for a PCI DVB device):
dev
device -> ../../../devices/pci0000:00/0000:00:1e.0/0000:03:0d.0
uevent
So userspace tools can (finally) work out which physical device a DVB adapter
refers to. Previously you had to kinda look through dmesg and hope that it
hadn't been dumped out of the buffer. This makes debugging a lot easier if
the system has been up for a long time!
This is done by adding an extra 'struct device *' parameter to
dvb_register_adapter(). It will work with any kind of standard
linux 'device'. Additionally, if someone has an embedded system which does
things differently, they can simply supply 'NULL' and the behaviour will be
as before - the link will simply not appear.
Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Ack'd-by: Manu Abraham <manu@linuxtv.org>
Acked-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Andrew de Quincey <adq_dvb@lidskialf.net>
Spotted a couple more places where it fails to check if
dvb_register_adapter() fails.
Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
|
|
From: Markus Rechberger <mrechberger@gmail.com>
Detaching the device didn't clean up several device files in /dev/dvb,
after applying that patch all dvb devices disappeared as expected.
Signed-off-by: Markus Rechberger <mrechberger@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
Semaphore to mutex conversion.
The conversion was generated via scripts, and the result was validated
automatically via a script as well.
Kernel-sync from patch 3318b
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
kernel-sync
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
|
|
- Latest patch reverted, since __stringfy seems to be needed for
kernel < 2.6.15
- Applied kernel I2C cleanups from Jean Delaware.
- driver names simplified to allow usage of newer printk macros
at v4l2-common.h
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
|
|
- removed unneeded __stringify
- updated i2c-id.h
- kernel-sync
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
|
|
kernel-sync.
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
|
|
From: Greg Kroah-Hartman <gregkh@suse.de>
It is no longer needed, so let's remove it, saving a bit of memory.
kernel-sync
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
|
|
From: David S. Miller <davem@davemloft.net>
kernel-sync
Currently, the version when ENABLE_RC is defined, falls through
to the end of the function without returning anything.
Signed-off-by: David S. Miller <davem@davemloft.net>
|
|
From: Dmitry Torokhov <dtor@mail.ru>
kernel-sync
Fix an OOPS is CinergyT2 driver when registering IR remote
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
From: Stephen Williams <stephen.gw@gmail.com>
Make FE_READ_UNCORRECTED_BLOCKS reset the count after each call,
thus returning a momentary value like all other demods do,
instead of an absolute, ever increasing count.
Signed-off-by: Stephen Williams <stephen.williams@gmail.com>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
|
|
From: Ricardo Cerqueira <v4l@cerqueira.org>
kernel-sync
Ported changes by Dmitry Torokhov <dtor_core@ameritech.net> and added
backwards compatibility checks for kernels < 2.6.15
Signed-off-by: Ricardo Cerqueira <v4l@cerqueira.org>
|
|
[SPARC64]: Oops in pci_alloc_consistent with cingergyT2
From: Guido Guenther <agx@sigxcpu.org>
- Use correct API for allocating and freeing DMA buffers.
Acked-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Michael Krufky <mkrufky@m1k.net>
|
|
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
|
|
Signed-off-by: Michael Krufky <mkrufky@m1k.net>
|
|
This adds type-checking to pm_message_t, so that people can't confuse it
with int or u32. It also allows us to fix "disk yoyo" during suspend
(disk spinning down/up/down).
[We've tried that before; since that cpufreq problems were fixed and
I've tried make allyes config and fixed resulting damage.]
***This patch breaks dvb-kernel compatability
with kernels older than 2.6.14
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Alexander Nyberg <alexn@telia.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Signed-off-by: Michael Krufky <torvalds@osdl.org>
|
|
USB hot unplug Oops fix.
Signed-off-by: Deti Fliegl <deti@fliegl.de>
|
|
- EVIOCSKEYCODE is not supported by this driver, fix potential crash
when it is used by not setting rc_input_dev->keycodesize
- fix key repeat handling (hopefully)
- reduce default poll internal to 50msec (necessary for key repeat handling)
|
|
to LINUX_VERSION_CODE and KERNEL_VERSION. Based on
patch by Olaf Hering.
Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
|
|
|
|
|
|
Martin Loschwitz for discovering the problem.
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Martin Loschwitz <madkiss@madkiss.org>
|
|
|
|
|
|
- replace static spinlock initializations with spin_lock_init()
- add le16_to_cpu() macros to various values aquired via USB
- add __user annotations to user space pointers
|
|
Stefan Lucke for reporting this
|
|
|
|
|
|
(thanks to Stefan Lucke)
note that FE_GET_EVENT still isn't implemented correctly
|
|
|
|
Nov 25 02:54:07 abc kernel: usb_unlink_urb() is deprecated for synchronous unlinks. Use usb_kill_urb() instead.
Nov 25 02:54:07 abc kernel: Badness in usb_unlink_urb at drivers/usb/core/urb.c:456
Nov 25 02:54:07 abc kernel: [<c01031e9>] dump_stack+0x17/0x1b
Nov 25 02:54:07 abc kernel: [<c02c3401>] usb_unlink_urb+0x7f/0x8a
Nov 25 02:54:07 abc kernel: [<f8d4a3c8>] cinergyt2_stop_stream_xfer+0x2c/0x2e [cinergyT2]
|
|
|
|
|
|
- convert remaining printk()s to dprintk()s
|
|
|
|
- fix typo in Kconfig help
|
|
|
|
- don't put static qualifiers on separate line
- re-add debug module parameter
|
|
- even more configurable options
|
|
qualifiers on a separate line
- add new module parameter "debug" and dprintk()
- remove umlauts
|
|
- got rid of using the frontend infrastructure
|