Age | Commit message (Collapse) | Author | Files | Lines |
|
Fix checkpatch problem: move last argument of the hlist..() back to same line
Signed-off-by: Swee Hua Law <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Fix checkpatch problem: move */ from end of line to new line
Signed-off-by: Swee Hua Law <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Fix checkpatch problem: change == NULL comparison to !symbol
Signed-off-by: Swee Hua Law <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Fix checkpatch problem: remove NULL assignment fro global variable
Signed-off-by: Swee Hua Law <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
This static can be made constant as it is never modified.
Found during sparse-cleanup.
Signed-off-by: Patrick Boettcher <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Fix sparse warnings of the following type:
warning: symbol '....' was not declared. Should it be static?
Signed-off-by: Patrick Boettcher <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
void pointers do not need to be cast to other pointer types.
The semantic patch used to find this:
@r@
expression x;
void* e;
type T;
identifier f;
@@
(
*((T *)e)
|
((T *)x)[...]
|
((T *)x)->f
|
- (T *)
e
)
Signed-off-by: Shraddha Barke <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
This patch does away with the cast on void * as it is unnecessary.
Semantic patch used is as follows:
@r@
expression x;
void* e;
type T;
identifier f;
@@
(
*((T *)e)
|
((T *)x)[...]
|
((T *)x)->f
|
- (void *)
e
)
Signed-off-by: Shraddha Barke <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
kfree on NULL pointer is a no-op.
This patch uses the following semantic patch to find such an instance
where NULL check is present before kfree.
// <smpl>
@@ expression E; @@
- if (E != NULL) { kfree(E); }
+ kfree(E);
@@ expression E; @@
- if (E != NULL) { kfree(E); E = NULL; }
+ kfree(E);
+ E = NULL;
// </smpl>smpl>
Signed-off-by: Shraddha Barke <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
This patch fixes the following sparse errors:
CHECK drivers/staging/rtl8723au/core/rtw_security.c
drivers/staging/rtl8723au/core/rtw_security.c:189:39: \
warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/core/rtw_security.c:189:39: \
expected unsigned int [unsigned] [usertype] <noident>
drivers/staging/rtl8723au/core/rtw_security.c:189:39: \
got restricted __le32 [usertype] <noident>
drivers/staging/rtl8723au/core/rtw_security.c:197:39: \
warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/core/rtw_security.c:197:39: \
expected unsigned int [unsigned] [usertype] <noident>
drivers/staging/rtl8723au/core/rtw_security.c:197:39: \
got restricted __le32 [usertype] <noident>
drivers/staging/rtl8723au/core/rtw_security.c:682:39: \
warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/core/rtw_security.c:682:39: \
expected unsigned int [unsigned] [usertype] <noident>
drivers/staging/rtl8723au/core/rtw_security.c:682:39: \
got restricted __le32 [usertype] <noident>
drivers/staging/rtl8723au/core/rtw_security.c:694:39: \
warning: incorrect type in assignment (different base types)
drivers/staging/rtl8723au/core/rtw_security.c:694:39: \
expected unsigned int [unsigned] [usertype] <noident>
drivers/staging/rtl8723au/core/rtw_security.c:694:39: \
got restricted __le32 [usertype] <noident>
Signed-off-by: Jacob Kiefer <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Remove wilc_strutils.c and wilc_strutils.h that are not needed.
wilc_strutils.o is also removed in Makefile.
Signed-off-by: Chaehyun Lim <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Remove WILC_memcpy_INTERNAL that is used in the WILC_memcpy
because WILC_memcpy is replaced by memcpy.
Signed-off-by: Chaehyun Lim <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Remove WILC_memcpy function that is changed to memcpy.
Signed-off-by: Chaehyun Lim <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Use memcpy instead of WILC_memcpy that is a custom function.
Signed-off-by: Chaehyun Lim <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Remove WILC_strncmp function that is changed to strncmp.
Signed-off-by: Chaehyun Lim <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Use strncmp instead of WILC_strncmp.
Signed-off-by: Chaehyun Lim <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Remove WILC_strncpy function that is changed to strncpy.
Signed-off-by: Chaehyun Lim <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Use strncpy instead of WILC_strncpy that is a custom function
Signed-off-by: Chaehyun Lim <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Remove WILC_strlen function that is changed to strlen.
Signed-off-by: Chaehyun Lim <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Use strlen instead of WILC_strlen that is a custom function.
Signed-off-by: Chaehyun Lim <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Remove commented code that is not used.
Signed-off-by: Chaehyun Lim <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
This was supposed to bitwise AND but there is a typo.
Fixes: 1a02387063fb ('staging: comedi: me4000: remove 'board' from me4000_ai_insn_read()')
Signed-off-by: Dan Carpenter <[email protected]>
Reviewed-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
The "adl_pci7x3x" driver replaced the "adl_pci7230" and "adl_pci7432"
drivers in commits 8f567c373c4b ("staging: comedi: new adl_pci7x3x
driver") and 657f77d173d3 ("staging: comedi: remove adl_pci7230 and
adl_pci7432 drivers"). Although the new driver code agrees with the
user manuals for the respective boards, digital outputs stopped working
on the PCI-7230. This has 16 digital output channels and the previous
adl_pci7230 driver shifted the 16 bit output state left by 16 bits
before writing to the hardware register. The new adl_pci7x3x driver
doesn't do that. Fix it in `adl_pci7x3x_do_insn_bits()` by checking
for the special case of the subdevice having only 16 channels and
duplicating the 16 bit output state into both halves of the 32-bit
register. That should work both for what the board actually does and
for what the user manual says it should do.
Fixes: 8f567c373c4b ("staging: comedi: new adl_pci7x3x driver")
Signed-off-by: Ian Abbott <[email protected]>
Cc: <[email protected]> # 3.13+, needs backporting for 3.7 to 3.12
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
apci3501_read_insn_timer()
Use register bit defines from addi_tcw.h to remove the "magic" numbers.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
apci3501_write_insn_timer()
Use register bit defines from addi_tcw.h to remove the "magic" numbers.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
apci3501_config_insn_timer()
Use register bit defines from addi_tcw.h to remove the "magic" numbers.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Use register bit defines from addi_tcw.h to remove the "magic" numbers.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
The APCI3501_TIMER_* register defines in this driver are that same as
the ADDI_TCW_* defines with an additional offset.
Add a 'tcw' (timer/counter/watchdog) member to the private data to
hold the address for the iobase of the registers. Use that and the
defines from addi_tcw.h to address the registers.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Rename the CamelCase local variables.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Change the register bit defines to use the BIT macro.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Rename this CamelCase member of the private data.
Also, fix the type of the member, it holds a pci_resource_start()
address and should be an unsigned long.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
The handling for the watchdog and timer modes is very similar. Refactor
this function to use a common code path for both modes.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
apci3501_config_insn_timer()
Rename this CamelCase local variable.
For aesthetics, split the mask/set operations.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
The handling of the ADDIDATA_WATCHDOG and ADDIDATA_TIMER is identical.
Refactor this function to use a common code path for both timer modes.
Remove the incorrect dev_err() noise. The subdevice is valid but the
timer_mode is not supported.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
The handling of the ADDIDATA_WATCHDOG and ADDIDATA_TIMER is identical
except for the "stop" operation. Refactor this function to use a common
code path for both timer modes.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
apci3501_write_insn_timer()
Rename this CamelCase local variable.
For aesthetics, split the mask/set operations.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Rename this CamelCase member of the private data.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
The watchdog is stopped in apci3501_write_insn_timer() by writing a 0 to
the timer control register. There is no need to read the register first
and mask it (as done when the timer is used as a timer).
Reported-by: coverity (CID 1227052)
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
This function is only called by comedi_cleanup_board_minors() and the
'minor' parameter will always be < COMEDI_NUM_BOARD_MINORS.
For aesthetics, absorb the function and remove the unnecessary BUG_ON().
Split the comedi_clear_board_minor() out to clarify that the return value
is a comedi_device pointer.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
comedi_dev_get_from_board_minor()
This function is only called by comedi_dev_get_from_minor() and the 'minor'
value will always be < COMEDI_NUM_BOARD_MINORS. Remove the unnecessary
BUG_ON().
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Drivers should not crash the kernel.
This function is only called by comedi_device_detach_cleanup() and the
s->minor will always be valid or the device wouldn't have attached in
the first place.
Leave the checks for safety in accessing the comedi_subdevice_minor_table
array but remove the BUG_ON() calls.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
The BUG_ON() checks in this function are not necessary.
comedi_cleanup_board_minors() clears all the entries in the
comedi_board_minor_table array and will call comedi_device_cleanup()
for all attached devices. comedi_device_cleanup() will then
clear the entries in the comedi_subdevice_minor_table array with
comedi_free_subdevice_minor().
Remove the BUG_ON(), drivers should not crash the kernel.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
The BUG_ON() checks in comedi_subdevice_from_minor() and
comedi_dev_get_from_subdevice_minor() are not necessary.
The 'minor' numbers for a given comedi driver are setup by
comedi_dev_get_from_subdevice_minor() and will always be in
the correct range.
Drivers should not crash the kernel, remove the BUG_ON() checks.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
apci1564_counter_insn_read()
Use the bit defines from addi_tcw.h to remove the magic numbers in this
function.
Add the missing define for ADDI_TCW_STATUS_HARDWARE_TRIG.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Clear the gate and trig bits in the common code path.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
According to the (broken) original driver, data[4] passed to this function
is the "timer mode". It appears the original code used the wrong shift to
set the bits.
Use the ADDI_TCW_CTRL_MODE() macro so that the correct bits get set.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
apci1564_counter_insn_config()
The gate, trig, and ena, bits in the 'ctrl' are cleared at the start of
the function. There is no reason clear these bits for each step.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
apci1564_timer_insn_read()
Use the bit define from addi_tcw.h to remove the magic number.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Clear the gate and trig bits in the common code path.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|
|
Use the ADDI_TCW_CTRL_REG bit defines in addi_tcw.h to remove the "magic"
numbers.
Add some missing bit defines and mask defines to addi_tcw.h to help
cleanup the code.
Signed-off-by: H Hartley Sweeten <[email protected]>
Reviewed-by: Ian Abbott <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
|