#
aaeb31c0 |
|
14-May-2023 |
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> |
media: Switch i2c drivers back to use .probe() After commit b8a1a4cd5a98 ("i2c: Provide a temporary .probe_new() call-back type"), all drivers being converted to .probe_new() and then commit 03c835f498b5 ("i2c: Switch .probe() to not take an id parameter") convert back to (the new) .probe() to be able to eventually drop .probe_new() from struct i2c_driver. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
#
c7c63195 |
|
18-Nov-2022 |
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> |
media: dvb-frontends/si2168: Convert to i2c's .probe_new() The probe function doesn't make use of the i2c_device_id * parameter so it can be trivially converted. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
|
#
ed5c2f5f |
|
15-Aug-2022 |
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> |
i2c: Make remove callback return void The value returned by an i2c driver's remove function is mostly ignored. (Only an error message is printed if the value is non-zero that the error is ignored.) So change the prototype of the remove function to return no value. This way driver authors are not tempted to assume that passing an error to the upper layer is a good idea. All drivers are adapted accordingly. There is no intended change of behaviour, all callbacks were prepared to return 0 before. Reviewed-by: Peter Senna Tschudin <peter.senna@gmail.com> Reviewed-by: Jeremy Kerr <jk@codeconstruct.com.au> Reviewed-by: Benjamin Mugnier <benjamin.mugnier@foss.st.com> Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Crt Mori <cmo@melexis.com> Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Acked-by: Marek Behún <kabel@kernel.org> # for leds-turris-omnia Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: Petr Machata <petrm@nvidia.com> # for mlxsw Reviewed-by: Maximilian Luz <luzmaximilian@gmail.com> # for surface3_power Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> # for bmc150-accel-i2c + kxcjk-1013 Reviewed-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> # for media/* + staging/media/* Acked-by: Miguel Ojeda <ojeda@kernel.org> # for auxdisplay/ht16k33 + auxdisplay/lcd2s Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com> # for versaclock5 Reviewed-by: Ajay Gupta <ajayg@nvidia.com> # for ucsi_ccg Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> # for iio Acked-by: Peter Rosin <peda@axentia.se> # for i2c-mux-*, max9860 Acked-by: Adrien Grassein <adrien.grassein@gmail.com> # for lontium-lt8912b Reviewed-by: Jean Delvare <jdelvare@suse.de> # for hwmon, i2c-core and i2c/muxes Acked-by: Corey Minyard <cminyard@mvista.com> # for IPMI Reviewed-by: Vladimir Oltean <olteanv@gmail.com> Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Acked-by: Sebastian Reichel <sebastian.reichel@collabora.com> # for drivers/power Acked-by: Krzysztof Hałasa <khalasa@piap.pl> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Wolfram Sang <wsa@kernel.org>
|
#
ebd80fbf |
|
23-Nov-2021 |
Colin Ian King <colin.king@intel.com> |
media: media si2168: Fix spelling mistake "previsously" -> "previously" There is a spelling mistake in a dev_dbg message. Fix it. Link: https://lore.kernel.org/linux-media/20211123090645.165299-1-colin.i.king@gmail.com Cc: kernel-janitors@vger.kernel.org, linux-kernel@vger.kernel.org Signed-off-by: Colin Ian King <colin.i.king@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
|
#
51c2664a |
|
17-Apr-2021 |
Lukas Middendorf <kernel@tuxforce.de> |
media: media si2168: fully initialize si2168 on resume only when necessary At connection time (or boot) in si2168_probe(), the firmware is not loaded to the device and the device is not fully activated. It is not useful or sensible to do this full initialization on resume in case it has not been previously initialized and is expected to be in this initialized state. Calling si2168_init() and therefore reading the firmware file for the first time during resume leads to problems and should be avoided. It is however safe to read the firmware file once it has already been read outside of a suspend/resume situation. Add a staus flag 'initialized' to store whether si2168_init() has successfully been called. If initialization fails (e.g. due to missing firmware file), the flag is not set. Register a separate si2168_resume callback which only calls si2168_init() once the 'initialized' flag has been set and it is safe to load the firmware at resume. The first call to si2168_init() will now always happen when the device is actually used for the first time and never during resume. This avoids the unsafe firmware file reading and should also speed up resume by skipping unnecessary device initialization. Link: https://lore.kernel.org/linux-media/20210418001204.7453-3-kernel@tuxforce.de [mchehab: fix several Coding Style issues] Cc: Antti Palosaari <crope@iki.fi> Signed-off-by: Lukas Middendorf <kernel@tuxforce.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
|
#
40ae6eff |
|
18-Apr-2021 |
Lukas Middendorf <kernel@tuxforce.de> |
media: si2168: drop support for old firmware file name for si2168 B40 The si2168 B40 firmware file name has been changed in or before 2014. During initialization, the new file name is preferred, but the old file name is used as a fallback when request_firmware with the new file name fails. Once reading the old file name has been attempted, only this name will be used on further firmware loading attempts. During resume, firmware reading with the new file name can (and likely will) fail even when it actually exists. So this permanent switch to the fallback firmware name happens even when not desired. Any system using a recent kernel version can be expected to have the firmware under the new name. The major distributions are either using the dvb firmware collection from LibreELEC, which has the new firmware file name, or do not package the firmware file but have documentation pointing towards a manual installation of the firmware file under the new name. If the firmware is available under the old name, it is severely outdated. If the switch to the old file name is performed, further firmware loading will either permanently fail (if it is not available) or an outdated firmware version will be used. Drop support for the fallback firmware file name and fail directly if the firmware is not available under its current name. On following attempts, the firmware read will then be retried with the correct current name instead of the old name. As reasoned above, there should be no negative effects of this change, while simplifying code (the B40 variant will be handled identical compared to the other variants of the si2168) and at the same time fixing possible problems if firmware loading fails on resume. Link: https://lore.kernel.org/linux-media/20210418161544.58858-1-kernel@tuxforce.de Signed-off-by: Lukas Middendorf <kernel@tuxforce.de> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
|
#
619f6fc3 |
|
15-Jul-2019 |
Marc Gonzalez <marc.w.gonzalez@free.fr> |
media: si2168: Refactor command setup code Use cmd_init() to fill a struct si2168_cmd command. Signed-off-by: Marc Gonzalez <marc.w.gonzalez@free.fr> Signed-off-by: Sean Young <sean@mess.org> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
|
#
bc28d36b |
|
17-Jul-2019 |
Jan Pieter van Woerkom <jp@jpvw.nl> |
media: si2168: add support for Mygica T230C v2 The T230C v2 hardware needs a mode of the si2168 chip to be set for which the si2168 driver previously had no support. This patch uses a specific measure to configure this on the T230C v2 hardware only - see the flag passed via the ts_mode attribute and its dependency on USB_PID_MYGICA_T230C2. Signed-off-by: Jan Pieter van Woerkom <jp@jpvw.nl> Signed-off-by: Sean Young <sean@mess.org> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
|
#
c942fddf |
|
27-May-2019 |
Thomas Gleixner <tglx@linutronix.de> |
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 Based on 3 normalized pattern(s): this program is free software you can redistribute it and or modify it under the terms of the gnu general public license as published by the free software foundation either version 2 of the license or at your option any later version this program is distributed in the hope that it will be useful but without any warranty without even the implied warranty of merchantability or fitness for a particular purpose see the gnu general public license for more details this program is free software you can redistribute it and or modify it under the terms of the gnu general public license as published by the free software foundation either version 2 of the license or at your option any later version [author] [kishon] [vijay] [abraham] [i] [kishon]@[ti] [com] this program is distributed in the hope that it will be useful but without any warranty without even the implied warranty of merchantability or fitness for a particular purpose see the gnu general public license for more details this program is free software you can redistribute it and or modify it under the terms of the gnu general public license as published by the free software foundation either version 2 of the license or at your option any later version [author] [graeme] [gregory] [gg]@[slimlogic] [co] [uk] [author] [kishon] [vijay] [abraham] [i] [kishon]@[ti] [com] [based] [on] [twl6030]_[usb] [c] [author] [hema] [hk] [hemahk]@[ti] [com] this program is distributed in the hope that it will be useful but without any warranty without even the implied warranty of merchantability or fitness for a particular purpose see the gnu general public license for more details extracted by the scancode license scanner the SPDX license identifier GPL-2.0-or-later has been chosen to replace the boilerplate/reference in 1105 file(s). Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Allison Randal <allison@lohutok.net> Reviewed-by: Richard Fontana <rfontana@redhat.com> Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org> Cc: linux-spdx@vger.kernel.org Link: https://lkml.kernel.org/r/20190527070033.202006027@linutronix.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
#
4a0bbf48 |
|
20-Dec-2018 |
Brad Love <brad@nextdimension.cc> |
media: si2168: add frequency data to frontend info Minimum, maximum, and stepsize taken from Silicon Labs reference. Signed-off-by: Brad Love <brad@nextdimension.cc> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
|
#
fce61d1d |
|
07-Mar-2018 |
Mauro Carvalho Chehab <mchehab@kernel.org> |
media: si2168: fix a comment about firmware version There's a comment there at s82168 that it is wrong. With firmware 4.0.11, sleep/resume works well without need of download it every time. But firmware 4.0.19 needs to be downloaded again after sleep. Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
|
#
1844f498 |
|
12-Feb-2018 |
Brad Love <brad@nextdimension.cc> |
media: si2168: change ts bus control logic Move the ts bus control function moved higher, enabling it after configuring frontend and removeing ts_bus_ctrl callback. While here, also add an error checking and re-add a comment that were removed by commit 445877742ce3 ("media: si2168: Add ts bus coontrol, turn off bus on sleep"). [mchehab@s-opensource.com: I ended by applying the first version, instead of the right one. So, this patch contains the diff and the v2 changelog instead] Fixes: 445877742ce3 ("media: si2168: Add ts bus coontrol, turn off bus on sleep") Signed-off-by: Brad Love <brad@nextdimension.cc> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
|
#
d4c779bc |
|
17-Jan-2018 |
Brad Love <brad@nextdimension.cc> |
media: si2168: Add spectrum inversion property Some tuners produce inverted spectrum, but the si2168 is not currently set up to accept it. This adds an optional parameter to set the frontend up to receive inverted spectrum. Parameter is optional and only boards who enable inversion will utilize this. Signed-off-by: Brad Love <brad@nextdimension.cc> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
|
#
3061df06 |
|
12-Jan-2018 |
Brad Love <brad@nextdimension.cc> |
media: si2168: Announce frontend creation failure The driver outputs on success, but is silent on failure. Give one message that probe failed. Signed-off-by: Brad Love <brad@nextdimension.cc> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
|
#
44587774 |
|
12-Jan-2018 |
Brad Love <brad@nextdimension.cc> |
media: si2168: Add ts bus coontrol, turn off bus on sleep Includes a function to set TS MODE property os si2168. The function either disables the TS output bus, or sets mode to config option. When going to sleep the TS bus is turned off, this makes the driver compatible with multiple frontend usage. Signed-off-by: Brad Love <brad@nextdimension.cc> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
|
#
380a6c86 |
|
11-Dec-2017 |
Ron Economos <w6rz@comcast.net> |
media: [RESEND] media: dvb-frontends: Add delay to Si2168 restart On faster CPUs a delay is required after the resume command and the restart command. Without the delay, the restart command often returns -EREMOTEIO and the Si2168 does not restart. Note that this patch fixes the same issue as https://patchwork.linuxtv.org/patch/44304/, but I believe my udelay() fix addresses the actual problem. Signed-off-by: Ron Economos <w6rz@comcast.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
|
#
c38e8657 |
|
28-Aug-2017 |
Markus Elfring <elfring@users.sourceforge.net> |
media: drivers: delete error messages for failed memory allocation Omit an extra message for a memory allocation failure in this function. This issue was detected by using the Coccinelle software. [mchehab@s-opensource.com: fold several similar patches into one] Signed-off-by: Markus Elfring <elfring@users.sourceforge.net> Signed-off-by: Hans Verkuil <hansverk@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
|
#
50d64462 |
|
07-Feb-2017 |
Evgeny Plehov <EvgenyPlehov@ukr.ne> |
[media] si2168: Si2168-D60 support Support for new demod version. Signed-off-by: Evgeny Plehov <EvgenyPlehov@ukr.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
|
#
c62d29c8 |
|
09-Dec-2016 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: implement ucb statistics Implement DVBv5 UCB. Only uncorrected blocks are currently counted. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
|
#
8393c003 |
|
08-Dec-2016 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: implement ber statistics Implement DVBv5 BER. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
|
#
e06be1da |
|
29-Jun-2016 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: do not allow driver unbind Disable runtime unbind as driver does not support it. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
|
#
6ab1e943 |
|
29-Jun-2016 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: add support for newer firmwares Si2168-B40 firmware API has changed somewhere between 4.0-11 and 4.0-19 so that sleep will lose firmware upgrade from the chip. Due to that firmware re-upload is needed when newer firmwares are used. Rewrote firmware handling logic partly at the same. Signed-off-by: Antti Palosaari <crope@iki.fi> Cc: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
|
#
e6d7ffcd |
|
04-May-2016 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: change the i2c gate to be mux-locked The root i2c adapter lock is then no longer held by the i2c mux during accesses behind the i2c gate, and such accesses need to take that lock just like any other ordinary i2c accesses do. So, declare the i2c gate mux-locked, and zap the code that makes the i2c accesses unlocked. But add a mutex so that firmware commands are still serialized. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Peter Rosin <peda@axentia.se> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
|
#
58d7b541 |
|
20-Apr-2016 |
Peter Rosin <peda@axentia.se> |
[media] si2168: convert to use an explicit i2c mux core Allocate an explicit i2c mux core to handle parent and child adapters etc. Update the select/deselect ops to be in terms of the i2c mux core instead of the child adapter. Tested-by: Antti Palosaari <crope@iki.fi> Reviewed-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Peter Rosin <peda@axentia.se> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
|
#
47810b43 |
|
29-Sep-2015 |
Laura Abbott <labbott@fedoraproject.org> |
[media] si2168: Bounds check firmware When reading the firmware and sending commands, the length must be bounds checked to avoid overrunning the size of the command buffer and smashing the stack if the firmware is not in the expected format: si2168 11-0064: found a 'Silicon Labs Si2168-B40' si2168 11-0064: downloading firmware from file 'dvb-demod-si2168-b40-01.fw' si2168 11-0064: firmware download failed -95 Kernel panic - not syncing: stack-protector: Kernel stack is corrupted in: ffffffffa085708f Add the proper check. Cc: stable@kernel.org Reported-by: Stuart Auchterlonie <sauchter@redhat.com> Reviewed-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Laura Abbott <labbott@fedoraproject.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
04d8be05 |
|
10-Jul-2015 |
Krzysztof Kozlowski <krzk@kernel.org> |
[media] dvb-frontends: Drop owner assignment from i2c_driver i2c_driver does not need to set an owner because i2c_register_driver() will set it. Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
0df289a2 |
|
07-Jun-2015 |
Mauro Carvalho Chehab <mchehab@kernel.org> |
[media] dvb: Get rid of typedev usage for enums 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/*
|
#
d2b72f64 |
|
29-May-2015 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: Implement own I2C adapter locking We need own I2C locking because of tuner I2C adapter/repeater. Firmware command is executed using I2C send + reply message. Default I2C adapter locking protects only single I2C operation, not whole send + reply sequence as needed. Due to that, it was possible tuner I2C message interrupts firmware command sequence. Reported-by: Adam Baker <linux@baker-net.org.uk> Signed-off-by: Antti Palosaari <crope@iki.fi> Reviewed-by: Adam Baker <linux@baker-net.org.uk> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
7adf99d2 |
|
05-May-2015 |
Olli Salonen <olli.salonen@iki.fi> |
[media] si2168: add I2C error handling Return error from si2168_cmd_execute in case the demodulator returns an error. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
8117a312 |
|
05-May-2015 |
Olli Salonen <olli.salonen@iki.fi> |
[media] si2168: add support for gapped clock Add a parameter in si2168_config to support gapped clock. This might be necessary on some devices with higher bitrates. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
17d4d6ae |
|
16-Jan-2015 |
Olli Salonen <olli.salonen@iki.fi> |
[media] si2168: add support for 1.7MHz bandwidth This patch is based on Antti's silabs branch. Add support for 1.7 MHz bandwidth. Supported in all versions of Si2168 according to short data sheets. [mchehab@osg.samsung.com: Fix CodingStyle] Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Reviewed-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
683e98b6 |
|
16-Jan-2015 |
Olli Salonen <olli.salonen@iki.fi> |
[media] si2168: return error if set_frontend is called with invalid parameters This patch should is based on Antti's silabs branch. According to dvb-frontend.h set_frontend may be called with bandwidth_hz set to 0 if automatic bandwidth is required. Si2168 does not support automatic bandwidth and does not declare FE_CAN_BANDWIDTH_AUTO in caps. This patch will change the behaviour in a way that EINVAL is returned if bandwidth_hz is 0. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Reviewed-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
c32b2816 |
|
06-Dec-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: change firmware variable name and type Rename firmware variable from fw_file to fw_name and change its type from u8 to const char as request_firmware() input defines. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
9b7839c3 |
|
06-Dec-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: print chip version Print chip version once using log level into when init() is called. Remove cold/warm state printing as those are not very useful. old printing: si2168 6-0064: found a 'Silicon Labs Si2168' in cold state si2168 6-0064: downloading firmware from file 'dvb-demod-si2168-b40-01.fw' si2168 6-0064: firmware version: 4.0.11 si2168 6-0064: found a 'Silicon Labs Si2168' in warm state new printing: si2168 6-0064: found a 'Silicon Labs Si2168-B40' si2168 6-0064: downloading firmware from file 'dvb-demod-si2168-b40-01.fw' si2168 6-0064: firmware version: 4.0.11 Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
58f6693f |
|
05-Dec-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: remove unneeded fw variable initialization commit 034e1ec0ce299b9e90056793dcb3187e7add6b62 si2168: One function call less in si2168_init() after error detection That commit added goto label for error path to release firmware, but forgets to remove variable NULL set. Remove those now. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
68c16a76 |
|
05-Dec-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: enhance firmware download routine All known old firmware firmware formats are downloaded using 8 byte chunks. Reject firmware if it could not be divided to 8 byte chunks and because of that we could simplify some calculations. Now both supported firmware download routines are rather similar. Cc: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
1ee5e7dd |
|
05-Dec-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: add own goto label for kzalloc failure Use own label for kzalloc failure in which does not call kfree(). kfree() could be called with NULL, but it is still better to have own label which skips unnecessary kfree(). Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
e5dd1100 |
|
05-Dec-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: change stream id debug log formatter Change formatter from signed to unsigned as stream_id is 32bit unsigned variable. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
955e0ab8 |
|
05-Dec-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: change firmware version print from debug to info Even firmware version is not needed to know, it is still interesting and useful to know some cases. Due to that increase its printing to info log level. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
346d4900 |
|
05-Dec-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: rename few things Rename some goto labels and more. No functionality changes. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
4affbe1d |
|
05-Dec-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: simplify si2168_cmd_execute() error path Remove if () from firmware command error path as there should not be any error prone conditional logic there. Use goto labels instead. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
3de35835 |
|
25-Nov-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: get rid of own struct i2c_client pointer We don't need that anymore as same pointer is passed to each routine via struct dvb_frontend private field. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
6307b560 |
|
25-Nov-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: carry pointer to client instead of state Carry struct i2c_client pointer inside struct dvb_frontend private pointer. This driver is I2C driver, which is represented as a struct i2c_client, so better to carry this top level structure for each routine in order to unify things. This allows further simplification. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
bd01c766 |
|
25-Nov-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: rename device state variable from 's' to 'dev' 'dev' is most common name in kernel for structure containing device state instance, so rename it. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
f1ecc5d1 |
|
25-Nov-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: define symbol rate limits w_scan complains about missing symbol rate limits: This dvb driver is *buggy*: the symbol rate limits are undefined - please report to linuxtv.org Chip supports 1 to 7.2 MSymbol/s on DVB-C. Cc: stable@vger.kernel.org Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
551c33e7 |
|
08-Dec-2014 |
Jurgen Kramer <gtmkramer@xs4all.nl> |
[media] Si2168: increase timeout to fix firmware loading Increase si2168 cmd execute timeout to prevent firmware load failures. Tests shows it takes up to 52ms to load the 'dvb-demod-si2168-a30-01.fw' firmware. Increase timeout to a safe value of 70ms. Signed-off-by: Jurgen Kramer <gtmkramer@xs4all.nl> Reviewed-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
1b97dc98 |
|
27-Nov-2014 |
Olli Salonen <olli.salonen@iki.fi> |
[media] si2168: add support for firmware files in new format This patch adds support for new type of firmware versions of Si2168 chip. Old type: n x 8 bytes (all data, first byte seems to be 04 or 05) New type: n x 17 bytes (1 byte indicates len and max 16 bytes data) New version of TechnoTrend CT2-4400 drivers (http://www.tt-downloads.de/bda-treiber_4.3.0.0.zip) contains newer firmware for Si2168-B40 that is in the new format. It can be extracted with the following command: dd if=ttTVStick4400_64.sys ibs=1 skip=323872 count=6919 of=dvb-demod-si2168-b40-01.fw Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Reviewed-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
a594cf21 |
|
27-Nov-2014 |
Olli Salonen <olli.salonen@iki.fi> |
[media] si2168: debug printout for firmware version A debug printout for firmware version. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Reviewed-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
034e1ec0 |
|
19-Nov-2014 |
Markus Elfring <elfring@users.sourceforge.net> |
[media] si2168: One function call less in si2168_init() after error detection GIT_AUTHOR_DATE=1416472767 The release_firmware() function was called in some cases by the si2168_init() function during error handling even if the passed variable contained still a null pointer. This implementation detail could be improved by the introduction of another jump label. Signed-off-by: Markus Elfring <elfring@users.sourceforge.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
9bc2dd7e |
|
19-Nov-2014 |
Markus Elfring <elfring@users.sourceforge.net> |
[media] DVB-frontends: Deletion of unnecessary checks before the function call "release_firmware" GIT_AUTHOR_DATE=1416472432 The release_firmware() function tests whether its argument is NULL and then returns immediately. Thus the test around the call is not needed. This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring <elfring@users.sourceforge.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
52791979 |
|
14-Nov-2014 |
CrazyCat <crazycat69@narod.ru> |
[media] si2168: TS clock inversion control TS clock polarity control implemented. [Antti: Resolved simple conflict] Signed-off-by: Evgeny Plehov <EvgenyPlehov@ukr.net> Reviewed-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
45c3cbb1 |
|
03-Nov-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: do not print device is warm every-time when opened It repeated "found a 'Silicon Labs Si2168' in warm state" everytime when device was opened. Message is aimed to point out firmware is downloaded, up and running. So print it only in case firmware download is performed. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
327eeb3a |
|
23-Sep-2014 |
Olli Salonen <olli.salonen@iki.fi> |
[media] si2168: add FE_CAN_MULTISTREAM into caps PLP selection was implemented for Si2168 last month (patchwork 25387). However, FE_CAN_MULTISTREAM was not added to dvb_frontend_ops of si2168. This patch adds FE_CAN_MULTISTREAM, which indicates that multiple PLP are supported. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Acked-by: Antti Palosaari <crope@iki.fi> Reviewed-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
8e417224 |
|
25-Aug-2014 |
Olli Salonen <olli.salonen@iki.fi> |
[media] si2168: avoid firmware loading if it has been loaded previously Add a variable to keep track if firmware is loaded or not and skip parts of the initialization if fw is already loaded. Resume from sleep with a different command compared to initial power up and run command 85 after resume command. This behaviour is observed when using manufacturer provided binary-only si2168 driver for TechnoTrend CT2-4400. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
#
e395e573 |
|
16-Aug-2014 |
CrazyCat <crazycat69@narod.ru> |
[media] si2168: DVB-T2 PLP selection implemented DVB-T2 PLP selection implemented for Si2168 demod. Tested with PCTV 292e. Signed-off-by: Evgeny Plehov <EvgenyPlehov@ukr.net> Reviewed-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
389ce398 |
|
11-Aug-2014 |
Olli Salonen <olli.salonen@iki.fi> |
[media] si2168: add ts_mode setting and move to si2168_init Luis Alves submitted a TS mode patch to si2168 earlier, but the patch was rejected due to a small issue. Here is a working version. Also, setting of TS mode is moved from si2168_set_frontend to si2168_init. This patch adds the TS mode as a config option for the si2168 demod: - ts_mode added to config struct. - Possible (interesting) values are * Parallel mode = 0x06 * Serial mode = 0x03 Currently the modules using this demod only use parallel mode. Patches for these modules later in this patch series. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Reviewed-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
37b4e43d |
|
05-Aug-2014 |
Olli Salonen <olli.salonen@iki.fi> |
[media] si2168: clean logging Same thing for si2168 as Antti did earlier for tda18212: There is no need to print module name nor function name as those are done by kernel logging system when dev_xxx logging is used and driver is proper I2C driver. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Reviewed-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
fcb388ce |
|
22-Jul-2014 |
Mauro Carvalho Chehab <mchehab@kernel.org> |
[media] si2168: Fix a badly solved merge conflict changeset a733291d6934 didn't merge the fixes well. It ended by restoring some bad logic removed there. Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com> Acked-by: Antti Palosaari <crope@iki.fi> Reviewed-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
635a90cf |
|
17-Jul-2014 |
Luis Alves <ljalvs@gmail.com> |
[media] si2168: Support Si2168-A20 firmware downloading This adds support for the Si2168-A20 firmware download. Extracting the firmware: wget http://www.tbsdtv.com/download/document/tbs6281/tbs6281-t2-t-driver_v1.0.0.6.zip unzip tbs6281-t2-t-driver_v1.0.0.6.zip dd if=tbs-6281_x64/tbs6281_64.sys of=dvb-demod-si2168-a20-01.fw count=28656 bs=1 skip=1625088 md5sum: 32e06713b33915f674bfb2c209beaea5 /lib/firmware/dvb-demod-si2168-a20-01.fw Signed-off-by: Luis Alves <ljalvs@gmail.com> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
2da2e185 |
|
17-Jul-2014 |
Luis Alves <ljalvs@gmail.com> |
[media] si2168: Remove testing for demod presence on probe Testing demod presence on probe fails if the demod was sleep mode. Signed-off-by: Luis Alves <ljalvs@gmail.com> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
4d6efc7a |
|
17-Jul-2014 |
Luis Alves <ljalvs@gmail.com> |
[media] si2168: Fix i2c_add_mux_adapter return value In case of failure the return value was always 0. Return proper error code (ENODEV) instead. Signed-off-by: Luis Alves <ljalvs@gmail.com> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
43911776 |
|
17-Jul-2014 |
Olli Salonen <olli.salonen@iki.fi> |
[media] si2168: improve scanning performance Improve scanning performance by setting property 0301 with a value from Windows driver. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
32bf8818 |
|
17-Jul-2014 |
Luis Alves <ljalvs@gmail.com> |
[media] si2168: Set symbol rate for DVB-C This patch adds symbol rate setting to the driver. Signed-off-by: Luis Alves <ljalvs@gmail.com> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
b6b6fd6f |
|
13-Jul-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: few firmware download changes Rework firmware selection logic a little bit. Print notice asking user update firmware when old Si2168 B40 firmware is used. Signed-off-by: Antti Palosaari <crope@iki.fi> Tested-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
668aa63c |
|
13-Jul-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: advertise Si2168 A30 firmware Driver uses that new firmware too, so advertise it. Signed-off-by: Antti Palosaari <crope@iki.fi> Tested-by: Olli Salonen <olli.salonen@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
c9cb0820 |
|
13-Jul-2014 |
Olli Salonen <olli.salonen@iki.fi> |
[media] si2168: Add support for chip revision Si2168 A30 Add handling for different chip revisions and firmwares. Signed-off-by: Olli Salonen <olli.salonen@iki.fi> Reviewed-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
1d518c27 |
|
11-Jul-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: receive 4 bytes reply from cmd 0x14 Command 0x14 returns 4 bytes as a reply. It is used for setting key/value pairs to firmware and it returns 4 bytes back including old value. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
982c6238 |
|
11-Jul-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: do not set values which are already on default No need to set explicitly value that are already defaulted same. Setting new value returns old value. Firmware default values can be found just looking returned value. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
93f72639 |
|
10-Jul-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: remove duplicate command Same command was executed twice, but different value. Remove redundant command. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
88ac8f86 |
|
09-Jul-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: implement CNR statistic Implement CNR statistic. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
888680ff |
|
09-Jul-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: set cmd args using memcpy Use memcpy for set cmd buffer in order to keep style in line with rest of file. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
4de0ed7c |
|
09-Jul-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: implement sleep Implement sleep for power-management. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
0c76e68d |
|
13-Jun-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: firmware download fix First 8 bytes belonging to firmware image were hard-coded and uploaded by the driver mistakenly. Introduce new corrected firmware file and remove those 8 bytes from the driver. New firmware image could be extracted from the PCTV 292e driver CD using following command: $ dd if=/TVC 6.4.8/Driver/PCTV Empia/emOEM.sys ibs=1 skip=1089408 count=2728 of=dvb-demod-si2168-02.fw $ md5sum dvb-demod-si2168-02.fw d8da7ff67cd56cd8aa4e101aea45e052 dvb-demod-si2168-02.fw $ sudo cp dvb-demod-si2168-02.fw /lib/firmware/ Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
eefae30a |
|
13-Jun-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: add one missing parenthesis Fix following warnings: si2168_cmd_execute() warn: add some parenthesis here? si2168_cmd_execute() warn: maybe use && instead of & Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
722a042d |
|
22-Apr-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: relax demod lock checks a little bit3 was not cleared always leaving driver reporting demod is not fully locked. Do not check bit0 as it seems to be always 0. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
711615df |
|
14-Apr-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: add copyright and license Add copyright and license for each file. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
c790885b |
|
11-Apr-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: add support for DVB-C (annex A version) Add support for DVB-C (annex A version). Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
bffab93c |
|
11-Apr-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: add support for DVB-T2 Add support for DVB-T2. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|
#
845f3505 |
|
10-Apr-2014 |
Antti Palosaari <crope@iki.fi> |
[media] si2168: Silicon Labs Si2168 DVB-T/T2/C demod driver Silicon Labs Si2168 DVB-T/T2/C demod driver. That driver version supports only DVB-T. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
|