aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char
diff options
context:
space:
mode:
authorBela Lubkin <blubkin@vmware.com>2010-03-10 18:23:07 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2010-03-12 18:52:40 -0500
commit2f95d51308a72288d877c3c8dc4597c9a93f7344 (patch)
treec597b37357b51725af336f50a1cf4fd6b028f555 /drivers/char
parentae74e823cb7d4cd476f623fce9a38f625f6c09a8 (diff)
ipmi: fix slave_addrs setting to actually work
Actually use the slave_addrs module parameter if it is specified, and make things consistent about passing zero in for the slave address for the default. Signed-off-by: Bela Lubkin <blubkin@vmware.com> Signed-off-by: Corey Minyard <minyard@acm.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/char')
-rw-r--r--drivers/char/ipmi/ipmi_si_intf.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c
index c234ada64565..4462b113ba3f 100644
--- a/drivers/char/ipmi/ipmi_si_intf.c
+++ b/drivers/char/ipmi/ipmi_si_intf.c
@@ -1201,7 +1201,7 @@ static int regsizes[SI_MAX_PARMS];
1201static unsigned int num_regsizes; 1201static unsigned int num_regsizes;
1202static int regshifts[SI_MAX_PARMS]; 1202static int regshifts[SI_MAX_PARMS];
1203static unsigned int num_regshifts; 1203static unsigned int num_regshifts;
1204static int slave_addrs[SI_MAX_PARMS]; 1204static int slave_addrs[SI_MAX_PARMS]; /* Leaving 0 chooses the default value */
1205static unsigned int num_slave_addrs; 1205static unsigned int num_slave_addrs;
1206 1206
1207#define IPMI_IO_ADDR_SPACE 0 1207#define IPMI_IO_ADDR_SPACE 0
@@ -1669,7 +1669,7 @@ static int hotmod_handler(const char *val, struct kernel_param *kp)
1669 regsize = 1; 1669 regsize = 1;
1670 regshift = 0; 1670 regshift = 0;
1671 irq = 0; 1671 irq = 0;
1672 ipmb = 0x20; 1672 ipmb = 0; /* Choose the default if not specified */
1673 1673
1674 next = strchr(curr, ':'); 1674 next = strchr(curr, ':');
1675 if (next) { 1675 if (next) {
@@ -1861,6 +1861,7 @@ static __devinit void hardcode_find_bmc(void)
1861 info->irq = irqs[i]; 1861 info->irq = irqs[i];
1862 if (info->irq) 1862 if (info->irq)
1863 info->irq_setup = std_irq_setup; 1863 info->irq_setup = std_irq_setup;
1864 info->slave_addr = slave_addrs[i];
1864 1865
1865 try_smi_init(info); 1866 try_smi_init(info);
1866 } 1867 }