Roy Pledge [Mon, 13 Mar 2017 19:02:03 +0000 (15:02 -0400)]
bus: fsl-mc: dpio: add the DPAA2 DPIO object driver
The DPIO driver registers with the fsl-mc bus to handle bus-related
events for DPIO objects. Key responsibility is mapping I/O
regions, setting up interrupt handlers, and calling the DPIO
service initialization during probe.
Signed-off-by: Roy Pledge <roy.pledge@nxp.com> Signed-off-by: Haiying Wang <haiying.wang@nxp.com> Signed-off-by: Stuart Yoder <stuart.yoder@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Roy Pledge [Mon, 13 Mar 2017 19:02:02 +0000 (15:02 -0400)]
bus: fsl-mc: dpio: add the DPAA2 DPIO service interface
The DPIO service interface handles initialization of DPIO objects
and exports APIs to be used by other DPAA2 object drivers to perform
queuing and buffer management related operations. The service allows
registration of callbacks when frames or notifications are received.
Signed-off-by: Roy Pledge <roy.pledge@nxp.com> Signed-off-by: Haiying Wang <haiying.wang@nxp.com> Signed-off-by: Stuart Yoder <stuart.yoder@nxp.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Tobin C. Harding [Mon, 13 Mar 2017 22:54:10 +0000 (09:54 +1100)]
staging: ks7010: refactor, whitespace only
Code may be refactored to take advantage of previous patches which
reduced the level of indentation. Function parameter line breaks can
be adjusted in line with kernel coding standards.
Refactor layout of function call parameters. Make whitespace changes
only.
Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Tobin C. Harding [Mon, 13 Mar 2017 22:54:09 +0000 (09:54 +1100)]
staging: ks7010: reduce level of indentation
Checkpatch emits WARNING: Too many leading tabs - consider code
refactoring. One level of indentation may be removed by inverting an
if statement conditional (and returning if new conditional evaluates
to true). Code contains switch statement that also contains multiple
layers of indentation. Indentation may be reduced by breaking out of
the case statement in multiple places instead of guarding code with
if/else statements.
Invert conditional. Return original error code if new conditional
evaluates to true. Break out of case blocks instead of using
if/else. Do not modify program logic.
Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Tobin C. Harding [Mon, 13 Mar 2017 22:54:08 +0000 (09:54 +1100)]
staging: ks7010: fix checkpatch memset warning
Checkpatch emits WARNING: single byte memset is suspicious. Swapped
2nd/3rd argument? Call site in question is correct but is an unusual
use of memset() to zero a single byte. The same can be achieved by
assigning 0 directly to the memory location.
Dereference pointer and assign 0 to that memory location. Use '\0' to
make explicit that it is a char pointer.
Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Checkpatch emits WARNING: else is not generally useful after a break
or return. Two warnings of this type are emitted, both are the result
of a else statement after a return statement. The 'else' can safely be
removed.
Remove unnecessary else statement.
Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Tobin C. Harding [Mon, 13 Mar 2017 23:46:42 +0000 (10:46 +1100)]
staging: ks7010: fix spelling of Michael MIC
Driver mixes spelling michael and michel in symbol names and
comments. Michael here references the IEEE 802.11i Message Integrity
Code. It is incorrect to spell it michel and confusing having two
spellings for the same thing.
Change michel -> micheal in both symbol names and comments.
Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Dan Carpenter [Mon, 13 Mar 2017 12:34:14 +0000 (15:34 +0300)]
staging: atomisp: potential underflow in atomisp_get_metadata_by_type()
md_type is an enum. On my tests, GCC treats it as unsigned but
according to the C standard it's an implementation dependant thing so we
should check for negatives.
Fixes: a49d25364dfb ("staging/atomisp: Add support for the Intel IPU v2") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Acked-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
simran singhal [Sun, 12 Mar 2017 17:10:23 +0000 (22:40 +0530)]
staging: media: Remove unused function atomisp_set_stop_timeout()
The function atomisp_set_stop_timeout on being called, simply returns
back. The function hasn't been mentioned in the TODO and doesn't have
FIXME code around. Hence, atomisp_set_stop_timeout and its calls have been
removed.
Remove gc2235_init() function definition and call, as it is used only
once in gc2235.c file. Replace the function call with return value,
__gc2235_init() function call.
Aishwarya Pant [Sun, 12 Mar 2017 15:40:07 +0000 (21:10 +0530)]
staging: bcm2835-audio: fix memory leak in bcm2835_audio_open_connection()
In bcm2835_audio_open_connection(), if VCHI connection fails or
initialisation of VCHI audio instance fails vchi_instance needs to be
deallocated otherwise it will cause a memory leak.
Aishwarya Pant [Sun, 12 Mar 2017 15:39:00 +0000 (21:09 +0530)]
staging: bcm2835-audio: replace null with error pointer value
This patch replaces NULL values returned by vc_vchi_audio_init(...) with
error pointer values:
- Return ERR_PTR(-EINVAL) when too many instances of audio
service are initialised
- Return ERR_PTR(-ENOMEM) when kzalloc fails
- RETURN ERR_PTR(-EPERM) when vchi connections fail to open
Similarly, a NULL check where vc_vchi_audio_init(...) is called is
replaced by IS_ERR(..)
Tobin C. Harding [Mon, 13 Mar 2017 01:37:34 +0000 (12:37 +1100)]
staging: dgnc: remove explicit cast
Function return type is 'int'. Returned variable is of type
'uint'. uint can be implicitly converted to int. Most significant bit
is not set so there is no risk in implicit conversion.
Remove unnecessary type cast.
Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Tobin C. Harding [Mon, 13 Mar 2017 01:37:33 +0000 (12:37 +1100)]
staging: dgnc: fix whitespace before return
Checkpatch emits CHECK: Blank lines aren't necessary before a close
brace '}'. Previous attempts were made to make uniform the error
handling in dgnc but improvements are still possible.
Undo whitespace changes that should not have been made :(. Make return
statement placement uniform throughout dgnc. Fix checkpatch
CHECK. Make whitespace changes only.
Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
simran singhal [Sun, 12 Mar 2017 16:55:42 +0000 (22:25 +0530)]
staging: comedi: amplc_pci224: Convert macro GAT_CONFIG to static inline function
Convert macro GAT_CONFIG to static inline function as static inline
functions are preferred over macros. This change is possible since the
arguments at all call sites have the same type.
Elena Reshetova [Mon, 6 Mar 2017 14:21:10 +0000 (16:21 +0200)]
drivers: convert vme_user_vma_priv.refcnt from atomic_t to refcount_t
refcount_t type and corresponding API should be
used instead of atomic_t when the variable is used as
a reference counter. This allows to avoid accidental
refcounter overflows that might lead to use-after-free
situations.
Signed-off-by: Elena Reshetova <elena.reshetova@intel.com> Signed-off-by: Hans Liljestrand <ishkamiel@gmail.com> Signed-off-by: Kees Cook <keescook@chromium.org> Signed-off-by: David Windsor <dwindsor@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Tobin C. Harding [Mon, 13 Mar 2017 07:54:08 +0000 (18:54 +1100)]
staging: ks7010: add parentheses to complex macro
Checkpatch emits ERROR: Macros with complex values should be enclosed
in parentheses. Error may be fixed by adding parentheses around macro
definition, macros are simple arithmetic statement.
Add parentheses around macro definitions. Fix 24 cases of identical
error. Do commented out macros also to save the next developer from
having to add them.
Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Tobin C. Harding [Mon, 13 Mar 2017 07:54:07 +0000 (18:54 +1100)]
staging: ks7010: fix checkpatch whitespace warns
Checkpatch emits various warnings, errors and checks;
ERROR:TRAILING_WHITESPACE: trailing whitespace
WARNING:SPACE_BEFORE_TAB: please, no space before tabs
WARNING:SPACE_BEFORE_TAB: please, no space before tabs
ERROR:CODE_INDENT: code indent should use tabs where possible
CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
These are all trivial whitespace fixes. Fix them all in one
patch. Change only whitespace.
Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Tobin C. Harding [Mon, 13 Mar 2017 06:38:22 +0000 (17:38 +1100)]
staging: ks7010: add variables key, key_index
'auth_type - 1' is used as an index into a key table. Adding a variable
appropriately named simplifies the code and adds meaning when
reading. Adding a pointer variable of type struct *kpa_key_t adds to
readability by removing the table access each time the key is used.
The key index is used to create a string so having it named adds
additional meaning when creating the string.
Declare variable 'key_index' and define it at declaration time. Declare
a pointer variable 'key' and define it to point to the correct key in
the key table.
Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Tobin C. Harding [Mon, 13 Mar 2017 06:38:20 +0000 (17:38 +1100)]
staging: ks7010: move quoted string onto single line
Checkpatch emits WARNING: quoted string split across lines. Line is
already over 80 characters long, adding 3 more does little to effect
line length while improving readibility.
Concatenate split string into single line.
Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Tobin C. Harding [Mon, 13 Mar 2017 06:38:19 +0000 (17:38 +1100)]
staging: ks7010: refactor newly separated function
Checkpatch emits various warnings and checks;
WARNING: Avoid multiple line dereference
CHECK: Alignment should match open parenthesis
WARNING: line over 80 characters
CHECK: Blank lines aren't necessary before a close brace '}'
These are all whitespace fixes.
Refactor whitespace inline with kernel coding style. Fix various
checkpatch warnings.
Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Tobin C. Harding [Mon, 13 Mar 2017 06:38:18 +0000 (17:38 +1100)]
staging: ks7010: fix line continuations
Checkpatch emits CHECK: Logical continuations should be on the
previous line. Also the same code section causes checkpatch to emit
WARNING: Avoid multiple line dereference.
Move logical line continuations onto the previous line. Move multiple
line dereferences onto single line.
Make these two changes in a single patch to give review a chance
to critique the final layout of the *complex* logical statement.
Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Tobin C. Harding [Mon, 13 Mar 2017 06:38:16 +0000 (17:38 +1100)]
staging: ks7010: move WPA code to separate function
Checkpatch emits WARNING: Too many leading tabs - consider code
refactoring. Function contains 5 levels of nesting and 14 local
variables. Code can be simplified and nesting reduced by refactoring
into separate functions.
WPA code is contained and may be factored out into a separate
function. This will reduce the length and complexity of
hostif_data_indication(). At times within the WPA code errors result
in the function returning. In order to maintain this behaviour new
function should return a status integer.
Factor out WPA code into separate function. Add only code needed to
get compilation to pass, including modifying return statements. Make
no other code changes, program logic is unchanged.
Signed-off-by: Tobin C. Harding <me@tobin.cc> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Samuel Thibault [Mon, 13 Mar 2017 00:17:13 +0000 (01:17 +0100)]
speakup: make get_char actually get unicode characters
9831013cbdbd3d06430a1db01d8c32d50c7d1c04 ('speakup: convert screen
reading to 16bit characters') paved the way for handling unicode
characters in speakup, but for the review mode, it missed actually
getting unicode characters from the VC. This fixes by just turning the
use_unicode parameter to 1.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org> Tested-by: Zahari Yurukov <zahari.yurukov@gmail.com> Reviewed-by: Chris Brannon <chris@the-brannons.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
simran singhal [Mon, 13 Mar 2017 13:56:24 +0000 (19:26 +0530)]
staging: android: ion: Replace pr_err with dev_err
All devm functions has a device structure as the first argument which is
required by dev_{err,info,dbg} printing functions.
This patch converts pr_err to dev_err as dev_* is preferred after calls
to devm functions.
staging: speakup: i18n.c: Refactor conditionals in spk_msg_set
Reduce the indentation level in spk_msg_set and remove
unnecessary return variable.
Signed-off-by: Narcisa Ana Maria Vasile <narcisaanamaria12@gmail.com> Acked-by: Julia Lawall <julia.lawall@lip6.fr> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
staging: speakup: i18n.c: Change return type from int to bool
The possible return values (0 or 1) for compare_specifiers
and fmt_validate represent whether a condition holds or not, so
conceptually, they are booleans.
Update documentation for these two functions.
Change type of variable 'still_comparing' from int to bool too,
inside fmt_validate, because it is intended to hold truth values
as well.
Signed-off-by: Narcisa Ana Maria Vasile <narcisaanamaria12@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Adrien Descamps [Thu, 9 Mar 2017 20:15:19 +0000 (21:15 +0100)]
Staging: wlan-ng: Fix endian error
sparse report fixed:
drivers/staging//wlan-ng//hfa384x_usb.c:3517:35: warning: restricted __be64 degrades to integer
drivers/staging//wlan-ng//hfa384x_usb.c:3517:33: warning: incorrect type in assignment (different base types)
drivers/staging//wlan-ng//hfa384x_usb.c:3517:33: expected restricted __be64 [usertype] mactime
drivers/staging//wlan-ng//hfa384x_usb.c:3517:33: got unsigned long long
Computation on the value should be done when in machine format, not in big endian format.
Aishwarya Pant [Fri, 10 Mar 2017 16:39:27 +0000 (22:09 +0530)]
staging: bcm2835-camera: remove anonymous field declarations
Anonymous field declarations are error prone. This patch replaces
anonymous declarations with explicit field declarations for typedef
SERVICE_CREATION_T in vchiq_mmal_init(..)
Aishwarya Pant [Fri, 10 Mar 2017 16:39:11 +0000 (22:09 +0530)]
staging: bcm2835-audio: remove anonymous field declarations
Anonymous field declarations are error prone. This patch replaces
anonymous declarations with explicit field declarations for typedef
SERVICE_CREATION_T in vc_vchi_audio_init(..)
Ian Abbott [Wed, 8 Mar 2017 18:44:32 +0000 (18:44 +0000)]
staging: comedi: jr3_pci: fix initial range[8] max value
`jr3_pci_alloc_spriv()` initializes `spriv->range[8]` to use a maximum
value of 65536, but that will be overwritten with 65535 at a later time
by `jr3_pci_poll_subdevice()` once the "set full scales" command is
complete. The initial setting looks like a mistake. This range is only
associated with a couple of dummy channels (channels 56 and 57) to read
back the model number and serial number, so no user code should be
attempting to convert those numbers to physical units. Just change the
initial value to 65535 to match the final value.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Ian Abbott [Wed, 8 Mar 2017 18:44:31 +0000 (18:44 +0000)]
staging: comedi: jr3_pci: check PCI BAR 0 size
The various supported boards have different numbers of subdevices from 1
to 4. Each subdevice needs a block of registers in PCI BAR 0. Check
the region is large enough for the required number of subdevices.
Return an error from `jr3_pci_auto_attach()` if it is too small.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Ian Abbott [Wed, 8 Mar 2017 18:44:30 +0000 (18:44 +0000)]
staging: comedi: jr3_pci: check sizes at compile time
The driver currently checks the size of `struct jr3_sensor` is correct
when a device is attached, returning an error if it is wrong. Replace
that with a compile-time check. We don't care too much about the size
of `struct jr3_sensor` as it is embedded in the larger `struct
jr3_block` and is followed by a lot of padding. We should care more
that the size of `struct jr3_block` is correct, as it describes the
overall register layout of a block, and there is an array of such blocks
(one per subdevice). Check its size at compile-time using the
`BUILD_BUG_ON()` macro.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Ian Abbott [Wed, 8 Mar 2017 18:44:29 +0000 (18:44 +0000)]
staging: comedi: jr3_pci: omit pointless debug info
`jr3_pci_open()` outputs several debug log messages containing serial
numbers of the sensors (one per subdevice) along with a pointer to the
subdevice private data structure. The latter is of no use, so reformat
the debug log to omit it.
`jr3_pci_alloc_spriv()` outputs a debug log message containing more
useless information about the remapped base address of the board
registers, the sensor registers, and the difference between them. Get
rid of it.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Ian Abbott [Wed, 8 Mar 2017 18:44:28 +0000 (18:44 +0000)]
staging: comedi: jr3_pci: use struct jr3_block instead of jr3_t
`struct jr3_t` contains a single array member `block` of member type
`struct jr3_block`. Rather than using pointers to `struct jr3_t`, just
use pointers to `struct jr3_block` instead and treat it as an array.
Replace the local variables `struct jr3_t __iomem *iobase` with `struct
jr3_block __iomem *block`. Remove the definition of `struct jr3_t` as
it is no longer needed.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Ian Abbott [Wed, 8 Mar 2017 18:44:27 +0000 (18:44 +0000)]
staging: comedi: jr3_pci: separate out block type
`struct jr3_t` contains a single array member `block` of a tag-less
`struct` type. Rename the tag-less `struct` type to `struct jr3_block`
and move its definition outside of `struct jr3_t`. This will allow us
to use pointers of this type.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Ian Abbott [Wed, 8 Mar 2017 18:44:26 +0000 (18:44 +0000)]
staging: comedi: jr3_pci: rename 'channel' to 'block'
The term "channel" is overloaded in this driver. Rename the `channel`
member of `struct jr3_t` to `block` to reduce confusion. `block` is an
array of an anonymous `struct` type, with each element covering the
registers for one subdevice.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Ian Abbott [Wed, 8 Mar 2017 18:44:25 +0000 (18:44 +0000)]
staging: comedi: jr3_pci: rename data to sensor
Rename the `channel[x].data` member of `struct jr3_t` to
`channel[x].sensor` to match its type `struct jr3_sensor`. Also rename
local variable `ch0data` in `jr3_pci_show_copyright()` to `sensor0` for
consistency. It points to the `struct jr3_sensor` embedded in the
registers for "channel" 0.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Ian Abbott [Wed, 8 Mar 2017 18:44:24 +0000 (18:44 +0000)]
staging: comedi: jr3_pci: rename channel to sensor
The driver overloads the term "channel" a lot. To help reduce
confusion, rename the `channel` member of `struct
jr3_pci_subdev_private` to `sensor` as it points to a `struct
jr3_sensor`. Also rename the various function parameters and local
variables called `channel` that point to a `struct jr3_sensor` to
`sensor`.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Alan Cox [Fri, 10 Mar 2017 11:34:41 +0000 (11:34 +0000)]
atomisp: tidy firmware loading code a little
The FWNAME define is never used so can be removed. The option to skip firmware
loading isn't really Cherrytrail specific so remove this and complete the
merging of the two driver versions for this file.
Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Alan Cox [Fri, 10 Mar 2017 11:34:27 +0000 (11:34 +0000)]
atomisp: eliminate intel_mid_pm.h
We can do this because the only thing it is used for is identifying the
platform for power management purposes. The driver only supports Baytrail
and Cherrytrail and both of those always need the IPU to be power managed
directly not via PCI D3 states.
Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>