mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-11-01 17:08:10 +00:00
Staging: easycap: fix sparse warnings for module parameters
easycap_main.c:34:5: warning: symbol 'easycap_debug' was not declared. Should it be static? easycap_main.c:36:5: warning: symbol 'easycap_gain' was not declared. Should it be static? These two variables actually were declared in several places. The variables are used in several files. I've fixed "easycap_debug" so it gets declared in one place only and included properly. For "easycap_gain" made it static and I created added a ->gain member to the easycap struct. This seems cleaner than using a global variable and later on we may make this controlable via sysfs. Cc:Mike Thomas <rmthomas@sciolus.org> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Acked-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
a985591729
commit
2a9a05c432
8 changed files with 11 additions and 16 deletions
|
@ -475,6 +475,7 @@ int audio_idle;
|
|||
int audio_eof;
|
||||
int volume;
|
||||
int mute;
|
||||
s8 gain;
|
||||
|
||||
struct data_buffer audio_isoc_buffer[AUDIO_ISOC_BUFFER_MANY];
|
||||
|
||||
|
@ -639,6 +640,8 @@ struct signed_div_result {
|
|||
long long int quotient;
|
||||
unsigned long long int remainder;
|
||||
} signed_div(long long int, long long int);
|
||||
|
||||
|
||||
/*---------------------------------------------------------------------------*/
|
||||
/*
|
||||
* MACROS
|
||||
|
@ -668,6 +671,7 @@ unsigned long long int remainder;
|
|||
* IMMEDIATELY OBVIOUS FROM A CASUAL READING OF THE SOURCE CODE. BEWARE.
|
||||
*/
|
||||
/*---------------------------------------------------------------------------*/
|
||||
extern int easycap_debug;
|
||||
#define SAY(format, args...) do { \
|
||||
printk(KERN_DEBUG "easycap:: %s: " \
|
||||
format, __func__, ##args); \
|
||||
|
|
|
@ -27,8 +27,6 @@
|
|||
#if !defined(EASYCAP_IOCTL_H)
|
||||
#define EASYCAP_IOCTL_H
|
||||
|
||||
extern int easycap_debug;
|
||||
extern int easycap_gain;
|
||||
extern struct easycap_dongle easycapdc60_dongle[];
|
||||
extern struct easycap_standard easycap_standard[];
|
||||
extern struct easycap_format easycap_format[];
|
||||
|
|
|
@ -1091,11 +1091,7 @@ SAM("0x%04X:0x%04X is audio vendor id\n", id1, id2);
|
|||
* SELECT AUDIO SOURCE "LINE IN" AND SET THE AUDIO GAIN.
|
||||
*/
|
||||
/*---------------------------------------------------------------------------*/
|
||||
if (31 < easycap_gain)
|
||||
easycap_gain = 31;
|
||||
if (0 > easycap_gain)
|
||||
easycap_gain = 0;
|
||||
if (0 != audio_gainset(pusb_device, (__s8)easycap_gain))
|
||||
if (0 != audio_gainset(pusb_device, peasycap->gain))
|
||||
SAY("ERROR: audio_gainset() failed\n");
|
||||
check_vt(pusb_device);
|
||||
return 0;
|
||||
|
|
|
@ -27,8 +27,6 @@
|
|||
#if !defined(EASYCAP_LOW_H)
|
||||
#define EASYCAP_LOW_H
|
||||
|
||||
extern int easycap_debug;
|
||||
extern int easycap_gain;
|
||||
extern struct easycap_dongle easycapdc60_dongle[];
|
||||
|
||||
#endif /*EASYCAP_LOW_H*/
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
|
||||
int easycap_debug;
|
||||
static int easycap_bars = 1;
|
||||
int easycap_gain = 16;
|
||||
static int easycap_gain = 16;
|
||||
module_param_named(debug, easycap_debug, int, S_IRUGO | S_IWUSR);
|
||||
module_param_named(bars, easycap_bars, int, S_IRUGO | S_IWUSR);
|
||||
module_param_named(gain, easycap_gain, int, S_IRUGO | S_IWUSR);
|
||||
|
@ -3412,6 +3412,8 @@ struct v4l2_device *pv4l2_device;
|
|||
#endif /*EASYCAP_IS_VIDEODEV_CLIENT*/
|
||||
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
|
||||
|
||||
/* setup modules params */
|
||||
|
||||
if ((struct usb_interface *)NULL == pusb_interface) {
|
||||
SAY("ERROR: pusb_interface is NULL\n");
|
||||
return -EFAULT;
|
||||
|
@ -3547,6 +3549,9 @@ if (0 == bInterfaceNumber) {
|
|||
"%i=peasycap->kref.refcount.counter\n", \
|
||||
bInterfaceNumber, peasycap->kref.refcount.counter);
|
||||
|
||||
/* module params */
|
||||
peasycap->gain = (s8)clamp(easycap_gain, 0, 31);
|
||||
|
||||
init_waitqueue_head(&peasycap->wq_video);
|
||||
init_waitqueue_head(&peasycap->wq_audio);
|
||||
init_waitqueue_head(&peasycap->wq_trigger);
|
||||
|
|
|
@ -27,8 +27,6 @@
|
|||
#if !defined(EASYCAP_SETTINGS_H)
|
||||
#define EASYCAP_SETTINGS_H
|
||||
|
||||
extern int easycap_debug;
|
||||
extern int easycap_gain;
|
||||
extern struct easycap_dongle easycapdc60_dongle[];
|
||||
|
||||
#endif /*EASYCAP_SETTINGS_H*/
|
||||
|
|
|
@ -27,8 +27,6 @@
|
|||
#if !defined(EASYCAP_SOUND_H)
|
||||
#define EASYCAP_SOUND_H
|
||||
|
||||
extern int easycap_debug;
|
||||
extern int easycap_gain;
|
||||
extern struct easycap_dongle easycapdc60_dongle[];
|
||||
extern struct easycap *peasycap;
|
||||
extern struct usb_driver easycap_usb_driver;
|
||||
|
|
|
@ -27,8 +27,6 @@
|
|||
#if !defined(EASYCAP_TESTCARD_H)
|
||||
#define EASYCAP_TESTCARD_H
|
||||
|
||||
extern int easycap_debug;
|
||||
extern int easycap_gain;
|
||||
extern struct easycap_dongle easycapdc60_dongle[];
|
||||
|
||||
#endif /*EASYCAP_TESTCARD_H*/
|
||||
|
|
Loading…
Reference in a new issue