Hi Xu, kernel test robot noticed the following build warnings: [auto build test WARNING on usb/usb-testing] [also build test WARNING on usb/usb-next usb/usb-linus char-misc/char-misc-testing char-misc/char-misc-next char-misc/char-misc-linus westeri-thunderbolt/next linus/master v6.5-rc2 next-20230721] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Xu-Yang/usb-ehci-unlink-itd-sitds-from-hardware-list-if-the-controller-has-stopped-periodic-schedule/20230718-192747 base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing patch link: https://lore.kernel.org/r/20230718112600.3969141-1-xu.yang_2%40nxp.com patch subject: [PATCH 1/2] usb: host: ehci-sched: add itd/sitd_unlink_urb() functions config: microblaze-randconfig-r072-20230723 (https://download.01.org/0day-ci/archive/20230724/202307240103.vWzkF4eB-lkp@xxxxxxxxx/config) compiler: microblaze-linux-gcc (GCC) 12.3.0 reproduce: (https://download.01.org/0day-ci/archive/20230724/202307240103.vWzkF4eB-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/202307240103.vWzkF4eB-lkp@xxxxxxxxx/ sparse warnings: (new ones prefixed by >>) drivers/usb/host/ehci-hcd.c: note: in included file: drivers/usb/host/ehci-q.c:1390:27: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __hc32 [usertype] old_current @@ got int @@ drivers/usb/host/ehci-q.c:1390:27: sparse: expected restricted __hc32 [usertype] old_current drivers/usb/host/ehci-q.c:1390:27: sparse: got int drivers/usb/host/ehci-hcd.c: note: in included file: drivers/usb/host/ehci-mem.c:187:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __hc32 [usertype] *periodic @@ got restricted __le32 [usertype] * @@ drivers/usb/host/ehci-mem.c:187:24: sparse: expected restricted __hc32 [usertype] *periodic drivers/usb/host/ehci-mem.c:187:24: sparse: got restricted __le32 [usertype] * drivers/usb/host/ehci-hcd.c:568:27: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __hc32 [usertype] old_current @@ got int @@ drivers/usb/host/ehci-hcd.c:568:27: sparse: expected restricted __hc32 [usertype] old_current drivers/usb/host/ehci-hcd.c:568:27: sparse: got int drivers/usb/host/ehci-hcd.c: note: in included file: >> drivers/usb/host/ehci-sched.c:1829:17: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected restricted __hc32 [usertype] tag @@ got int @@ drivers/usb/host/ehci-sched.c:1829:17: sparse: expected restricted __hc32 [usertype] tag drivers/usb/host/ehci-sched.c:1829:17: sparse: got int >> drivers/usb/host/ehci-sched.c:1829:17: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected restricted __hc32 [usertype] tag @@ got int @@ drivers/usb/host/ehci-sched.c:1829:17: sparse: expected restricted __hc32 [usertype] tag drivers/usb/host/ehci-sched.c:1829:17: sparse: got int vim +1829 drivers/usb/host/ehci-sched.c 1807 1808 /* unlink itd/sitd from the periodic list */ 1809 static inline void 1810 unlink(struct ehci_hcd *ehci, unsigned frame, void *ptr) 1811 { 1812 union ehci_shadow *prev = &ehci->pshadow[frame]; 1813 __hc32 *hw_p = &ehci->periodic[frame]; 1814 union ehci_shadow here = *prev; 1815 1816 while (here.ptr && here.ptr != ptr) { 1817 prev = periodic_next_shadow(ehci, prev, 1818 Q_NEXT_TYPE(ehci, *hw_p)); 1819 hw_p = shadow_next_periodic(ehci, &here, 1820 Q_NEXT_TYPE(ehci, *hw_p)); 1821 here = *prev; 1822 } 1823 1824 *prev = *periodic_next_shadow(ehci, &here, 1825 Q_NEXT_TYPE(ehci, *hw_p)); 1826 1827 if (!ehci->use_dummy_qh || 1828 *shadow_next_periodic(ehci, &here, Q_NEXT_TYPE(ehci, *hw_p) > 1829 != EHCI_LIST_END(ehci))) 1830 *hw_p = *shadow_next_periodic(ehci, &here, 1831 Q_NEXT_TYPE(ehci, *hw_p)); 1832 else 1833 *hw_p = cpu_to_hc32(ehci, ehci->dummy->qh_dma); 1834 } 1835 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki