Age | Commit message (Collapse) | Author |
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Doing the v4l2_device registration in the saa7146 core will make it
dependent on v4l2, even for DVB-only boards. This registration and
unregistration belongs in saa7146_vv instead.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Prepare for converting to v4l2_subdev.
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Hans Verkuil <hverkuil@xs4all.nl>
Priority: normal
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
From: Al Viro <viro@ftp.linux.org.uk>
Annotations + stop saa7146_i2c from playing fast and loose with
reuse of ->cpu_addr for host-endian.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Due to the feedback I got, I've changed the -git patch. This needs to be
reflected also at -hg tree.
kernel-sync:
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
Move tuners to common/tuners
There were several issues in the past, caused by the hybrid tuner design, since
now, the same tuner can be used by drivers/media/dvb and drivers/media/video.
This patch moves those common tuners into a common dir. It also moves saa7146
driver into drivers/media/video, where other hybrid drivers are placed.
Kconfig items were rearranged, to split V4L/DVB core from their drivers.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Original patch from Al Viro <viro@ftp.linux.org.uk>
Date: Sat Mar 29 03:07:38 2008 +0000
NULL noise: drivers/media
kernel-sync:
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Harvey Harrison <harvey.harrison@gmail.com>
__FUNCTION__ is gcc-specific, use __func__
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Acked-by: Oliver Endriss <o.endriss@gmx.de>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
|
|
From: Harvey Harrison <harvey.harrison@gmail.com>
Went along with the existing file style.
drivers/media/common/saa7146_core.c:309:6: warning: Using plain integer as NULL pointer
drivers/media/common/saa7146_core.c:311:8: warning: Using plain integer as NULL pointer
drivers/media/common/saa7146_core.c:319:7: warning: Using plain integer as NULL pointer
drivers/media/common/saa7146_core.c:319:28: warning: Using plain integer as NULL pointer
drivers/media/common/saa7146_core.c:325:7: warning: Using plain integer as NULL pointer
drivers/media/common/saa7146_core.c:325:28: warning: Using plain integer as NULL pointer
drivers/media/common/saa7146_fops.c:275:12: warning: Using plain integer as NULL pointer
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
Original changelog:
Author: Joe Perches <joe@perches.com>
Date: Sun Feb 3 17:18:59 2008 +0200
drivers/media/: Spelling fixes
kernel-sync:
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Mauro Carvalho Chehab <mchehab@infradead.org>
kernel-sync:
Backport kernel changesets:
45711f1af6eff1a6d010703b4862e0d2b9afd056
117636092a87a28a013a4acb5de5492645ed620f
642f149031d70415d9318b919d50b71e4724adbd
Also, added newer entreis at compat.h, to avoid needing to add checks for linux
versions inside the source codes.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Oliver Endriss <o.endriss@gmx.de>
Two fixes for the 'saa7146_wait_for_debi_done' code:
(a) Timeout did not work when the routine was called with
interrupts disabled.
(b) Reduce PCI I/O load caused by saa7146_wait_for_debi_done.
Seems to be very important on fast machines!
Based on code posted by Hartmut Birr @vdr-portal.
Thanks-to: Hartmut Birr <e9hack@googlemail.com>
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
|
|
PCI-dependent videobuf_foo methods were renamed as videobuf_pci_foo.
Also, videobuf_dmabuf is now part of videobuf-dma-sg private struct.
So, to access it, a subroutine call is needed.
This patch renames all occurences of those function calls to be
consistent with the video-buf split.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
http://thread.gmane.org/gmane.comp.video.video4linux/34978/focus=34981
Reviewed-by: Ricardo Cerqueira <v4l@cerqueira.org>
|
|
From: Oliver Endriss <o.endriss@gmx.de>
Interrupt processing fixed: First handle interrupt, then acknowledge it.
Otherwise the same interrupt might occur twice.
Cleaned-up i2c interrupt handler and i2c error messages.
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
|
|
From: Oliver Endriss <o.endriss@gmx.de>
Convert av7110_v4l.c to use i2c_transfer() instead of saa7146_i2c_transfer().
Make saa7146_i2c_transfer() static.
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
|
|
From: Oliver Endriss <o.endriss@gmx.de>
Fix signedness warnings (gcc 4.1.1, kernel 2.6.22).
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
|
|
From: Jon Burgess <jburgess777@googlemail.com>
I added saa7146_vmalloc_destroy_pgtable() which frees the resources
allocated by saa7146_vmalloc_build_pgtable() and updated the callers in
budget-core.c and av7110.c. I have also been through the updated
functions and updated the error paths to ensure they free all allocated
resources on error.
I also realised that there are other callers to saa7146_pgtable_free()
which did not have any sg DMA mapped so it seems wrong to add the
pci_unmap_sg() into that function. Instead I created
saa7146_vmalloc_destroy_pgtable() to do this.
Also included in this patch are the previous fixes for pci_unmap_sg()
and syncing the PCI streamed data to work with a SWIOTLB and match the
requirements documented in DMA-API.txt.
Signed-off-by: Jon Burgess <jburgess777@googlemail.com>
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
|
|
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: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
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>
|
|
Conversions from kmalloc+memset to k(z|c)alloc
Conversions from kmalloc+memset to k(z|c)alloc.
kernel-sync
Signed-off-by: Panagiotis Issaris <takis@issaris.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
- Updated firmware names
- kfree (NULL) is valid.
- assert_spin_locked() is the new way
- small fixes to make in sync with kernel
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
|
|
From: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
kernel-sync
- Removed inexistent site
- keep debug #if 0 at kernel patches
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
|
|
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
|
|
load
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
|
|
http://kerneljanitors.org/TODO
- convert from pci_module_init to pci_register_driver
Signed-off-by: Christophe Lucas <c.lucas@ifrance.com>
Signed-off-by: Domen Puncer <domen@coderock.org>
|
|
|
|
|
|
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
|
|
- 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
|
|
|
|
- add SAA7146_ISR_CLEAR
- use those consistently in the ttpci driver
|
|
|
|
|
|
|
|
- remove unused code
Thanks to Adrian Bunk <bunk@stusta.de>
|
|
|
|
work reliably yet, though
|
|
|
|
store the pointer in our saa7146_pagetable struct and free it
later on correctly (only used by budget DVB drivers)
- remove some commented out debug code
|
|
this makes sure that the pagetable is in lowmem kernel memory, so we
can DMA to it. this fixes the bug where budget-core.o oopsed on machines
with highmem enabled.
|
|
- add "new" saa7146_wait_for_debi_done() function, remove other versions
from av7110 and budget.ci
- make budget-ci use this gpio function and the new wait_...() function,
therefore fix
BORROWED_FROM_AV7110_H_BUT_REALLY_BELONGS_IN_SAA7146_DEFS_H remark
|
|
sanity checks of the arguments (if a bad pagetable is created,
unpredictable thinks can happen. trust me... ;-)
- follow this change for the several uses
|
|
- use some default values, so the hardware is always in a sane state
|
|
V4L2_FIELD_ALTERNATE vs. V4L2_FIELD_INTERLACED captures
|
|
for debugging purposes and committed this change by accident. My PC at
home does a hard freeze when the master reset is done...
|
|
|
|
- fix pgtable_build_single, it should work for all kinds of
buffers (system memory (kernel/user) and gfx-memory)
- add/change some debug messages
|