Hi Sujeev, Thank you for the patch! Yet something to improve: [auto build test ERROR on linus/master] [also build test ERROR on v4.17-rc2 next-20180426] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Sujeev-Dias/mhi_bus-core-Add-support-for-MHI-host-interface/20180428-065959 config: i386-allmodconfig (attached as .config) compiler: gcc-7 (Debian 7.3.0-16) 7.3.0 reproduce: # save the attached .config to linux build tree make ARCH=i386 All error/warnings (new ones prefixed by >>): In file included from drivers/bus/mhi/core/mhi_init.c:23:0: >> include/linux/mhi.h:658:15: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'int' static inlint int mhi_force_rddm_mode(struct mhi_controller *mhi_cntrl) ^~~ >> drivers/bus/mhi/core/mhi_init.c:608:5: error: redefinition of 'mhi_device_configure' int mhi_device_configure(struct mhi_device *mhi_dev, ^~~~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_init.c:23:0: include/linux/mhi.h:545:19: note: previous definition of 'mhi_device_configure' was here static inline int mhi_device_configure(struct mhi_device *mhi_div, ^~~~~~~~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_init.c:914:5: error: redefinition of 'of_register_mhi_controller' int of_register_mhi_controller(struct mhi_controller *mhi_cntrl) ^~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_init.c:23:0: include/linux/mhi.h:599:19: note: previous definition of 'of_register_mhi_controller' was here static inline int of_register_mhi_controller(struct mhi_controller *mhi_cntrl) ^~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_init.c:995:6: error: redefinition of 'mhi_unregister_mhi_controller' void mhi_unregister_mhi_controller(struct mhi_controller *mhi_cntrl) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_init.c:23:0: include/linux/mhi.h:604:20: note: previous definition of 'mhi_unregister_mhi_controller' was here static inline void mhi_unregister_mhi_controller( ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_init.c:1015:24: error: redefinition of 'mhi_alloc_controller' struct mhi_controller *mhi_alloc_controller(size_t size) ^~~~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_init.c:23:0: include/linux/mhi.h:594:38: note: previous definition of 'mhi_alloc_controller' was here static inline struct mhi_controller *mhi_alloc_controller(size_t size) ^~~~~~~~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_init.c:1028:5: error: redefinition of 'mhi_prepare_for_power_up' int mhi_prepare_for_power_up(struct mhi_controller *mhi_cntrl) ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_init.c:23:0: include/linux/mhi.h:617:19: note: previous definition of 'mhi_prepare_for_power_up' was here static inline int mhi_prepare_for_power_up(struct mhi_controller *mhi_cntrl) ^~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_init.c:1070:6: error: redefinition of 'mhi_unprepare_after_power_down' void mhi_unprepare_after_power_down(struct mhi_controller *mhi_cntrl) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_init.c:23:0: include/linux/mhi.h:637:20: note: previous definition of 'mhi_unprepare_after_power_down' was here static inline void mhi_unprepare_after_power_down( ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_init.c:1225:5: error: redefinition of 'mhi_driver_register' int mhi_driver_register(struct mhi_driver *mhi_drv) ^~~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_init.c:23:0: include/linux/mhi.h:536:19: note: previous definition of 'mhi_driver_register' was here static inline int mhi_driver_register(struct mhi_driver *mhi_drv) ^~~~~~~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_init.c:1239:6: error: redefinition of 'mhi_driver_unregister' void mhi_driver_unregister(struct mhi_driver *mhi_drv) ^~~~~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_init.c:23:0: include/linux/mhi.h:541:20: note: previous definition of 'mhi_driver_unregister' was here static inline void mhi_driver_unregister(struct mhi_driver *mhi_drv) ^~~~~~~~~~~~~~~~~~~~~ -- In file included from drivers/bus/mhi/core/mhi_main.c:23:0: >> include/linux/mhi.h:658:15: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'int' static inlint int mhi_force_rddm_mode(struct mhi_controller *mhi_cntrl) ^~~ drivers/bus/mhi/core/mhi_main.c: In function 'mhi_debugfs_mhi_event_show': >> drivers/bus/mhi/core/mhi_main.c:1335:44: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 5 has type 'dma_addr_t {aka unsigned int}' [-Wformat=] " rp:0x%llx wp:0x%llx local_rp:0x%llx db:0x%llx\n", ~~~^ %x drivers/bus/mhi/core/mhi_main.c:1337:8: mhi_to_physical(ring, ring->rp), ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/bus/mhi/core/mhi_main.c:1335:54: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 6 has type 'dma_addr_t {aka unsigned int}' [-Wformat=] " rp:0x%llx wp:0x%llx local_rp:0x%llx db:0x%llx\n", ~~~^ %x drivers/bus/mhi/core/mhi_main.c:1338:8: mhi_event->db_cfg.db_val); ~~~~~~~~~~~~~~~~~~~~~~~~ drivers/bus/mhi/core/mhi_main.c: In function 'mhi_debugfs_mhi_chan_show': drivers/bus/mhi/core/mhi_main.c:1368:57: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 6 has type 'dma_addr_t {aka unsigned int}' [-Wformat=] " base:0x%llx len:0x%llx wp:0x%llx local_rp:0x%llx local_wp:0x%llx db:0x%llx\n", ~~~^ %x drivers/bus/mhi/core/mhi_main.c:1371:8: mhi_to_physical(ring, ring->rp), ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/bus/mhi/core/mhi_main.c:1368:73: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 7 has type 'dma_addr_t {aka unsigned int}' [-Wformat=] " base:0x%llx len:0x%llx wp:0x%llx local_rp:0x%llx local_wp:0x%llx db:0x%llx\n", ~~~^ %x drivers/bus/mhi/core/mhi_main.c:1372:8: mhi_to_physical(ring, ring->wp), ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/bus/mhi/core/mhi_main.c:1368:83: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 8 has type 'dma_addr_t {aka unsigned int}' [-Wformat=] " base:0x%llx len:0x%llx wp:0x%llx local_rp:0x%llx local_wp:0x%llx db:0x%llx\n", ~~~^ %x drivers/bus/mhi/core/mhi_main.c:1373:8: mhi_chan->db_cfg.db_val); ~~~~~~~~~~~~~~~~~~~~~~~ drivers/bus/mhi/core/mhi_main.c: At top level: >> drivers/bus/mhi/core/mhi_main.c:1381:5: error: redefinition of 'mhi_prepare_for_transfer' int mhi_prepare_for_transfer(struct mhi_device *mhi_dev) ^~~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_main.c:23:0: include/linux/mhi.h:566:19: note: previous definition of 'mhi_prepare_for_transfer' was here static inline int mhi_prepare_for_transfer(struct mhi_device *mhi_dev) ^~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_main.c:1417:6: error: redefinition of 'mhi_unprepare_from_transfer' void mhi_unprepare_from_transfer(struct mhi_device *mhi_dev) ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_main.c:23:0: include/linux/mhi.h:571:20: note: previous definition of 'mhi_unprepare_from_transfer' was here static inline void mhi_unprepare_from_transfer(struct mhi_device *mhi_dev) ^~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_main.c:1434:5: error: redefinition of 'mhi_get_no_free_descriptors' int mhi_get_no_free_descriptors(struct mhi_device *mhi_dev, ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_main.c:23:0: include/linux/mhi.h:576:19: note: previous definition of 'mhi_get_no_free_descriptors' was here static inline int mhi_get_no_free_descriptors(struct mhi_device *mhi_dev, ^~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_main.c:1446:24: error: redefinition of 'mhi_bdf_to_controller' struct mhi_controller *mhi_bdf_to_controller(u32 domain, ^~~~~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_main.c:23:0: include/linux/mhi.h:609:38: note: previous definition of 'mhi_bdf_to_controller' was here static inline struct mhi_controller *mhi_bdf_to_controller(u32 domain, ^~~~~~~~~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_main.c:1462:5: error: redefinition of 'mhi_poll' int mhi_poll(struct mhi_device *mhi_dev, ^~~~~~~~ In file included from drivers/bus/mhi/core/mhi_main.c:23:0: include/linux/mhi.h:582:19: note: previous definition of 'mhi_poll' was here static inline int mhi_poll(struct mhi_device *mhi_dev, u32 budget) ^~~~~~~~ -- In file included from drivers/bus/mhi/core/mhi_pm.c:24:0: >> include/linux/mhi.h:658:15: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'int' static inlint int mhi_force_rddm_mode(struct mhi_controller *mhi_cntrl) ^~~ >> drivers/bus/mhi/core/mhi_pm.c:782:5: error: redefinition of 'mhi_async_power_up' int mhi_async_power_up(struct mhi_controller *mhi_cntrl) ^~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_pm.c:24:0: include/linux/mhi.h:622:19: note: previous definition of 'mhi_async_power_up' was here static inline int mhi_async_power_up(struct mhi_controller *mhi_cntrl) ^~~~~~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_pm.c:873:6: error: redefinition of 'mhi_power_down' void mhi_power_down(struct mhi_controller *mhi_cntrl, bool graceful) ^~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_pm.c:24:0: include/linux/mhi.h:632:20: note: previous definition of 'mhi_power_down' was here static inline void mhi_power_down(struct mhi_controller *mhi_cntrl, ^~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_pm.c:907:5: error: redefinition of 'mhi_sync_power_up' int mhi_sync_power_up(struct mhi_controller *mhi_cntrl) ^~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_pm.c:24:0: include/linux/mhi.h:627:19: note: previous definition of 'mhi_sync_power_up' was here static inline int mhi_sync_power_up(struct mhi_controller *mhi_cntrl) ^~~~~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_pm.c:923:5: error: redefinition of 'mhi_pm_suspend' int mhi_pm_suspend(struct mhi_controller *mhi_cntrl) ^~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_pm.c:24:0: include/linux/mhi.h:642:19: note: previous definition of 'mhi_pm_suspend' was here static inline int mhi_pm_suspend(struct mhi_controller *mhi_cntrl) ^~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_pm.c:1012:5: error: redefinition of 'mhi_pm_resume' int mhi_pm_resume(struct mhi_controller *mhi_cntrl) ^~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_pm.c:24:0: include/linux/mhi.h:647:19: note: previous definition of 'mhi_pm_resume' was here static inline int mhi_pm_resume(struct mhi_controller *mhi_cntrl) ^~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_pm.c:1097:6: error: redefinition of 'mhi_device_get' void mhi_device_get(struct mhi_device *mhi_dev) ^~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_pm.c:24:0: include/linux/mhi.h:553:20: note: previous definition of 'mhi_device_get' was here static inline void mhi_device_get(struct mhi_device *mhi_dev) ^~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_pm.c:1108:5: error: redefinition of 'mhi_device_get_sync' int mhi_device_get_sync(struct mhi_device *mhi_dev) ^~~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_pm.c:24:0: include/linux/mhi.h:557:19: note: previous definition of 'mhi_device_get_sync' was here static inline int mhi_device_get_sync(struct mhi_device *mhi_dev) ^~~~~~~~~~~~~~~~~~~ >> drivers/bus/mhi/core/mhi_pm.c:1121:6: error: redefinition of 'mhi_device_put' void mhi_device_put(struct mhi_device *mhi_dev) ^~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_pm.c:24:0: include/linux/mhi.h:562:20: note: previous definition of 'mhi_device_put' was here static inline void mhi_device_put(struct mhi_device *mhi_dev) ^~~~~~~~~~~~~~ -- In file included from drivers/bus/mhi/core/mhi_boot.c:26:0: >> include/linux/mhi.h:658:15: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'int' static inlint int mhi_force_rddm_mode(struct mhi_controller *mhi_cntrl) ^~~ >> drivers/bus/mhi/core/mhi_boot.c:138:5: error: redefinition of 'mhi_download_rddm_img' int mhi_download_rddm_img(struct mhi_controller *mhi_cntrl, bool in_panic) ^~~~~~~~~~~~~~~~~~~~~ In file included from drivers/bus/mhi/core/mhi_boot.c:26:0: include/linux/mhi.h:652:19: note: previous definition of 'mhi_download_rddm_img' was here static inline int mhi_download_rddm_img(struct mhi_controller *mhi_cntrl, ^~~~~~~~~~~~~~~~~~~~~ In file included from include/linux/printk.h:7:0, from include/linux/kernel.h:14, from include/linux/list.h:9, from include/linux/wait.h:7, from include/linux/wait_bit.h:8, from include/linux/fs.h:6, from include/linux/debugfs.h:15, from drivers/bus/mhi/core/mhi_boot.c:13: drivers/bus/mhi/core/mhi_boot.c: In function 'mhi_download_rddm_img': include/linux/kern_levels.h:5:18: warning: format '%lx' expects argument of type 'long unsigned int', but argument 5 has type 'size_t {aka unsigned int}' [-Wformat=] #define KERN_SOH "\001" /* ASCII Start Of Header */ ^ include/linux/kern_levels.h:14:19: note: in expansion of macro 'KERN_SOH' #define KERN_INFO KERN_SOH "6" /* informational */ ^~~~~~~~ include/linux/printk.h:311:9: note: in expansion of macro 'KERN_INFO' printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~ >> include/linux/mhi.h:680:4: note: in expansion of macro 'pr_info' pr_info("[I][%s] " fmt, __func__, ##__VA_ARGS__);\ ^~~~~~~ >> drivers/bus/mhi/core/mhi_boot.c:196:2: note: in expansion of macro 'MHI_LOG' MHI_LOG("Upper:0x%x Lower:0x%x len:0x%lx sequence:%u\n", ^~~~~~~ drivers/bus/mhi/core/mhi_boot.c:196:41: note: format string is defined here MHI_LOG("Upper:0x%x Lower:0x%x len:0x%lx sequence:%u\n", ~~^ %x In file included from include/linux/printk.h:7:0, from include/linux/kernel.h:14, from include/linux/list.h:9, from include/linux/wait.h:7, from include/linux/wait_bit.h:8, from include/linux/fs.h:6, from include/linux/debugfs.h:15, from drivers/bus/mhi/core/mhi_boot.c:13: drivers/bus/mhi/core/mhi_boot.c: In function 'mhi_fw_load_amss': >> include/linux/kern_levels.h:5:18: warning: format '%lx' expects argument of type 'long unsigned int', but argument 5 has type 'size_t {aka const unsigned int}' [-Wformat=] #define KERN_SOH "\001" /* ASCII Start Of Header */ ^ include/linux/kern_levels.h:14:19: note: in expansion of macro 'KERN_SOH' #define KERN_INFO KERN_SOH "6" /* informational */ ^~~~~~~~ include/linux/printk.h:311:9: note: in expansion of macro 'KERN_INFO' printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~ >> include/linux/mhi.h:680:4: note: in expansion of macro 'pr_info' pr_info("[I][%s] " fmt, __func__, ##__VA_ARGS__);\ ^~~~~~~ drivers/bus/mhi/core/mhi_boot.c:248:2: note: in expansion of macro 'MHI_LOG' MHI_LOG("Upper:0x%x Lower:0x%x len:0x%lx sequence:%u\n", ^~~~~~~ drivers/bus/mhi/core/mhi_boot.c:248:41: note: format string is defined here MHI_LOG("Upper:0x%x Lower:0x%x len:0x%lx sequence:%u\n", ~~^ %x In file included from include/linux/printk.h:7:0, from include/linux/kernel.h:14, from include/linux/list.h:9, from include/linux/wait.h:7, from include/linux/wait_bit.h:8, from include/linux/fs.h:6, from include/linux/debugfs.h:15, from drivers/bus/mhi/core/mhi_boot.c:13: drivers/bus/mhi/core/mhi_boot.c: In function 'mhi_alloc_bhie_table': include/linux/kern_levels.h:5:18: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 4 has type 'dma_addr_t {aka unsigned int}' [-Wformat=] #define KERN_SOH "\001" /* ASCII Start Of Header */ ^ include/linux/kern_levels.h:14:19: note: in expansion of macro 'KERN_SOH' #define KERN_INFO KERN_SOH "6" /* informational */ ^~~~~~~~ include/linux/printk.h:311:9: note: in expansion of macro 'KERN_INFO' printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~ >> include/linux/mhi.h:680:4: note: in expansion of macro 'pr_info' pr_info("[I][%s] " fmt, __func__, ##__VA_ARGS__);\ ^~~~~~~ drivers/bus/mhi/core/mhi_boot.c:403:3: note: in expansion of macro 'MHI_LOG' MHI_LOG("Entry:%d Address:0x%llx size:%lu\n", i, ^~~~~~~ drivers/bus/mhi/core/mhi_boot.c:403:34: note: format string is defined here MHI_LOG("Entry:%d Address:0x%llx size:%lu\n", i, ~~~^ %x In file included from include/linux/printk.h:7:0, from include/linux/kernel.h:14, from include/linux/list.h:9, from include/linux/wait.h:7, from include/linux/wait_bit.h:8, from include/linux/fs.h:6, from include/linux/debugfs.h:15, from drivers/bus/mhi/core/mhi_boot.c:13: include/linux/kern_levels.h:5:18: warning: format '%lu' expects argument of type 'long unsigned int', but argument 5 has type 'size_t {aka unsigned int}' [-Wformat=] #define KERN_SOH "\001" /* ASCII Start Of Header */ ^ include/linux/kern_levels.h:14:19: note: in expansion of macro 'KERN_SOH' #define KERN_INFO KERN_SOH "6" /* informational */ ^~~~~~~~ include/linux/printk.h:311:9: note: in expansion of macro 'KERN_INFO' printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~ >> include/linux/mhi.h:680:4: note: in expansion of macro 'pr_info' pr_info("[I][%s] " fmt, __func__, ##__VA_ARGS__);\ ^~~~~~~ drivers/bus/mhi/core/mhi_boot.c:403:3: note: in expansion of macro 'MHI_LOG' MHI_LOG("Entry:%d Address:0x%llx size:%lu\n", i, ^~~~~~~ drivers/bus/mhi/core/mhi_boot.c:403:43: note: format string is defined here MHI_LOG("Entry:%d Address:0x%llx size:%lu\n", i, ~~^ %u .. vim +658 include/linux/mhi.h 657 > 658 static inlint int mhi_force_rddm_mode(struct mhi_controller *mhi_cntrl) 659 { 660 return -EINVAL; 661 } 662 663 #endif 664 665 #ifdef CONFIG_MHI_DEBUG 666 667 #define MHI_VERB(fmt, ...) do { \ 668 if (mhi_cntrl->klog_lvl <= MHI_MSG_LVL_VERBOSE) \ 669 pr_debug("[D][%s] " fmt, __func__, ##__VA_ARGS__);\ 670 } while (0) 671 672 #else 673 674 #define MHI_VERB(fmt, ...) 675 676 #endif 677 678 #define MHI_LOG(fmt, ...) do { \ 679 if (mhi_cntrl->klog_lvl <= MHI_MSG_LVL_INFO) \ > 680 pr_info("[I][%s] " fmt, __func__, ##__VA_ARGS__);\ 681 } while (0) 682 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation