Re: [PATCH v2 2/2] dt-bindings: clock: ad9545: Add documentation
by kernel test robot
Hi,
I love your patch! Perhaps something to improve:
[auto build test WARNING on clk/clk-next]
[also build test WARNING on robh/for-next linux/master linus/master v5.13-rc6 next-20210617]
[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/alexandru-tachici-analog-com/clk...
base: https://git.kernel.org/pub/scm/linux/kernel/git/clk/linux.git clk-next
config: h8300-randconfig-s031-20210618 (attached as .config)
compiler: h8300-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.3-341-g8af24329-dirty
# https://github.com/0day-ci/linux/commit/b46755cf562ff8a1a9841a4560e344099...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review alexandru-tachici-analog-com/clk-ad9545-Add-support/20210616-153412
git checkout b46755cf562ff8a1a9841a4560e344099f3f054e
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' W=1 ARCH=h8300
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
drivers/clk/adi/clk-ad9545.c:1114:43: sparse: sparse: cast from restricted __le32
>> drivers/clk/adi/clk-ad9545.c:1114:43: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [addressable] [usertype] regval @@
drivers/clk/adi/clk-ad9545.c:1114:43: sparse: expected unsigned int [usertype] val
drivers/clk/adi/clk-ad9545.c:1114:43: sparse: got restricted __le32 [addressable] [usertype] regval
drivers/clk/adi/clk-ad9545.c:1114:43: sparse: sparse: cast from restricted __le32
drivers/clk/adi/clk-ad9545.c:1114:43: sparse: sparse: cast from restricted __le32
drivers/clk/adi/clk-ad9545.c:1114:43: sparse: sparse: cast from restricted __le32
drivers/clk/adi/clk-ad9545.c:1114:43: sparse: sparse: cast from restricted __le32
drivers/clk/adi/clk-ad9545.c:1114:43: sparse: sparse: restricted __le32 degrades to integer
drivers/clk/adi/clk-ad9545.c:1407:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [addressable] [assigned] [usertype] regval @@ got unsigned int freq_lock_fill_rate @@
drivers/clk/adi/clk-ad9545.c:1407:24: sparse: expected restricted __le32 [addressable] [assigned] [usertype] regval
drivers/clk/adi/clk-ad9545.c:1407:24: sparse: got unsigned int freq_lock_fill_rate
drivers/clk/adi/clk-ad9545.c:1409:88: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected unsigned int val @@ got restricted __le32 [addressable] [assigned] [usertype] regval @@
drivers/clk/adi/clk-ad9545.c:1409:88: sparse: expected unsigned int val
drivers/clk/adi/clk-ad9545.c:1409:88: sparse: got restricted __le32 [addressable] [assigned] [usertype] regval
drivers/clk/adi/clk-ad9545.c:1414:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [addressable] [assigned] [usertype] regval @@ got unsigned int freq_lock_drain_rate @@
drivers/clk/adi/clk-ad9545.c:1414:24: sparse: expected restricted __le32 [addressable] [assigned] [usertype] regval
drivers/clk/adi/clk-ad9545.c:1414:24: sparse: got unsigned int freq_lock_drain_rate
drivers/clk/adi/clk-ad9545.c:1416:89: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected unsigned int val @@ got restricted __le32 [addressable] [assigned] [usertype] regval @@
drivers/clk/adi/clk-ad9545.c:1416:89: sparse: expected unsigned int val
drivers/clk/adi/clk-ad9545.c:1416:89: sparse: got restricted __le32 [addressable] [assigned] [usertype] regval
drivers/clk/adi/clk-ad9545.c:1421:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [addressable] [assigned] [usertype] regval @@ got unsigned int phase_lock_fill_rate @@
drivers/clk/adi/clk-ad9545.c:1421:24: sparse: expected restricted __le32 [addressable] [assigned] [usertype] regval
drivers/clk/adi/clk-ad9545.c:1421:24: sparse: got unsigned int phase_lock_fill_rate
drivers/clk/adi/clk-ad9545.c:1423:89: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected unsigned int val @@ got restricted __le32 [addressable] [assigned] [usertype] regval @@
drivers/clk/adi/clk-ad9545.c:1423:89: sparse: expected unsigned int val
drivers/clk/adi/clk-ad9545.c:1423:89: sparse: got restricted __le32 [addressable] [assigned] [usertype] regval
drivers/clk/adi/clk-ad9545.c:1428:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [addressable] [assigned] [usertype] regval @@ got unsigned int phase_lock_drain_rate @@
drivers/clk/adi/clk-ad9545.c:1428:24: sparse: expected restricted __le32 [addressable] [assigned] [usertype] regval
drivers/clk/adi/clk-ad9545.c:1428:24: sparse: got unsigned int phase_lock_drain_rate
drivers/clk/adi/clk-ad9545.c:1430:90: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected unsigned int val @@ got restricted __le32 [addressable] [assigned] [usertype] regval @@
drivers/clk/adi/clk-ad9545.c:1430:90: sparse: expected unsigned int val
drivers/clk/adi/clk-ad9545.c:1430:90: sparse: got restricted __le32 [addressable] [assigned] [usertype] regval
vim +1114 drivers/clk/adi/clk-ad9545.c
f88d17c990b731 Alexandru Tachici 2021-06-14 1089
f88d17c990b731 Alexandru Tachici 2021-06-14 1090 static int ad9545_out_clk_get_phase(struct clk_hw *hw)
f88d17c990b731 Alexandru Tachici 2021-06-14 1091 {
f88d17c990b731 Alexandru Tachici 2021-06-14 1092 struct ad9545_out_clk *clk = to_out_clk(hw);
f88d17c990b731 Alexandru Tachici 2021-06-14 1093 u64 input_edges_nr;
f88d17c990b731 Alexandru Tachici 2021-06-14 1094 u64 phase_code;
f88d17c990b731 Alexandru Tachici 2021-06-14 1095 __le32 regval;
f88d17c990b731 Alexandru Tachici 2021-06-14 1096 u32 phase_conf;
f88d17c990b731 Alexandru Tachici 2021-06-14 1097 u32 qdiv;
f88d17c990b731 Alexandru Tachici 2021-06-14 1098 int ret;
f88d17c990b731 Alexandru Tachici 2021-06-14 1099
f88d17c990b731 Alexandru Tachici 2021-06-14 1100 ret = ad9545_get_q_div(clk->st, clk->address, &qdiv);
f88d17c990b731 Alexandru Tachici 2021-06-14 1101 if (ret < 0)
f88d17c990b731 Alexandru Tachici 2021-06-14 1102 return ret;
f88d17c990b731 Alexandru Tachici 2021-06-14 1103
f88d17c990b731 Alexandru Tachici 2021-06-14 1104 ret = regmap_read(clk->st->regmap, AD9545_QX_PHASE_CONF(clk->address), &phase_conf);
f88d17c990b731 Alexandru Tachici 2021-06-14 1105 if (ret < 0)
f88d17c990b731 Alexandru Tachici 2021-06-14 1106 return ret;
f88d17c990b731 Alexandru Tachici 2021-06-14 1107
f88d17c990b731 Alexandru Tachici 2021-06-14 1108 ret = regmap_bulk_read(clk->st->regmap, AD9545_QX_PHASE(clk->address), ®val, 4);
f88d17c990b731 Alexandru Tachici 2021-06-14 1109 if (ret < 0)
f88d17c990b731 Alexandru Tachici 2021-06-14 1110 return ret;
f88d17c990b731 Alexandru Tachici 2021-06-14 1111
f88d17c990b731 Alexandru Tachici 2021-06-14 1112 /* Qxy phase bitfield is 33 bits long, with last bit in PHASE_CONF reg */
f88d17c990b731 Alexandru Tachici 2021-06-14 1113 phase_code = !!(phase_conf & AD9545_QX_PHASE_32_MSK);
f88d17c990b731 Alexandru Tachici 2021-06-14 @1114 phase_code = (phase_code >> 32) + cpu_to_le32(regval);
f88d17c990b731 Alexandru Tachici 2021-06-14 1115
f88d17c990b731 Alexandru Tachici 2021-06-14 1116 input_edges_nr = 2 * qdiv + !!(phase_conf & AD9545_QX_HALF_DIV_MSK);
f88d17c990b731 Alexandru Tachici 2021-06-14 1117
f88d17c990b731 Alexandru Tachici 2021-06-14 1118 /*
f88d17c990b731 Alexandru Tachici 2021-06-14 1119 * phase = 360 * (Qxy Phase / E) where:
f88d17c990b731 Alexandru Tachici 2021-06-14 1120 * E is the total number of input edges per output period of the Q-divider.
f88d17c990b731 Alexandru Tachici 2021-06-14 1121 */
f88d17c990b731 Alexandru Tachici 2021-06-14 1122 return div64_u64(phase_code * 360, input_edges_nr);
f88d17c990b731 Alexandru Tachici 2021-06-14 1123 }
f88d17c990b731 Alexandru Tachici 2021-06-14 1124
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[intel-linux-intel-lts:5.4/yocto 1/5] drivers/ptp/ptp-intel-pmc-tgpio.c:484:44: warning: missing braces around initializer
by kernel test robot
tree: https://github.com/intel/linux-intel-lts.git 5.4/yocto
head: 7a821854911e315d3ed3fe2fc626e12906c9ab24
commit: 2948bbdc34f98909857c23acd79584143ea9e0b3 [1/5] ptp: S/W workaround for PMC TGPIO h/w bug
config: i386-allyesconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/intel/linux-intel-lts/commit/2948bbdc34f98909857c23acd...
git remote add intel-linux-intel-lts https://github.com/intel/linux-intel-lts.git
git fetch --no-tags intel-linux-intel-lts 5.4/yocto
git checkout 2948bbdc34f98909857c23acd79584143ea9e0b3
# save the attached .config to linux build tree
make W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
drivers/ptp/ptp-intel-pmc-tgpio.c: In function 'intel_pmc_tgpio_counttstamp':
>> drivers/ptp/ptp-intel-pmc-tgpio.c:484:44: warning: missing braces around initializer [-Wmissing-braces]
484 | static struct timespec64 dt_ts_prev[2] = {0, 0};
| ^
| { }
At top level:
drivers/ptp/ptp-intel-pmc-tgpio.c:754:36: warning: 'intel_pmc_acpi_match' defined but not used [-Wunused-const-variable=]
754 | static const struct acpi_device_id intel_pmc_acpi_match[] = {
| ^~~~~~~~~~~~~~~~~~~~
vim +484 drivers/ptp/ptp-intel-pmc-tgpio.c
473
474 static int intel_pmc_tgpio_counttstamp
475 (struct ptp_clock_info *info, struct ptp_event_count_tstamp *count)
476 {
477 struct intel_pmc_tgpio_t *tgpio = to_intel_pmc_tgpio(info);
478 u32 dt_hi_s;
479 u32 dt_hi_e;
480 u32 dt_lo;
481 struct timespec64 dt_ts;
482 struct timespec64 tsc_now;
483 static u32 dt_lo_prev[2] = {0, 0};
> 484 static struct timespec64 dt_ts_prev[2] = {0, 0};
485 static unsigned long long prev_count[2] = {0, 0};
486
487 mutex_lock(&intel_pmc_tgpio->lock);
488 while (intel_pmc_tgpio->pin[count->index].busy) {
489 mutex_unlock(&intel_pmc_tgpio->lock);
490 wait_for_completion
491 (&intel_pmc_tgpio->pin[count->index].transact_comp);
492 mutex_lock(&intel_pmc_tgpio->lock);
493 }
494 intel_pmc_tgpio->pin[count->index].busy = true;
495 mutex_unlock(&intel_pmc_tgpio->lock);
496
497 tsc_now = get_tsc_ns_now(NULL);
498 dt_hi_s = convert_tsc_ns_to_art(&tsc_now) >> 32;
499
500 /* Reading lower 32-bit word of Time Capture Value (TCV) loads */
501 /* the event time and event count capture */
502 dt_lo = INTEL_PMC_TGPIO_RD_REG(TGPIOTCV31_0, count->index);
503 count->event_count =
504 INTEL_PMC_TGPIO_RD_REG(TGPIOECCV63_32, count->index);
505 count->event_count <<= 32;
506 count->event_count |=
507 INTEL_PMC_TGPIO_RD_REG(TGPIOECCV31_0, count->index);
508 dt_hi_e = INTEL_PMC_TGPIO_RD_REG(TGPIOTCV63_32, count->index);
509
510 if (dt_hi_e != dt_hi_s && dt_lo >> 31)
511 dt_ts = convert_art_to_tsc_ns(((u64)dt_hi_s << 32) | dt_lo);
512 else
513 dt_ts = convert_art_to_tsc_ns(((u64)dt_hi_e << 32) | dt_lo);
514
515 /* Return previous device time if the event_count
516 * isn't incremented with TCV value
517 */
518 if (count->event_count == prev_count[count->index] ||
519 dt_lo_prev[count->index] == dt_lo) {
520 count->event_count = prev_count[count->index];
521 dt_lo = dt_lo_prev[count->index];
522 dt_ts = dt_ts_prev[count->index];
523 }
524
525 count->device_time = ts64_to_ptp_clock_time(dt_ts);
526 prev_count[count->index] = count->event_count;
527 dt_lo_prev[count->index] = dt_lo;
528 dt_ts_prev[count->index] = dt_ts;
529
530 mutex_lock(&intel_pmc_tgpio->lock);
531 intel_pmc_tgpio->pin[count->index].busy = false;
532 complete(&intel_pmc_tgpio->pin[count->index].transact_comp);
533 mutex_unlock(&intel_pmc_tgpio->lock);
534
535 return 0;
536 }
537
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
Re: [PATCH] misc: sram: Only map reserved areas in Tegra SYSRAM
by kernel test robot
Hi Mikko,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on next-20210616]
[cannot apply to char-misc/char-misc-testing soc/for-next tegra-drm/drm/tegra/for-next v5.13-rc6 v5.13-rc5 v5.13-rc4 v5.13-rc6]
[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/Mikko-Perttunen/misc-sram-Only-m...
base: c7d4c1fd91ab4a6d2620497921a9c6bf54650ab8
config: m68k-randconfig-s031-20210618 (attached as .config)
compiler: m68k-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.3-341-g8af24329-dirty
# https://github.com/0day-ci/linux/commit/3108530c06411e371ed28777233c48d89...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Mikko-Perttunen/misc-sram-Only-map-reserved-areas-in-Tegra-SYSRAM/20210617-174946
git checkout 3108530c06411e371ed28777233c48d89fa61071
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' W=1 ARCH=m68k
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/misc/sram.c:105:35: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *virt_base @@ got void [noderef] __iomem * @@
drivers/misc/sram.c:105:35: sparse: expected void *virt_base
drivers/misc/sram.c:105:35: sparse: got void [noderef] __iomem *
drivers/misc/sram.c:107:35: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *virt_base @@ got void [noderef] __iomem * @@
drivers/misc/sram.c:107:35: sparse: expected void *virt_base
drivers/misc/sram.c:107:35: sparse: got void [noderef] __iomem *
>> drivers/misc/sram.c:114:28: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem *base @@ got void *virt_base @@
drivers/misc/sram.c:114:28: sparse: expected void [noderef] __iomem *base
drivers/misc/sram.c:114:28: sparse: got void *virt_base
vim +105 drivers/misc/sram.c
92
93 static int sram_add_partition(struct sram_dev *sram, struct sram_reserve *block,
94 phys_addr_t start)
95 {
96 int ret;
97 struct sram_partition *part = &sram->partition[sram->partitions];
98
99 mutex_init(&part->lock);
100
101 if (sram->config->map_only_reserved) {
102 void *virt_base;
103
104 if (sram->no_memory_wc)
> 105 virt_base = devm_ioremap_resource(sram->dev, &block->res);
106 else
107 virt_base = devm_ioremap_resource_wc(sram->dev, &block->res);
108
109 if (IS_ERR(virt_base)) {
110 dev_err(sram->dev, "could not map SRAM at %pr\n", &block->res);
111 return PTR_ERR(virt_base);
112 }
113
> 114 part->base = virt_base;
115 } else {
116 part->base = sram->virt_base + block->start;
117 }
118
119 if (block->pool) {
120 ret = sram_add_pool(sram, block, start, part);
121 if (ret)
122 return ret;
123 }
124 if (block->export) {
125 ret = sram_add_export(sram, block, start, part);
126 if (ret)
127 return ret;
128 }
129 if (block->protect_exec) {
130 ret = sram_check_protect_exec(sram, block, part);
131 if (ret)
132 return ret;
133
134 ret = sram_add_pool(sram, block, start, part);
135 if (ret)
136 return ret;
137
138 sram_add_protect_exec(part);
139 }
140
141 sram->partitions++;
142
143 return 0;
144 }
145
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[avpatel:riscv_aclint_v2 8/13] drivers/irqchip/irq-aclint-swi.c:165:2: error: too many arguments to function 'riscv_ipi_set_virq_range'
by kernel test robot
tree: https://github.com/avpatel/linux.git riscv_aclint_v2
head: 7dfc87079d3bd32cf6acf24c246204ca31a109e2
commit: bb7ca6d293e66ae0019e3dbd94ea35e4dfbcbe79 [8/13] irqchip: Add ACLINT software interrupt driver
config: riscv-randconfig-r002-20210617 (attached as .config)
compiler: riscv32-linux-gcc (GCC) 9.3.0
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
# https://github.com/avpatel/linux/commit/bb7ca6d293e66ae0019e3dbd94ea35e4d...
git remote add avpatel https://github.com/avpatel/linux.git
git fetch --no-tags avpatel riscv_aclint_v2
git checkout bb7ca6d293e66ae0019e3dbd94ea35e4dfbcbe79
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=riscv
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/irqchip/irq-aclint-swi.c: In function 'aclint_swi_set_virq':
>> drivers/irqchip/irq-aclint-swi.c:165:2: error: too many arguments to function 'riscv_ipi_set_virq_range'
165 | riscv_ipi_set_virq_range(virq, BITS_PER_LONG, true);
| ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from arch/riscv/include/asm/tlbflush.h:11,
from arch/riscv/include/asm/pgtable.h:87,
from include/linux/pgtable.h:6,
from arch/riscv/include/asm/io.h:15,
from include/linux/io.h:13,
from drivers/irqchip/irq-aclint-swi.c:9:
arch/riscv/include/asm/smp.h:113:20: note: declared here
113 | static inline void riscv_ipi_set_virq_range(int virq, int nr)
| ^~~~~~~~~~~~~~~~~~~~~~~~
vim +/riscv_ipi_set_virq_range +165 drivers/irqchip/irq-aclint-swi.c
147
148 static int __init aclint_swi_set_virq(void)
149 {
150 int virq;
151 struct irq_fwspec ipi = {
152 .fwnode = aclint_swi_domain->fwnode,
153 .param_count = 1,
154 .param[0] = 0,
155 };
156
157 virq = __irq_domain_alloc_irqs(aclint_swi_domain, -1, BITS_PER_LONG,
158 NUMA_NO_NODE, &ipi,
159 false, NULL);
160 if (virq <= 0) {
161 pr_err("unable to alloc IRQs from SBI IPI IRQ domain\n");
162 return -ENOMEM;
163 }
164
> 165 riscv_ipi_set_virq_range(virq, BITS_PER_LONG, true);
166
167 return 0;
168 }
169
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[intel-linux-intel-lts:5.4/yocto 14766/16825] drivers/net/ethernet/intel/igc/igc_ptp.c:457:21: sparse: sparse: cast to restricted __be32
by kernel test robot
tree: https://github.com/intel/linux-intel-lts.git 5.4/yocto
head: 7a821854911e315d3ed3fe2fc626e12906c9ab24
commit: 23eaaf813799b52b3df39373c4c82d81a0988816 [14766/16825] igc: Add support for PTP getcrosststamp()
config: i386-randconfig-s032-20210617 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.3-341-g8af24329-dirty
# https://github.com/intel/linux-intel-lts/commit/23eaaf813799b52b3df39373c...
git remote add intel-linux-intel-lts https://github.com/intel/linux-intel-lts.git
git fetch --no-tags intel-linux-intel-lts 5.4/yocto
git checkout 23eaaf813799b52b3df39373c4c82d81a0988816
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/net/ethernet/intel/igc/igc_ptp.c:457:21: sparse: sparse: cast to restricted __be32
>> drivers/net/ethernet/intel/igc/igc_ptp.c:457:21: sparse: sparse: cast to restricted __be32
>> drivers/net/ethernet/intel/igc/igc_ptp.c:457:21: sparse: sparse: cast to restricted __be32
>> drivers/net/ethernet/intel/igc/igc_ptp.c:457:21: sparse: sparse: cast to restricted __be32
>> drivers/net/ethernet/intel/igc/igc_ptp.c:457:21: sparse: sparse: cast to restricted __be32
>> drivers/net/ethernet/intel/igc/igc_ptp.c:457:21: sparse: sparse: cast to restricted __be32
vim +457 drivers/net/ethernet/intel/igc/igc_ptp.c
441
442 static void igc_ptm_gather_report(struct igc_adapter *adapter)
443 {
444 struct igc_hw *hw = &adapter->hw;
445 u32 t2_curr_h, t2_curr_l;
446 ktime_t t1, t2_curr;
447
448 t1 = ktime_set(rd32(IGC_PTM_T1_TIM0_H),
449 rd32(IGC_PTM_T1_TIM0_L));
450
451 t2_curr_l = rd32(IGC_PTM_CURR_T2_L);
452 t2_curr_h = rd32(IGC_PTM_CURR_T2_H);
453
454 /* FIXME: There's an ambiguity on what endianness some PCIe PTM
455 * messages should use. Find a more robust way to handle this.
456 */
> 457 t2_curr_h = be32_to_cpu(t2_curr_h);
458
459 t2_curr = ((s64)t2_curr_h << 32 | t2_curr_l);
460
461 wr32(IGC_PTM_STAT, IGC_PTM_STAT_VALID);
462
463 mutex_lock(&adapter->ptm_time_lock);
464
465 /* Because get_device_system_crosststamp() requires that the
466 * historic timestamp is before the PTM device/host
467 * timestamps, we keep track of the current and previous
468 * snapshot (historic timestamp).
469 */
470 memcpy(&adapter->prev_snapshot,
471 &adapter->curr_snapshot, sizeof(adapter->prev_snapshot));
472 ktime_get_snapshot(&adapter->curr_snapshot);
473
474 adapter->ptm_device_time = t1;
475 adapter->ptm_host_time = igc_device_tstamp_to_system(t2_curr);
476 mutex_unlock(&adapter->ptm_time_lock);
477
478 mod_delayed_work(system_wq, &adapter->ptm_report,
479 msecs_to_jiffies(IGC_PTM_CYCLE_TIME_MSECS));
480 }
481
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[tobetter-linux:odroid-5.13.y 22/93] drivers/gpu/drm/exynos/exynos_hdmi.c:727:22: warning: unsigned conversion from 'int' to 'unsigned char' changes value from '5656' to '24'
by kernel test robot
tree: https://github.com/tobetter/linux odroid-5.13.y
head: ec41beb389cd0d7ab68345d550334d44842a2cb1
commit: 17cfab84283ccb9cd712e91a385e1ae49f71ab19 [22/93] ODROID-XU4: drm/exynos: add new HDMI PHY pll and resolutions + pre-build EDIDs
config: csky-randconfig-s031-20210617 (attached as .config)
compiler: csky-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.3-341-g8af24329-dirty
# https://github.com/tobetter/linux/commit/17cfab84283ccb9cd712e91a385e1ae4...
git remote add tobetter-linux https://github.com/tobetter/linux
git fetch --no-tags tobetter-linux odroid-5.13.y
git checkout 17cfab84283ccb9cd712e91a385e1ae49f71ab19
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' W=1 ARCH=csky
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> drivers/gpu/drm/exynos/exynos_hdmi.c:727:22: warning: unsigned conversion from 'int' to 'unsigned char' changes value from '5656' to '24' [-Woverflow]
727 | 0x01, 0xD1, 0x29, 0x1618, 0x418, 0x190, 0xF5, 0xCF,
| ^~~~~~
drivers/gpu/drm/exynos/exynos_hdmi.c:727:30: warning: unsigned conversion from 'int' to 'unsigned char' changes value from '1048' to '24' [-Woverflow]
727 | 0x01, 0xD1, 0x29, 0x1618, 0x418, 0x190, 0xF5, 0xCF,
| ^~~~~
drivers/gpu/drm/exynos/exynos_hdmi.c:727:37: warning: unsigned conversion from 'int' to 'unsigned char' changes value from '400' to '144' [-Woverflow]
727 | 0x01, 0xD1, 0x29, 0x1618, 0x418, 0x190, 0xF5, 0xCF,
| ^~~~~
drivers/gpu/drm/exynos/exynos_hdmi.c:728:10: warning: unsigned conversion from 'int' to 'unsigned char' changes value from '360' to '104' [-Woverflow]
728 | 0x8D, 0x168, 0xF5, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
| ^~~~~
drivers/gpu/drm/exynos/exynos_hdmi.c:165:19: warning: 'hdmi_hpd_enable' defined but not used [-Wunused-function]
165 | static int __init hdmi_hpd_enable(char *str)
| ^~~~~~~~~~~~~~~
drivers/gpu/drm/exynos/exynos_hdmi.c:151:19: warning: 'dvi_force_enable' defined but not used [-Wunused-function]
151 | static int __init dvi_force_enable(char *str)
| ^~~~~~~~~~~~~~~~
sparse warnings: (new ones prefixed by >>)
>> drivers/gpu/drm/exynos/exynos_hdmi.c:727:43: sparse: sparse: cast truncates bits from constant value (1618 becomes 18)
drivers/gpu/drm/exynos/exynos_hdmi.c:727:51: sparse: sparse: cast truncates bits from constant value (418 becomes 18)
drivers/gpu/drm/exynos/exynos_hdmi.c:727:58: sparse: sparse: cast truncates bits from constant value (190 becomes 90)
drivers/gpu/drm/exynos/exynos_hdmi.c:728:31: sparse: sparse: cast truncates bits from constant value (168 becomes 68)
drivers/gpu/drm/exynos/exynos_hdmi.c: note: in included file (through arch/csky/include/asm/io.h, include/linux/io.h, include/linux/irq.h, ...):
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:267:16: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:267:16: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:299:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:299:22: sparse: expected unsigned int [usertype] value
include/asm-generic/io.h:299:22: sparse: got restricted __le32 [usertype]
include/asm-generic/io.h:267:16: sparse: sparse: cast to restricted __le32
vim +727 drivers/gpu/drm/exynos/exynos_hdmi.c
397
398 static const struct hdmiphy_config hdmiphy_5420_configs[] = {
399 {
400 .pixel_clock = 25200000,
401 .conf = {
402 0x01, 0x52, 0x3F, 0x55, 0x40, 0x01, 0x00, 0xC8,
403 0x82, 0xC8, 0xBD, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
404 0x06, 0x80, 0x01, 0x84, 0x05, 0x02, 0x24, 0x66,
405 0x54, 0xF4, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
406 },
407 },
408 {
409 .pixel_clock = 27000000,
410 .conf = {
411 0x01, 0xD1, 0x22, 0x51, 0x40, 0x08, 0xFC, 0xE0,
412 0x98, 0xE8, 0xCB, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
413 0x06, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
414 0x54, 0xE4, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
415 },
416 },
417 {
418 .pixel_clock = 27027000,
419 .conf = {
420 0x01, 0xD1, 0x2D, 0x72, 0x40, 0x64, 0x12, 0xC8,
421 0x43, 0xE8, 0x0E, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
422 0x26, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
423 0x54, 0xE3, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
424 },
425 },
426 {
427 .pixel_clock = 31490000,
428 .conf = {
429 0x01, 0xD1, 0x34, 0x74, 0x44, 0x3C, 0x3A, 0xC2,
430 0x81, 0xE8, 0x3B, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
431 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
432 0x54, 0xC3, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
433 },
434 },
435 {
436 .pixel_clock = 32000000,
437 .conf = {
438 0x01, 0x51, 0x28, 0x55, 0x44, 0x40, 0x00, 0xC8,
439 0x02, 0xC8, 0xF0, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
440 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
441 0x54, 0x80, 0x25, 0x01, 0x00, 0x00, 0x01, 0x80,
442 },
443 },
444 /*
445 * To support Vu5A, pixel clock 33.9MHz is needed
446 * but we don't have the exact HDMI PHY table
447 * so as a workaround, the closest table will be used.
448 */
449 {
450 .pixel_clock = 33900000,
451 .conf = {
452 0x01, 0x51, 0x28, 0x55, 0x44, 0x40, 0x00, 0xC8,
453 0x02, 0xC8, 0xF0, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
454 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
455 0x54, 0x80, 0x25, 0x01, 0x00, 0x00, 0x01, 0x80,
456 },
457 },
458 {
459 .pixel_clock = 36000000,
460 .conf = {
461 0x01, 0x51, 0x2D, 0x55, 0x40, 0x40, 0x00, 0xC8,
462 0x02, 0xC8, 0x0E, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
463 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
464 0x54, 0xAB, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
465 },
466 },
467 {
468 .pixel_clock = 40000000,
469 .conf = {
470 0x01, 0xD1, 0x21, 0x31, 0x40, 0x3C, 0x28, 0xC8,
471 0x87, 0xE8, 0xC8, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
472 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
473 0x54, 0x9A, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
474 },
475 },
476 /*
477 * To support Vu7A+, pixel clock 49MHz is needed
478 * but we don't have the exact HDMI PHY table
479 * so as a workaround, the closest table will be used.
480 */
481 {
482 .pixel_clock = 49000000,
483 .conf = {
484 0x01, 0x51, 0x2A, 0x32, 0x42, 0x30, 0x00, 0xC4,
485 0x83, 0xE8, 0xFC, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
486 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
487 0x54, 0x7A, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
488 },
489 },
490 {
491 .pixel_clock = 50400000,
492 .conf = {
493 0x01, 0x51, 0x2A, 0x32, 0x42, 0x30, 0x00, 0xC4,
494 0x83, 0xE8, 0xFC, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
495 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
496 0x54, 0x7A, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
497 },
498 },
499 {
500 .pixel_clock = 65000000,
501 .conf = {
502 0x01, 0xD1, 0x36, 0x34, 0x40, 0x0C, 0x04, 0xC8,
503 0x82, 0xE8, 0x45, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
504 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
505 0x54, 0xBD, 0x24, 0x01, 0x00, 0x00, 0x01, 0x80,
506 },
507 },
508 {
509 .pixel_clock = 71000000,
510 .conf = {
511 0x01, 0xD1, 0x3B, 0x35, 0x40, 0x0C, 0x04, 0xC8,
512 0x85, 0xE8, 0x63, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
513 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
514 0x54, 0x57, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
515 },
516 },
517 {
518 .pixel_clock = 73250000,
519 .conf = {
520 0x01, 0xD1, 0x1F, 0x10, 0x40, 0x78, 0x8D, 0xC8,
521 0x81, 0xE8, 0xB7, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
522 0x56, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
523 0x54, 0xA8, 0x24, 0x01, 0x00, 0x00, 0x01, 0x80,
524 },
525 },
526 {
527 .pixel_clock = 74170000,
528 .conf = {
529 0x01, 0xD1, 0x1F, 0x10, 0x40, 0x5B, 0xEF, 0xC8,
530 0x81, 0xE8, 0xB9, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
531 0x56, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
532 0x54, 0xA6, 0x24, 0x01, 0x00, 0x00, 0x01, 0x80,
533 },
534 },
535 {
536 .pixel_clock = 74250000,
537 .conf = {
538 0x01, 0xD1, 0x1F, 0x10, 0x40, 0x40, 0xF8, 0x08,
539 0x81, 0xE8, 0xBA, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
540 0x26, 0x80, 0x09, 0x84, 0x05, 0x22, 0x24, 0x66,
541 0x54, 0xA5, 0x24, 0x01, 0x00, 0x00, 0x01, 0x80,
542 },
543 },
544 {
545 .pixel_clock = 80140000,
546 .conf = {
547 0x01, 0xD1, 0x21, 0x11, 0x40, 0x3C, 0x2F, 0xC8,
548 0x87, 0xE8, 0xC8, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
549 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
550 0x54, 0x99, 0x24, 0x01, 0x00, 0x00, 0x01, 0x80,
551 },
552 },
553 {
554 .pixel_clock = 83500000,
555 .conf = {
556 0x01, 0xD1, 0x23, 0x11, 0x40, 0x0C, 0xFB, 0xC8,
557 0x85, 0xE8, 0xD1, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
558 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
559 0x54, 0x4A, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
560 },
561 },
562 {
563 .pixel_clock = 84750000,
564 .conf = {
565 0x01, 0xD1, 0x23, 0x11, 0x40, 0x30, 0x1E, 0xC7,
566 0x84, 0xE8, 0xD4, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
567 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
568 0x54, 0x48, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
569 },
570 },
571 {
572 .pixel_clock = 85860000,
573 .conf = {
574 0x01, 0xD1, 0x24, 0x11, 0x40, 0x30, 0xD2, 0xC8,
575 0x84, 0xE8, 0xD5, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
576 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
577 0x54, 0x48, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
578 },
579 },
580 {
581 .pixel_clock = 88750000,
582 .conf = {
583 0x01, 0xD1, 0x25, 0x11, 0x40, 0x18, 0xFF, 0xC8,
584 0x83, 0xE8, 0xDE, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
585 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
586 0x54, 0x45, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
587 },
588 },
589 {
590 .pixel_clock = 89750000,
591 .conf = {
592 0x01, 0xD1, 0x25, 0x11, 0x40, 0x30, 0x26, 0xC9,
593 0x83, 0xE8, 0xE0, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
594 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
595 0x54, 0x89, 0x24, 0x01, 0x00, 0x00, 0x01, 0x80,
596 },
597 },
598 {
599 .pixel_clock = 104990000,
600 .conf = {
601 0x01, 0xD1, 0x2C, 0x12, 0x40, 0x78, 0xC3, 0xC2,
602 0x81, 0xE8, 0x06, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
603 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
604 0x54, 0x3B, 0x24, 0x00, 0x00, 0x00, 0x01, 0x80,
605 },
606 },
607 {
608 .pixel_clock = 106500000,
609 .conf = {
610 0x01, 0xD1, 0x2C, 0x12, 0x40, 0x0C, 0x09, 0xC8,
611 0x84, 0xE8, 0x0A, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
612 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
613 0x54, 0x73, 0x24, 0x01, 0x00, 0x00, 0x01, 0x80,
614 },
615 },
616 {
617 .pixel_clock = 106560000,
618 .conf = {
619 0x01, 0xD1, 0x2C, 0x12, 0x40, 0x78, 0x73, 0xCA,
620 0x85, 0xE8, 0x0B, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
621 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
622 0x54, 0x73, 0x24, 0x01, 0x00, 0x00, 0x01, 0x80,
623 },
624 },
625 {
626 .pixel_clock = 107800000,
627 .conf = {
628 0x01, 0x51, 0x2D, 0x15, 0x40, 0x01, 0x00, 0xC8,
629 0x82, 0xC8, 0x0E, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
630 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
631 0x54, 0xC7, 0x25, 0x03, 0x00, 0x00, 0x01, 0x80,
632 },
633 },
634 {
635 .pixel_clock = 108000000,
636 .conf = {
637 0x01, 0x51, 0x2D, 0x15, 0x40, 0x01, 0x00, 0xC8,
638 0x82, 0xC8, 0x0E, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
639 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
640 0x54, 0xC7, 0x25, 0x03, 0x00, 0x00, 0x01, 0x80,
641 },
642 },
643 {
644 .pixel_clock = 115500000,
645 .conf = {
646 0x01, 0xD1, 0x30, 0x14, 0x40, 0x0C, 0x03, 0xC8,
647 0x88, 0xE8, 0x21, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
648 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
649 0x54, 0x6A, 0x24, 0x01, 0x00, 0x00, 0x01, 0x80,
650 },
651 },
652 {
653 .pixel_clock = 119000000,
654 .conf = {
655 0x01, 0xD1, 0x31, 0x14, 0x40, 0x78, 0x41, 0xCB,
656 0x89, 0xE8, 0x28, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
657 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
658 0x54, 0x68, 0x24, 0x01, 0x00, 0x00, 0x01, 0x80,
659 },
660 },
661 {
662 .pixel_clock = 122000000,
663 .conf = {
664 0x01, 0xD1, 0x33, 0x14, 0x40, 0x30, 0xF0, 0xC8,
665 0x85, 0xE8, 0x31, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
666 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
667 0x54, 0x65, 0x24, 0x01, 0x00, 0x00, 0x01, 0x80,
668 },
669 },
670 {
671 .pixel_clock = 125590000,
672 .conf = {
673 0x01, 0xD1, 0x34, 0x14, 0x40, 0x78, 0x4F, 0xC2,
674 0x81, 0xE8, 0x3A, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
675 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
676 0x54, 0x87, 0x25, 0x03, 0x00, 0x00, 0x01, 0x80,
677 },
678 },
679 {
680 .pixel_clock = 146250000,
681 .conf = {
682 0x01, 0xD1, 0x3D, 0x15, 0x40, 0x18, 0xFD, 0xC8,
683 0x83, 0xE8, 0x6E, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
684 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x66,
685 0x54, 0x54, 0x24, 0x01, 0x00, 0x00, 0x01, 0x80,
686 },
687 },
688 {
689 .pixel_clock = 148500000,
690 .conf = {
691 0x01, 0xD1, 0x1F, 0x00, 0x40, 0x40, 0xF8, 0x08,
692 0x81, 0xE8, 0xBA, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
693 0x26, 0x80, 0x09, 0x84, 0x05, 0x22, 0x24, 0x66,
694 0x54, 0x4B, 0x25, 0x03, 0x00, 0x80, 0x01, 0x80,
695 },
696 },
697 {
698 .pixel_clock = 154000000,
699 .conf = {
700 0x01, 0xD1, 0x20, 0x01, 0x40, 0x30, 0x08, 0xCC,
701 0x8C, 0xE8, 0xC1, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
702 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
703 0x54, 0x3F, 0x25, 0x03, 0x00, 0x00, 0x01, 0x80,
704 },
705 },
706 {
707 .pixel_clock = 162000000,
708 .conf = {
709 0x01, 0xD1, 0x22, 0x01, 0x40, 0x30, 0xD4, 0xCD,
710 0x89, 0xE8, 0xC9, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
711 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
712 0x54, 0x31, 0x25, 0x03, 0x00, 0x00, 0x01, 0x80,
713 },
714 },
715 {
716 .pixel_clock = 164100000,
717 .conf = {
718 0x01, 0xD1, 0x22, 0x89, 0x49, 0xB0, 0x15, 0xCE,
719 0x8A, 0xF8, 0xCD, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
720 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
721 0x54, 0x2B, 0x25, 0x03, 0x00, 0x00, 0x01, 0x80,
722 },
723 },
724 {
725 .pixel_clock = 196900000,
726 .conf = {
> 727 0x01, 0xD1, 0x29, 0x1618, 0x418, 0x190, 0xF5, 0xCF,
728 0x8D, 0x168, 0xF5, 0xD8, 0x45, 0xA0, 0xAC, 0x80,
729 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
730 0x54, 0xFA, 0x24, 0x03, 0x00, 0x00, 0x01, 0x80,
731 },
732 },
733 {
734 .pixel_clock = 204800000,
735 .conf = {
736 0x01, 0xD1, 0x2B, 0x02, 0x40, 0x30, 0xE0, 0xC8,
737 0x85, 0xE8, 0x00, 0xD9, 0x45, 0xA0, 0xAC, 0x80,
738 0x08, 0x80, 0x09, 0x84, 0x05, 0x02, 0x24, 0x86,
739 0x54, 0x3C, 0x24, 0x01, 0x00, 0x00, 0x01, 0x80,
740 },
741 },
742 };
743
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[avpatel:riscv_aclint_v2 6/13] arch/riscv/kernel/sbi-ipi.c:156:2: error: too many arguments to function 'riscv_ipi_set_virq_range'
by kernel test robot
tree: https://github.com/avpatel/linux.git riscv_aclint_v2
head: 7dfc87079d3bd32cf6acf24c246204ca31a109e2
commit: 1f552b2190b2e0b7ae50beb1b599756a2fcf498b [6/13] RISC-V: Allow marking IPIs as suitable for remote FENCEs
config: riscv-randconfig-r002-20210617 (attached as .config)
compiler: riscv32-linux-gcc (GCC) 9.3.0
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
# https://github.com/avpatel/linux/commit/1f552b2190b2e0b7ae50beb1b599756a2...
git remote add avpatel https://github.com/avpatel/linux.git
git fetch --no-tags avpatel riscv_aclint_v2
git checkout 1f552b2190b2e0b7ae50beb1b599756a2fcf498b
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=riscv
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
arch/riscv/kernel/sbi-ipi.c: In function 'sbi_ipi_set_virq':
>> arch/riscv/kernel/sbi-ipi.c:156:2: error: too many arguments to function 'riscv_ipi_set_virq_range'
156 | riscv_ipi_set_virq_range(virq, BITS_PER_LONG, false);
| ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from arch/riscv/include/asm/tlbflush.h:11,
from arch/riscv/include/asm/pgtable.h:87,
from include/linux/pgtable.h:6,
from arch/riscv/include/asm/io.h:15,
from include/linux/io.h:13,
from include/linux/irq.h:20,
from arch/riscv/kernel/sbi-ipi.c:12:
arch/riscv/include/asm/smp.h:113:20: note: declared here
113 | static inline void riscv_ipi_set_virq_range(int virq, int nr)
| ^~~~~~~~~~~~~~~~~~~~~~~~
vim +/riscv_ipi_set_virq_range +156 arch/riscv/kernel/sbi-ipi.c
138
139 static int __init sbi_ipi_set_virq(void)
140 {
141 int virq;
142 struct irq_fwspec ipi = {
143 .fwnode = sbi_ipi_domain->fwnode,
144 .param_count = 1,
145 .param[0] = 0,
146 };
147
148 virq = __irq_domain_alloc_irqs(sbi_ipi_domain, -1, BITS_PER_LONG,
149 NUMA_NO_NODE, &ipi,
150 false, NULL);
151 if (virq <= 0) {
152 pr_err("unable to alloc IRQs from SBI IPI IRQ domain\n");
153 return -ENOMEM;
154 }
155
> 156 riscv_ipi_set_virq_range(virq, BITS_PER_LONG, false);
157
158 return 0;
159 }
160
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months