Hi Frank, kernel test robot noticed the following build errors: [auto build test ERROR on 00f3246adeeacbda0bd0b303604e46eb59c32e6e] url: https://github.com/intel-lab-lkp/linux/commits/Frank-Li/platform-msi-Add-msi_remove_device_irq_domain-in-platform_device_msi_free_irqs_all/20250208-034445 base: 00f3246adeeacbda0bd0b303604e46eb59c32e6e patch link: https://lore.kernel.org/r/20250207-ep-msi-v14-9-9671b136f2b8%40nxp.com patch subject: [PATCH v14 09/15] PCI: endpoint: pci-epf-test: Add doorbell test support config: i386-buildonly-randconfig-003-20250208 (https://download.01.org/0day-ci/archive/20250208/202502082311.G1hWGggF-lkp@xxxxxxxxx/config) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250208/202502082311.G1hWGggF-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/202502082311.G1hWGggF-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): drivers/pci/endpoint/functions/pci-epf-test.c: In function 'pci_epf_test_enable_doorbell': >> drivers/pci/endpoint/functions/pci-epf-test.c:726:42: error: passing argument 4 of 'pci_epf_align_inbound_addr' from incompatible pointer type [-Werror=incompatible-pointer-types] 726 | &epf_test->db_bar.phys_addr, &offset); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ | | | dma_addr_t * {aka unsigned int *} In file included from include/linux/pci-epc.h:12, from drivers/pci/endpoint/functions/pci-epf-test.c:19: include/linux/pci-epf.h:245:47: note: expected 'u64 *' {aka 'long long unsigned int *'} but argument is of type 'dma_addr_t *' {aka 'unsigned int *'} 245 | u64 addr, u64 *base, size_t *off); | ~~~~~^~~~ cc1: some warnings being treated as errors vim +/pci_epf_align_inbound_addr +726 drivers/pci/endpoint/functions/pci-epf-test.c 686 687 static void pci_epf_test_enable_doorbell(struct pci_epf_test *epf_test, 688 struct pci_epf_test_reg *reg) 689 { 690 struct pci_epf *epf = epf_test->epf; 691 struct pci_epc *epc = epf->epc; 692 struct msi_msg *msg; 693 enum pci_barno bar; 694 size_t offset; 695 int ret; 696 697 ret = pci_epf_alloc_doorbell(epf, 1); 698 if (ret) { 699 reg->status |= STATUS_DOORBELL_ENABLE_FAIL; 700 return; 701 } 702 703 msg = &epf->db_msg[0].msg; 704 bar = pci_epc_get_next_free_bar(epf_test->epc_features, epf_test->test_reg_bar + 1); 705 if (bar < BAR_0 || bar == epf_test->test_reg_bar || !epf->db_msg) { 706 reg->status |= STATUS_DOORBELL_ENABLE_FAIL; 707 return; 708 } 709 710 ret = request_irq(epf->db_msg[0].virq, pci_epf_test_doorbell_handler, 0, 711 "pci-test-doorbell", epf_test); 712 if (ret) { 713 dev_err(&epf->dev, 714 "Failed to request irq %d, doorbell feature is not supported\n", 715 epf->db_msg[0].virq); 716 reg->status |= STATUS_DOORBELL_ENABLE_FAIL; 717 pci_epf_test_doorbell_cleanup(epf_test); 718 return; 719 } 720 721 reg->doorbell_data = msg->data; 722 reg->doorbell_bar = bar; 723 724 msg = &epf->db_msg[0].msg; 725 ret = pci_epf_align_inbound_addr(epf, bar, ((u64)msg->address_hi << 32) | msg->address_lo, > 726 &epf_test->db_bar.phys_addr, &offset); 727 728 if (ret) { 729 reg->status |= STATUS_DOORBELL_ENABLE_FAIL; 730 pci_epf_test_doorbell_cleanup(epf_test); 731 return; 732 } 733 734 reg->doorbell_offset = offset; 735 736 epf_test->db_bar.barno = bar; 737 epf_test->db_bar.size = epf->bar[bar].size; 738 epf_test->db_bar.flags = epf->bar[bar].flags; 739 740 ret = pci_epc_set_bar(epc, epf->func_no, epf->vfunc_no, &epf_test->db_bar); 741 if (ret) { 742 reg->status |= STATUS_DOORBELL_ENABLE_FAIL; 743 pci_epf_test_doorbell_cleanup(epf_test); 744 } else { 745 reg->status |= STATUS_DOORBELL_ENABLE_SUCCESS; 746 } 747 } 748 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki