Devendra Naga [Fri, 24 Oct 2014 20:31:56 +0000 (02:01 +0530)]
staging: gs_fpgaboot: fix a compiler warning with make W=2
The below warning is fixed:
drivers/staging/gs_fpgaboot/gs_fpgaboot.c: In function ‘gs_load_image’:
drivers/staging/gs_fpgaboot/gs_fpgaboot.c:196:58: warning: declaration of ‘file’ shadows a global declaration [-Wshadow]
drivers/staging/gs_fpgaboot/gs_fpgaboot.c:45:14: warning: shadowed declaration is here [-Wshadow]
by renaming file function argument of gs_load_image with fw_file.
Devendra Naga [Fri, 24 Oct 2014 20:31:55 +0000 (02:01 +0530)]
staging: gs_fpgpaboot: fix compiler warning with make W=1
the following compiler warning has been fixed:
drivers/staging/gs_fpgaboot/gs_fpgaboot.c: In function ‘gs_read_bitstream’:
drivers/staging/gs_fpgaboot/gs_fpgaboot.c:160:6: warning: variable ‘size’ set but not used [-Wunused-but-set-variable]
CC drivers/staging/gs_fpgaboot/io.o
LD drivers/staging/gs_fpgaboot/gs_fpga.o
LD drivers/staging/gs_fpgaboot/built-in.o
Sudip Mukherjee [Mon, 27 Oct 2014 12:12:25 +0000 (17:42 +0530)]
staging: rtl8712: remove unused variables
unused variables are removed. These variables were only assigned some
values and after that they were never being used. So they are safe to
be removed , and it has been build tested.
I left a call to r8712_read32(padapter, TCR) and
r8712_read8(padapter, SDIO_HCPWM) .
r8712_read32() and r8712_read8() is ultimately calling usb_read32()
and usb_read8() respectively. and they are again calling
r8712_usbctrl_vendorreq().
this r8712_usbctrl_vendorreq() is communicating through the usb bus
and is sending and receiving the control msg.
Soren Brinkmann [Mon, 20 Oct 2014 20:20:08 +0000 (13:20 -0700)]
staging: clocking-wizard: Contain macro argument in parenthesis
A macro doing some arithmetic to calculate a register offset, did not
contain an argument to the macro in parentheses, potentially leading to
unexpected results when using that macro with arithmetic expressions as
argument.
Nicky Chorley [Sun, 26 Oct 2014 06:30:29 +0000 (06:30 +0000)]
Staging: vt6655: Remove C99 comments
This patch fixes the following errors identified by
checkpatch.pl:
ERROR: do not use C99 // comments
36: FILE: card.h:36:
//
ERROR: do not use C99 // comments
37: FILE: card.h:37:
// Loopback mode
ERROR: do not use C99 // comments
38: FILE: card.h:38:
//
ERROR: do not use C99 // comments
39: FILE: card.h:39:
// LOBYTE is MAC LB mode, HIBYTE is MII LB mode
ERROR: do not use C99 // comments
41: FILE: card.h:41:
#define CARD_LB_MAC MAKEWORD(MAC_LB_INTERNAL, 0) // PHY must ISO, avoid MAC loopback packet go out
ERROR: do not use C99 // comments
44: FILE: card.h:44:
#define DEFAULT_MSDU_LIFETIME 512 // ms
ERROR: do not use C99 // comments
45: FILE: card.h:45:
#define DEFAULT_MSDU_LIFETIME_RES_64us 8000 // 64us
ERROR: do not use C99 // comments
47: FILE: card.h:47:
#define DEFAULT_MGN_LIFETIME 8 // ms
ERROR: do not use C99 // comments
48: FILE: card.h:48:
#define DEFAULT_MGN_LIFETIME_RES_64us 125 // 64us
ERROR: do not use C99 // comments
175: FILE: card.h:175:
#endif // __CARD_H__
Koray Gulcu [Sun, 12 Oct 2014 18:46:50 +0000 (19:46 +0100)]
staging: rtl8192u: Fix sparse warnings of r8182U_core
This patch fixes the following endianness warnings found by sparse running with CF=-D__CHECK_ENDIAN__:
drivers/staging/rtl8192u/r8192U_core.c:1794:10: warning: incorrect type in initializer (different base types)
drivers/staging/rtl8192u/r8192U_core.c:1794:10: expected restricted __le16
drivers/staging/rtl8192u/r8192U_core.c:1794:10: got int
drivers/staging/rtl8192u/r8192U_core.c:1794:13: warning: incorrect type in initializer (different base types)
drivers/staging/rtl8192u/r8192U_core.c:1794:13: expected restricted __le16
drivers/staging/rtl8192u/r8192U_core.c:1794:13: got int
drivers/staging/rtl8192u/r8192U_core.c:1794:16: warning: incorrect type in initializer (different base types)
drivers/staging/rtl8192u/r8192U_core.c:1794:16: expected restricted __le16
drivers/staging/rtl8192u/r8192U_core.c:1794:16: got int
drivers/staging/rtl8192u/r8192U_core.c:1794:19: warning: incorrect type in initializer (different base types)
drivers/staging/rtl8192u/r8192U_core.c:1794:19: expected restricted __le16
drivers/staging/rtl8192u/r8192U_core.c:1794:19: got int
drivers/staging/rtl8192u/r8192U_core.c:1795:10: warning: incorrect type in initializer (different base types)
drivers/staging/rtl8192u/r8192U_core.c:1795:10: expected restricted __le16
drivers/staging/rtl8192u/r8192U_core.c:1795:10: got int
drivers/staging/rtl8192u/r8192U_core.c:1795:13: warning: incorrect type in initializer (different base types)
drivers/staging/rtl8192u/r8192U_core.c:1795:13: expected restricted __le16
drivers/staging/rtl8192u/r8192U_core.c:1795:13: got int
drivers/staging/rtl8192u/r8192U_core.c:1795:16: warning: incorrect type in initializer (different base types)
drivers/staging/rtl8192u/r8192U_core.c:1795:16: expected restricted __le16
drivers/staging/rtl8192u/r8192U_core.c:1795:16: got int
drivers/staging/rtl8192u/r8192U_core.c:1795:19: warning: incorrect type in initializer (different base types)
drivers/staging/rtl8192u/r8192U_core.c:1795:19: expected restricted __le16
drivers/staging/rtl8192u/r8192U_core.c:1795:19: got int
drivers/staging/rtl8192u/r8192U_core.c:1838:34: warning: cast from restricted __le16
drivers/staging/rtl8192u/r8192U_core.c:1839:34: warning: cast from restricted __le16
drivers/staging/rtl8192u/r8192U_core.c:1840:34: warning: cast from restricted __le16
Eric Rost [Fri, 24 Oct 2014 22:34:37 +0000 (17:34 -0500)]
staging: skein: Removes unneeded #define
Removes unneeded #define SKEIN_PORT_CODE since skein_port.h is
nonexistent.
Signed-off-by: Eric Rost <eric.rost@mybabylon.net> Reviewed-by: Jason Cooper <jason@lakedaemon.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Eric Rost [Fri, 24 Oct 2014 22:34:13 +0000 (17:34 -0500)]
staging: skein: Inlines rotl_64
Inlines the rotl_64 macro.
Signed-off-by: Eric Rost <eric.rost@mybabylon.net> Reviewed-by: Jason Cooper <jason@lakedaemon.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Eric Rost [Fri, 24 Oct 2014 22:33:41 +0000 (17:33 -0500)]
staging: skein: Adds Loadable Module Support
Adds loadable module support to the Skein Hashing Algorithm driver.
Signed-off-by: Eric Rost <eric.rost@mybabylon.net> Reviewed-by: Jason Cooper <jason@lakedaemon.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Eric Rost [Fri, 24 Oct 2014 22:33:15 +0000 (17:33 -0500)]
staging: skein: Adds CryptoAPI Support
Adds CryptoAPI support to the Skein Hashing Algorithm driver.
Signed-off-by: Eric Rost <eric.rost@mybabylon.net> Reviewed-by: Jason Cooper <jason@lakedaemon.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Eric Rost [Fri, 24 Oct 2014 22:32:53 +0000 (17:32 -0500)]
staging: skein: Renames skein to skein_base
Renames skein.c to skein_base.c and skein.h to skein_base.h in
preparation for naming loadable module skein.ko
Signed-off-by: Eric Rost <eric.rost@mybabylon.net> Reviewed-by: Jason Cooper <jason@lakedaemon.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Eric Rost [Fri, 24 Oct 2014 22:29:34 +0000 (17:29 -0500)]
staging: skein: Collapses threefish module
Collapses threefish module into skein module.
Signed-off-by: Eric Rost <eric.rost@mybabylon.net> Reviewed-by: Jason Cooper <jason@lakedaemon.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Dan Carpenter [Wed, 22 Oct 2014 14:23:07 +0000 (17:23 +0300)]
staging: lustre: validate size in ll_setxattr()
If size is smaller than the lov_user_md struct then we are reading
beyond the end of the buffer. I guess this is an information leak or it
could cause an Oops if the memory is not mapped.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Dan Carpenter [Wed, 22 Oct 2014 08:11:39 +0000 (11:11 +0300)]
staging: lustre: validate size in lustre_posix_acl_xattr_filter()
This is mostly to silence static checker complaints.
In theory the problem here is that if size is in the 1-3 range then we
don't allocate enough memory for the posix_acl_xattr_header struct and
it results in memory corruption. But in reality kmalloc() return values
are aligned at sizeof(long) so corrupting this small amount of data is
not harmful.
The "size" variable should be type size_t. The value of size is checked
in setxattr() so we know it is a number between "0 - XATTR_SIZE_MAX".
There is no need to check for negative sizes.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Dan Carpenter [Thu, 16 Oct 2014 07:56:25 +0000 (10:56 +0300)]
staging: lustre: silence a static checker warning
Static checkers warn that if cfs_cpt_table_print() returns an error
other than -EFBIG, then it would lead to a double free. This is true
but cfs_cpt_table_print() only returns -EFBIG on error so it also won't
happen in real life.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Oleg Drokin [Sun, 12 Oct 2014 02:46:52 +0000 (22:46 -0400)]
staging/lustre/ptlrpc: get rid of lustre 1.8 compatible checksums
Old version of lustre (1.8) calculated RPC checksums differently,
but the compat code is no longer important since in-kernel
version of lustre is nto compatible with 1.8 lustre servers
(that are long deprecated too).
Ian Abbott [Tue, 28 Oct 2014 13:07:22 +0000 (13:07 +0000)]
staging: comedi: comedi_test: fix timer lock-up
Commit 240512474424 ("staging: comedi: comedi_test: use
comedi_handle_events()") resulted in the timer routine
`waveform_ai_interrupt()` calling `comedi_handle_events()` instead of
`comedi_events()`. That had the advantage of automatically stopping the
acquisition on overflow/error/end-of-acquisition conditions (by calling
the comedi subdevice's "cancel" handler), but currently results in the
timer routine locking when one of those conditions occur. This is
because the "cancel" handler `waveform_ai_cancel()` calls
`del_timer_sync()`.
Fix it by adding a bit to the device private data that indicates whether
the acquisition is active or not, and changing the "cancel" handler to
use `del_timer()` instead of `del_timer_sync()`. The bit is set when
starting the acquisition, cleared when ending the acquisition (in the
"cancel" handler), and tested in the timer routine, which will do
nothing if the acquisition is inactive. Also, make sure any scheduled
timeout event gets cancelled when the low-level device gets "detached"
from the comedi core by calling `del_timer_sync()` in the "detach"
handler `waveform_detach()`.
Fixes: 240512474424 ("staging: comedi: comedi_test: use comedi_handle_events()") Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Ian Abbott [Thu, 23 Oct 2014 12:47:51 +0000 (13:47 +0100)]
staging: comedi: introduce some sample size manipulation functions
Introduce a few static inline helper functions:
`comedi_bytes_per_sample(s)` is the same as the existing
`bytes_per_sample(s)` and determines the size of a comedi sample in
bytes. (`bytes_per_sample(s)` will be removed.)
`comedi_sample_shift(s)` determines the log2 of the comedi sample size,
so it can be used in bit-shift operations to multiply or divide by the
sample size.
`comedi_bytes_to_samples(s, nbytes)` converts a number of bytes to a
number of samples (rounding down).
`comedi_samples_to_bytes(s, nsamples)` converts a number of samples to a
number of bytes.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Reviewed-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
staging: comedi: addi_apci_1564: remove private data 'mode_select_register'
This driver currently passes the timer channel as the data[5] element to the
timer (*insn_config) function. This is stored in the private data and use in
the timer (*insn_read) and (*insn_write) functions to read/write the timer.
This is just wrong, comedi passes the channel number in the insn->chanspec.
Use that instead and remove the private data member.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Reviewed-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
staging: comedi: addi_apci_1564: board has 3 timers
According to ADDI-DATA, the APCI-1564 only has 3 timers. There are some
customer specific boards with 4 timers but they use out of tree drivers.
Now that the timer 'channels' are handled correctly in the subdevice
functions, fix the number of timer channels for the subdevice and remove
the code that would access a 4th timer.
Also, remove the unnecessary initialzation of the subdevice 'len_chanlist'.
That member is only used by subdevices that support async commands.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Reviewed-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
All the comedi drivers have been converted to use comedi_buf_write_samples().
This function is now only used internally by comedi_buf. Remvoe the export.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Reviewed-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
staging: comedi: pcmuio: use comedi_buf_write_samples()
The dev->read_subdev used in this driver for async commands returns 32-bit samples
and should have the SDF_LSAMPL subdev_flag set. It also returns the full scan with
each sample so it should have the SDF_PACKED subdev_flag set.
Add the missing subdev_flags and use comedi_buf_write_samples() to add the sample
to the async buffer.
The COMEDI_CB_BLOCK and COMEDI_CB_EOS events will be automatically handled by the
core. Remove the unnecessary events in the driver.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Reviewed-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>