Using an 'if()' inside of an 'extern inline' function causes
a gcc warning when CONFIG_PROFILE_ALL_BRANCHES is set every
time the function is called, which gets very noisy:
In file included from /git/arm-soc/drivers/staging/wlags49_h2/wl_wext.c:73:0:
drivers/staging/wlags49_h2/wl_internal.h:1035:216: warning: '______f' is static but declared in inline function 'wl_act_int_off' which is not static [enabled by default]
if(lp->is_handling_int == WL_HANDLING_INT) {
Fortunately there is a trivial workaround, so we can avoid
the problem by making the functions in question 'static inline'
rather than 'extern inline'.
Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Henk de Groot <pe1dnn@amsat.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Arnd Bergmann [Thu, 5 Jun 2014 20:48:11 +0000 (22:48 +0200)]
staging: lirc: remove sa1100 support
The LIRC support for sa1100 appears to have never worked
because it relies on header files that have never been
present in git history. Actually trying to build the
driver on an ARM sa1100 kernel fails, so let's just remove
the broken support.
Arnd Bergmann [Thu, 5 Jun 2014 20:48:13 +0000 (22:48 +0200)]
staging: sn9c102 depends on USB
If the USB code is a loadable module, this driver cannot
be built-in. This adds an explicit dependency on CONFIG_USB
so that Kconfig can force sn9c102 to be a module in this case.
staging: skein: fix sparse warning for static arrays
This patch fixes the following sparse warnings:
skein_iv.h:23:11: warning: symbol 'SKEIN_256_IV_128' was not declared. Should it be static?
skein_iv.h:31:11: warning: symbol 'SKEIN_256_IV_160' was not declared. Should it be static?
skein_iv.h:39:11: warning: symbol 'SKEIN_256_IV_224' was not declared. Should it be static?
skein_iv.h:47:11: warning: symbol 'SKEIN_256_IV_256' was not declared. Should it be static?
skein_iv.h:55:11: warning: symbol 'SKEIN_512_IV_128' was not declared. Should it be static?
skein_iv.h:67:11: warning: symbol 'SKEIN_512_IV_160' was not declared. Should it be static?
skein_iv.h:79:11: warning: symbol 'SKEIN_512_IV_224' was not declared. Should it be static?
skein_iv.h:91:11: warning: symbol 'SKEIN_512_IV_256' was not declared. Should it be static?
skein_iv.h:103:11: warning: symbol 'SKEIN_512_IV_384' was not declared. Should it be static?
skein_iv.h:115:11: warning: symbol 'SKEIN_512_IV_512' was not declared. Should it be static?
skein_iv.h:127:11: warning: symbol 'SKEIN_1024_IV_384' was not declared. Should it be static?
skein_iv.h:147:11: warning: symbol 'SKEIN_1024_IV_512' was not declared. Should it be static?
skein_iv.h:167:11: warning: symbol 'SKEIN_1024_IV_1024' was not declared. Should it be static?
by declaring the initialization vectors in question as static. The header
skein_iv.h is only included by skein.c
Signed-off-by: James A Shackleford <shack@linux.com> Acked-by: Jason Cooper <jason@lakedaemon.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Marcus Farkas [Sun, 1 Jun 2014 15:18:26 +0000 (17:18 +0200)]
staging: rtl8821ae: fix sparse warning for static declarations
This commit fixes the following sparse warnings in ps.c:
- 702: warning: symbol 'rtl_p2p_noa_ie' was not declared. Should it be static?
- 802: warning: symbol 'rtl_p2p_action_ie' was not declared. Should it be static?
Signed-off-by: Marcus Farkas <marcus.farkas@finitebox.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Arnd Bergmann [Thu, 5 Jun 2014 20:48:15 +0000 (22:48 +0200)]
staging: rtl8712, rtl8712: avoid lots of build warnings
The rtl8712 driver has an 'extern inline' function that contains an
'if', which causes lots of warnings with CONFIG_PROFILE_ALL_BRANCHES
overriding the definition of 'if':
drivers/staging/rtl8712/ieee80211.h:759:229: warning: '______f' is static but declared in inline function 'ieee80211_get_hdrlen' which is not static [enabled by default]
This changes the driver to use 'static inline' instead, which happens
to be the correct annotation anyway.
The net device only exists when firmware is loaded successfully.
Firmware presence variable is only used through r871xu_dev_remove() and
this function already checks for net device existence.
Signed-off-by: Thomas Vegas <thomas@grouk.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Thomas Vegas [Sun, 1 Jun 2014 12:34:39 +0000 (14:34 +0200)]
staging: rtl8712: Fix oops on dongle removal if firmware is not available
When firmware is not available, net device is not created. Upon
disconnect, we must check for net device existence before trying to
release net device private data.
Signed-off-by: Thomas Vegas <thomas@grouk.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
staging: vt6655: fix sparse warning for static declarations
This patch fixes the following sparse warnings:
iwctl.c:76:22: warning: symbol 'iwctl_get_wireless_stats' was not declared. Should it be static?
iwctl.c:118:5: warning: symbol 'iwctl_giwname' was not declared. Should it be static?
iwctl.c:131:5: warning: symbol 'iwctl_siwscan' was not declared. Should it be static?
iwctl.c:192:5: warning: symbol 'iwctl_giwscan' was not declared. Should it be static?
iwctl.c:344:5: warning: symbol 'iwctl_siwfreq' was not declared. Should it be static?
iwctl.c:390:5: warning: symbol 'iwctl_giwfreq' was not declared. Should it be static?
iwctl.c:420:5: warning: symbol 'iwctl_siwmode' was not declared. Should it be static?
iwctl.c:486:5: warning: symbol 'iwctl_giwmode' was not declared. Should it be static?
iwctl.c:520:5: warning: symbol 'iwctl_giwrange' was not declared. Should it be static?
iwctl.c:626:5: warning: symbol 'iwctl_siwap' was not declared. Should it be static?
iwctl.c:684:5: warning: symbol 'iwctl_giwap' was not declared. Should it be static?
iwctl.c:711:5: warning: symbol 'iwctl_giwaplist' was not declared. Should it be static?
iwctl.c:784:5: warning: symbol 'iwctl_siwessid' was not declared. Should it be static?
iwctl.c:893:5: warning: symbol 'iwctl_giwessid' was not declared. Should it be static?
iwctl.c:923:5: warning: symbol 'iwctl_siwrate' was not declared. Should it be static?
iwctl.c:1004:5: warning: symbol 'iwctl_giwrate' was not declared. Should it be static?
iwctl.c:1049:5: warning: symbol 'iwctl_siwrts' was not declared. Should it be static?
iwctl.c:1077:5: warning: symbol 'iwctl_giwrts' was not declared. Should it be static?
iwctl.c:1096:5: warning: symbol 'iwctl_siwfrag' was not declared. Should it be static?
iwctl.c:1123:5: warning: symbol 'iwctl_giwfrag' was not declared. Should it be static?
iwctl.c:1141:5: warning: symbol 'iwctl_siwretry' was not declared. Should it be static?
iwctl.c:1176:5: warning: symbol 'iwctl_giwretry' was not declared. Should it be static?
iwctl.c:1205:5: warning: symbol 'iwctl_siwencode' was not declared. Should it be static?
iwctl.c:1336:5: warning: symbol 'iwctl_giwencode' was not declared. Should it be static?
iwctl.c:1398:5: warning: symbol 'iwctl_siwpower' was not declared. Should it be static?
iwctl.c:1448:5: warning: symbol 'iwctl_giwpower' was not declared. Should it be static?
iwctl.c:1478:5: warning: symbol 'iwctl_giwsens' was not declared. Should it be static?
iwctl.c:1502:5: warning: symbol 'iwctl_siwauth' was not declared. Should it be static?
iwctl.c:1603:5: warning: symbol 'iwctl_giwauth' was not declared. Should it be static?
iwctl.c:1611:5: warning: symbol 'iwctl_siwgenie' was not declared. Should it be static?
iwctl.c:1644:5: warning: symbol 'iwctl_giwgenie' was not declared. Should it be static?
iwctl.c:1669:5: warning: symbol 'iwctl_siwencodeext' was not declared. Should it be static?
iwctl.c:1783:5: warning: symbol 'iwctl_giwencodeext' was not declared. Should it be static?
iwctl.c:1791:5: warning: symbol 'iwctl_siwmlme' was not declared. Should it be static?
iwctl.c:1900:21: warning: symbol 'iwctl_private_args' was not declared. Should it be static?
iwctl.c:1906:33: warning: symbol 'iwctl_handler_def' was not declared. Should it be static?
Signed-off-by: James A Shackleford <shack@linux.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
staging: vt6655: update out-of-date function declaration
The function iwctl_siwscan() is defined in iwctl.c as:
int iwctl_siwscan(struct net_device *dev,
struct iw_request_info *info,
struct iw_point *wrq,
char *extra)
{
...
This patch updates iwctl.h so that the type of the 3rd parameter (*wqr) in the
function declaration matches the definition.
Signed-off-by: James A Shackleford <shack@linux.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
staging: vt6655: fix sparse warning for static declarations
This patch fixes the following sparse warnings:
dpc.c:65:21: warning: symbol 'acbyRxRate' was not declared. Should it be static?
dpc.c:272:9: warning: symbol 'MngWorkItem' was not declared. Should it be static?
dpc.c:288:1: warning: symbol 'device_receive_frame' was not declared. Should it be static?
Signed-off-by: James A Shackleford <shack@linux.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
staging: vt6655: fix sparse warning "cast removes address space of expression"
Add missing __user macro to second parameter of ethtool_ioctl().
This removes the need for the offending (void *) cast of the user space pointer
rq->ifr_data.
Signed-off-by: James A Shackleford <shack@linux.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Heesub Shin [Fri, 30 May 2014 01:26:30 +0000 (10:26 +0900)]
staging: ion: optimize struct ion_system_heap
struct ion_system_heap has an array for storing pointers to page pools
and it is allocated separately from the containing structure. There is
no point in allocating those two small objects individually, bothering
slab allocator. Using a variable length array simplifies code lines and
reduces overhead to the slab.
Heesub Shin [Fri, 30 May 2014 01:26:28 +0000 (10:26 +0900)]
staging: ion: remove struct page_info
ION system heap creates a temporary list of pages to build
scatter/gather table, introducing an internal data type, page_info. Now
that the order field has been removed from it, we do not need to depend
on such data type anymore.
Heesub Shin [Fri, 30 May 2014 01:26:27 +0000 (10:26 +0900)]
staging: ion: remove order from struct page_info
ION system heap uses an internal data structure, struct page_info, for
tracking down the meta information of the pages allocated from the pool.
Now that the pool returns compound pages, we don't need to store page
order in struct page_info.
navin patidar [Mon, 16 Jun 2014 16:05:43 +0000 (21:35 +0530)]
staging: rtl8188eu: Remove function netdev_br_init()
netdev_br_init() tries to find MAC address of network interface named "br0",
then that MAC address is assigned to adapter->br_netdev and used by driver's
NAT implementation code.