Hi Srinivasa,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on asoc/for-next]
[also build test ERROR on next-20200917]
[cannot apply to v5.9-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/Srinivasa-Rao-Mandadapu/Qualcomm...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
config: riscv-randconfig-r031-20200917 (attached as .config)
compiler: clang version 12.0.0 (
https://github.com/llvm/llvm-project
1321160a26e7e489baf9b10d6de90a342f898960)
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 riscv cross compiling tool for clang build
# apt-get install binutils-riscv64-linux-gnu
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang 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 >>):
In file included from arch/riscv/include/asm/io.h:148:
include/asm-generic/io.h:564:9: warning: performing pointer arithmetic on a null
pointer has undefined behavior [-Wnull-pointer-arithmetic]
return inw(addr);
^~~~~~~~~
arch/riscv/include/asm/io.h:55:76: note: expanded from macro 'inw'
#define inw(c) ({ u16 __v; __io_pbr(); __v = readw_cpu((void*)(PCI_IOBASE +
(c))); __io_par(__v); __v; })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:88:76: note: expanded from macro 'readw_cpu'
#define readw_cpu(c) ({ u16 __r = le16_to_cpu((__force
__le16)__raw_readw(c)); __r; })
^
include/uapi/linux/byteorder/little_endian.h:36:51: note: expanded from macro
'__le16_to_cpu'
#define __le16_to_cpu(x) ((__force __u16)(__le16)(x))
^
In file included from sound/soc/qcom/lpass-ipq806x.c:17:
In file included from include/sound/soc.h:18:
In file included from include/linux/interrupt.h:11:
In file included from include/linux/hardirq.h:10:
In file included from ./arch/riscv/include/generated/asm/hardirq.h:1:
In file included from include/asm-generic/hardirq.h:13:
In file included from include/linux/irq.h:20:
In file included from include/linux/io.h:13:
In file included from arch/riscv/include/asm/io.h:148:
include/asm-generic/io.h:572:9: warning: performing pointer arithmetic on a null
pointer has undefined behavior [-Wnull-pointer-arithmetic]
return inl(addr);
^~~~~~~~~
arch/riscv/include/asm/io.h:56:76: note: expanded from macro 'inl'
#define inl(c) ({ u32 __v; __io_pbr(); __v = readl_cpu((void*)(PCI_IOBASE +
(c))); __io_par(__v); __v; })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:89:76: note: expanded from macro 'readl_cpu'
#define readl_cpu(c) ({ u32 __r = le32_to_cpu((__force
__le32)__raw_readl(c)); __r; })
^
include/uapi/linux/byteorder/little_endian.h:34:51: note: expanded from macro
'__le32_to_cpu'
#define __le32_to_cpu(x) ((__force __u32)(__le32)(x))
^
In file included from sound/soc/qcom/lpass-ipq806x.c:17:
In file included from include/sound/soc.h:18:
In file included from include/linux/interrupt.h:11:
In file included from include/linux/hardirq.h:10:
In file included from ./arch/riscv/include/generated/asm/hardirq.h:1:
In file included from include/asm-generic/hardirq.h:13:
In file included from include/linux/irq.h:20:
In file included from include/linux/io.h:13:
In file included from arch/riscv/include/asm/io.h:148:
include/asm-generic/io.h:580:2: warning: performing pointer arithmetic on a null
pointer has undefined behavior [-Wnull-pointer-arithmetic]
outb(value, addr);
^~~~~~~~~~~~~~~~~
arch/riscv/include/asm/io.h:58:68: note: expanded from macro 'outb'
#define outb(v,c) ({ __io_pbw(); writeb_cpu((v),(void*)(PCI_IOBASE + (c)));
__io_paw(); })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:91:52: note: expanded from macro 'writeb_cpu'
#define writeb_cpu(v, c) ((void)__raw_writeb((v), (c)))
^
In file included from sound/soc/qcom/lpass-ipq806x.c:17:
In file included from include/sound/soc.h:18:
In file included from include/linux/interrupt.h:11:
In file included from include/linux/hardirq.h:10:
In file included from ./arch/riscv/include/generated/asm/hardirq.h:1:
In file included from include/asm-generic/hardirq.h:13:
In file included from include/linux/irq.h:20:
In file included from include/linux/io.h:13:
In file included from arch/riscv/include/asm/io.h:148:
include/asm-generic/io.h:588:2: warning: performing pointer arithmetic on a null
pointer has undefined behavior [-Wnull-pointer-arithmetic]
outw(value, addr);
^~~~~~~~~~~~~~~~~
arch/riscv/include/asm/io.h:59:68: note: expanded from macro 'outw'
#define outw(v,c) ({ __io_pbw(); writew_cpu((v),(void*)(PCI_IOBASE + (c)));
__io_paw(); })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:92:76: note: expanded from macro 'writew_cpu'
#define writew_cpu(v, c) ((void)__raw_writew((__force u16)cpu_to_le16(v), (c)))
^
In file included from sound/soc/qcom/lpass-ipq806x.c:17:
In file included from include/sound/soc.h:18:
In file included from include/linux/interrupt.h:11:
In file included from include/linux/hardirq.h:10:
In file included from ./arch/riscv/include/generated/asm/hardirq.h:1:
In file included from include/asm-generic/hardirq.h:13:
In file included from include/linux/irq.h:20:
In file included from include/linux/io.h:13:
In file included from arch/riscv/include/asm/io.h:148:
include/asm-generic/io.h:596:2: warning: performing pointer arithmetic on a null
pointer has undefined behavior [-Wnull-pointer-arithmetic]
outl(value, addr);
^~~~~~~~~~~~~~~~~
arch/riscv/include/asm/io.h:60:68: note: expanded from macro 'outl'
#define outl(v,c) ({ __io_pbw(); writel_cpu((v),(void*)(PCI_IOBASE + (c)));
__io_paw(); })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:93:76: note: expanded from macro 'writel_cpu'
#define writel_cpu(v, c) ((void)__raw_writel((__force u32)cpu_to_le32(v), (c)))
^
In file included from sound/soc/qcom/lpass-ipq806x.c:17:
In file included from include/sound/soc.h:18:
In file included from include/linux/interrupt.h:11:
In file included from include/linux/hardirq.h:10:
In file included from ./arch/riscv/include/generated/asm/hardirq.h:1:
In file included from include/asm-generic/hardirq.h:13:
In file included from include/linux/irq.h:20:
In file included from include/linux/io.h:13:
In file included from arch/riscv/include/asm/io.h:148:
include/asm-generic/io.h:1017:55: warning: performing pointer arithmetic on a null
pointer has undefined behavior [-Wnull-pointer-arithmetic]
return (port > MMIO_UPPER_LIMIT) ? NULL : PCI_IOBASE + port;
~~~~~~~~~~ ^
> sound/soc/qcom/lpass-ipq806x.c:160:23: error: incompatible
function pointer types initializing 'int (*)(struct lpass_data *, int, unsigned
int)' with an expression of type 'int (struct lpass_data *, int)'
[-Werror,-Wincompatible-function-pointer-types]
.alloc_dma_channel =
ipq806x_lpass_alloc_dma_channel,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sound/soc/qcom/lpass-ipq806x.c:161:22: error: incompatible function pointer types
initializing 'int (*)(struct lpass_data *, int, unsigned int)' with an expression
of type 'int (struct lpass_data *, int)'
[-Werror,-Wincompatible-function-pointer-types]
.free_dma_channel = ipq806x_lpass_free_dma_channel,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7 warnings and 2 errors generated.
--
In file included from arch/riscv/include/asm/io.h:148:
include/asm-generic/io.h:564:9: warning: performing pointer arithmetic on a null
pointer has undefined behavior [-Wnull-pointer-arithmetic]
return inw(addr);
^~~~~~~~~
arch/riscv/include/asm/io.h:55:76: note: expanded from macro 'inw'
#define inw(c) ({ u16 __v; __io_pbr(); __v = readw_cpu((void*)(PCI_IOBASE +
(c))); __io_par(__v); __v; })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:88:76: note: expanded from macro 'readw_cpu'
#define readw_cpu(c) ({ u16 __r = le16_to_cpu((__force
__le16)__raw_readw(c)); __r; })
^
include/uapi/linux/byteorder/little_endian.h:36:51: note: expanded from macro
'__le16_to_cpu'
#define __le16_to_cpu(x) ((__force __u16)(__le16)(x))
^
In file included from sound/soc/qcom/lpass-apq8016.c:18:
In file included from include/sound/soc.h:18:
In file included from include/linux/interrupt.h:11:
In file included from include/linux/hardirq.h:10:
In file included from ./arch/riscv/include/generated/asm/hardirq.h:1:
In file included from include/asm-generic/hardirq.h:13:
In file included from include/linux/irq.h:20:
In file included from include/linux/io.h:13:
In file included from arch/riscv/include/asm/io.h:148:
include/asm-generic/io.h:572:9: warning: performing pointer arithmetic on a null
pointer has undefined behavior [-Wnull-pointer-arithmetic]
return inl(addr);
^~~~~~~~~
arch/riscv/include/asm/io.h:56:76: note: expanded from macro 'inl'
#define inl(c) ({ u32 __v; __io_pbr(); __v = readl_cpu((void*)(PCI_IOBASE +
(c))); __io_par(__v); __v; })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:89:76: note: expanded from macro 'readl_cpu'
#define readl_cpu(c) ({ u32 __r = le32_to_cpu((__force
__le32)__raw_readl(c)); __r; })
^
include/uapi/linux/byteorder/little_endian.h:34:51: note: expanded from macro
'__le32_to_cpu'
#define __le32_to_cpu(x) ((__force __u32)(__le32)(x))
^
In file included from sound/soc/qcom/lpass-apq8016.c:18:
In file included from include/sound/soc.h:18:
In file included from include/linux/interrupt.h:11:
In file included from include/linux/hardirq.h:10:
In file included from ./arch/riscv/include/generated/asm/hardirq.h:1:
In file included from include/asm-generic/hardirq.h:13:
In file included from include/linux/irq.h:20:
In file included from include/linux/io.h:13:
In file included from arch/riscv/include/asm/io.h:148:
include/asm-generic/io.h:580:2: warning: performing pointer arithmetic on a null
pointer has undefined behavior [-Wnull-pointer-arithmetic]
outb(value, addr);
^~~~~~~~~~~~~~~~~
arch/riscv/include/asm/io.h:58:68: note: expanded from macro 'outb'
#define outb(v,c) ({ __io_pbw(); writeb_cpu((v),(void*)(PCI_IOBASE + (c)));
__io_paw(); })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:91:52: note: expanded from macro 'writeb_cpu'
#define writeb_cpu(v, c) ((void)__raw_writeb((v), (c)))
^
In file included from sound/soc/qcom/lpass-apq8016.c:18:
In file included from include/sound/soc.h:18:
In file included from include/linux/interrupt.h:11:
In file included from include/linux/hardirq.h:10:
In file included from ./arch/riscv/include/generated/asm/hardirq.h:1:
In file included from include/asm-generic/hardirq.h:13:
In file included from include/linux/irq.h:20:
In file included from include/linux/io.h:13:
In file included from arch/riscv/include/asm/io.h:148:
include/asm-generic/io.h:588:2: warning: performing pointer arithmetic on a null
pointer has undefined behavior [-Wnull-pointer-arithmetic]
outw(value, addr);
^~~~~~~~~~~~~~~~~
arch/riscv/include/asm/io.h:59:68: note: expanded from macro 'outw'
#define outw(v,c) ({ __io_pbw(); writew_cpu((v),(void*)(PCI_IOBASE + (c)));
__io_paw(); })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:92:76: note: expanded from macro 'writew_cpu'
#define writew_cpu(v, c) ((void)__raw_writew((__force u16)cpu_to_le16(v), (c)))
^
In file included from sound/soc/qcom/lpass-apq8016.c:18:
In file included from include/sound/soc.h:18:
In file included from include/linux/interrupt.h:11:
In file included from include/linux/hardirq.h:10:
In file included from ./arch/riscv/include/generated/asm/hardirq.h:1:
In file included from include/asm-generic/hardirq.h:13:
In file included from include/linux/irq.h:20:
In file included from include/linux/io.h:13:
In file included from arch/riscv/include/asm/io.h:148:
include/asm-generic/io.h:596:2: warning: performing pointer arithmetic on a null
pointer has undefined behavior [-Wnull-pointer-arithmetic]
outl(value, addr);
^~~~~~~~~~~~~~~~~
arch/riscv/include/asm/io.h:60:68: note: expanded from macro 'outl'
#define outl(v,c) ({ __io_pbw(); writel_cpu((v),(void*)(PCI_IOBASE + (c)));
__io_paw(); })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:93:76: note: expanded from macro 'writel_cpu'
#define writel_cpu(v, c) ((void)__raw_writel((__force u32)cpu_to_le32(v), (c)))
^
In file included from sound/soc/qcom/lpass-apq8016.c:18:
In file included from include/sound/soc.h:18:
In file included from include/linux/interrupt.h:11:
In file included from include/linux/hardirq.h:10:
In file included from ./arch/riscv/include/generated/asm/hardirq.h:1:
In file included from include/asm-generic/hardirq.h:13:
In file included from include/linux/irq.h:20:
In file included from include/linux/io.h:13:
In file included from arch/riscv/include/asm/io.h:148:
include/asm-generic/io.h:1017:55: warning: performing pointer arithmetic on a null
pointer has undefined behavior [-Wnull-pointer-arithmetic]
return (port > MMIO_UPPER_LIMIT) ? NULL : PCI_IOBASE + port;
~~~~~~~~~~ ^
> sound/soc/qcom/lpass-apq8016.c:290:23: error: incompatible
function pointer types initializing 'int (*)(struct lpass_data *, int, unsigned
int)' with an expression of type 'int (struct lpass_data *, int)'
[-Werror,-Wincompatible-function-pointer-types]
.alloc_dma_channel =
apq8016_lpass_alloc_dma_channel,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sound/soc/qcom/lpass-apq8016.c:291:22: error: incompatible function pointer types
initializing 'int (*)(struct lpass_data *, int, unsigned int)' with an expression
of type 'int (struct lpass_data *, int)'
[-Werror,-Wincompatible-function-pointer-types]
.free_dma_channel = apq8016_lpass_free_dma_channel,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7 warnings and 2 errors generated.
#
https://github.com/0day-ci/linux/commit/36d10d78e631aecf445a62288278056d4...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
Srinivasa-Rao-Mandadapu/Qualcomm-s-lpass-hdmi-ASoC-driver-to-support-audio-over-dp-port/20200917-214328
git checkout 36d10d78e631aecf445a62288278056d499bbee2
vim +160 sound/soc/qcom/lpass-ipq806x.c
6db1c6ba9544e99 Srinivas Kandagatla 2015-05-16 111
eccad574ef2d74e Lars-Peter Clausen 2015-07-27 112 static struct lpass_variant
ipq806x_data = {
9bae4880acee1cd Srinivas Kandagatla 2015-05-16 113 .i2sctrl_reg_base = 0x0010,
9bae4880acee1cd Srinivas Kandagatla 2015-05-16 114 .i2sctrl_reg_stride = 0x04,
9bae4880acee1cd Srinivas Kandagatla 2015-05-16 115 .i2s_ports = 5,
9bae4880acee1cd Srinivas Kandagatla 2015-05-16 116 .irq_reg_base = 0x3000,
9bae4880acee1cd Srinivas Kandagatla 2015-05-16 117 .irq_reg_stride = 0x1000,
9bae4880acee1cd Srinivas Kandagatla 2015-05-16 118 .irq_ports = 3,
9bae4880acee1cd Srinivas Kandagatla 2015-05-16 119 .rdma_reg_base = 0x6000,
9bae4880acee1cd Srinivas Kandagatla 2015-05-16 120 .rdma_reg_stride = 0x1000,
9bae4880acee1cd Srinivas Kandagatla 2015-05-16 121 .rdma_channels = 4,
0a14a1bf2e81a75 Srinivas Kandagatla 2016-02-11 122 .wrdma_reg_base = 0xB000,
0a14a1bf2e81a75 Srinivas Kandagatla 2016-02-11 123 .wrdma_reg_stride = 0x1000,
0a14a1bf2e81a75 Srinivas Kandagatla 2016-02-11 124 .wrdma_channel_start = 5,
0a14a1bf2e81a75 Srinivas Kandagatla 2016-02-11 125 .wrdma_channels = 4,
b5022a36d28f6a9 Rohit kumar 2020-08-14 126 .loopback = REG_FIELD_ID(0x0010,
15, 15, 5, 0x4),
b5022a36d28f6a9 Rohit kumar 2020-08-14 127 .spken = REG_FIELD_ID(0x0010, 14,
14, 5, 0x4),
b5022a36d28f6a9 Rohit kumar 2020-08-14 128 .spkmode = REG_FIELD_ID(0x0010, 10,
13, 5, 0x4),
b5022a36d28f6a9 Rohit kumar 2020-08-14 129 .spkmono = REG_FIELD_ID(0x0010, 9,
9, 5, 0x4),
b5022a36d28f6a9 Rohit kumar 2020-08-14 130 .micen = REG_FIELD_ID(0x0010, 8,
8, 5, 0x4),
b5022a36d28f6a9 Rohit kumar 2020-08-14 131 .micmode = REG_FIELD_ID(0x0010, 4,
7, 5, 0x4),
b5022a36d28f6a9 Rohit kumar 2020-08-14 132 .micmono = REG_FIELD_ID(0x0010, 3,
3, 5, 0x4),
b5022a36d28f6a9 Rohit kumar 2020-08-14 133 .wssrc = REG_FIELD_ID(0x0010, 2,
2, 5, 0x4),
b5022a36d28f6a9 Rohit kumar 2020-08-14 134 .bitwidth = REG_FIELD_ID(0x0010, 0,
0, 5, 0x4),
b5022a36d28f6a9 Rohit kumar 2020-08-14 135
b5022a36d28f6a9 Rohit kumar 2020-08-14 136 .rdma_dyncclk =
REG_FIELD_ID(0x6000, 12, 12, 4, 0x1000),
b5022a36d28f6a9 Rohit kumar 2020-08-14 137 .rdma_bursten =
REG_FIELD_ID(0x6000, 11, 11, 4, 0x1000),
b5022a36d28f6a9 Rohit kumar 2020-08-14 138 .rdma_wpscnt = REG_FIELD_ID(0x6000,
8, 10, 4, 0x1000),
b5022a36d28f6a9 Rohit kumar 2020-08-14 139 .rdma_intf = REG_FIELD_ID(0x6000,
4, 7, 4, 0x1000),
b5022a36d28f6a9 Rohit kumar 2020-08-14 140 .rdma_fifowm = REG_FIELD_ID(0x6000,
1, 3, 4, 0x1000),
b5022a36d28f6a9 Rohit kumar 2020-08-14 141 .rdma_enable = REG_FIELD_ID(0x6000,
0, 0, 4, 0x1000),
b5022a36d28f6a9 Rohit kumar 2020-08-14 142
b5022a36d28f6a9 Rohit kumar 2020-08-14 143 .wrdma_dyncclk =
REG_FIELD_ID(0xB000, 12, 12, 4, 0x1000),
b5022a36d28f6a9 Rohit kumar 2020-08-14 144 .wrdma_bursten =
REG_FIELD_ID(0xB000, 11, 11, 4, 0x1000),
b5022a36d28f6a9 Rohit kumar 2020-08-14 145 .wrdma_wpscnt =
REG_FIELD_ID(0xB000, 8, 10, 4, 0x1000),
b5022a36d28f6a9 Rohit kumar 2020-08-14 146 .wrdma_intf = REG_FIELD_ID(0xB000,
4, 7, 4, 0x1000),
b5022a36d28f6a9 Rohit kumar 2020-08-14 147 .wrdma_fifowm =
REG_FIELD_ID(0xB000, 1, 3, 4, 0x1000),
b5022a36d28f6a9 Rohit kumar 2020-08-14 148 .wrdma_enable =
REG_FIELD_ID(0xB000, 0, 0, 4, 0x1000),
b5022a36d28f6a9 Rohit kumar 2020-08-14 149
9bae4880acee1cd Srinivas Kandagatla 2015-05-16 150 .dai_driver =
&ipq806x_lpass_cpu_dai_driver,
9bae4880acee1cd Srinivas Kandagatla 2015-05-16 151 .num_dai = 1,
97c52eb969718f0 Linus Walleij 2017-04-05 152 .dai_osr_clk_names = (const char
*[]) {
97c52eb969718f0 Linus Walleij 2017-04-05 153 "mi2s-osr-clk",
97c52eb969718f0 Linus Walleij 2017-04-05 154 },
97c52eb969718f0 Linus Walleij 2017-04-05 155 .dai_bit_clk_names = (const char
*[]) {
97c52eb969718f0 Linus Walleij 2017-04-05 156 "mi2s-bit-clk",
97c52eb969718f0 Linus Walleij 2017-04-05 157 },
a503567d70eca91 Rohit kumar 2020-08-14 158 .init = ipq806x_lpass_init,
a503567d70eca91 Rohit kumar 2020-08-14 159 .exit = ipq806x_lpass_exit,
6db1c6ba9544e99 Srinivas Kandagatla 2015-05-16 @160 .alloc_dma_channel =
ipq806x_lpass_alloc_dma_channel,
6db1c6ba9544e99 Srinivas Kandagatla 2015-05-16 161 .free_dma_channel =
ipq806x_lpass_free_dma_channel,
9bae4880acee1cd Srinivas Kandagatla 2015-05-16 162 };
9bae4880acee1cd Srinivas Kandagatla 2015-05-16 163
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org