From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: Re: [PATCH 1/5] media: xc2028: rename the driver from tuner-xc2028
Date: Sat, 12 Mar 2022 01:28:34 +0800 [thread overview]
Message-ID: <202203120100.XSFDxLze-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 27033 bytes --]
CC: llvm(a)lists.linux.dev
CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
In-Reply-To: <b0fed7364a4aa503bcf6bd6693bb047f5da4335f.1646842741.git.mchehab@kernel.org>
References: <b0fed7364a4aa503bcf6bd6693bb047f5da4335f.1646842741.git.mchehab@kernel.org>
TO: Mauro Carvalho Chehab <mchehab@kernel.org>
CC: linux-media(a)vger.kernel.org
Hi Mauro,
I love your patch! Perhaps something to improve:
[auto build test WARNING on next-20220308]
[also build test WARNING on v5.17-rc7]
[cannot apply to media-tree/master linux/master linus/master v5.17-rc7 v5.17-rc6 v5.17-rc5]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Mauro-Carvalho-Chehab/media-sort-Makefile-entries/20220310-011503
base: cb153b68ff91cbc434f3de70ac549e110543e1bb
:::::: branch date: 2 days ago
:::::: commit date: 2 days ago
config: arm-randconfig-c002-20220310 (https://download.01.org/0day-ci/archive/20220312/202203120100.XSFDxLze-lkp(a)intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 276ca87382b8f16a65bddac700202924228982f6)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://github.com/0day-ci/linux/commit/1c9c0f68ece3b18557287bbde4f469aa97c8ee75
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Mauro-Carvalho-Chehab/media-sort-Makefile-entries/20220310-011503
git checkout 1c9c0f68ece3b18557287bbde4f469aa97c8ee75
# save the config file to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm clang-analyzer
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
clang-analyzer warnings: (new ones prefixed by >>)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/device.h:224:9: note: Returning from 'devm_kmalloc_array'
return devm_kmalloc_array(dev, n, size, flags | __GFP_ZERO);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/device.h:224:2: note: Returning pointer, which participates in a condition later
return devm_kmalloc_array(dev, n, size, flags | __GFP_ZERO);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/iio/adc/qcom-pm8xxx-xoadc.c:838:19: note: Returning from 'devm_kcalloc'
adc->iio_chans = devm_kcalloc(adc->dev, adc->nchans,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/iio/adc/qcom-pm8xxx-xoadc.c:840:6: note: Assuming field 'iio_chans' is non-null
if (!adc->iio_chans)
^~~~~~~~~~~~~~~
drivers/iio/adc/qcom-pm8xxx-xoadc.c:840:2: note: Taking false branch
if (!adc->iio_chans)
^
drivers/iio/adc/qcom-pm8xxx-xoadc.c:843:15: note: Calling 'devm_kcalloc'
adc->chans = devm_kcalloc(adc->dev, adc->nchans,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/device.h:224:9: note: Calling 'devm_kmalloc_array'
return devm_kmalloc_array(dev, n, size, flags | __GFP_ZERO);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/device.h:216:2: note: Taking false branch
if (unlikely(check_mul_overflow(n, size, &bytes)))
^
include/linux/device.h:219:2: note: Returning pointer, which participates in a condition later
return devm_kmalloc(dev, bytes, flags);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/device.h:224:9: note: Returning from 'devm_kmalloc_array'
return devm_kmalloc_array(dev, n, size, flags | __GFP_ZERO);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/device.h:224:2: note: Returning pointer, which participates in a condition later
return devm_kmalloc_array(dev, n, size, flags | __GFP_ZERO);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/iio/adc/qcom-pm8xxx-xoadc.c:843:15: note: Returning from 'devm_kcalloc'
adc->chans = devm_kcalloc(adc->dev, adc->nchans,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/iio/adc/qcom-pm8xxx-xoadc.c:845:6: note: Assuming field 'chans' is non-null
if (!adc->chans)
^~~~~~~~~~~
drivers/iio/adc/qcom-pm8xxx-xoadc.c:845:2: note: Taking false branch
if (!adc->chans)
^
drivers/iio/adc/qcom-pm8xxx-xoadc.c:849:39: note: Assuming 'child' is not equal to null
for_each_available_child_of_node(np, child) {
^
include/linux/of.h:1371:58: note: expanded from macro 'for_each_available_child_of_node'
for (child = of_get_next_available_child(parent, NULL); child != NULL; \
^~~~~~~~~~~~~
drivers/iio/adc/qcom-pm8xxx-xoadc.c:849:2: note: Loop condition is true. Entering loop body
for_each_available_child_of_node(np, child) {
^
include/linux/of.h:1371:2: note: expanded from macro 'for_each_available_child_of_node'
for (child = of_get_next_available_child(parent, NULL); child != NULL; \
^
drivers/iio/adc/qcom-pm8xxx-xoadc.c:852:8: note: Passing value via 3rd parameter 'hw_channels'
adc->variant->channels,
^~~~~~~~~~~~~~~~~~~~~~
drivers/iio/adc/qcom-pm8xxx-xoadc.c:851:9: note: Calling 'pm8xxx_xoadc_parse_channel'
ret = pm8xxx_xoadc_parse_channel(adc->dev, child,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/iio/adc/qcom-pm8xxx-xoadc.c:748:6: note: Assuming 'ret' is 0
if (ret) {
^~~
drivers/iio/adc/qcom-pm8xxx-xoadc.c:748:2: note: Taking false branch
if (ret) {
^
drivers/iio/adc/qcom-pm8xxx-xoadc.c:753:6: note: Assuming 'ret' is 0
if (ret) {
^~~
drivers/iio/adc/qcom-pm8xxx-xoadc.c:753:2: note: Taking false branch
if (ret) {
^
drivers/iio/adc/qcom-pm8xxx-xoadc.c:760:2: note: Value assigned to 'hwchan'
hwchan = &hw_channels[0];
^~~~~~~~~~~~~~~~~~~~~~~~
drivers/iio/adc/qcom-pm8xxx-xoadc.c:761:9: note: Assuming 'hwchan' is null
while (hwchan && hwchan->datasheet_name) {
^~~~~~
drivers/iio/adc/qcom-pm8xxx-xoadc.c:761:16: note: Left side of '&&' is false
while (hwchan && hwchan->datasheet_name) {
^
drivers/iio/adc/qcom-pm8xxx-xoadc.c:769:7: note: Access to field 'datasheet_name' results in a dereference of a null pointer (loaded from variable 'hwchan')
if (!hwchan->datasheet_name) {
^~~~~~
Suppressed 11 warnings (11 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
5 warnings generated.
Suppressed 5 warnings (5 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
6 warnings generated.
Suppressed 6 warnings (5 in non-user code, 1 with check filters).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
5 warnings generated.
Suppressed 5 warnings (5 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
11 warnings generated.
Suppressed 11 warnings (11 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
14 warnings generated.
>> drivers/media/tuners/xc2028.c:1037:3: warning: Value stored to 'rc' is never read [clang-analyzer-deadcode.DeadStores]
rc = send_seq(priv, {0x00, 0x00});
^
drivers/media/tuners/xc2028.c:1037:3: note: Value stored to 'rc' is never read
Suppressed 13 warnings (11 in non-user code, 2 with check filters).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
13 warnings generated.
Suppressed 13 warnings (11 in non-user code, 2 with check filters).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
12 warnings generated.
Suppressed 12 warnings (11 in non-user code, 1 with check filters).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
13 warnings generated.
Suppressed 13 warnings (11 in non-user code, 2 with check filters).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
13 warnings generated.
Suppressed 13 warnings (11 in non-user code, 2 with check filters).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
5 warnings generated.
Suppressed 5 warnings (5 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
11 warnings generated.
Suppressed 11 warnings (11 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
12 warnings generated.
drivers/iio/proximity/vcnl3020.c:76:8: warning: Excessive padding in 'struct vcnl3020_data' (45 padding bytes, where 13 is optimal).
Optimal fields order:
buf,
rev,
regmap,
dev,
lock,
consider reordering the fields or adding explicit padding members [clang-analyzer-optin.performance.Padding]
struct vcnl3020_data {
~~~~~~~^~~~~~~~~~~~~~~
drivers/iio/proximity/vcnl3020.c:76:8: note: Excessive padding in 'struct vcnl3020_data' (45 padding bytes, where 13 is optimal). Optimal fields order: buf, rev, regmap, dev, lock, consider reordering the fields or adding explicit padding members
struct vcnl3020_data {
~~~~~~~^~~~~~~~~~~~~~~
Suppressed 11 warnings (11 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
11 warnings generated.
Suppressed 11 warnings (11 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
5 warnings generated.
Suppressed 5 warnings (5 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
19 warnings generated.
drivers/media/i2c/ov2659.c:895:21: warning: Value stored to 'client' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct i2c_client *client = ov2659->client;
^~~~~~ ~~~~~~~~~~~~~~
drivers/media/i2c/ov2659.c:895:21: note: Value stored to 'client' during its initialization is never read
struct i2c_client *client = ov2659->client;
^~~~~~ ~~~~~~~~~~~~~~
drivers/media/i2c/ov2659.c:986:21: warning: Value stored to 'client' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct i2c_client *client = v4l2_get_subdevdata(sd);
^~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/i2c/ov2659.c:986:21: note: Value stored to 'client' during its initialization is never read
struct i2c_client *client = v4l2_get_subdevdata(sd);
^~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/i2c/ov2659.c:1002:21: warning: Value stored to 'client' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct i2c_client *client = v4l2_get_subdevdata(sd);
^~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/i2c/ov2659.c:1002:21: note: Value stored to 'client' during its initialization is never read
struct i2c_client *client = v4l2_get_subdevdata(sd);
^~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/i2c/ov2659.c:1028:21: warning: Value stored to 'client' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct i2c_client *client = v4l2_get_subdevdata(sd);
^~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/i2c/ov2659.c:1028:21: note: Value stored to 'client' during its initialization is never read
struct i2c_client *client = v4l2_get_subdevdata(sd);
^~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/i2c/ov2659.c:1151:21: warning: Value stored to 'client' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct i2c_client *client = ov2659->client;
^~~~~~ ~~~~~~~~~~~~~~
drivers/media/i2c/ov2659.c:1151:21: note: Value stored to 'client' during its initialization is never read
struct i2c_client *client = ov2659->client;
^~~~~~ ~~~~~~~~~~~~~~
drivers/media/i2c/ov2659.c:1160:21: warning: Value stored to 'client' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct i2c_client *client = ov2659->client;
^~~~~~ ~~~~~~~~~~~~~~
drivers/media/i2c/ov2659.c:1160:21: note: Value stored to 'client' during its initialization is never read
struct i2c_client *client = ov2659->client;
^~~~~~ ~~~~~~~~~~~~~~
drivers/media/i2c/ov2659.c:1312:21: warning: Value stored to 'client' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct i2c_client *client = v4l2_get_subdevdata(sd);
^~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
drivers/media/i2c/ov2659.c:1312:21: note: Value stored to 'client' during its initialization is never read
struct i2c_client *client = v4l2_get_subdevdata(sd);
^~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
Suppressed 12 warnings (11 in non-user code, 1 with check filters).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
14 warnings generated.
drivers/fpga/dfl-afu-dma-region.c:38:17: warning: Value stored to 'dev' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct device *dev = &pdata->dev->dev;
^~~ ~~~~~~~~~~~~~~~~
drivers/fpga/dfl-afu-dma-region.c:38:17: note: Value stored to 'dev' during its initialization is never read
struct device *dev = &pdata->dev->dev;
^~~ ~~~~~~~~~~~~~~~~
drivers/fpga/dfl-afu-dma-region.c:86:17: warning: Value stored to 'dev' during its initialization is never read [clang-analyzer-deadcode.DeadStores]
struct device *dev = &pdata->dev->dev;
^~~ ~~~~~~~~~~~~~~~~
vim +/rc +1037 drivers/media/tuners/xc2028.c
6cb45879dca84c drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-10-02 1007
00deff1a076dc1 drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-11-24 1008 static int generic_set_freq(struct dvb_frontend *fe, u32 freq /* in HZ */,
aa40d194975e23 drivers/media/common/tuners/tuner-xc2028.c Hans Verkuil 2011-03-06 1009 enum v4l2_tuner_type new_type,
00deff1a076dc1 drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-11-24 1010 unsigned int type,
66c2d53db28276 drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-11-25 1011 v4l2_std_id std,
66c2d53db28276 drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-11-25 1012 u16 int_freq)
6cb45879dca84c drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-10-02 1013 {
215b95baf969c6 drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-10-23 1014 struct xc2028_data *priv = fe->tuner_priv;
215b95baf969c6 drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-10-23 1015 int rc = -EINVAL;
2ce4b3aa7c3c19 drivers/media/video/tuner-xc2028.c Chris Pascoe 2007-11-19 1016 unsigned char buf[4];
701672eb738739 drivers/media/video/tuner-xc2028.c Michel Ludwig 2007-07-18 1017 u32 div, offset = 0;
6cb45879dca84c drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-10-02 1018
7e28adb2497f6b drivers/media/video/tuner-xc2028.c Harvey Harrison 2008-04-08 1019 tuner_dbg("%s called\n", __func__);
215b95baf969c6 drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-10-23 1020
de3fe21ba2fdc0 drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-10-24 1021 mutex_lock(&priv->lock);
de3fe21ba2fdc0 drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-10-24 1022
2ce4b3aa7c3c19 drivers/media/video/tuner-xc2028.c Chris Pascoe 2007-11-19 1023 tuner_dbg("should set frequency %d kHz\n", freq / 1000);
6cb45879dca84c drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-10-02 1024
66c2d53db28276 drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-11-25 1025 if (check_firmware(fe, type, std, int_freq) < 0)
3b20532c791399 drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-09-27 1026 goto ret;
2e4160ca8046e3 drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-07-18 1027
2800ae9cd669db drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-11-22 1028 /* On some cases xc2028 can disable video output, if
2800ae9cd669db drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-11-22 1029 * very weak signals are received. By sending a soft
2800ae9cd669db drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-11-22 1030 * reset, this is re-enabled. So, it is better to always
2800ae9cd669db drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-11-22 1031 * send a soft reset before changing channels, to be sure
2800ae9cd669db drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-11-22 1032 * that xc2028 will be in a safe state.
2800ae9cd669db drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-11-22 1033 * Maybe this might also be needed for DTV.
2800ae9cd669db drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-11-22 1034 */
fd34cb08babcd8 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2011-08-31 1035 switch (new_type) {
fd34cb08babcd8 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2011-08-31 1036 case V4L2_TUNER_ANALOG_TV:
2800ae9cd669db drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-11-22 @1037 rc = send_seq(priv, {0x00, 0x00});
0a863975e28866 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2009-06-01 1038
fd34cb08babcd8 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2011-08-31 1039 /* Analog mode requires offset = 0 */
fd34cb08babcd8 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2011-08-31 1040 break;
fd34cb08babcd8 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2011-08-31 1041 case V4L2_TUNER_RADIO:
fd34cb08babcd8 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2011-08-31 1042 /* Radio mode requires offset = 0 */
fd34cb08babcd8 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2011-08-31 1043 break;
fd34cb08babcd8 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2011-08-31 1044 case V4L2_TUNER_DIGITAL_TV:
0a863975e28866 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2009-06-01 1045 /*
0a863975e28866 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2009-06-01 1046 * Digital modes require an offset to adjust to the
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1047 * proper frequency. The offset depends on what
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1048 * firmware version is used.
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1049 */
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1050
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1051 /*
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1052 * Adjust to the center frequency. This is calculated by the
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1053 * formula: offset = 1.25MHz - BW/2
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1054 * For DTV 7/8, the firmware uses BW = 8000, so it needs a
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1055 * further adjustment to get the frequency center on VHF
0a863975e28866 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2009-06-01 1056 */
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1057
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1058 /*
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1059 * The firmware DTV78 used to work fine in UHF band (8 MHz
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1060 * bandwidth) but not@all in VHF band (7 MHz bandwidth).
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1061 * The real problem was connected to the formula used to
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1062 * calculate the center frequency offset in VHF band.
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1063 * In fact, removing the 500KHz adjustment fixed the problem.
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1064 * This is coherent to what was implemented for the DTV7
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1065 * firmware.
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1066 * In the end, now the center frequency is the same for all 3
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1067 * firmwares (DTV7, DTV8, DTV78) and doesn't depend on channel
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1068 * bandwidth.
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1069 */
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1070
0a863975e28866 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2009-06-01 1071 if (priv->cur_fw.type & DTV6)
d536c9df41f5e4 drivers/media/video/tuner-xc2028.c Michael Krufky 2007-12-18 1072 offset = 1750000;
98ab8550aea472 drivers/media/common/tuners/tuner-xc2028.c Gianluca Gennari 2012-01-04 1073 else /* DTV7 or DTV8 or DTV78 */
d4e7668104f7f1 drivers/media/video/tuner-xc2028.c Mauro Carvalho Chehab 2007-07-18 1074 offset = 2750000;
0a863975e28866 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2009-06-01 1075
897b842296f128 drivers/media/video/tuner-xc2028.c Chris Pascoe 2007-12-02 1076 /*
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1077 * xc3028 additional "magic"
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1078 * Depending on the firmware version, it needs some adjustments
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1079 * to properly centralize the frequency. This seems to be
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1080 * needed to compensate the SCODE table adjustments made by
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1081 * newer firmwares
897b842296f128 drivers/media/video/tuner-xc2028.c Chris Pascoe 2007-12-02 1082 */
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1083
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1084 /*
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1085 * The proper adjustment would be to do it at s-code table.
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1086 * However, this didn't work, as reported by
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1087 * Robert Lowery <rglowery@exemail.com.au>
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1088 */
7f2199c03b4946 drivers/media/common/tuners/tuner-xc2028.c Mauro Carvalho Chehab 2010-02-19 1089
---
0-DAY CI Kernel Test Service
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
next reply other threads:[~2022-03-11 17:28 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-11 17:28 kernel test robot [this message]
-- strict thread matches above, loose matches on Subject: below --
2022-03-09 16:22 [PATCH 0/5] media: sort Makefile entries Mauro Carvalho Chehab
2022-03-09 16:22 ` [PATCH 1/5] media: xc2028: rename the driver from tuner-xc2028 Mauro Carvalho Chehab
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202203120100.XSFDxLze-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild@lists.01.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.