tree: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git staging-testing head: 36c3c6ecedac0e96207e9454d77231b5b1857a3f commit: 36c3c6ecedac0e96207e9454d77231b5b1857a3f [1122/1122] staging: add bcm2708 vchiq driver config: arm64-allmodconfig (attached as .config) compiler: aarch64-linux-gnu-gcc (Debian 6.1.1-9) 6.1.1 20160705 reproduce: wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git checkout 36c3c6ecedac0e96207e9454d77231b5b1857a3f # save the attached .config to linux build tree make.cross ARCH=arm64 All error/warnings (new ones prefixed by >>): In file included from drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:35:0: drivers/staging/vc04_services//interface/vchiq_arm/vchiq_killable.h:67:0: warning: "mutex_lock_interruptible" redefined #define mutex_lock_interruptible mutex_lock_interruptible_killable In file included from drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:37:0, from drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:34: include/linux/mutex.h:147:0: note: this is the location of the previous definition #define mutex_lock_interruptible(lock) mutex_lock_interruptible_nested(lock, 0) In file included from drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:34:0: drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c: In function 'make_service_callback': >> drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:385:3: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, (unsigned int)bulk_userdata); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:72:39: note: in definition of macro 'vchiq_log_trace' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:385:25: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, (unsigned int)bulk_userdata); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:72:39: note: in definition of macro 'vchiq_log_trace' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c: In function 'process_free_queue': drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:630:27: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] state->id, slot_index, (unsigned int)data, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:72:39: note: in definition of macro 'vchiq_log_trace' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:670:7: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, msgid, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:697:8: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:72:39: note: in definition of macro 'vchiq_log_trace' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:710:8: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:726:11: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] pos, (unsigned int)header, msgid, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c: In function 'queue_message': drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:874:4: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, size, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:941:4: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, size, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c: In function 'queue_message_sync': drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1026:4: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, size, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1058:4: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, size, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c: In function 'resolve_bulks': drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1365:6: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)bulk->data, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1366:6: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)bulk->remote_data); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1377:6: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)bulk->data, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1378:6: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)bulk->remote_data); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c: In function 'parse_open': drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1515:15: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] state->id, (unsigned int)header, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c: In function 'parse_rx_slots': drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1653:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] DEBUG_VALUE(PARSE_HEADER, (int)header); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:189:33: note: in definition of macro 'DEBUG_VALUE' do { debug_ptr[DEBUG_ ## d] = (v); dsb(); } while (0) ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1690:7: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:62:40: note: in definition of macro 'vchiq_log_warning' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1700:6: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1726:8: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] if (((unsigned int)header & VCHIQ_SLOT_MASK) + calc_stride(size) ^ In file included from drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:34:0: drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1731:5: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, (unsigned int)msgid, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1751:16: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] state->id, (unsigned int)header, size, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1769:16: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] state->id, (unsigned int)header, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1787:16: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] state->id, (unsigned int)header, size, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1812:16: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] state->id, (unsigned int)header); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ >> drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1841:6: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] (void *)((int *)header->data)[0]; ^ In file included from drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:34:0: drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1848:6: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1851:6: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)bulk->remote_data); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1907:7: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1926:6: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1928:20: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] bulk->actual, (unsigned int)bulk->data); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1951:16: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] state->id, (unsigned int)header, size); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:72:39: note: in definition of macro 'vchiq_log_trace' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1957:16: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] state->id, (unsigned int)header, size); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:72:39: note: in definition of macro 'vchiq_log_trace' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:1981:16: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] state->id, (unsigned int)header, size); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:72:39: note: in definition of macro 'vchiq_log_trace' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2003:23: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] state->id, msgid, (unsigned int)header, size); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c: In function 'sync_func': drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2171:5: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2203:16: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] state->id, (unsigned int)header, size, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2218:16: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] state->id, (unsigned int)header, size, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:72:39: note: in definition of macro 'vchiq_log_trace' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2238:23: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] state->id, msgid, (unsigned int)header, size); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c: In function 'vchiq_init_slots': drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2271:37: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] int mem_align = (VCHIQ_SLOT_SIZE - (int)mem_base) & VCHIQ_SLOT_MASK; ^ In file included from drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:34:0: drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c: In function 'vchiq_init_state': drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2328:4: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)slot_zero, slot_zero->magic, VCHIQ_MAGIC); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ >> drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2327:3: note: in expansion of macro 'vchiq_loud_error' vchiq_loud_error("slot_zero=%x: magic=%x (expected %x)", ^~~~~~~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2338:4: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)slot_zero, slot_zero->version, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2336:3: note: in expansion of macro 'vchiq_loud_error' vchiq_loud_error("slot_zero=%x: VideoCore version=%d " ^~~~~~~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2350:4: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)slot_zero, VCHIQ_VERSION, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2348:3: note: in expansion of macro 'vchiq_loud_error' vchiq_loud_error("slot_zero=%x: version=%d (VideoCore " ^~~~~~~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2365:5: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)slot_zero, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2363:4: note: in expansion of macro 'vchiq_loud_error' vchiq_loud_error("slot_zero=%x: slot_zero_size=%x " ^~~~~~~~~~~~~~~~ In file included from include/linux/printk.h:6:0, from include/linux/kernel.h:13, from include/asm-generic/bug.h:13, from arch/arm64/include/asm/bug.h:62, from include/linux/bug.h:4, from include/linux/thread_info.h:11, from include/asm-generic/current.h:4, from ./arch/arm64/include/generated/asm/current.h:1, from include/linux/mutex.h:13, from drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:37, from drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:34: include/linux/kern_levels.h:4:18: warning: format '%x' expects argument of type 'unsigned int', but argument 4 has type 'long unsigned int' [-Wformat=] #define KERN_SOH "\001" /* ASCII Start Of Header */ ^ include/linux/kern_levels.h:13:19: note: in expansion of macro 'KERN_SOH' #define KERN_INFO KERN_SOH "6" /* informational */ ^~~~~~~~ >> drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:52:28: note: in expansion of macro 'KERN_INFO' #define VCHIQ_LOG_PREFIX KERN_INFO "vchiq: " ^~~~~~~~~ >> drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:10: note: in expansion of macro 'VCHIQ_LOG_PREFIX' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~~~~~~ >> drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:76:2: note: in expansion of macro 'vchiq_log_error' vchiq_log_error(vchiq_core_log_level, "===== " __VA_ARGS__) ^~~~~~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2363:4: note: in expansion of macro 'vchiq_loud_error' vchiq_loud_error("slot_zero=%x: slot_zero_size=%x " ^~~~~~~~~~~~~~~~ In file included from drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:34:0: drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2371:5: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)slot_zero, slot_zero->slot_size, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2369:4: note: in expansion of macro 'vchiq_loud_error' vchiq_loud_error("slot_zero=%x: slot_size=%d " ^~~~~~~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2376:5: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)slot_zero, slot_zero->max_slots, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2374:4: note: in expansion of macro 'vchiq_loud_error' vchiq_loud_error("slot_zero=%x: max_slots=%d " ^~~~~~~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2381:5: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)slot_zero, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2379:4: note: in expansion of macro 'vchiq_loud_error' vchiq_loud_error("slot_zero=%x: max_slots_per_side=%d " ^~~~~~~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c: In function 'release_service_messages': drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2760:7: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (unsigned int)header); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:2770:12: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] pos, (unsigned int)header, ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:57:39: note: in definition of macro 'vchiq_log_error' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c: In function 'vchiq_bulk_transfer': drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:3347:9: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] size, (unsigned int)bulk->data, (unsigned int)userdata); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:3347:35: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] size, (unsigned int)bulk->data, (unsigned int)userdata); ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.h:67:39: note: in definition of macro 'vchiq_log_info' printk(VCHIQ_LOG_PREFIX fmt "\n", ##__VA_ARGS__); } while (0) ^~~~~~~~~~~ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:3366:22: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] int payload[2] = { (int)bulk->data, bulk->size }; ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c: In function 'vchiq_dump_state': drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:3696:3: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (uint32_t)state->tx_data + ^ drivers/staging/vc04_services//interface/vchiq_arm/vchiq_core.c:3699:3: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (uint32_t)state->rx_data + ^ /tmp/ccHfaMQe.s: Assembler messages: /tmp/ccHfaMQe.s:560: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:7188: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:12526: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:13212: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:13287: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:13298: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:14246: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:14318: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:14431: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:14461: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:14614: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:14684: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:14714: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:14904: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:14949: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:14962: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:15233: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:15513: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:15522: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:15537: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:15600: Error: missing immediate expression at operand 1 -- `dsb ' /tmp/ccHfaMQe.s:16214: Error: missing immediate expression at operand 1 -- `dsb ' .. vim +/__glue +48 drivers/staging/vc04_services//interface/vchiq_arm/vchiq_2835_arm.c 31 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 */ 33 34 #include <linux/kernel.h> 35 #include <linux/types.h> 36 #include <linux/errno.h> > 37 #include <linux/interrupt.h> > 38 #include <linux/pagemap.h> 39 #include <linux/dma-mapping.h> 40 #include <linux/version.h> 41 #include <linux/io.h> 42 #include <linux/platform_device.h> 43 #include <linux/uaccess.h> 44 #include <linux/of.h> 45 #include <asm/pgtable.h> 46 #include <soc/bcm2835/raspberrypi-firmware.h> 47 > 48 #define dmac_map_area __glue(_CACHE,_dma_map_area) > 49 #define dmac_unmap_area __glue(_CACHE,_dma_unmap_area) 50 > 51 extern void dmac_map_area(const void *, size_t, int); > 52 extern void dmac_unmap_area(const void *, size_t, int); 53 54 #define TOTAL_SLOTS (VCHIQ_SLOT_ZERO_SLOTS + 2 * 32) 55 56 #define VCHIQ_ARM_ADDRESS(x) ((void *)((char *)x + g_virt_to_bus_offset)) 57 > 58 #include "vchiq_arm.h" 59 #include "vchiq_2835.h" 60 #include "vchiq_connected.h" 61 #include "vchiq_killable.h" 62 63 #define MAX_FRAGMENTS (VCHIQ_NUM_CURRENT_BULKS * 2) 64 65 #define BELL0 0x00 66 #define BELL2 0x08 67 68 typedef struct vchiq_2835_state_struct { 69 int inited; 70 VCHIQ_ARM_STATE_T arm_state; 71 } VCHIQ_2835_ARM_STATE_T; 72 73 static void __iomem *g_regs; 74 static unsigned int g_cache_line_size = sizeof(CACHE_LINE_SIZE); 75 static unsigned int g_fragments_size; 76 static char *g_fragments_base; 77 static char *g_free_fragments; 78 static struct semaphore g_free_fragments_sema; 79 static unsigned long g_virt_to_bus_offset; 80 81 extern int vchiq_arm_log_level; 82 83 static DEFINE_SEMAPHORE(g_free_fragments_mutex); 84 85 static irqreturn_t 86 vchiq_doorbell_irq(int irq, void *dev_id); 87 88 static int 89 create_pagelist(char __user *buf, size_t count, unsigned short type, 90 struct task_struct *task, PAGELIST_T ** ppagelist); 91 92 static void 93 free_pagelist(PAGELIST_T *pagelist, int actual); 94 95 int vchiq_platform_init(struct platform_device *pdev, VCHIQ_STATE_T *state) 96 { 97 struct device *dev = &pdev->dev; 98 struct rpi_firmware *fw = platform_get_drvdata(pdev); 99 VCHIQ_SLOT_ZERO_T *vchiq_slot_zero; 100 struct resource *res; 101 void *slot_mem; 102 dma_addr_t slot_phys; 103 u32 channelbase; 104 int slot_mem_size, frag_mem_size; 105 int err, irq, i; 106 > 107 g_virt_to_bus_offset = virt_to_dma(dev, (void *)0); 108 109 (void)of_property_read_u32(dev->of_node, "cache-line-size", 110 &g_cache_line_size); 111 g_fragments_size = 2 * g_cache_line_size; 112 113 /* Allocate space for the channels in coherent memory */ 114 slot_mem_size = PAGE_ALIGN(TOTAL_SLOTS * VCHIQ_SLOT_SIZE); 115 frag_mem_size = PAGE_ALIGN(g_fragments_size * MAX_FRAGMENTS); 116 117 slot_mem = dmam_alloc_coherent(dev, slot_mem_size + frag_mem_size, 118 &slot_phys, GFP_KERNEL); 119 if (!slot_mem) { 120 dev_err(dev, "could not allocate DMA memory\n"); 121 return -ENOMEM; 122 } 123 > 124 WARN_ON(((int)slot_mem & (PAGE_SIZE - 1)) != 0); 125 126 vchiq_slot_zero = vchiq_init_slots(slot_mem, slot_mem_size); 127 if (!vchiq_slot_zero) --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip
_______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel