[block:for-5.14/io_uring 59/64] fs/io_uring.c:5999:2: warning: Redundant assignment of 'req' to itself. [selfAssignment]
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-5.14/io_uring
head: 7a778f9dc32deae4f748903f6f9169dc01cbcd28
commit: a3dbdf54da80326fd12bc11ad75ecd699a82374f [59/64] io_uring: refactor io_get_sequence()
compiler: hppa-linux-gcc (GCC) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
cppcheck warnings: (new ones prefixed by >>)
>> fs/io_uring.c:5999:2: warning: Redundant assignment of 'req' to itself. [selfAssignment]
io_for_each_link(req, req)
^
cppcheck possible warnings: (new ones prefixed by >>, may not real problems)
fs/io_uring.c:5305:19: warning: Uninitialized variable: req [uninitvar]
if (sqe_addr != req->user_data)
^
fs/io_uring.c:5309:10: warning: Uninitialized variable: req [uninitvar]
return req;
^
fs/io_uring.c:9491:46: warning: Uninitialized variable: req [uninitvar]
seq_printf(m, " op=%d, task_works=%dn", req->opcode,
^
fs/io_uring.c:9492:6: warning: Uninitialized variable: req [uninitvar]
req->task->task_works != NULL);
^
vim +/req +5999 fs/io_uring.c
5993
5994 static u32 io_get_sequence(struct io_kiocb *req)
5995 {
5996 u32 seq = req->ctx->cached_sq_head;
5997
5998 /* need original cached_sq_head, but it was increased for each req */
> 5999 io_for_each_link(req, req)
6000 seq--;
6001 return seq;
6002 }
6003
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[kees:kspp/memcpy/next-20210618/v0.192314 57/90] arch/arm/boot/compressed/misc.c:164:6: warning: no previous prototype for 'fortify_warn_write'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git kspp/memcpy/next-20210618/v0.192314
head: bbcfcdcf3881ef6f9ae1b1b8e0ddf03da30c5aad
commit: 37bd2f986fbed8a837e7657c7a44d588e79c5aad [57/90] fortify: Detect struct member overflows in memcpy()
config: arm-spear13xx_defconfig (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/kees/linux.git/commit/?id...
git remote add kees https://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git
git fetch --no-tags kees kspp/memcpy/next-20210618/v0.192314
git checkout 37bd2f986fbed8a837e7657c7a44d588e79c5aad
# 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 >>):
arch/arm/boot/compressed/misc.c:126:17: warning: no previous prototype for '__div0' [-Wmissing-prototypes]
126 | asmlinkage void __div0(void)
| ^~~~~~
arch/arm/boot/compressed/misc.c:133:6: warning: no previous prototype for '__stack_chk_fail' [-Wmissing-prototypes]
133 | void __stack_chk_fail(void)
| ^~~~~~~~~~~~~~~~
arch/arm/boot/compressed/misc.c:142:1: warning: no previous prototype for 'decompress_kernel' [-Wmissing-prototypes]
142 | decompress_kernel(unsigned long output_start, unsigned long free_mem_ptr_p,
| ^~~~~~~~~~~~~~~~~
>> arch/arm/boot/compressed/misc.c:164:6: warning: no previous prototype for 'fortify_warn_write' [-Wmissing-prototypes]
164 | void fortify_warn_write(const char *func, size_t buffer_size, size_t write_size)
| ^~~~~~~~~~~~~~~~~~
arch/arm/boot/compressed/misc.c:169:6: warning: no previous prototype for 'fortify_panic' [-Wmissing-prototypes]
169 | void fortify_panic(const char *name)
| ^~~~~~~~~~~~~
vim +/fortify_warn_write +164 arch/arm/boot/compressed/misc.c
163
> 164 void fortify_warn_write(const char *func, size_t buffer_size, size_t write_size)
165 {
166 putstr("warning: detected buffer overflow\n");
167 }
168
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
pcie.c:undefined reference to `pci_ioremap_io'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: cba5e97280f53ec7feb656fcdf0ec00a5c6dd539
commit: 87f77a6797971579a1da497ac01b692bafbc6cca net/mlx5e: fix mlx5e_tc_tun_update_header_ipv6 dummy definition
date: 3 months ago
config: arm-randconfig-r005-20210620 (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 87f77a6797971579a1da497ac01b692bafbc6cca
# 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 errors (new ones prefixed by >>):
arm-linux-gnueabi-ld: arch/arm/mach-dove/pcie.o: in function `dove_pcie_setup':
>> pcie.c:(.init.text+0xc0): undefined reference to `pci_ioremap_io'
>> arm-linux-gnueabi-ld: pcie.c:(.init.text+0xcc): undefined reference to `pci_ioremap_io'
arm-linux-gnueabi-ld: fs/btrfs/super.o: in function `btrfs_statfs':
super.c:(.text+0xa96): undefined reference to `__aeabi_uldivmod'
arm-linux-gnueabi-ld: super.c:(.text+0xac2): undefined reference to `__aeabi_uldivmod'
arm-linux-gnueabi-ld: super.c:(.text+0xafe): undefined reference to `__aeabi_uldivmod'
arm-linux-gnueabi-ld: super.c:(.text+0xb8e): undefined reference to `__aeabi_uldivmod'
arm-linux-gnueabi-ld: super.c:(.text+0xba2): undefined reference to `__aeabi_uldivmod'
arm-linux-gnueabi-ld: fs/btrfs/super.o:super.c:(.text+0xbba): more undefined references to `__aeabi_uldivmod' follow
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
arch/mips/kvm/vz.c:391:10: warning: variable 'freeze_time' set but not used
by kernel test robot
Hi Thomas,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 913ec3c22ef425d63dd0bc81fb008ce7f9bcb07b
commit: 45c7e8af4a5e3f0bea4ac209eea34118dd57ac64 MIPS: Remove KVM_TE support
date: 3 months ago
config: mips-randconfig-r002-20210620 (attached as .config)
compiler: mipsel-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/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 45c7e8af4a5e3f0bea4ac209eea34118dd57ac64
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=mips
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 >>):
arch/mips/kvm/vz.c: In function '_kvm_vz_restore_htimer':
>> arch/mips/kvm/vz.c:391:10: warning: variable 'freeze_time' set but not used [-Wunused-but-set-variable]
391 | ktime_t freeze_time;
| ^~~~~~~~~~~
--
arch/mips/kvm/vz.c:471: warning: Function parameter or member 'out_compare' not described in '_kvm_vz_save_htimer'
arch/mips/kvm/vz.c:471: warning: Function parameter or member 'out_cause' not described in '_kvm_vz_save_htimer'
arch/mips/kvm/vz.c:471: warning: Excess function parameter 'compare' description in '_kvm_vz_save_htimer'
arch/mips/kvm/vz.c:471: warning: Excess function parameter 'cause' description in '_kvm_vz_save_htimer'
>> arch/mips/kvm/vz.c:1552: warning: expecting prototype for kvm_trap_vz_handle_cop_unusuable(). Prototype was for kvm_trap_vz_handle_cop_unusable() instead
vim +/freeze_time +391 arch/mips/kvm/vz.c
c992a4f6a9b0a3 James Hogan 2017-03-14 377
c992a4f6a9b0a3 James Hogan 2017-03-14 378 /**
f4474d50c7d483 James Hogan 2017-03-14 379 * _kvm_vz_restore_htimer() - Restore hard timer state.
f4474d50c7d483 James Hogan 2017-03-14 380 * @vcpu: Virtual CPU.
f4474d50c7d483 James Hogan 2017-03-14 381 * @compare: CP0_Compare register value, restored by caller.
f4474d50c7d483 James Hogan 2017-03-14 382 * @cause: CP0_Cause register to restore.
f4474d50c7d483 James Hogan 2017-03-14 383 *
f4474d50c7d483 James Hogan 2017-03-14 384 * Restore hard timer Guest.Count & Guest.Cause taking care to preserve the
f4474d50c7d483 James Hogan 2017-03-14 385 * value of Guest.CP0_Cause.TI while restoring Guest.CP0_Cause.
f4474d50c7d483 James Hogan 2017-03-14 386 */
f4474d50c7d483 James Hogan 2017-03-14 387 static void _kvm_vz_restore_htimer(struct kvm_vcpu *vcpu,
f4474d50c7d483 James Hogan 2017-03-14 388 u32 compare, u32 cause)
f4474d50c7d483 James Hogan 2017-03-14 389 {
f4474d50c7d483 James Hogan 2017-03-14 390 u32 start_count, after_count;
f4474d50c7d483 James Hogan 2017-03-14 @391 ktime_t freeze_time;
f4474d50c7d483 James Hogan 2017-03-14 392 unsigned long flags;
f4474d50c7d483 James Hogan 2017-03-14 393
f4474d50c7d483 James Hogan 2017-03-14 394 /*
f4474d50c7d483 James Hogan 2017-03-14 395 * Freeze the soft-timer and sync the guest CP0_Count with it. We do
f4474d50c7d483 James Hogan 2017-03-14 396 * this with interrupts disabled to avoid latency.
f4474d50c7d483 James Hogan 2017-03-14 397 */
f4474d50c7d483 James Hogan 2017-03-14 398 local_irq_save(flags);
f4474d50c7d483 James Hogan 2017-03-14 399 freeze_time = kvm_mips_freeze_hrtimer(vcpu, &start_count);
f4474d50c7d483 James Hogan 2017-03-14 400 write_c0_gtoffset(start_count - read_c0_count());
f4474d50c7d483 James Hogan 2017-03-14 401 local_irq_restore(flags);
f4474d50c7d483 James Hogan 2017-03-14 402
f4474d50c7d483 James Hogan 2017-03-14 403 /* restore guest CP0_Cause, as TI may already be set */
f4474d50c7d483 James Hogan 2017-03-14 404 back_to_back_c0_hazard();
f4474d50c7d483 James Hogan 2017-03-14 405 write_gc0_cause(cause);
f4474d50c7d483 James Hogan 2017-03-14 406
f4474d50c7d483 James Hogan 2017-03-14 407 /*
f4474d50c7d483 James Hogan 2017-03-14 408 * The above sequence isn't atomic and would result in lost timer
f4474d50c7d483 James Hogan 2017-03-14 409 * interrupts if we're not careful. Detect if a timer interrupt is due
f4474d50c7d483 James Hogan 2017-03-14 410 * and assert it.
f4474d50c7d483 James Hogan 2017-03-14 411 */
f4474d50c7d483 James Hogan 2017-03-14 412 back_to_back_c0_hazard();
f4474d50c7d483 James Hogan 2017-03-14 413 after_count = read_gc0_count();
f4474d50c7d483 James Hogan 2017-03-14 414 if (after_count - start_count > compare - start_count - 1)
f4474d50c7d483 James Hogan 2017-03-14 415 kvm_vz_queue_irq(vcpu, MIPS_EXC_INT_TIMER);
f4474d50c7d483 James Hogan 2017-03-14 416 }
f4474d50c7d483 James Hogan 2017-03-14 417
f4474d50c7d483 James Hogan 2017-03-14 418 /**
f4474d50c7d483 James Hogan 2017-03-14 419 * kvm_vz_restore_timer() - Restore timer state.
c992a4f6a9b0a3 James Hogan 2017-03-14 420 * @vcpu: Virtual CPU.
c992a4f6a9b0a3 James Hogan 2017-03-14 421 *
c992a4f6a9b0a3 James Hogan 2017-03-14 422 * Restore soft timer state from saved context.
c992a4f6a9b0a3 James Hogan 2017-03-14 423 */
c992a4f6a9b0a3 James Hogan 2017-03-14 424 static void kvm_vz_restore_timer(struct kvm_vcpu *vcpu)
c992a4f6a9b0a3 James Hogan 2017-03-14 425 {
c992a4f6a9b0a3 James Hogan 2017-03-14 426 struct mips_coproc *cop0 = vcpu->arch.cop0;
c992a4f6a9b0a3 James Hogan 2017-03-14 427 u32 cause, compare;
c992a4f6a9b0a3 James Hogan 2017-03-14 428
c992a4f6a9b0a3 James Hogan 2017-03-14 429 compare = kvm_read_sw_gc0_compare(cop0);
c992a4f6a9b0a3 James Hogan 2017-03-14 430 cause = kvm_read_sw_gc0_cause(cop0);
c992a4f6a9b0a3 James Hogan 2017-03-14 431
c992a4f6a9b0a3 James Hogan 2017-03-14 432 write_gc0_compare(compare);
c992a4f6a9b0a3 James Hogan 2017-03-14 433 _kvm_vz_restore_stimer(vcpu, compare, cause);
c992a4f6a9b0a3 James Hogan 2017-03-14 434 }
c992a4f6a9b0a3 James Hogan 2017-03-14 435
f4474d50c7d483 James Hogan 2017-03-14 436 /**
f4474d50c7d483 James Hogan 2017-03-14 437 * kvm_vz_acquire_htimer() - Switch to hard timer state.
f4474d50c7d483 James Hogan 2017-03-14 438 * @vcpu: Virtual CPU.
f4474d50c7d483 James Hogan 2017-03-14 439 *
f4474d50c7d483 James Hogan 2017-03-14 440 * Restore hard timer state on top of existing soft timer state if possible.
f4474d50c7d483 James Hogan 2017-03-14 441 *
f4474d50c7d483 James Hogan 2017-03-14 442 * Since hard timer won't remain active over preemption, preemption should be
f4474d50c7d483 James Hogan 2017-03-14 443 * disabled by the caller.
f4474d50c7d483 James Hogan 2017-03-14 444 */
f4474d50c7d483 James Hogan 2017-03-14 445 void kvm_vz_acquire_htimer(struct kvm_vcpu *vcpu)
f4474d50c7d483 James Hogan 2017-03-14 446 {
f4474d50c7d483 James Hogan 2017-03-14 447 u32 gctl0;
f4474d50c7d483 James Hogan 2017-03-14 448
f4474d50c7d483 James Hogan 2017-03-14 449 gctl0 = read_c0_guestctl0();
f4474d50c7d483 James Hogan 2017-03-14 450 if (!(gctl0 & MIPS_GCTL0_GT) && kvm_vz_should_use_htimer(vcpu)) {
f4474d50c7d483 James Hogan 2017-03-14 451 /* enable guest access to hard timer */
f4474d50c7d483 James Hogan 2017-03-14 452 write_c0_guestctl0(gctl0 | MIPS_GCTL0_GT);
f4474d50c7d483 James Hogan 2017-03-14 453
f4474d50c7d483 James Hogan 2017-03-14 454 _kvm_vz_restore_htimer(vcpu, read_gc0_compare(),
f4474d50c7d483 James Hogan 2017-03-14 455 read_gc0_cause());
f4474d50c7d483 James Hogan 2017-03-14 456 }
f4474d50c7d483 James Hogan 2017-03-14 457 }
f4474d50c7d483 James Hogan 2017-03-14 458
f4474d50c7d483 James Hogan 2017-03-14 459 /**
f4474d50c7d483 James Hogan 2017-03-14 460 * _kvm_vz_save_htimer() - Switch to software emulation of guest timer.
f4474d50c7d483 James Hogan 2017-03-14 461 * @vcpu: Virtual CPU.
f4474d50c7d483 James Hogan 2017-03-14 462 * @compare: Pointer to write compare value to.
f4474d50c7d483 James Hogan 2017-03-14 463 * @cause: Pointer to write cause value to.
f4474d50c7d483 James Hogan 2017-03-14 464 *
f4474d50c7d483 James Hogan 2017-03-14 465 * Save VZ guest timer state and switch to software emulation of guest CP0
f4474d50c7d483 James Hogan 2017-03-14 466 * timer. The hard timer must already be in use, so preemption should be
f4474d50c7d483 James Hogan 2017-03-14 467 * disabled.
f4474d50c7d483 James Hogan 2017-03-14 468 */
f4474d50c7d483 James Hogan 2017-03-14 469 static void _kvm_vz_save_htimer(struct kvm_vcpu *vcpu,
f4474d50c7d483 James Hogan 2017-03-14 470 u32 *out_compare, u32 *out_cause)
f4474d50c7d483 James Hogan 2017-03-14 @471 {
f4474d50c7d483 James Hogan 2017-03-14 472 u32 cause, compare, before_count, end_count;
f4474d50c7d483 James Hogan 2017-03-14 473 ktime_t before_time;
f4474d50c7d483 James Hogan 2017-03-14 474
f4474d50c7d483 James Hogan 2017-03-14 475 compare = read_gc0_compare();
f4474d50c7d483 James Hogan 2017-03-14 476 *out_compare = compare;
f4474d50c7d483 James Hogan 2017-03-14 477
f4474d50c7d483 James Hogan 2017-03-14 478 before_time = ktime_get();
f4474d50c7d483 James Hogan 2017-03-14 479
f4474d50c7d483 James Hogan 2017-03-14 480 /*
f4474d50c7d483 James Hogan 2017-03-14 481 * Record the CP0_Count *prior* to saving CP0_Cause, so we have a time
f4474d50c7d483 James Hogan 2017-03-14 482 * at which no pending timer interrupt is missing.
f4474d50c7d483 James Hogan 2017-03-14 483 */
f4474d50c7d483 James Hogan 2017-03-14 484 before_count = read_gc0_count();
f4474d50c7d483 James Hogan 2017-03-14 485 back_to_back_c0_hazard();
f4474d50c7d483 James Hogan 2017-03-14 486 cause = read_gc0_cause();
f4474d50c7d483 James Hogan 2017-03-14 487 *out_cause = cause;
f4474d50c7d483 James Hogan 2017-03-14 488
f4474d50c7d483 James Hogan 2017-03-14 489 /*
f4474d50c7d483 James Hogan 2017-03-14 490 * Record a final CP0_Count which we will transfer to the soft-timer.
f4474d50c7d483 James Hogan 2017-03-14 491 * This is recorded *after* saving CP0_Cause, so we don't get any timer
f4474d50c7d483 James Hogan 2017-03-14 492 * interrupts from just after the final CP0_Count point.
f4474d50c7d483 James Hogan 2017-03-14 493 */
f4474d50c7d483 James Hogan 2017-03-14 494 back_to_back_c0_hazard();
f4474d50c7d483 James Hogan 2017-03-14 495 end_count = read_gc0_count();
f4474d50c7d483 James Hogan 2017-03-14 496
f4474d50c7d483 James Hogan 2017-03-14 497 /*
f4474d50c7d483 James Hogan 2017-03-14 498 * The above sequence isn't atomic, so we could miss a timer interrupt
f4474d50c7d483 James Hogan 2017-03-14 499 * between reading CP0_Cause and end_count. Detect and record any timer
f4474d50c7d483 James Hogan 2017-03-14 500 * interrupt due between before_count and end_count.
f4474d50c7d483 James Hogan 2017-03-14 501 */
f4474d50c7d483 James Hogan 2017-03-14 502 if (end_count - before_count > compare - before_count - 1)
f4474d50c7d483 James Hogan 2017-03-14 503 kvm_vz_queue_irq(vcpu, MIPS_EXC_INT_TIMER);
f4474d50c7d483 James Hogan 2017-03-14 504
f4474d50c7d483 James Hogan 2017-03-14 505 /*
f4474d50c7d483 James Hogan 2017-03-14 506 * Restore soft-timer, ignoring a small amount of negative drift due to
f4474d50c7d483 James Hogan 2017-03-14 507 * delay between freeze_hrtimer and setting CP0_GTOffset.
f4474d50c7d483 James Hogan 2017-03-14 508 */
f4474d50c7d483 James Hogan 2017-03-14 509 kvm_mips_restore_hrtimer(vcpu, before_time, end_count, -0x10000);
f4474d50c7d483 James Hogan 2017-03-14 510 }
f4474d50c7d483 James Hogan 2017-03-14 511
:::::: The code at line 391 was first introduced by commit
:::::: f4474d50c7d483dd4432d5b0891b0bb9ad0eefc9 KVM: MIPS/VZ: Support hardware guest timer
:::::: TO: James Hogan <james.hogan(a)imgtec.com>
:::::: CC: James Hogan <james.hogan(a)imgtec.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[tty:tty-testing 218/218] drivers/tty/serial/serial_cortina-access.c:469:6: warning: no previous prototype for 'cortina_console_write'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git tty-testing
head: b61c8bf4694b5115766849378dcb8787ff54e65e
commit: b61c8bf4694b5115766849378dcb8787ff54e65e [218/218] tty: serial: Add UART driver for Cortina-Access platform
config: m68k-allyesconfig (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
# https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git/commit/?id...
git remote add tty https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git
git fetch --no-tags tty tty-testing
git checkout b61c8bf4694b5115766849378dcb8787ff54e65e
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=m68k
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/tty/serial/serial_cortina-access.c:76:27: warning: no previous prototype for 'cortina_uart_get_port' [-Wmissing-prototypes]
76 | struct cortina_uart_port *cortina_uart_get_port(unsigned int index)
| ^~~~~~~~~~~~~~~~~~~~~
>> drivers/tty/serial/serial_cortina-access.c:469:6: warning: no previous prototype for 'cortina_console_write' [-Wmissing-prototypes]
469 | void cortina_console_write(struct console *co, const char *s,
| ^~~~~~~~~~~~~~~~~~~~~
vim +/cortina_console_write +469 drivers/tty/serial/serial_cortina-access.c
467
468 #ifdef CONFIG_SERIAL_CORTINA_ACCESS_CONSOLE
> 469 void cortina_console_write(struct console *co, const char *s,
470 unsigned int count)
471 {
472 struct uart_port *port;
473 struct cortina_uart_port *pca_port;
474 unsigned int i, previous;
475 unsigned long flags;
476 int locked;
477
478 pca_port = cortina_uart_get_port(co->index);
479 port = &pca_port->uart;
480
481 local_irq_save(flags);
482 if (port->sysrq) {
483 locked = 0;
484 } else if (oops_in_progress) {
485 locked = spin_trylock(&port->lock);
486 } else {
487 spin_lock(&port->lock);
488 locked = 1;
489 }
490
491 /* Save current state */
492 previous = readl(port->membase + IE);
493 /* Disable Tx interrupts so this all goes out in one go */
494 cortina_uart_stop_tx(port);
495
496 /* Write all the chars */
497 for (i = 0; i < count; i++) {
498 /* Wait the TX buffer to be empty, which can't take forever */
499 while (!(readl(port->membase + INFO) & INFO_TX_EMPTY))
500 cpu_relax();
501
502 /* Send the char */
503 writel(*s, port->membase + TX_DAT);
504
505 /* CR/LF stuff */
506 if (*s++ == '\n') {
507 /* Wait the TX buffer to be empty */
508 while (!(readl(port->membase + INFO) & INFO_TX_EMPTY))
509 cpu_relax();
510 writel('\r', port->membase + TX_DAT);
511 }
512 }
513
514 writel(previous, port->membase + IE); /* Put it all back */
515
516 if (locked)
517 spin_unlock(&port->lock);
518 local_irq_restore(flags);
519 }
520
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[kees:kspp/memcpy/next-20210618/v0 81/82] include/linux/fortify-string.h:304:7: error: expected declaration specifiers or '...' before '__builtin_object_size'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git kspp/memcpy/next-20210618/v0
head: fd2aa2a169de8bde9502e7a2fc48cd03d4bfd996
commit: 6d805912063804ea975440760b79392fc0c03948 [81/82] fortify: Work around Clang inlining bugs
config: arm-aspeed_g5_defconfig (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/kees/linux.git/commit/?id...
git remote add kees https://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git
git fetch --no-tags kees kspp/memcpy/next-20210618/v0
git checkout 6d805912063804ea975440760b79392fc0c03948
# 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 errors (new ones prefixed by >>):
In file included from include/linux/string.h:253,
from arch/arm/boot/compressed/string.c:8:
>> include/linux/fortify-string.h:304:7: error: expected declaration specifiers or '...' before '__builtin_object_size'
304 | __builtin_object_size(p, 1), \
| ^~~~~~~~~~~~~~~~~~~~~
arch/arm/boot/compressed/string.c:29:7: note: in expansion of macro 'memcpy'
29 | void *memcpy(void *__dest, __const void *__src, size_t __n)
| ^~~~~~
include/linux/fortify-string.h:305:7: error: expected declaration specifiers or '...' before '__builtin_object_size'
305 | __builtin_object_size(q, 1))
| ^~~~~~~~~~~~~~~~~~~~~
arch/arm/boot/compressed/string.c:29:7: note: in expansion of macro 'memcpy'
29 | void *memcpy(void *__dest, __const void *__src, size_t __n)
| ^~~~~~
include/linux/fortify-string.h:316:9: error: expected declaration specifiers or '...' before '__builtin_object_size'
316 | __builtin_object_size(p, 1), \
| ^~~~~~~~~~~~~~~~~~~~~
arch/arm/boot/compressed/string.c:63:7: note: in expansion of macro 'memmove'
63 | void *memmove(void *__dest, __const void *__src, size_t count)
| ^~~~~~~
include/linux/fortify-string.h:317:9: error: expected declaration specifiers or '...' before '__builtin_object_size'
317 | __builtin_object_size(q, 1))
| ^~~~~~~~~~~~~~~~~~~~~
arch/arm/boot/compressed/string.c:63:7: note: in expansion of macro 'memmove'
63 | void *memmove(void *__dest, __const void *__src, size_t count)
| ^~~~~~~
vim +304 include/linux/fortify-string.h
302
303 #define memcpy(p, q, s) __fortify_memcpy(p, q, s, \
> 304 __builtin_object_size(p, 1), \
305 __builtin_object_size(q, 1))
306 __FORTIFY_INLINE void *__fortify_memcpy(void *p, const void *q,
307 __kernel_size_t size,
308 const size_t p_size_field,
309 const size_t q_size_field)
310 {
311 __fortify_memcpy_chk(p, q, size, p_size_field, q_size_field, "memcpy");
312 return __underlying_memcpy(p, q, size);
313 }
314
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[linux-stable-rc:linux-4.19.y 974/4776] drivers/ata/libata-scsi.c:2423:30: error: 'SECTOR_SHIFT' undeclared; did you mean 'SOFTIRQ_SHIFT'?
by kernel test robot
Hi Tejun,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.19.y
head: 050ebdeaa48830852f690696606997b274af7148
commit: a8bb7740aa313994bfa4c21cba399f65985a8a35 [974/4776] libata: implement ATA_HORKAGE_MAX_TRIM_128M and apply to Sandisks
config: powerpc-randconfig-r012-20210620 (attached as .config)
compiler: powerpc-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/stable/linux-stable-rc.gi...
git remote add linux-stable-rc https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git fetch --no-tags linux-stable-rc linux-4.19.y
git checkout a8bb7740aa313994bfa4c21cba399f65985a8a35
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc
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 >>):
include/linux/log2.h:162:23: note: in definition of macro 'ilog2'
162 | __builtin_constant_p(n) ? \
| ^
In file included from include/scsi/scsi_cmnd.h:7,
from drivers/ata/libata-scsi.c:43:
include/linux/t10-pi.h:48:9: error: implicit declaration of function 'blk_rq_pos' [-Werror=implicit-function-declaration]
48 | return blk_rq_pos(rq) >> (shift - SECTOR_SHIFT) & 0xffffffff;
| ^~~~~~~~~~
include/linux/t10-pi.h:48:36: error: 'SECTOR_SHIFT' undeclared (first use in this function); did you mean 'SOFTIRQ_SHIFT'?
48 | return blk_rq_pos(rq) >> (shift - SECTOR_SHIFT) & 0xffffffff;
| ^~~~~~~~~~~~
| SOFTIRQ_SHIFT
In file included from include/scsi/scsi_cmnd.h:12,
from drivers/ata/libata-scsi.c:43:
include/scsi/scsi_device.h: At top level:
include/scsi/scsi_device.h:435:4: error: unknown type name 'req_flags_t'; did you mean 'vm_flags_t'?
435 | req_flags_t rq_flags, int *resid);
| ^~~~~~~~~~~
| vm_flags_t
include/scsi/scsi_device.h: In function 'scsi_execute_req':
include/scsi/scsi_device.h:442:2: error: implicit declaration of function '__scsi_execute'; did you mean 'scsi_execute'? [-Werror=implicit-function-declaration]
442 | __scsi_execute(sdev, cmd, data_direction, buffer, bufflen, \
| ^~~~~~~~~~~~~~
include/scsi/scsi_device.h:451:9: note: in expansion of macro 'scsi_execute'
451 | return scsi_execute(sdev, cmd, data_direction, buffer,
| ^~~~~~~~~~~~
In file included from drivers/ata/libata-scsi.c:43:
include/scsi/scsi_cmnd.h: In function 'scsi_bidi_cmnd':
include/scsi/scsi_cmnd.h:214:9: error: implicit declaration of function 'blk_bidi_rq' [-Werror=implicit-function-declaration]
214 | return blk_bidi_rq(cmd->request) &&
| ^~~~~~~~~~~
In file included from include/linux/writeback.h:13,
from include/linux/memcontrol.h:31,
from include/linux/swap.h:9,
from include/linux/suspend.h:5,
from drivers/ata/libata-scsi.c:51:
include/linux/blk_types.h: At top level:
include/linux/blk_types.h:29:22: error: conflicting types for 'blk_status_t'
29 | typedef u8 __bitwise blk_status_t;
| ^~~~~~~~~~~~
In file included from include/scsi/scsi_host.h:11,
from drivers/ata/libata-scsi.c:42:
include/linux/blk-mq.h:100:9: note: previous declaration of 'blk_status_t' was here
100 | typedef blk_status_t (queue_rq_fn)(struct blk_mq_hw_ctx *,
| ^~~~~~~~~~~~
drivers/ata/libata-scsi.c: In function 'ata_scsi_qc_new':
drivers/ata/libata-scsi.c:871:32: error: 'RQF_QUIET' undeclared (first use in this function); did you mean 'BIO_QUIET'?
871 | if (cmd->request->rq_flags & RQF_QUIET)
| ^~~~~~~~~
| BIO_QUIET
In file included from include/asm-generic/bug.h:5,
from arch/powerpc/include/asm/bug.h:128,
from include/linux/bug.h:5,
from include/linux/mmdebug.h:5,
from include/linux/gfp.h:5,
from include/linux/slab.h:15,
from drivers/ata/libata-scsi.c:36:
drivers/ata/libata-scsi.c: In function 'atapi_drain_needed':
drivers/ata/libata-scsi.c:1255:14: error: implicit declaration of function 'blk_rq_is_passthrough' [-Werror=implicit-function-declaration]
1255 | if (likely(!blk_rq_is_passthrough(rq)))
| ^~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:76:40: note: in definition of macro 'likely'
76 | # define likely(x) __builtin_expect(!!(x), 1)
| ^
drivers/ata/libata-scsi.c:1258:7: error: implicit declaration of function 'blk_rq_bytes' [-Werror=implicit-function-declaration]
1258 | if (!blk_rq_bytes(rq) || op_is_write(req_op(rq)))
| ^~~~~~~~~~~~
drivers/ata/libata-scsi.c: In function 'ata_scsi_dev_config':
drivers/ata/libata-scsi.c:1273:2: error: implicit declaration of function 'blk_queue_max_hw_sectors' [-Werror=implicit-function-declaration]
1273 | blk_queue_max_hw_sectors(q, dev->max_sectors);
| ^~~~~~~~~~~~~~~~~~~~~~~~
drivers/ata/libata-scsi.c:1281:3: error: implicit declaration of function 'blk_queue_update_dma_pad' [-Werror=implicit-function-declaration]
1281 | blk_queue_update_dma_pad(q, ATA_DMA_PAD_SZ - 1);
| ^~~~~~~~~~~~~~~~~~~~~~~~
drivers/ata/libata-scsi.c:1284:35: error: dereferencing pointer to incomplete type 'struct request_queue'
1284 | buf = kmalloc(ATAPI_MAX_DRAIN, q->bounce_gfp | GFP_KERNEL);
| ^~
drivers/ata/libata-scsi.c:1290:3: error: implicit declaration of function 'blk_queue_dma_drain' [-Werror=implicit-function-declaration]
1290 | blk_queue_dma_drain(q, atapi_drain_needed, buf, ATAPI_MAX_DRAIN);
| ^~~~~~~~~~~~~~~~~~~
drivers/ata/libata-scsi.c:1308:2: error: implicit declaration of function 'blk_queue_update_dma_alignment' [-Werror=implicit-function-declaration]
1308 | blk_queue_update_dma_alignment(q, sdev->sector_size - 1);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/ata/libata-scsi.c:1321:2: error: implicit declaration of function 'blk_queue_flush_queueable' [-Werror=implicit-function-declaration]
1321 | blk_queue_flush_queueable(q, false);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/fs.h:39,
from include/linux/huge_mm.h:8,
from include/linux/mm.h:499,
from include/linux/scatterlist.h:8,
from include/scsi/scsi.h:10,
from drivers/ata/libata-scsi.c:41:
drivers/ata/libata-scsi.c: In function 'ata_scsi_rw_xlat':
drivers/ata/libata-scsi.c:1844:32: error: implicit declaration of function 'req_get_ioprio' [-Werror=implicit-function-declaration]
1844 | int class = IOPRIO_PRIO_CLASS(req_get_ioprio(rq));
| ^~~~~~~~~~~~~~
include/linux/ioprio.h:15:35: note: in definition of macro 'IOPRIO_PRIO_CLASS'
15 | #define IOPRIO_PRIO_CLASS(mask) ((mask) >> IOPRIO_CLASS_SHIFT)
| ^~~~
drivers/ata/libata-scsi.c: In function 'ata_scsiop_inq_b0':
>> drivers/ata/libata-scsi.c:2423:30: error: 'SECTOR_SHIFT' undeclared (first use in this function); did you mean 'SOFTIRQ_SHIFT'?
2423 | max_blocks = 128 << (20 - SECTOR_SHIFT);
| ^~~~~~~~~~~~
| SOFTIRQ_SHIFT
cc1: some warnings being treated as errors
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for ATA
Depends on HAS_IOMEM && BLOCK
Selected by
- AKEBONO && PPC_47x
WARNING: unmet direct dependencies detected for MMC_SDHCI
Depends on MMC && HAS_DMA
Selected by
- AKEBONO && PPC_47x
WARNING: unmet direct dependencies detected for MMC_SDHCI_PLTFM
Depends on MMC && MMC_SDHCI
Selected by
- AKEBONO && PPC_47x
vim +2423 drivers/ata/libata-scsi.c
2391
2392 static unsigned int ata_scsiop_inq_b0(struct ata_scsi_args *args, u8 *rbuf)
2393 {
2394 struct ata_device *dev = args->dev;
2395 u16 min_io_sectors;
2396
2397 rbuf[1] = 0xb0;
2398 rbuf[3] = 0x3c; /* required VPD size with unmap support */
2399
2400 /*
2401 * Optimal transfer length granularity.
2402 *
2403 * This is always one physical block, but for disks with a smaller
2404 * logical than physical sector size we need to figure out what the
2405 * latter is.
2406 */
2407 min_io_sectors = 1 << ata_id_log2_per_physical_sector(args->id);
2408 put_unaligned_be16(min_io_sectors, &rbuf[6]);
2409
2410 /*
2411 * Optimal unmap granularity.
2412 *
2413 * The ATA spec doesn't even know about a granularity or alignment
2414 * for the TRIM command. We can leave away most of the unmap related
2415 * VPD page entries, but we have specifify a granularity to signal
2416 * that we support some form of unmap - in thise case via WRITE SAME
2417 * with the unmap bit set.
2418 */
2419 if (ata_id_has_trim(args->id)) {
2420 u64 max_blocks = 65535 * ATA_MAX_TRIM_RNUM;
2421
2422 if (dev->horkage & ATA_HORKAGE_MAX_TRIM_128M)
> 2423 max_blocks = 128 << (20 - SECTOR_SHIFT);
2424
2425 put_unaligned_be64(max_blocks, &rbuf[36]);
2426 put_unaligned_be32(1, &rbuf[28]);
2427 }
2428
2429 return 0;
2430 }
2431
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months
[chrome-os:chromeos-5.10 30/94] drivers/bluetooth/btusb.c:2840:30: error: unused variable 'features'
by kernel test robot
Hi Joseph,
FYI, the error/warning still remains.
tree: https://chromium.googlesource.com/chromiumos/third_party/kernel chromeos-5.10
head: 7259ec5dffcf820990fc9ab144ab094f604e0d19
commit: 6c7fd7681669fa0354948a9a7ad0cf861a44c603 [30/94] CHROMIUM: Bluetooth: disable Intel quality report feature by default
config: arm-chromiumos-arm-customedconfig-chrome-os:chromeos-5.10:cfb2dbbbef971d7f4e3953d426a0c05302b4c204 (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
git remote add chrome-os https://chromium.googlesource.com/chromiumos/third_party/kernel
git fetch --no-tags chrome-os chromeos-5.10
git checkout 6c7fd7681669fa0354948a9a7ad0cf861a44c603
# 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 errors (new ones prefixed by >>):
drivers/bluetooth/btusb.c: In function 'btusb_setup_intel_new':
>> drivers/bluetooth/btusb.c:2840:30: error: unused variable 'features' [-Werror=unused-variable]
2840 | struct intel_debug_features features;
| ^~~~~~~~
cc1: all warnings being treated as errors
vim +/features +2840 drivers/bluetooth/btusb.c
5a5fc00f3fbe1e Luiz Augusto von Dentz 2021-03-23 2831
5ea7c81a4f34e4 Kiran K 2020-06-25 2832 static int btusb_setup_intel_new(struct hci_dev *hdev)
5ea7c81a4f34e4 Kiran K 2020-06-25 2833 {
5ea7c81a4f34e4 Kiran K 2020-06-25 2834 struct btusb_data *data = hci_get_drvdata(hdev);
5ea7c81a4f34e4 Kiran K 2020-06-25 2835 struct intel_version ver;
5ea7c81a4f34e4 Kiran K 2020-06-25 2836 struct intel_boot_params params;
5ea7c81a4f34e4 Kiran K 2020-06-25 2837 u32 boot_param;
5ea7c81a4f34e4 Kiran K 2020-06-25 2838 char ddcname[64];
5ea7c81a4f34e4 Kiran K 2020-06-25 2839 int err;
5ea7c81a4f34e4 Kiran K 2020-06-25 @2840 struct intel_debug_features features;
5ea7c81a4f34e4 Kiran K 2020-06-25 2841
5ea7c81a4f34e4 Kiran K 2020-06-25 2842 BT_DBG("%s", hdev->name);
5ea7c81a4f34e4 Kiran K 2020-06-25 2843
5ea7c81a4f34e4 Kiran K 2020-06-25 2844 /* Set the default boot parameter to 0x0 and it is updated to
5ea7c81a4f34e4 Kiran K 2020-06-25 2845 * SKU specific boot parameter after reading Intel_Write_Boot_Params
5ea7c81a4f34e4 Kiran K 2020-06-25 2846 * command while downloading the firmware.
5ea7c81a4f34e4 Kiran K 2020-06-25 2847 */
5ea7c81a4f34e4 Kiran K 2020-06-25 2848 boot_param = 0x00000000;
5ea7c81a4f34e4 Kiran K 2020-06-25 2849
5ea7c81a4f34e4 Kiran K 2020-06-25 2850 /* Read the Intel version information to determine if the device
5ea7c81a4f34e4 Kiran K 2020-06-25 2851 * is in bootloader mode or if it already has operational firmware
5ea7c81a4f34e4 Kiran K 2020-06-25 2852 * loaded.
5ea7c81a4f34e4 Kiran K 2020-06-25 2853 */
5ea7c81a4f34e4 Kiran K 2020-06-25 2854 err = btintel_read_version(hdev, &ver);
5ea7c81a4f34e4 Kiran K 2020-06-25 2855 if (err) {
5ea7c81a4f34e4 Kiran K 2020-06-25 2856 bt_dev_err(hdev, "Intel Read version failed (%d)", err);
5ea7c81a4f34e4 Kiran K 2020-06-25 2857 btintel_reset_to_bootloader(hdev);
5ea7c81a4f34e4 Kiran K 2020-06-25 2858 return err;
5ea7c81a4f34e4 Kiran K 2020-06-25 2859 }
5ea7c81a4f34e4 Kiran K 2020-06-25 2860
45d025d65f3572 Luiz Augusto von Dentz 2021-03-23 2861 err = btintel_version_info(hdev, &ver);
45d025d65f3572 Luiz Augusto von Dentz 2021-03-23 2862 if (err)
45d025d65f3572 Luiz Augusto von Dentz 2021-03-23 2863 return err;
45d025d65f3572 Luiz Augusto von Dentz 2021-03-23 2864
dc45d375cfa567 Kiran K 2020-08-26 2865 err = btusb_intel_download_firmware(hdev, &ver, ¶ms, &boot_param);
5ea7c81a4f34e4 Kiran K 2020-06-25 2866 if (err)
5ea7c81a4f34e4 Kiran K 2020-06-25 2867 return err;
5ea7c81a4f34e4 Kiran K 2020-06-25 2868
5ea7c81a4f34e4 Kiran K 2020-06-25 2869 /* controller is already having an operational firmware */
5ea7c81a4f34e4 Kiran K 2020-06-25 2870 if (ver.fw_variant == 0x23)
5ea7c81a4f34e4 Kiran K 2020-06-25 2871 goto finish;
5ea7c81a4f34e4 Kiran K 2020-06-25 2872
5a5fc00f3fbe1e Luiz Augusto von Dentz 2021-03-23 2873 err = btusb_intel_boot(hdev, boot_param);
5a5fc00f3fbe1e Luiz Augusto von Dentz 2021-03-23 2874 if (err)
e5889af62fce08 Tedd Ho-Jeong An 2018-01-24 2875 return err;
cda0dd7809f89e Marcel Holtmann 2015-01-26 2876
cda0dd7809f89e Marcel Holtmann 2015-01-26 2877 clear_bit(BTUSB_BOOTLOADER, &data->flags);
cda0dd7809f89e Marcel Holtmann 2015-01-26 2878
5ea7c81a4f34e4 Kiran K 2020-06-25 2879 err = btusb_setup_intel_new_get_fw_name(&ver, ¶ms, ddcname,
5ea7c81a4f34e4 Kiran K 2020-06-25 2880 sizeof(ddcname), "ddc");
5ea7c81a4f34e4 Kiran K 2020-06-25 2881
b772c29f794fed Luiz Augusto von Dentz 2021-03-23 2882 if (err < 0) {
5ea7c81a4f34e4 Kiran K 2020-06-25 2883 bt_dev_err(hdev, "Unsupported Intel firmware naming");
5ea7c81a4f34e4 Kiran K 2020-06-25 2884 } else {
5ea7c81a4f34e4 Kiran K 2020-06-25 2885 /* Once the device is running in operational mode, it needs to
5ea7c81a4f34e4 Kiran K 2020-06-25 2886 * apply the device configuration (DDC) parameters.
52cc916818c86a Tedd Ho-Jeong An 2015-06-12 2887 *
5ea7c81a4f34e4 Kiran K 2020-06-25 2888 * The device can work without DDC parameters, so even if it
5ea7c81a4f34e4 Kiran K 2020-06-25 2889 * fails to load the file, no need to fail the setup.
52cc916818c86a Tedd Ho-Jeong An 2015-06-12 2890 */
5ea7c81a4f34e4 Kiran K 2020-06-25 2891 btintel_load_ddc_config(hdev, ddcname);
5ea7c81a4f34e4 Kiran K 2020-06-25 2892 }
52cc916818c86a Tedd Ho-Jeong An 2015-06-12 2893
7fd673bcdacc85 Marcel Holtmann 2020-04-03 2894 /* Read the Intel version information after loading the FW */
7fd673bcdacc85 Marcel Holtmann 2020-04-03 2895 err = btintel_read_version(hdev, &ver);
7fd673bcdacc85 Marcel Holtmann 2020-04-03 2896 if (err)
7fd673bcdacc85 Marcel Holtmann 2020-04-03 2897 return err;
7fd673bcdacc85 Marcel Holtmann 2020-04-03 2898
7fd673bcdacc85 Marcel Holtmann 2020-04-03 2899 btintel_version_info(hdev, &ver);
7fd673bcdacc85 Marcel Holtmann 2020-04-03 2900
7fd673bcdacc85 Marcel Holtmann 2020-04-03 2901 finish:
fc04590e3d3921 Miao-chen Chou 2020-04-03 2902 /* All Intel controllers that support the Microsoft vendor
fc04590e3d3921 Miao-chen Chou 2020-04-03 2903 * extension are using 0xFC1E for VsMsftOpCode.
fc04590e3d3921 Miao-chen Chou 2020-04-03 2904 */
fc04590e3d3921 Miao-chen Chou 2020-04-03 2905 switch (ver.hw_variant) {
1640e21eeaaf8d Miao-chen Chou 2020-12-17 2906 case 0x11: /* JfP */
fc04590e3d3921 Miao-chen Chou 2020-04-03 2907 case 0x12: /* ThP */
1640e21eeaaf8d Miao-chen Chou 2020-12-17 2908 case 0x13: /* HrP */
1640e21eeaaf8d Miao-chen Chou 2020-12-17 2909 case 0x14: /* CcP */
fc04590e3d3921 Miao-chen Chou 2020-04-03 2910 hci_set_msft_opcode(hdev, 0xFC1E);
fc04590e3d3921 Miao-chen Chou 2020-04-03 2911 break;
fc04590e3d3921 Miao-chen Chou 2020-04-03 2912 }
fc04590e3d3921 Miao-chen Chou 2020-04-03 2913
213445b2b40e87 Marcel Holtmann 2015-10-21 2914 /* Set the event mask for Intel specific vendor events. This enables
213445b2b40e87 Marcel Holtmann 2015-10-21 2915 * a few extra events that are useful during general operation. It
213445b2b40e87 Marcel Holtmann 2015-10-21 2916 * does not enable any debugging related events.
213445b2b40e87 Marcel Holtmann 2015-10-21 2917 *
213445b2b40e87 Marcel Holtmann 2015-10-21 2918 * The device will function correctly without these events enabled
213445b2b40e87 Marcel Holtmann 2015-10-21 2919 * and thus no need to fail the setup.
213445b2b40e87 Marcel Holtmann 2015-10-21 2920 */
213445b2b40e87 Marcel Holtmann 2015-10-21 2921 btintel_set_event_mask(hdev, false);
213445b2b40e87 Marcel Holtmann 2015-10-21 2922
cda0dd7809f89e Marcel Holtmann 2015-01-26 2923 return 0;
cda0dd7809f89e Marcel Holtmann 2015-01-26 2924 }
cda0dd7809f89e Marcel Holtmann 2015-01-26 2925
:::::: The code at line 2840 was first introduced by commit
:::::: 5ea7c81a4f34e4dbb9c7bfd0fe18e5fba8a7f8f9 Bluetooth: btusb: Refactor of firmware download flow for Intel conrollers
:::::: TO: Kiran K <kiran.k(a)intel.com>
:::::: CC: Marcel Holtmann <marcel(a)holtmann.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 3 months