Hi Greg,
Today's linux-next build (x86_64 allmodconfig) produced this warning:
drivers/char/ip2/ip2main.c:511: warning: 'ip2_setup' defined but not used
Introduced by commit 3f042287578018e0dc1c38b6f684767e657db62f ("ip2:
remove #ifdef MODULE from ip2main.c").
__setup() is a noop if CONFIG_MODULE is defined.
--
Cheers,
Stephen Rothwell [email protected]
http://www.canb.auug.org.au/~sfr/
On 1/20/10, Stephen Rothwell <[email protected]> wrote:
> Hi Greg,
>
> Today's linux-next build (x86_64 allmodconfig) produced this warning:
>
> drivers/char/ip2/ip2main.c:511: warning: 'ip2_setup' defined but not used
>
Can we use module parameters? A check could be made if parameter hasn't
passed then we'll just return.
> Introduced by commit 3f042287578018e0dc1c38b6f684767e657db62f ("ip2:
> remove #ifdef MODULE from ip2main.c").
>
> __setup() is a noop if CONFIG_MODULE is defined.
>
> --
> Cheers,
> Stephen Rothwell [email protected]
> http://www.canb.auug.org.au/~sfr/
>
>
On Thu, Jan 21, 2010 at 10:22:19AM +0600, Rakib Mullick wrote:
> On 1/20/10, Stephen Rothwell <[email protected]> wrote:
> > Hi Greg,
> >
> > Today's linux-next build (x86_64 allmodconfig) produced this warning:
> >
> > drivers/char/ip2/ip2main.c:511: warning: 'ip2_setup' defined but not used
> >
> Can we use module parameters? A check could be made if parameter hasn't
> passed then we'll just return.
That sounds right. Care to send a patch?
thanks,
greg k-h
On 1/22/10, Greg KH <[email protected]> wrote:
> On Thu, Jan 21, 2010 at 10:22:19AM +0600, Rakib Mullick wrote:
> > On 1/20/10, Stephen Rothwell <[email protected]> wrote:
>
> That sounds right. Care to send a patch?
>
Please - checkout the following one - is it okay or not. Notice if it
requires any adjustment.
Patch is created using 2.6.33-rc5. Needs to apply the patch
named 'ip2-remove-ifdef-module-from-ip2main.c.patch'
(http://lkml.org/lkml/2009/12/1/90)
currently in gregkh-2.6 tree to compile cleanly.
---
char,ip2: Add module parameter.
Stephen Rothwell found the following warning (x86_64 allmodconfig):
drivers/char/ip2/ip2main.c:511: warning: 'ip2_setup' defined but not used
This patch adds module parameter to fix the above warning.
Signed-off-by: Rakib Mullick <[email protected]>
---
--- linus/drivers/char/ip2/ip2main.c 2010-01-16 13:36:44.000000000 +0600
+++ rakib/drivers/char/ip2/ip2main.c 2010-01-23 11:23:55.000000000 +0600
@@ -208,6 +208,7 @@ static int DumpFifoBuffer( char __user *
static void ip2_init_board(int, const struct firmware *);
static unsigned short find_eisa_board(int);
+static int ip2_setup(char *str);
/***************/
/* Static Data */
@@ -285,7 +286,10 @@ MODULE_AUTHOR("Doug McNash");
MODULE_DESCRIPTION("Computone IntelliPort Plus Driver");
MODULE_LICENSE("GPL");
+#define MAX_CMD_STR 50
+
static int poll_only;
+static char cmd[MAX_CMD_STR];
static int Eisa_irq;
static int Eisa_slot;
@@ -309,6 +313,8 @@ module_param_array(io, int, NULL, 0);
MODULE_PARM_DESC(io, "I/O ports for IntelliPort Cards");
module_param(poll_only, bool, 0);
MODULE_PARM_DESC(poll_only, "Do not use card interrupts");
+module_param_string(ip2, cmd, MAX_CMD_STR, 0);
+MODULE_PARM_DESC(ip2, "Contains module parameter passed with 'ip2='");
/* for sysfs class support */
static struct class *ip2_class;
@@ -541,12 +547,19 @@ static int __init ip2_loadmain(void)
int rc = -1;
struct pci_dev *pdev = NULL;
const struct firmware *fw = NULL;
+ char *str;
+
+ str = cmd;
if (poll_only) {
/* Hard lock the interrupts to zero */
irq[0] = irq[1] = irq[2] = irq[3] = poll_only = 0;
}
+ /* Check module parameter with 'ip2=' has been passed or not */
+ if (!poll_only && (!strncmp(str, "ip2=", 4)))
+ ip2_setup(str);
+
ip2trace(ITRC_NO_PORT, ITRC_INIT, ITRC_ENTER, 0);
/* process command line arguments to modprobe or
On 01/23/2010 01:53 PM, Rakib Mullick wrote:
> @@ -309,6 +313,8 @@ module_param_array(io, int, NULL, 0);
> MODULE_PARM_DESC(io, "I/O ports for IntelliPort Cards");
> module_param(poll_only, bool, 0);
> MODULE_PARM_DESC(poll_only, "Do not use card interrupts");
> +module_param_string(ip2, cmd, MAX_CMD_STR, 0);
> +MODULE_PARM_DESC(ip2, "Contains module parameter passed with 'ip2='");
Why not just param_array(int) instead of whole parsing in ip2_setup?
--
js
On 1/23/10, Jiri Slaby <[email protected]> wrote:
> On 01/23/2010 01:53 PM, Rakib Mullick wrote:
>
> Why not just param_array(int) instead of whole parsing in ip2_setup?
>
Parameter is passed as strings and current ip2_setup deals with strings.
And using param_string() we can do it at minimum change. Just trying to make
sure that if ip2 parameter is passed at module load then we are
calling ip2_setup.
thanks,
> --
>
> js
>