Age | Commit message (Collapse) | Author |
|
From: Oliver Endriss <o.endriss@gmx.de>
Infrared remote control support rewritten.
Now each device provides its own event device, keymap, protocol,
inversion and address setting.
EVIOCGKEYCODE and EVIOCSKEYCODE ioctls are supported to read/modify
a keymap. Keymaps may be loaded using
- input tools (keyb etc.)
- av7110_loadkeys (obsolete, for backward compatibility)
New command line parameters:
- ir_protocol: select infrared protocol: 0 RC5, 1 RCMM (default)
- ir_inversion: signal inversion: 0 not inverted (default), 1 inverted
- ir_device_mask: bitmask of infrared devices (default: accept all)
Those parameters may be set anytime.
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
|
|
From: Herbert Poetzl <herbert@13thfloor.at>
dvb kernel_thread to kthread API port.
It is running fine here, including module load/unload and software suspend
(which doesn't work as expected with or without this patch :).
I didn't convert the dvb_ca_en50221 as I do not have such an interface, but
if the conversion process is fine with the v4l-dvb maintainers, it should not
be a problem to send a patch for that too ...
Signed-off-by: Herbert Poetzl <herbert@13thfloor.at>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Oliver Endriss <o.endriss@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
|
|
From: Oliver Endriss <o.endriss@gmx.de>
Fixed unregistering the vbi device for cards without analog tuner.
Thanks to Marco Schluessler <marco@lordzodiac.de> for pointing out this bug.
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
|
|
From: Greg Kroah-Hartman <gregkh@suse.de>
Also fixes up all files that #include it.
kernel-sync: backport from kernel to v4l/dvb tree
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.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>
|
|
From: Adrian Bunk <bunk@stusta.de>
- make needlessly global code static
- #if 0 the following unused global functions:
- b2c2/flexcop-dma.c: flexcop_dma_control_packet_irq()
- b2c2/flexcop-dma.c: flexcop_dma_config_packet_count()
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Michael Krufky <mkrufky@m1k.net>
|
|
- implemented v4l2 api for sliced vbi data output
to pass WSS data from userspace to the av7110
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
Improved recovery from ARM crash and the way a crash is detected.
Minor white space clean-up, debug output fixed.
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
|
|
- Reverted objectionable fix in saa7146_hlp.c
- Merged in improved dvb 64-bit fixes from Peter Beutner.
Signed-off-by: Peter Beutner <p.beutner@gmx.net>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
|
|
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
|
|
definitions for sound chip MSP3415
Signed-off-by: Marco Schluessler <marco@lordzodiac.de>
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
|
|
- extended rc5 protocol, firmware >= 0x2620 required
- key-up timer slightly adjusted
- completely moved remote control code to av7110_ir.c
- support for multiple ir receivers
- for now, all av7110 cards share the same ir configuration and event device
|
|
av7110.c and av7110_av.c
- fix error message in StartHWFilter
- do not StopHWFilter for handle 0xffff
Signed-off-by: Wolfgang Rohdewald <wolfgang@rohdewald.de>
|
|
- make sure ERESTARTSYS will be propagated
- ReleaseBitmap: starting with Firmware 261e, also release when
BMP_LOADING
- removes unused #define BMP_LOADINGS
- in many cases changed the return value from -1 to something more
meaningful like ETIMEDOUT, EINVAL
- changed syslog message timeout waiting for COMMAND such that it
indicates what command did not complete
- reduce # of arguments for LoadBitmap and BlitBitmap
- av7110_osd_cmd: remove the out: label
Signed-off-by: Wolfgang Rohdewald <wolfgang@rohdewald.de>
|
|
- make needlessly global code static
- #if 0 the following unused global functions:
- ttpci/av7110_hw.c: av7110_reset_arm
- ttpci/av7110_hw.c: av7110_send_ci_cmd
- frontends/mt352.[ch]: drop mt352_read
Signed-off-by: Adrian Bunk <bunk@stusta.de>
|
|
|
|
(0x13c2,0x0008, Grundig 29504-401 (LSI L64781 Based) frontend)
|
|
|
|
- av7110_arm_sync(): small helper to factor out some code;
- av7110_attach() does not check the status code returned by all the
functions is uses;
- balance the error path in av7110_attach and have it easy to check.
Please check it;
- if everything is correctly balanced, device_initialized is not needed
anymore in struct av7110;
- av7110_detach(): no need to cast a void * pointer;
- av7110_detach(): die #ifdef, die !
- change the returned value of av7110_av_exit() as it can't fail;
- change the returned value of av7110_ca_init() as it can fail. Removed
extraneous casts while are it;
- check for failure of vmalloc() in ci_ll_init().
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
|
|
- mostly whitespace etc.
- removed now unsused struct dvb_net_priv.name field
|
|
budgetpatch integrated into dvb-ttpci:
enables full ts option running in parallel
with all previous functions of dvb-ttpci.
This is done by opening DMA3 channel
at port B and registering it as second demux
named demux1
demux1 has full ts capability and is accompanied
by net1 and dvr1 but has no frontend device.
It uses frontend0 which is in hardware permanently
connected to both demux0 and demux1.
net1 can create its full ts network devices,
they are named dvb010, dv010 etc. Devices created
by net0 remain named dvb0_0 etc as before.
kernel parameter for dvb-ttpci: budgetpatch=0,1,2
0-no budgetpatch
1-autodetect
2-alywas
autodetect resets saa7146. Avoid on systems that
don't like resetting of saa7146.
|
|
- misc. changes to av7110_send_fw_cmd() error handling done
along the way
|
|
- call av7110_fe_lock_fix() from set_frontend ioctl
- clear pids only once
- sleep 50ms after clearing pids
|
|
as debiirq and gpioirq should not run concurrently, but...
|
|
|
|
|
|
|
|
replace them
with dprintk(level, msg) instead
- remove whitespace and linefeed violations all over the place
|
|
included just everywhere
- remove dvb_i2c.[ch], it's not needed anymore
- rename dvb_register_frontend_new() to dvb_register_frontend()
-
|
|
- remove dvb i2c frontend (un)register code (all drivers use non-i2c frontend calls now)
- add i2c driver ids for all frontends to dvb_frontend.h (should be submitted to i2c-id.h)
- fix usage of i2c driver ids in dst, ves1x93, nxt6000 drivers
- remove dvb i2c functionality from av7110 and budget drivers
- remove dvb i2c functionality from Skystar2 driver
- fix up kernel Makefile
- add a FE_ATSC case to avoid compiler warning (print warning message instead)
|
|
NOTE: Michael, please remember to change the other drivers when
submitting to Andrew.
|
|
- replace home-brewn waiting stuff in osd code with wait_event_interruptible_timeout()
- put a semaphore around osd calls to make sure they're properly serialized
|
|
- call this function after system initialization and after arm crash to restore the previous state
Thanks to Soeren Sonnenburg <bugreports@nn7.de> for this patch.
|
|
- convert tda1004x driver to kernel i2c, implement untested firmware loading
|
|
the usage of the syscall interface to load binary firmware used by some
frontend drivers.
- add dvb_register_frontend_new() and dvb_unregister_frontend_new() which
register a frontend driver using the kernel i2c interface instead of the
dvb i2c interface.
- register kernel i2c interface in av7110/budget driver properly
- port stv0299 and ves1x93 to kernel i2c api
Other DVB drivers and frontend drivers still can use the old DVB i2c
interface.
|
|
- retab
|
|
- av7110.c: initialization and demux stuff
- av7110_hw.c: lowlevel hardware access and firmware interface
- av7110_ca.c: CI and ECD
- av7110_av.c: audio/video MPEG decoder and remuxing stuff
- av7110_v4l.c: v4l interface
It's all still ugly and needs lots of namespace and coding-style
cleanups. It's probably broken, too. But it's a start.
(My main motivation is easier porting to the V4 API).
|
|
in 2.6.0)
|
|
the firmware is still compiled into the driver for 2.4 by default,
the necessary files are created dynamically from the firmware file.
get it from http://www.linuxtv.org/download/dvb/dvb-ttpci-01.fw
- revamp fdump utility to be smarter when the source file isn't there
|
|
|
|
- fix init/exit of vbi capable devices
- add new flag SAA7146_USE_PORT_B_FOR_VBI, so we can distinguish
on which video port to apply the vbi workaround
- add del_timer(...) for vbi capture queue and vbi_read timers,
otherwise the kernel timer schedule oopses
- add vbi device handling for dvb-c cards with analog module
(does not work yet, have to setup the saa7113 decoder differently)
|
|
- experimentally fix frequency offset
- initialize msp3400 for analog TV sound
|
|
see DVB for tested version)
|
|
- if the analog module is detected, the saa7113 is initialized and
some more v4l2 ioctls are available. you can use "xawtv" now to
switch between "dvb" and "analog" input. when you are one the
"analog" input, you can tune in analog channels with the cursor
keys via v4l2.
currently, this is a big hack -- tuning is not mutually exclusive,
so "szap" and v4l2 tuning can interfere with each other. the
demodulator address is hardcoded to 0x09.
Other changes:
- changed the saa7146 ioctl parameters, give out the data of the
current device open "fh" (=> "file handle"), not the pointer to the
device structure "dev". It is "dev = fh->dev".
Some stuff does not work:
- analog audio does not work. does the msp3400 need to be reprogrammed?
- one field is "missing", so the picture is very bad and
capturing does not work neither. this needs to be investigated by
looking at the programming the windows driver uses for the saa7146
|
|
- change some includes
|
|
"kernel shape":
I mainly changed all "typedef struct foo_s {...} foo_t"
to "struct foo {}". Please don't start a policy war, I know the pros
cons of typedefs and structures.
We should, however, stick to the coding rules of the kernel: typedefed
structs are only used for opaque data types, where the internal
representation is irrelevant and we have get()/set() functions for
accessing them (ie. spinlock_t)
|
|
|
|
|
|
Video API change for VIDEO_EVENT_SIZE_CHANGED and VIDEO_GET_SIZE ioctl,
and VIDEO_FORMAT_221_1.
Implemented video events for VIDEO_EVENT_SIZE_CHANGED (use poll(2) with
POLLPRI) and ioctl VIDEO_GET_SIZE.
|
|
nobody really needs them...
|