summaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb-frontends/tc90522.c
Commit message (Collapse)AuthorAgeFilesLines
* media: dvb-frontends/tc90522: extend i2c algo to support some devicesAkihiro Tsukada2019-10-071-2/+25
| | | | | | | | | | | | | This demod implements an i2c adapter for attached tuner and relays i2c messages from users (dvb adapters / bridge chips). Some of them, such as Friio dvb card using gl861, require each pair of i2c messages for one read to be issued as two separate transactions. This patch adds a configuration option to enable this split. Signed-off-by: Akihiro Tsukada <tskd08@gmail.com> Signed-off-by: Sean Young <sean@mess.org> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
* media: use strscpy() instead of strlcpy()Mauro Carvalho Chehab2018-09-111-1/+1
| | | | | | | | | | | The implementation of strscpy() is more robust and safer. That's now the recommended way to copy NUL terminated strings. Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> Reviewed-by: Kees Cook <keescook@chromium.org> Acked-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
* media: dvb: represent min/max/step/tolerance freqs in HzMauro Carvalho Chehab2018-08-021-5/+5
| | | | | | | | | | | | | | | | Right now, satellite frontend drivers specify frequencies in kHz, while terrestrial/cable ones specify in Hz. That's confusing for developers. However, the main problem is that universal frontends capable of handling both satellite and non-satelite delivery systems are appearing. We end by needing to hack the drivers in order to support such hybrid frontends. So, convert everything to specify frontend frequencies in Hz. Tested-by: Katsuhiro Suzuki <suzuki.katsuhiro@socionext.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
* media: dvb-frontends/tc90522: use SPDX License IdentifierAkihiro Tsukada2018-05-041-10/+1
| | | | | Signed-off-by: Akihiro Tsukada <tskd08@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
* media: dvb-frontends/tc90522: fix bit shift mistakesAkihiro Tsukada2018-05-041-2/+2
| | | | | | | | | | GIT_AUTHOR_NAME=Akihiro TSUKADA GIT_AUTHOR_EMAIL=tskd08@gmail.com they were obviously wrong. Signed-off-by: Akihiro Tsukada <tskd08@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
* media: move dvb kAPI headers to include/mediaMauro Carvalho Chehab2017-12-281-1/+1
| | | | | | | | Except for DVB, all media kAPI headers are at include/media. Move the headers to it. Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
* [media] dvb-tc90522: Rename a jump label in tc90522_probe()Markus Elfring2016-11-161-3/+2
| | | | | | | | Adjust a jump label according to the Linux coding style convention. Signed-off-by: Markus Elfring <elfring@users.sourceforge.net> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
* [media] dvb-tc90522: Use kmalloc_array() in tc90522_master_xfer()Markus Elfring2016-11-161-1/+1
| | | | | | | | | | | | A multiplication for the size determination of a memory allocation indicated that an array data structure should be processed. Thus use the corresponding function "kmalloc_array". This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring <elfring@users.sourceforge.net> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
* [media] dvb_frontend: pass the props cache to get_frontend() as argMauro Carvalho Chehab2016-02-041-6/+4
| | | | | | | | | | | | | | | | | Instead of using the DTV properties cache directly, pass the get frontend data as an argument. For now, everything should remain the same, but the next patch will prevent get_frontend to affect the global cache. This is needed because several drivers don't care enough to only change the properties if locked. Due to that, calling G_PROPERTY before locking on those drivers will make them to never lock. Ok, those drivers are crap and should never be merged like that, but the core should not rely that the drivers would be doing the right thing. Reviewed-by: Michael Ira Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
* [media] dvb: Get rid of typedev usage for enumsMauro Carvalho Chehab2015-06-091-7/+10
| | | | | | | | | | | | | | | | | The DVB API was originally defined using typedefs. This is against Kernel CodingStyle, and there's no good usage here. While we can't remove its usage on userspace, we can avoid its usage in Kernelspace. So, let's do it. This patch was generated by this shell script: for j in $(grep typedef include/uapi/linux/dvb/frontend.h |cut -d' ' -f 3); do for i in $(find drivers/media -name '*.[ch]' -type f) $(find drivers/staging/media -name '*.[ch]' -type f); do sed "s,${j}_t,enum $j," <$i >a && mv a $i; done; done While here, make CodingStyle fixes on the affected lines. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com> Acked-by: Stefan Richter <stefanr@s5r6.in-berlin.de> # for drivers/media/firewire/*
* [media] dvb: tc90522: re-add symbol-rate reportAkihiro Tsukada2015-02-031-0/+1
| | | | | | | symbol-rate report was wrongly removed off by the commit:906aaf5a . Signed-off-by: Akihiro Tsukada <tskd08@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
* [media] dvb:tc90522: fix always-false expressionAkihiro Tsukada2014-11-031-1/+1
| | | | | Signed-off-by: Akihiro Tsukada <tskd08@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
* [media] dvb:tc90522: fix stats reportAkihiro Tsukada2014-11-031-9/+7
| | | | | | | | * report the fixed per-transponder symbolrate instead of per-TS ones * add output TS-ID report Signed-off-by: Akihiro Tsukada <tskd08@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
* [media] tc90522: fix compilation on 32 bitsMauro Carvalho Chehab2014-09-261-5/+6
| | | | | | | | | | | | drivers/built-in.o: In function `tc90522t_get_frontend': >> tc90522.c:(.text+0x260b64c): undefined reference to `__divdi3' >> tc90522.c:(.text+0x260b685): undefined reference to `__divdi3' >> tc90522.c:(.text+0x260b6bb): undefined reference to `__divdi3' >> tc90522.c:(.text+0x260b713): undefined reference to `__divdi3' drivers/built-in.o:tc90522.c:(.text+0x260bb64): more undefined references to `__divdi3' follow Reported-by: kbuild test robot <fengguang.wu@intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
* [media] tc90522: declare tc90522_functionality as staticMauro Carvalho Chehab2014-09-231-1/+1
| | | | | | | | | | drivers/media/dvb-frontends/tc90522.c:706:5: warning: symbol 'tc90522_functionality' was not declared. Should it be static? drivers/media/dvb-frontends/tc90522.c:706:5: warning: no previous prototype for 'tc90522_functionality' [-Wmissing-prototypes] u32 tc90522_functionality(struct i2c_adapter *adap) ^ Cc: Akihiro Tsukada <tskd08@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
* [media] tc90522: add driver for Toshiba TC90522 quad demodulatorAkihiro Tsukada2014-09-231-0/+839
This patch adds driver for tc90522 demodulator chips. The chip contains 4 demod modules that run in parallel and are independently controllable via separate I2C addresses. Two of the modules are for ISDB-T and the rest for ISDB-S. It is used in earthsoft pt3 cards. Note that this driver does not init the chip, because the initilization sequence / register setting is not disclosed. Thus, the driver assumes that the chips are initilized externally by its parent board driver before fe->ops->init() are called. Earthsoft PT3 PCIe card, for example, contains the init sequence in its private memory and provides a command to trigger the sequence. Signed-off-by: Akihiro Tsukada <tskd08@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
OpenPOWER on IntegriCloud