tree: https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git master head: be736f5f89d519e58057ee40c3e09fbfc711d4dc commit: be736f5f89d519e58057ee40c3e09fbfc711d4dc [90/90] Bluetooth: hci_dev: replace 'quirks' integer by 'quirk_flags' bitmap config: arm-randconfig-001-20250715 (https://download.01.org/0day-ci/archive/20250715/202507150810.nsWLqAW3-lkp@xxxxxxxxx/config) compiler: clang version 21.0.0git (https://github.com/llvm/llvm-project 16534d19bf50bde879a83f0ae62875e2c5120e64) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250715/202507150810.nsWLqAW3-lkp@xxxxxxxxx/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202507150810.nsWLqAW3-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): >> drivers/bluetooth/hci_ll.c:652:48: error: no member named 'quirks' in 'struct hci_dev' 652 | set_bit(HCI_QUIRK_INVALID_BDADDR, &hu->hdev->quirks); | ~~~~~~~~ ^ arch/arm/include/asm/bitops.h:191:49: note: expanded from macro 'set_bit' 191 | #define set_bit(nr,p) ATOMIC_BITOP(set_bit,nr,p) | ^ arch/arm/include/asm/bitops.h:183:52: note: expanded from macro 'ATOMIC_BITOP' 183 | (__builtin_constant_p(nr) ? ____atomic_##name(nr, p) : _##name(nr,p)) | ^ >> drivers/bluetooth/hci_ll.c:652:48: error: no member named 'quirks' in 'struct hci_dev' 652 | set_bit(HCI_QUIRK_INVALID_BDADDR, &hu->hdev->quirks); | ~~~~~~~~ ^ arch/arm/include/asm/bitops.h:191:49: note: expanded from macro 'set_bit' 191 | #define set_bit(nr,p) ATOMIC_BITOP(set_bit,nr,p) | ^ arch/arm/include/asm/bitops.h:183:68: note: expanded from macro 'ATOMIC_BITOP' 183 | (__builtin_constant_p(nr) ? ____atomic_##name(nr, p) : _##name(nr,p)) | ^ drivers/bluetooth/hci_ll.c:656:49: error: no member named 'quirks' in 'struct hci_dev' 656 | set_bit(HCI_QUIRK_INVALID_BDADDR, &hu->hdev->quirks); | ~~~~~~~~ ^ arch/arm/include/asm/bitops.h:191:49: note: expanded from macro 'set_bit' 191 | #define set_bit(nr,p) ATOMIC_BITOP(set_bit,nr,p) | ^ arch/arm/include/asm/bitops.h:183:52: note: expanded from macro 'ATOMIC_BITOP' 183 | (__builtin_constant_p(nr) ? ____atomic_##name(nr, p) : _##name(nr,p)) | ^ drivers/bluetooth/hci_ll.c:656:49: error: no member named 'quirks' in 'struct hci_dev' 656 | set_bit(HCI_QUIRK_INVALID_BDADDR, &hu->hdev->quirks); | ~~~~~~~~ ^ arch/arm/include/asm/bitops.h:191:49: note: expanded from macro 'set_bit' 191 | #define set_bit(nr,p) ATOMIC_BITOP(set_bit,nr,p) | ^ arch/arm/include/asm/bitops.h:183:68: note: expanded from macro 'ATOMIC_BITOP' 183 | (__builtin_constant_p(nr) ? ____atomic_##name(nr, p) : _##name(nr,p)) | ^ 4 errors generated. vim +652 drivers/bluetooth/hci_ll.c aa0993986932fe David Lechner 2017-12-12 607 371805522f8709 Rob Herring 2017-04-13 608 static int ll_setup(struct hci_uart *hu) 371805522f8709 Rob Herring 2017-04-13 609 { 371805522f8709 Rob Herring 2017-04-13 610 int err, retry = 3; 371805522f8709 Rob Herring 2017-04-13 611 struct ll_device *lldev; 371805522f8709 Rob Herring 2017-04-13 612 struct serdev_device *serdev = hu->serdev; 371805522f8709 Rob Herring 2017-04-13 613 u32 speed; 371805522f8709 Rob Herring 2017-04-13 614 371805522f8709 Rob Herring 2017-04-13 615 if (!serdev) 371805522f8709 Rob Herring 2017-04-13 616 return 0; 371805522f8709 Rob Herring 2017-04-13 617 371805522f8709 Rob Herring 2017-04-13 618 lldev = serdev_device_get_drvdata(serdev); 371805522f8709 Rob Herring 2017-04-13 619 aa0993986932fe David Lechner 2017-12-12 620 hu->hdev->set_bdaddr = ll_set_bdaddr; aa0993986932fe David Lechner 2017-12-12 621 371805522f8709 Rob Herring 2017-04-13 622 serdev_device_set_flow_control(serdev, true); 371805522f8709 Rob Herring 2017-04-13 623 371805522f8709 Rob Herring 2017-04-13 624 do { d54fdcf9244cec David Lechner 2017-12-02 625 /* Reset the Bluetooth device */ 371805522f8709 Rob Herring 2017-04-13 626 gpiod_set_value_cansleep(lldev->enable_gpio, 0); 371805522f8709 Rob Herring 2017-04-13 627 msleep(5); 371805522f8709 Rob Herring 2017-04-13 628 gpiod_set_value_cansleep(lldev->enable_gpio, 1); 844c79bd599518 Xiaolei Wang 2020-11-10 629 mdelay(100); d54fdcf9244cec David Lechner 2017-12-02 630 err = serdev_device_wait_for_cts(serdev, true, 200); d54fdcf9244cec David Lechner 2017-12-02 631 if (err) { d54fdcf9244cec David Lechner 2017-12-02 632 bt_dev_err(hu->hdev, "Failed to get CTS"); d54fdcf9244cec David Lechner 2017-12-02 633 return err; d54fdcf9244cec David Lechner 2017-12-02 634 } 371805522f8709 Rob Herring 2017-04-13 635 371805522f8709 Rob Herring 2017-04-13 636 err = download_firmware(lldev); 371805522f8709 Rob Herring 2017-04-13 637 if (!err) 371805522f8709 Rob Herring 2017-04-13 638 break; 371805522f8709 Rob Herring 2017-04-13 639 371805522f8709 Rob Herring 2017-04-13 640 /* Toggle BT_EN and retry */ 371805522f8709 Rob Herring 2017-04-13 641 bt_dev_err(hu->hdev, "download firmware failed, retrying..."); 371805522f8709 Rob Herring 2017-04-13 642 } while (retry--); 371805522f8709 Rob Herring 2017-04-13 643 371805522f8709 Rob Herring 2017-04-13 644 if (err) 371805522f8709 Rob Herring 2017-04-13 645 return err; 371805522f8709 Rob Herring 2017-04-13 646 0e58d0cdb3eb6e David Lechner 2017-12-12 647 /* Set BD address if one was specified at probe */ 0e58d0cdb3eb6e David Lechner 2017-12-12 648 if (!bacmp(&lldev->bdaddr, BDADDR_NONE)) { 0e58d0cdb3eb6e David Lechner 2017-12-12 649 /* This means that there was an error getting the BD address 0e58d0cdb3eb6e David Lechner 2017-12-12 650 * during probe, so mark the device as having a bad address. 0e58d0cdb3eb6e David Lechner 2017-12-12 651 */ 0e58d0cdb3eb6e David Lechner 2017-12-12 @652 set_bit(HCI_QUIRK_INVALID_BDADDR, &hu->hdev->quirks); 0e58d0cdb3eb6e David Lechner 2017-12-12 653 } else if (bacmp(&lldev->bdaddr, BDADDR_ANY)) { 0e58d0cdb3eb6e David Lechner 2017-12-12 654 err = ll_set_bdaddr(hu->hdev, &lldev->bdaddr); 0e58d0cdb3eb6e David Lechner 2017-12-12 655 if (err) 0e58d0cdb3eb6e David Lechner 2017-12-12 656 set_bit(HCI_QUIRK_INVALID_BDADDR, &hu->hdev->quirks); 0e58d0cdb3eb6e David Lechner 2017-12-12 657 } 0e58d0cdb3eb6e David Lechner 2017-12-12 658 371805522f8709 Rob Herring 2017-04-13 659 /* Operational speed if any */ cef456cd354ef4 Adam Ford 2019-10-02 660 if (hu->oper_speed) cef456cd354ef4 Adam Ford 2019-10-02 661 speed = hu->oper_speed; cef456cd354ef4 Adam Ford 2019-10-02 662 else if (hu->proto->oper_speed) cef456cd354ef4 Adam Ford 2019-10-02 663 speed = hu->proto->oper_speed; cef456cd354ef4 Adam Ford 2019-10-02 664 else cef456cd354ef4 Adam Ford 2019-10-02 665 speed = 0; cef456cd354ef4 Adam Ford 2019-10-02 666 cef456cd354ef4 Adam Ford 2019-10-02 667 if (speed) { cef456cd354ef4 Adam Ford 2019-10-02 668 __le32 speed_le = cpu_to_le32(speed); cef456cd354ef4 Adam Ford 2019-10-02 669 struct sk_buff *skb; 7c6ca1201e5e87 David Lechner 2017-12-03 670 cef456cd354ef4 Adam Ford 2019-10-02 671 skb = __hci_cmd_sync(hu->hdev, HCI_VS_UPDATE_UART_HCI_BAUDRATE, cef456cd354ef4 Adam Ford 2019-10-02 672 sizeof(speed_le), &speed_le, cef456cd354ef4 Adam Ford 2019-10-02 673 HCI_INIT_TIMEOUT); cef456cd354ef4 Adam Ford 2019-10-02 674 if (!IS_ERR(skb)) { cef456cd354ef4 Adam Ford 2019-10-02 675 kfree_skb(skb); cef456cd354ef4 Adam Ford 2019-10-02 676 serdev_device_set_baudrate(serdev, speed); cef456cd354ef4 Adam Ford 2019-10-02 677 } cef456cd354ef4 Adam Ford 2019-10-02 678 } 371805522f8709 Rob Herring 2017-04-13 679 371805522f8709 Rob Herring 2017-04-13 680 return 0; 371805522f8709 Rob Herring 2017-04-13 681 } 371805522f8709 Rob Herring 2017-04-13 682 :::::: The code at line 652 was first introduced by commit :::::: 0e58d0cdb3eb6e06416bcc1af3605993c6a07656 Bluetooth: hci_ll: Add optional nvmem BD address source :::::: TO: David Lechner <david@xxxxxxxxxxxxxx> :::::: CC: Marcel Holtmann <marcel@xxxxxxxxxxxx> -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki