[android-goldfish:android-3.18 46/111] WARNING: ipc/built-in.o(.data+0x2f8): Section mismatch in reference from the variable .L386 to the function .init.text:ipc_init_proc_interface()
by kernel test robot
tree: https://android.googlesource.com/kernel/goldfish android-3.18
head: b96ba72ff60e7df40e6d6b157d3aba5656a4abdb
commit: 25895429c1508961adc8f5ab002f3e484bcedfd0 [46/111] sched/preempt: Fix preempt_count manipulations
config: parisc-randconfig-c004-20210706 (attached as .config)
compiler: hppa64-linux-gcc (GCC) 5.5.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
git remote add android-goldfish https://android.googlesource.com/kernel/goldfish
git fetch --no-tags android-goldfish android-3.18
git checkout 25895429c1508961adc8f5ab002f3e484bcedfd0
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-5.5.0 make.cross O=build_dir ARCH=parisc SHELL=/bin/bash
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 >>):
>> WARNING: ipc/built-in.o(.data+0x2f8): Section mismatch in reference from the variable .L386 to the function .init.text:ipc_init_proc_interface()
The variable .L386 references
the function __init ipc_init_proc_interface()
If the reference is valid then annotate the
variable with or __refdata (see linux/init.h) or name the variable:
--
>> WARNING: ipc/built-in.o(.data+0x420): Section mismatch in reference from the variable .L608 to the function .init.text:ipc_init_proc_interface()
The variable .L608 references
the function __init ipc_init_proc_interface()
If the reference is valid then annotate the
variable with or __refdata (see linux/init.h) or name the variable:
--
>> WARNING: ipc/built-in.o(.data+0x560): Section mismatch in reference from the variable .L228 to the function .init.text:ipc_init_proc_interface()
The variable .L228 references
the function __init ipc_init_proc_interface()
If the reference is valid then annotate the
variable with or __refdata (see linux/init.h) or name the variable:
--
>> WARNING: net/built-in.o(.data+0xe08): Section mismatch in reference from the variable .L635 to the function .init.text:dev_proc_init()
The variable .L635 references
the function __init dev_proc_init()
If the reference is valid then annotate the
variable with or __refdata (see linux/init.h) or name the variable:
--
>> WARNING: net/built-in.o(.data+0xe10): Section mismatch in reference from the variable .L637 to the function .init.text:netdev_kobject_init()
The variable .L637 references
the function __init netdev_kobject_init()
If the reference is valid then annotate the
variable with or __refdata (see linux/init.h) or name the variable:
--
>> WARNING: net/built-in.o(.data+0xe38): Section mismatch in reference from the variable .L650 to the function .init.text:dst_init()
The variable .L650 references
the function __init dst_init()
If the reference is valid then annotate the
variable with or __refdata (see linux/init.h) or name the variable:
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
drivers/thunderbolt/test.c:2367:1: warning: the frame size of 4528 bytes is larger than 2048 bytes
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: e73f0f0ee7541171d89f2e2491130c7771ba58d3
commit: bfa8f78e06ed0b495a5736380de0e7f833a5efbe thunderbolt: Add KUnit tests for credit allocation
date: 6 weeks ago
config: arm-buildonly-randconfig-r001-20210712 (attached as .config)
compiler: arm-linux-gnueabi-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://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout bfa8f78e06ed0b495a5736380de0e7f833a5efbe
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm
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/thunderbolt/test.c: In function 'tb_test_credit_alloc_all':
>> drivers/thunderbolt/test.c:2367:1: warning: the frame size of 4528 bytes is larger than 2048 bytes [-Wframe-larger-than=]
2367 | }
| ^
vim +2367 drivers/thunderbolt/test.c
2208
2209 static void tb_test_credit_alloc_all(struct kunit *test)
2210 {
2211 struct tb_port *up, *down, *in, *out, *nhi, *port;
2212 struct tb_tunnel *pcie_tunnel, *dp_tunnel1, *dp_tunnel2, *usb3_tunnel;
2213 struct tb_tunnel *dma_tunnel1, *dma_tunnel2;
2214 struct tb_switch *host, *dev;
2215 struct tb_path *path;
2216
2217 /*
2218 * Create PCIe, 2 x DP, USB 3.x and two DMA tunnels from host to
2219 * device. Expectation is that all these can be established with
2220 * the default credit allocation found in Intel hardware.
2221 */
2222
2223 host = alloc_host_usb4(test);
2224 dev = alloc_dev_usb4(test, host, 0x1, true);
2225
2226 down = &host->ports[8];
2227 up = &dev->ports[9];
2228 pcie_tunnel = tb_tunnel_alloc_pci(NULL, up, down);
2229 KUNIT_ASSERT_TRUE(test, pcie_tunnel != NULL);
2230 KUNIT_ASSERT_EQ(test, pcie_tunnel->npaths, (size_t)2);
2231
2232 path = pcie_tunnel->paths[0];
2233 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2234 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2235 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 7U);
2236 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2237 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 32U);
2238
2239 path = pcie_tunnel->paths[1];
2240 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2241 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2242 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 7U);
2243 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2244 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 64U);
2245
2246 in = &host->ports[5];
2247 out = &dev->ports[13];
2248
2249 dp_tunnel1 = tb_tunnel_alloc_dp(NULL, in, out, 0, 0);
2250 KUNIT_ASSERT_TRUE(test, dp_tunnel1 != NULL);
2251 KUNIT_ASSERT_EQ(test, dp_tunnel1->npaths, (size_t)3);
2252
2253 path = dp_tunnel1->paths[0];
2254 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2255 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 12U);
2256 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 0U);
2257 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 18U);
2258 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 0U);
2259
2260 path = dp_tunnel1->paths[1];
2261 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2262 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2263 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 1U);
2264 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2265 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 1U);
2266
2267 path = dp_tunnel1->paths[2];
2268 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2269 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2270 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 1U);
2271 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2272 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 1U);
2273
2274 in = &host->ports[6];
2275 out = &dev->ports[14];
2276
2277 dp_tunnel2 = tb_tunnel_alloc_dp(NULL, in, out, 0, 0);
2278 KUNIT_ASSERT_TRUE(test, dp_tunnel2 != NULL);
2279 KUNIT_ASSERT_EQ(test, dp_tunnel2->npaths, (size_t)3);
2280
2281 path = dp_tunnel2->paths[0];
2282 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2283 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 12U);
2284 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 0U);
2285 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 18U);
2286 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 0U);
2287
2288 path = dp_tunnel2->paths[1];
2289 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2290 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2291 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 1U);
2292 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2293 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 1U);
2294
2295 path = dp_tunnel2->paths[2];
2296 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2297 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2298 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 1U);
2299 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2300 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 1U);
2301
2302 down = &host->ports[12];
2303 up = &dev->ports[16];
2304 usb3_tunnel = tb_tunnel_alloc_usb3(NULL, up, down, 0, 0);
2305 KUNIT_ASSERT_TRUE(test, usb3_tunnel != NULL);
2306 KUNIT_ASSERT_EQ(test, usb3_tunnel->npaths, (size_t)2);
2307
2308 path = usb3_tunnel->paths[0];
2309 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2310 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2311 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 7U);
2312 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2313 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 14U);
2314
2315 path = usb3_tunnel->paths[1];
2316 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2317 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2318 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 7U);
2319 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2320 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 32U);
2321
2322 nhi = &host->ports[7];
2323 port = &dev->ports[3];
2324
2325 dma_tunnel1 = tb_tunnel_alloc_dma(NULL, nhi, port, 8, 1, 8, 1);
2326 KUNIT_ASSERT_TRUE(test, dma_tunnel1 != NULL);
2327 KUNIT_ASSERT_EQ(test, dma_tunnel1->npaths, (size_t)2);
2328
2329 path = dma_tunnel1->paths[0];
2330 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2331 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2332 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 14U);
2333 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2334 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 14U);
2335
2336 path = dma_tunnel1->paths[1];
2337 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2338 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2339 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 0U);
2340 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2341 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 14U);
2342
2343 dma_tunnel2 = tb_tunnel_alloc_dma(NULL, nhi, port, 9, 2, 9, 2);
2344 KUNIT_ASSERT_TRUE(test, dma_tunnel2 != NULL);
2345 KUNIT_ASSERT_EQ(test, dma_tunnel2->npaths, (size_t)2);
2346
2347 path = dma_tunnel2->paths[0];
2348 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2349 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2350 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 14U);
2351 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2352 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 1U);
2353
2354 path = dma_tunnel2->paths[1];
2355 KUNIT_ASSERT_EQ(test, path->path_length, 2);
2356 KUNIT_EXPECT_EQ(test, path->hops[0].nfc_credits, 0U);
2357 KUNIT_EXPECT_EQ(test, path->hops[0].initial_credits, 0U);
2358 KUNIT_EXPECT_EQ(test, path->hops[1].nfc_credits, 0U);
2359 KUNIT_EXPECT_EQ(test, path->hops[1].initial_credits, 1U);
2360
2361 tb_tunnel_free(dma_tunnel2);
2362 tb_tunnel_free(dma_tunnel1);
2363 tb_tunnel_free(usb3_tunnel);
2364 tb_tunnel_free(dp_tunnel2);
2365 tb_tunnel_free(dp_tunnel1);
2366 tb_tunnel_free(pcie_tunnel);
> 2367 }
2368
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[hwmon:hwmon-next 7/7] drivers/hwmon/w83627ehf.c:1954:6: error: 'struct w83627ehf_data' has no member named 'vbat'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git hwmon-next
head: ed35f99f75142ef4c92e610c617a740cfe814f0d
commit: ed35f99f75142ef4c92e610c617a740cfe814f0d [7/7] hwmon: (w83627ehf) Switch to SIMPLE_DEV_PM_OPS
config: alpha-randconfig-r023-20210711 (attached as .config)
compiler: alpha-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://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git/...
git remote add hwmon https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git
git fetch --no-tags hwmon hwmon-next
git checkout ed35f99f75142ef4c92e610c617a740cfe814f0d
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross O=build_dir ARCH=alpha SHELL=/bin/bash drivers/hwmon/
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/hwmon/w83627ehf.c: In function 'w83627ehf_suspend':
>> drivers/hwmon/w83627ehf.c:1954:6: error: 'struct w83627ehf_data' has no member named 'vbat'
1954 | data->vbat = w83627ehf_read_value(data, W83627EHF_REG_VBAT);
| ^~
drivers/hwmon/w83627ehf.c: In function 'w83627ehf_resume':
drivers/hwmon/w83627ehf.c:2006:54: error: 'struct w83627ehf_data' has no member named 'vbat'
2006 | w83627ehf_write_value(data, W83627EHF_REG_VBAT, data->vbat);
| ^~
vim +1954 drivers/hwmon/w83627ehf.c
08e7e2789e0da4 drivers/i2c/chips/w83627ehf.c Jean Delvare 2005-04-25 1948
ed35f99f75142e drivers/hwmon/w83627ehf.c Armin Wolf 2021-07-09 1949 static int __maybe_unused w83627ehf_suspend(struct device *dev)
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1950 {
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1951 struct w83627ehf_data *data = w83627ehf_update_device(dev);
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1952
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1953 mutex_lock(&data->update_lock);
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 @1954 data->vbat = w83627ehf_read_value(data, W83627EHF_REG_VBAT);
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1955 mutex_unlock(&data->update_lock);
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1956
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1957 return 0;
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1958 }
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1959
:::::: The code at line 1954 was first introduced by commit
:::::: 7e630bb55a52cfaa35011c0ebc2efc96f13e5135 hwmon: (w83627ehf) Add support for suspend
:::::: TO: Jean Delvare <khali(a)linux-fr.org>
:::::: CC: Jean Delvare <khali(a)endymion.delvare>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[hwmon:hwmon-next 7/7] drivers/hwmon/w83627ehf.c:1954:6: error: 'struct w83627ehf_data' has no member named 'vbat'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git hwmon-next
head: ed35f99f75142ef4c92e610c617a740cfe814f0d
commit: ed35f99f75142ef4c92e610c617a740cfe814f0d [7/7] hwmon: (w83627ehf) Switch to SIMPLE_DEV_PM_OPS
config: openrisc-randconfig-r015-20210712 (attached as .config)
compiler: or1k-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://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git/...
git remote add hwmon https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git
git fetch --no-tags hwmon hwmon-next
git checkout ed35f99f75142ef4c92e610c617a740cfe814f0d
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross O=build_dir ARCH=openrisc SHELL=/bin/bash drivers/hwmon/
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/hwmon/w83627ehf.c: In function 'w83627ehf_suspend':
>> drivers/hwmon/w83627ehf.c:1954:6: error: 'struct w83627ehf_data' has no member named 'vbat'
1954 | data->vbat = w83627ehf_read_value(data, W83627EHF_REG_VBAT);
| ^~
drivers/hwmon/w83627ehf.c: In function 'w83627ehf_resume':
drivers/hwmon/w83627ehf.c:2006:54: error: 'struct w83627ehf_data' has no member named 'vbat'
2006 | w83627ehf_write_value(data, W83627EHF_REG_VBAT, data->vbat);
| ^~
vim +1954 drivers/hwmon/w83627ehf.c
08e7e2789e0da4 drivers/i2c/chips/w83627ehf.c Jean Delvare 2005-04-25 1948
ed35f99f75142e drivers/hwmon/w83627ehf.c Armin Wolf 2021-07-09 1949 static int __maybe_unused w83627ehf_suspend(struct device *dev)
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1950 {
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1951 struct w83627ehf_data *data = w83627ehf_update_device(dev);
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1952
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1953 mutex_lock(&data->update_lock);
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 @1954 data->vbat = w83627ehf_read_value(data, W83627EHF_REG_VBAT);
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1955 mutex_unlock(&data->update_lock);
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1956
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1957 return 0;
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1958 }
7e630bb55a52cf drivers/hwmon/w83627ehf.c Jean Delvare 2012-12-19 1959
:::::: The code at line 1954 was first introduced by commit
:::::: 7e630bb55a52cfaa35011c0ebc2efc96f13e5135 hwmon: (w83627ehf) Add support for suspend
:::::: TO: Jean Delvare <khali(a)linux-fr.org>
:::::: CC: Jean Delvare <khali(a)endymion.delvare>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[chrome-os:chromeos-5.10 121/163] drivers/soundwire/qcom.c:756:19: error: 'struct sdw_slave' has no member named 'm_port_map'
by kernel test robot
tree: https://chromium.googlesource.com/chromiumos/third_party/kernel chromeos-5.10
head: fec3c46b70eeae7a07ae80fd8e6565459e1e9515
commit: 0001b3a745ad4b471806c78758f71f0de46d3f61 [121/163] UPSTREAM: soundwire: qcom: add static port map support
config: m68k-allmodconfig (attached as .config)
compiler: m68k-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
git remote add chrome-os https://chromium.googlesource.com/chromiumos/third_party/kernel
git fetch --no-tags chrome-os chromeos-5.10
git checkout 0001b3a745ad4b471806c78758f71f0de46d3f61
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross O=build_dir ARCH=m68k SHELL=/bin/bash drivers/soundwire/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Note: the chrome-os/chromeos-5.10 HEAD fec3c46b70eeae7a07ae80fd8e6565459e1e9515 builds fine.
It only hurts bisectibility.
All errors (new ones prefixed by >>):
drivers/soundwire/qcom.c: In function 'qcom_swrm_enumerate':
drivers/soundwire/qcom.c:409:8: error: implicit declaration of function 'sdw_compare_devid' [-Werror=implicit-function-declaration]
409 | if (sdw_compare_devid(slave, id) == 0) {
| ^~~~~~~~~~~~~~~~~
drivers/soundwire/qcom.c: In function 'qcom_swrm_compute_params':
>> drivers/soundwire/qcom.c:756:19: error: 'struct sdw_slave' has no member named 'm_port_map'
756 | m_port = slave->m_port_map[p_rt->num];
| ^~
drivers/soundwire/qcom.c: In function 'qcom_swrm_stream_alloc_ports':
drivers/soundwire/qcom.c:842:19: error: 'struct sdw_slave' has no member named 'm_port_map'
842 | m_port = slave->m_port_map[p_rt->num];
| ^~
cc1: some warnings being treated as errors
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for NEED_MULTIPLE_NODES
Depends on DISCONTIGMEM || NUMA
Selected by
- SINGLE_MEMORY_CHUNK && MMU
vim +756 drivers/soundwire/qcom.c
728
729 static int qcom_swrm_compute_params(struct sdw_bus *bus)
730 {
731 struct qcom_swrm_ctrl *ctrl = to_qcom_sdw(bus);
732 struct sdw_master_runtime *m_rt;
733 struct sdw_slave_runtime *s_rt;
734 struct sdw_port_runtime *p_rt;
735 struct qcom_swrm_port_config *pcfg;
736 struct sdw_slave *slave;
737 unsigned int m_port;
738 int i = 0;
739
740 list_for_each_entry(m_rt, &bus->m_rt_list, bus_node) {
741 list_for_each_entry(p_rt, &m_rt->port_list, port_node) {
742 pcfg = &ctrl->pconfig[p_rt->num - 1];
743 p_rt->transport_params.port_num = p_rt->num;
744 if (pcfg->word_length != SWR_INVALID_PARAM) {
745 sdw_fill_port_params(&p_rt->port_params,
746 p_rt->num, pcfg->word_length + 1,
747 SDW_PORT_FLOW_MODE_ISOCH,
748 SDW_PORT_DATA_MODE_NORMAL);
749 }
750
751 }
752
753 list_for_each_entry(s_rt, &m_rt->slave_rt_list, m_rt_node) {
754 slave = s_rt->slave;
755 list_for_each_entry(p_rt, &s_rt->port_list, port_node) {
> 756 m_port = slave->m_port_map[p_rt->num];
757 /* port config starts at offset 0 so -1 from actual port number */
758 if (m_port)
759 pcfg = &ctrl->pconfig[m_port - 1];
760 else
761 pcfg = &ctrl->pconfig[i];
762 p_rt->transport_params.port_num = p_rt->num;
763 p_rt->transport_params.sample_interval =
764 pcfg->si + 1;
765 p_rt->transport_params.offset1 = pcfg->off1;
766 p_rt->transport_params.offset2 = pcfg->off2;
767 p_rt->transport_params.blk_pkg_mode = pcfg->bp_mode;
768 p_rt->transport_params.blk_grp_ctrl = pcfg->blk_group_count;
769
770 p_rt->transport_params.hstart = pcfg->hstart;
771 p_rt->transport_params.hstop = pcfg->hstop;
772 p_rt->transport_params.lane_ctrl = pcfg->lane_control;
773 if (pcfg->word_length != SWR_INVALID_PARAM) {
774 sdw_fill_port_params(&p_rt->port_params,
775 p_rt->num,
776 pcfg->word_length + 1,
777 SDW_PORT_FLOW_MODE_ISOCH,
778 SDW_PORT_DATA_MODE_NORMAL);
779 }
780 i++;
781 }
782 }
783 }
784
785 return 0;
786 }
787
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[chrome-os:chromeos-5.10 102/162] sound/soc/codecs/wcd938x.c:1647:9: error: 'WCD_CLSH_STATE_AUX' undeclared; did you mean 'WCD_CLSH_STATE_MAX'?
by kernel test robot
tree: https://chromium.googlesource.com/chromiumos/third_party/kernel chromeos-5.10
head: 318bc2f1de3ff99d9ba7d968678c3d3513d136e1
commit: a66e31c50eb8efaf79923961dc6d19978efeda72 [102/162] FROMGIT: ASoC: codecs: wcd938x: add audio routing and Kconfig
config: m68k-allmodconfig (attached as .config)
compiler: m68k-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
git remote add chrome-os https://chromium.googlesource.com/chromiumos/third_party/kernel
git fetch --no-tags chrome-os chromeos-5.10
git checkout a66e31c50eb8efaf79923961dc6d19978efeda72
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross O=build_dir ARCH=m68k SHELL=/bin/bash drivers/soundwire/ sound/soc/codecs/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Note: the chrome-os/chromeos-5.10 HEAD 318bc2f1de3ff99d9ba7d968678c3d3513d136e1 builds fine.
It only hurts bisectibility.
All errors (new ones prefixed by >>):
In file included from include/linux/kernel.h:11,
from include/linux/list.h:9,
from include/linux/module.h:12,
from sound/soc/codecs/wcd938x.c:4:
include/linux/scatterlist.h: In function 'sg_set_buf':
arch/m68k/include/asm/page_mm.h:169:49: warning: ordered comparison of pointer with null pointer [-Wextra]
169 | #define virt_addr_valid(kaddr) ((void *)(kaddr) >= (void *)PAGE_OFFSET && (void *)(kaddr) < high_memory)
| ^~
include/linux/compiler.h:78:42: note: in definition of macro 'unlikely'
78 | # define unlikely(x) __builtin_expect(!!(x), 0)
| ^
include/linux/scatterlist.h:137:2: note: in expansion of macro 'BUG_ON'
137 | BUG_ON(!virt_addr_valid(buf));
| ^~~~~~
include/linux/scatterlist.h:137:10: note: in expansion of macro 'virt_addr_valid'
137 | BUG_ON(!virt_addr_valid(buf));
| ^~~~~~~~~~~~~~~
sound/soc/codecs/wcd938x.c: In function 'wcd938x_codec_aux_dac_event':
>> sound/soc/codecs/wcd938x.c:1647:9: error: 'WCD_CLSH_STATE_AUX' undeclared (first use in this function); did you mean 'WCD_CLSH_STATE_MAX'?
1647 | WCD_CLSH_STATE_AUX,
| ^~~~~~~~~~~~~~~~~~
| WCD_CLSH_STATE_MAX
sound/soc/codecs/wcd938x.c:1647:9: note: each undeclared identifier is reported only once for each function it appears in
sound/soc/codecs/wcd938x.c: In function 'wcd938x_codec_enable_hphr_pa':
>> sound/soc/codecs/wcd938x.c:1674:3: error: implicit declaration of function 'wcd_clsh_set_hph_mode' [-Werror=implicit-function-declaration]
1674 | wcd_clsh_set_hph_mode(wcd938x->clsh_info, CLS_H_HIFI);
| ^~~~~~~~~~~~~~~~~~~~~
>> sound/soc/codecs/wcd938x.c:1677:19: error: 'CLS_H_ULP' undeclared (first use in this function); did you mean 'CLS_H_LP'?
1677 | hph_mode == CLS_H_ULP) {
| ^~~~~~~~~
| CLS_H_LP
>> sound/soc/codecs/wcd938x.c:1713:41: error: 'CLS_AB_HIFI' undeclared (first use in this function); did you mean 'CLS_H_HIFI'?
1713 | if (hph_mode == CLS_AB || hph_mode == CLS_AB_HIFI ||
| ^~~~~~~~~~~
| CLS_H_HIFI
>> sound/soc/codecs/wcd938x.c:1714:16: error: 'CLS_AB_LP' undeclared (first use in this function); did you mean 'CLS_H_LP'?
1714 | hph_mode == CLS_AB_LP || hph_mode == CLS_AB_LOHIFI)
| ^~~~~~~~~
| CLS_H_LP
>> sound/soc/codecs/wcd938x.c:1714:41: error: 'CLS_AB_LOHIFI' undeclared (first use in this function); did you mean 'CLS_H_LOHIFI'?
1714 | hph_mode == CLS_AB_LP || hph_mode == CLS_AB_LOHIFI)
| ^~~~~~~~~~~~~
| CLS_H_LOHIFI
sound/soc/codecs/wcd938x.c: In function 'wcd938x_codec_enable_hphl_pa':
sound/soc/codecs/wcd938x.c:1779:19: error: 'CLS_H_ULP' undeclared (first use in this function); did you mean 'CLS_H_LP'?
1779 | hph_mode == CLS_H_ULP) {
| ^~~~~~~~~
| CLS_H_LP
sound/soc/codecs/wcd938x.c:1815:41: error: 'CLS_AB_HIFI' undeclared (first use in this function); did you mean 'CLS_H_HIFI'?
1815 | if (hph_mode == CLS_AB || hph_mode == CLS_AB_HIFI ||
| ^~~~~~~~~~~
| CLS_H_HIFI
sound/soc/codecs/wcd938x.c:1816:16: error: 'CLS_AB_LP' undeclared (first use in this function); did you mean 'CLS_H_LP'?
1816 | hph_mode == CLS_AB_LP || hph_mode == CLS_AB_LOHIFI)
| ^~~~~~~~~
| CLS_H_LP
sound/soc/codecs/wcd938x.c:1816:41: error: 'CLS_AB_LOHIFI' undeclared (first use in this function); did you mean 'CLS_H_LOHIFI'?
1816 | hph_mode == CLS_AB_LP || hph_mode == CLS_AB_LOHIFI)
| ^~~~~~~~~~~~~
| CLS_H_LOHIFI
sound/soc/codecs/wcd938x.c: In function 'wcd938x_codec_enable_aux_pa':
sound/soc/codecs/wcd938x.c:1881:41: error: 'CLS_AB_HIFI' undeclared (first use in this function); did you mean 'CLS_H_HIFI'?
1881 | if (hph_mode == CLS_AB || hph_mode == CLS_AB_HIFI ||
| ^~~~~~~~~~~
| CLS_H_HIFI
sound/soc/codecs/wcd938x.c:1882:16: error: 'CLS_AB_LP' undeclared (first use in this function); did you mean 'CLS_H_LP'?
1882 | hph_mode == CLS_AB_LP || hph_mode == CLS_AB_LOHIFI)
| ^~~~~~~~~
| CLS_H_LP
sound/soc/codecs/wcd938x.c:1882:41: error: 'CLS_AB_LOHIFI' undeclared (first use in this function); did you mean 'CLS_H_LOHIFI'?
1882 | hph_mode == CLS_AB_LP || hph_mode == CLS_AB_LOHIFI)
| ^~~~~~~~~~~~~
| CLS_H_LOHIFI
sound/soc/codecs/wcd938x.c:1898:9: error: 'WCD_CLSH_STATE_AUX' undeclared (first use in this function); did you mean 'WCD_CLSH_STATE_MAX'?
1898 | WCD_CLSH_STATE_AUX,
| ^~~~~~~~~~~~~~~~~~
| WCD_CLSH_STATE_MAX
sound/soc/codecs/wcd938x.c: In function 'wcd938x_codec_enable_ear_pa':
sound/soc/codecs/wcd938x.c:1941:41: error: 'CLS_AB_HIFI' undeclared (first use in this function); did you mean 'CLS_H_HIFI'?
1941 | if (hph_mode == CLS_AB || hph_mode == CLS_AB_HIFI ||
| ^~~~~~~~~~~
| CLS_H_HIFI
sound/soc/codecs/wcd938x.c:1942:16: error: 'CLS_AB_LP' undeclared (first use in this function); did you mean 'CLS_H_LP'?
1942 | hph_mode == CLS_AB_LP || hph_mode == CLS_AB_LOHIFI)
| ^~~~~~~~~
| CLS_H_LP
sound/soc/codecs/wcd938x.c:1942:41: error: 'CLS_AB_LOHIFI' undeclared (first use in this function); did you mean 'CLS_H_LOHIFI'?
1942 | hph_mode == CLS_AB_LP || hph_mode == CLS_AB_LOHIFI)
| ^~~~~~~~~~~~~
| CLS_H_LOHIFI
sound/soc/codecs/wcd938x.c: In function 'wcd938x_soc_codec_probe':
>> sound/soc/codecs/wcd938x.c:3313:54: error: 'WCD938X' undeclared (first use in this function); did you mean 'WCD9385'?
3313 | wcd938x->clsh_info = wcd_clsh_ctrl_alloc(component, WCD938X);
| ^~~~~~~
| WCD9385
cc1: some warnings being treated as errors
--
sound/soc/codecs/wcd938x-sdw.c: In function 'wcd9380_probe':
>> sound/soc/codecs/wcd938x-sdw.c:223:13: error: 'struct sdw_slave' has no member named 'm_port_map'
223 | &pdev->m_port_map[1],
| ^~
sound/soc/codecs/wcd938x-sdw.c:227:13: error: 'struct sdw_slave' has no member named 'm_port_map'
227 | &pdev->m_port_map[1],
| ^~
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for NEED_MULTIPLE_NODES
Depends on DISCONTIGMEM || NUMA
Selected by
- SINGLE_MEMORY_CHUNK && MMU
vim +1647 sound/soc/codecs/wcd938x.c
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1621
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1622 static int wcd938x_codec_aux_dac_event(struct snd_soc_dapm_widget *w,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1623 struct snd_kcontrol *kcontrol,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1624 int event)
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1625 {
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1626 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1627 struct wcd938x_priv *wcd938x = snd_soc_component_get_drvdata(component);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1628 int ret = 0;
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1629
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1630 switch (event) {
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1631 case SND_SOC_DAPM_PRE_PMU:
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1632 snd_soc_component_write_field(component,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1633 WCD938X_DIGITAL_CDC_ANA_CLK_CTL,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1634 WCD938X_ANA_RX_DIV4_CLK_EN_MASK, 1);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1635 snd_soc_component_write_field(component,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1636 WCD938X_DIGITAL_CDC_DIG_CLK_CTL,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1637 WCD938X_RXD2_CLK_EN_MASK, 1);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1638 snd_soc_component_write_field(component,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1639 WCD938X_DIGITAL_CDC_AUX_GAIN_CTL,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1640 WCD938X_AUX_EN_MASK, 1);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1641 if (wcd938x->flyback_cur_det_disable == 0)
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1642 snd_soc_component_write_field(component, WCD938X_FLYBACK_EN,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1643 WCD938X_EN_CUR_DET_MASK, 0);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1644 wcd938x->flyback_cur_det_disable++;
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1645 wcd_clsh_ctrl_set_state(wcd938x->clsh_info,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1646 WCD_CLSH_EVENT_PRE_DAC,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 @1647 WCD_CLSH_STATE_AUX,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1648 wcd938x->hph_mode);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1649 break;
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1650 case SND_SOC_DAPM_POST_PMD:
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1651 snd_soc_component_write_field(component,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1652 WCD938X_DIGITAL_CDC_ANA_CLK_CTL,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1653 WCD938X_ANA_RX_DIV4_CLK_EN_MASK, 0);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1654 break;
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1655 }
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1656 return ret;
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1657
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1658 }
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1659
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1660 static int wcd938x_codec_enable_hphr_pa(struct snd_soc_dapm_widget *w,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1661 struct snd_kcontrol *kcontrol, int event)
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1662 {
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1663 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1664 struct wcd938x_priv *wcd938x = snd_soc_component_get_drvdata(component);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1665 int hph_mode = wcd938x->hph_mode;
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1666
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1667 switch (event) {
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1668 case SND_SOC_DAPM_PRE_PMU:
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1669 if (wcd938x->ldoh)
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1670 snd_soc_component_write_field(component, WCD938X_LDOH_MODE,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1671 WCD938X_LDOH_EN_MASK, 1);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1672 wcd_clsh_ctrl_set_state(wcd938x->clsh_info, WCD_CLSH_EVENT_PRE_DAC,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1673 WCD_CLSH_STATE_HPHR, hph_mode);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 @1674 wcd_clsh_set_hph_mode(wcd938x->clsh_info, CLS_H_HIFI);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1675
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1676 if (hph_mode == CLS_H_LP || hph_mode == CLS_H_LOHIFI ||
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 @1677 hph_mode == CLS_H_ULP) {
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1678 snd_soc_component_write_field(component,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1679 WCD938X_HPH_REFBUFF_LP_CTL,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1680 WCD938X_PREREF_FLIT_BYPASS_MASK, 1);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1681 }
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1682 snd_soc_component_write_field(component, WCD938X_ANA_HPH,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1683 WCD938X_HPHR_REF_EN_MASK, 1);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1684 wcd_clsh_set_hph_mode(wcd938x->clsh_info, hph_mode);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1685 /* 100 usec delay as per HW requirement */
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1686 usleep_range(100, 110);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1687 set_bit(HPH_PA_DELAY, &wcd938x->status_mask);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1688 snd_soc_component_write_field(component,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1689 WCD938X_DIGITAL_PDM_WD_CTL1,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1690 WCD938X_PDM_WD_EN_MASK, 0x3);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1691 break;
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1692 case SND_SOC_DAPM_POST_PMU:
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1693 /*
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1694 * 7ms sleep is required if compander is enabled as per
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1695 * HW requirement. If compander is disabled, then
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1696 * 20ms delay is required.
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1697 */
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1698 if (test_bit(HPH_PA_DELAY, &wcd938x->status_mask)) {
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1699 if (!wcd938x->comp2_enable)
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1700 usleep_range(20000, 20100);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1701 else
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1702 usleep_range(7000, 7100);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1703
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1704 if (hph_mode == CLS_H_LP || hph_mode == CLS_H_LOHIFI ||
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1705 hph_mode == CLS_H_ULP)
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1706 snd_soc_component_write_field(component,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1707 WCD938X_HPH_REFBUFF_LP_CTL,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1708 WCD938X_PREREF_FLIT_BYPASS_MASK, 0);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1709 clear_bit(HPH_PA_DELAY, &wcd938x->status_mask);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1710 }
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1711 snd_soc_component_write_field(component, WCD938X_HPH_NEW_INT_HPH_TIMER1,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1712 WCD938X_AUTOCHOP_TIMER_EN, 1);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 @1713 if (hph_mode == CLS_AB || hph_mode == CLS_AB_HIFI ||
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 @1714 hph_mode == CLS_AB_LP || hph_mode == CLS_AB_LOHIFI)
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1715 snd_soc_component_write_field(component, WCD938X_ANA_RX_SUPPLIES,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1716 WCD938X_REGULATOR_MODE_MASK,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1717 WCD938X_REGULATOR_MODE_CLASS_AB);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1718 enable_irq(wcd938x->hphr_pdm_wd_int);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1719 break;
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1720 case SND_SOC_DAPM_PRE_PMD:
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1721 disable_irq_nosync(wcd938x->hphr_pdm_wd_int);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1722 /*
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1723 * 7ms sleep is required if compander is enabled as per
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1724 * HW requirement. If compander is disabled, then
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1725 * 20ms delay is required.
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1726 */
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1727 if (!wcd938x->comp2_enable)
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1728 usleep_range(20000, 20100);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1729 else
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1730 usleep_range(7000, 7100);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1731 snd_soc_component_write_field(component, WCD938X_ANA_HPH,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1732 WCD938X_HPHR_EN_MASK, 0);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1733 set_bit(HPH_PA_DELAY, &wcd938x->status_mask);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1734 break;
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1735 case SND_SOC_DAPM_POST_PMD:
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1736 /*
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1737 * 7ms sleep is required if compander is enabled as per
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1738 * HW requirement. If compander is disabled, then
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1739 * 20ms delay is required.
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1740 */
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1741 if (test_bit(HPH_PA_DELAY, &wcd938x->status_mask)) {
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1742 if (!wcd938x->comp2_enable)
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1743 usleep_range(20000, 20100);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1744 else
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1745 usleep_range(7000, 7100);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1746 clear_bit(HPH_PA_DELAY, &wcd938x->status_mask);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1747 }
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1748 snd_soc_component_write_field(component, WCD938X_ANA_HPH,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1749 WCD938X_HPHR_REF_EN_MASK, 0);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1750 snd_soc_component_write_field(component, WCD938X_DIGITAL_PDM_WD_CTL1,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1751 WCD938X_PDM_WD_EN_MASK, 0);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1752 wcd_clsh_ctrl_set_state(wcd938x->clsh_info, WCD_CLSH_EVENT_POST_PA,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1753 WCD_CLSH_STATE_HPHR, hph_mode);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1754 if (wcd938x->ldoh)
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1755 snd_soc_component_write_field(component, WCD938X_LDOH_MODE,
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1756 WCD938X_LDOH_EN_MASK, 0);
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1757 break;
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1758 }
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1759
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1760 return 0;
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1761 }
55b2a7978dafbc Srinivas Kandagatla 2021-06-09 1762
:::::: The code at line 1647 was first introduced by commit
:::::: 55b2a7978dafbc2064d043ba066584d9f1c59673 FROMGIT: ASoC: codecs: wcd938x: add playback dapm widgets
:::::: TO: Srinivas Kandagatla <srinivas.kandagatla(a)linaro.org>
:::::: CC: Commit Bot <commit-bot(a)chromium.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months