forked from Minki/linux
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
@ -475,6 +475,7 @@ int audio_idle;
|
|||||||
int audio_eof;
|
int audio_eof;
|
||||||
int volume;
|
int volume;
|
||||||
int mute;
|
int mute;
|
||||||
|
s8 gain;
|
||||||
|
|
||||||
struct data_buffer audio_isoc_buffer[AUDIO_ISOC_BUFFER_MANY];
|
struct data_buffer audio_isoc_buffer[AUDIO_ISOC_BUFFER_MANY];
|
||||||
|
|
||||||
@ -639,6 +640,8 @@ struct signed_div_result {
|
|||||||
long long int quotient;
|
long long int quotient;
|
||||||
unsigned long long int remainder;
|
unsigned long long int remainder;
|
||||||
} signed_div(long long int, long long int);
|
} signed_div(long long int, long long int);
|
||||||
|
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------*/
|
||||||
/*
|
/*
|
||||||
* MACROS
|
* MACROS
|
||||||
@ -668,6 +671,7 @@ unsigned long long int remainder;
|
|||||||
* IMMEDIATELY OBVIOUS FROM A CASUAL READING OF THE SOURCE CODE. BEWARE.
|
* IMMEDIATELY OBVIOUS FROM A CASUAL READING OF THE SOURCE CODE. BEWARE.
|
||||||
*/
|
*/
|
||||||
/*---------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------*/
|
||||||
|
extern int easycap_debug;
|
||||||
#define SAY(format, args...) do { \
|
#define SAY(format, args...) do { \
|
||||||
printk(KERN_DEBUG "easycap:: %s: " \
|
printk(KERN_DEBUG "easycap:: %s: " \
|
||||||
format, __func__, ##args); \
|
format, __func__, ##args); \
|
||||||
|
@ -27,8 +27,6 @@
|
|||||||
#if !defined(EASYCAP_IOCTL_H)
|
#if !defined(EASYCAP_IOCTL_H)
|
||||||
#define EASYCAP_IOCTL_H
|
#define EASYCAP_IOCTL_H
|
||||||
|
|
||||||
extern int easycap_debug;
|
|
||||||
extern int easycap_gain;
|
|
||||||
extern struct easycap_dongle easycapdc60_dongle[];
|
extern struct easycap_dongle easycapdc60_dongle[];
|
||||||
extern struct easycap_standard easycap_standard[];
|
extern struct easycap_standard easycap_standard[];
|
||||||
extern struct easycap_format easycap_format[];
|
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.
|
* SELECT AUDIO SOURCE "LINE IN" AND SET THE AUDIO GAIN.
|
||||||
*/
|
*/
|
||||||
/*---------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------*/
|
||||||
if (31 < easycap_gain)
|
if (0 != audio_gainset(pusb_device, peasycap->gain))
|
||||||
easycap_gain = 31;
|
|
||||||
if (0 > easycap_gain)
|
|
||||||
easycap_gain = 0;
|
|
||||||
if (0 != audio_gainset(pusb_device, (__s8)easycap_gain))
|
|
||||||
SAY("ERROR: audio_gainset() failed\n");
|
SAY("ERROR: audio_gainset() failed\n");
|
||||||
check_vt(pusb_device);
|
check_vt(pusb_device);
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -27,8 +27,6 @@
|
|||||||
#if !defined(EASYCAP_LOW_H)
|
#if !defined(EASYCAP_LOW_H)
|
||||||
#define EASYCAP_LOW_H
|
#define EASYCAP_LOW_H
|
||||||
|
|
||||||
extern int easycap_debug;
|
|
||||||
extern int easycap_gain;
|
|
||||||
extern struct easycap_dongle easycapdc60_dongle[];
|
extern struct easycap_dongle easycapdc60_dongle[];
|
||||||
|
|
||||||
#endif /*EASYCAP_LOW_H*/
|
#endif /*EASYCAP_LOW_H*/
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
|
|
||||||
int easycap_debug;
|
int easycap_debug;
|
||||||
static int easycap_bars = 1;
|
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(debug, easycap_debug, int, S_IRUGO | S_IWUSR);
|
||||||
module_param_named(bars, easycap_bars, 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);
|
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*/
|
#endif /*EASYCAP_IS_VIDEODEV_CLIENT*/
|
||||||
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
|
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
|
||||||
|
|
||||||
|
/* setup modules params */
|
||||||
|
|
||||||
if ((struct usb_interface *)NULL == pusb_interface) {
|
if ((struct usb_interface *)NULL == pusb_interface) {
|
||||||
SAY("ERROR: pusb_interface is NULL\n");
|
SAY("ERROR: pusb_interface is NULL\n");
|
||||||
return -EFAULT;
|
return -EFAULT;
|
||||||
@ -3547,6 +3549,9 @@ if (0 == bInterfaceNumber) {
|
|||||||
"%i=peasycap->kref.refcount.counter\n", \
|
"%i=peasycap->kref.refcount.counter\n", \
|
||||||
bInterfaceNumber, peasycap->kref.refcount.counter);
|
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_video);
|
||||||
init_waitqueue_head(&peasycap->wq_audio);
|
init_waitqueue_head(&peasycap->wq_audio);
|
||||||
init_waitqueue_head(&peasycap->wq_trigger);
|
init_waitqueue_head(&peasycap->wq_trigger);
|
||||||
|
@ -27,8 +27,6 @@
|
|||||||
#if !defined(EASYCAP_SETTINGS_H)
|
#if !defined(EASYCAP_SETTINGS_H)
|
||||||
#define EASYCAP_SETTINGS_H
|
#define EASYCAP_SETTINGS_H
|
||||||
|
|
||||||
extern int easycap_debug;
|
|
||||||
extern int easycap_gain;
|
|
||||||
extern struct easycap_dongle easycapdc60_dongle[];
|
extern struct easycap_dongle easycapdc60_dongle[];
|
||||||
|
|
||||||
#endif /*EASYCAP_SETTINGS_H*/
|
#endif /*EASYCAP_SETTINGS_H*/
|
||||||
|
@ -27,8 +27,6 @@
|
|||||||
#if !defined(EASYCAP_SOUND_H)
|
#if !defined(EASYCAP_SOUND_H)
|
||||||
#define EASYCAP_SOUND_H
|
#define EASYCAP_SOUND_H
|
||||||
|
|
||||||
extern int easycap_debug;
|
|
||||||
extern int easycap_gain;
|
|
||||||
extern struct easycap_dongle easycapdc60_dongle[];
|
extern struct easycap_dongle easycapdc60_dongle[];
|
||||||
extern struct easycap *peasycap;
|
extern struct easycap *peasycap;
|
||||||
extern struct usb_driver easycap_usb_driver;
|
extern struct usb_driver easycap_usb_driver;
|
||||||
|
@ -27,8 +27,6 @@
|
|||||||
#if !defined(EASYCAP_TESTCARD_H)
|
#if !defined(EASYCAP_TESTCARD_H)
|
||||||
#define EASYCAP_TESTCARD_H
|
#define EASYCAP_TESTCARD_H
|
||||||
|
|
||||||
extern int easycap_debug;
|
|
||||||
extern int easycap_gain;
|
|
||||||
extern struct easycap_dongle easycapdc60_dongle[];
|
extern struct easycap_dongle easycapdc60_dongle[];
|
||||||
|
|
||||||
#endif /*EASYCAP_TESTCARD_H*/
|
#endif /*EASYCAP_TESTCARD_H*/
|
||||||
|
Loading…
Reference in New Issue
Block a user