[staging:staging-testing 1122/1122] drivers/staging/vc04_services//interface/vchiq_arm/vchiq_2835_arm.c:48:25: error: '__glue' declared as function returning a function

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux