aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/char/ipmi/ipmi_bt_sm.c66
-rw-r--r--drivers/char/ipmi/ipmi_msghandler.c46
-rw-r--r--drivers/char/ipmi/ipmi_poweroff.c2
-rw-r--r--drivers/char/ipmi/ipmi_si_intf.c141
-rw-r--r--drivers/char/ipmi/ipmi_watchdog.c19
5 files changed, 146 insertions, 128 deletions
diff --git a/drivers/char/ipmi/ipmi_bt_sm.c b/drivers/char/ipmi/ipmi_bt_sm.c
index 64c9afa50c13..33862670e285 100644
--- a/drivers/char/ipmi/ipmi_bt_sm.c
+++ b/drivers/char/ipmi/ipmi_bt_sm.c
@@ -161,7 +161,8 @@ static int bt_start_transaction(struct si_sm_data *bt,
161{ 161{
162 unsigned int i; 162 unsigned int i;
163 163
164 if ((size < 2) || (size > IPMI_MAX_MSG_LENGTH)) return -1; 164 if ((size < 2) || (size > IPMI_MAX_MSG_LENGTH))
165 return -1;
165 166
166 if ((bt->state != BT_STATE_IDLE) && (bt->state != BT_STATE_HOSED)) 167 if ((bt->state != BT_STATE_IDLE) && (bt->state != BT_STATE_HOSED))
167 return -2; 168 return -2;
@@ -169,7 +170,8 @@ static int bt_start_transaction(struct si_sm_data *bt,
169 if (bt_debug & BT_DEBUG_MSG) { 170 if (bt_debug & BT_DEBUG_MSG) {
170 printk(KERN_WARNING "+++++++++++++++++++++++++++++++++++++\n"); 171 printk(KERN_WARNING "+++++++++++++++++++++++++++++++++++++\n");
171 printk(KERN_WARNING "BT: write seq=0x%02X:", bt->seq); 172 printk(KERN_WARNING "BT: write seq=0x%02X:", bt->seq);
172 for (i = 0; i < size; i ++) printk (" %02x", data[i]); 173 for (i = 0; i < size; i ++)
174 printk (" %02x", data[i]);
173 printk("\n"); 175 printk("\n");
174 } 176 }
175 bt->write_data[0] = size + 1; /* all data plus seq byte */ 177 bt->write_data[0] = size + 1; /* all data plus seq byte */
@@ -208,15 +210,18 @@ static int bt_get_result(struct si_sm_data *bt,
208 } else { 210 } else {
209 data[0] = bt->read_data[1]; 211 data[0] = bt->read_data[1];
210 data[1] = bt->read_data[3]; 212 data[1] = bt->read_data[3];
211 if (length < msg_len) bt->truncated = 1; 213 if (length < msg_len)
214 bt->truncated = 1;
212 if (bt->truncated) { /* can be set in read_all_bytes() */ 215 if (bt->truncated) { /* can be set in read_all_bytes() */
213 data[2] = IPMI_ERR_MSG_TRUNCATED; 216 data[2] = IPMI_ERR_MSG_TRUNCATED;
214 msg_len = 3; 217 msg_len = 3;
215 } else memcpy(data + 2, bt->read_data + 4, msg_len - 2); 218 } else
219 memcpy(data + 2, bt->read_data + 4, msg_len - 2);
216 220
217 if (bt_debug & BT_DEBUG_MSG) { 221 if (bt_debug & BT_DEBUG_MSG) {
218 printk (KERN_WARNING "BT: res (raw)"); 222 printk (KERN_WARNING "BT: res (raw)");
219 for (i = 0; i < msg_len; i++) printk(" %02x", data[i]); 223 for (i = 0; i < msg_len; i++)
224 printk(" %02x", data[i]);
220 printk ("\n"); 225 printk ("\n");
221 } 226 }
222 } 227 }
@@ -229,8 +234,10 @@ static int bt_get_result(struct si_sm_data *bt,
229 234
230static void reset_flags(struct si_sm_data *bt) 235static void reset_flags(struct si_sm_data *bt)
231{ 236{
232 if (BT_STATUS & BT_H_BUSY) BT_CONTROL(BT_H_BUSY); 237 if (BT_STATUS & BT_H_BUSY)
233 if (BT_STATUS & BT_B_BUSY) BT_CONTROL(BT_B_BUSY); 238 BT_CONTROL(BT_H_BUSY);
239 if (BT_STATUS & BT_B_BUSY)
240 BT_CONTROL(BT_B_BUSY);
234 BT_CONTROL(BT_CLR_WR_PTR); 241 BT_CONTROL(BT_CLR_WR_PTR);
235 BT_CONTROL(BT_SMS_ATN); 242 BT_CONTROL(BT_SMS_ATN);
236#ifdef DEVELOPMENT_ONLY_NOT_FOR_PRODUCTION 243#ifdef DEVELOPMENT_ONLY_NOT_FOR_PRODUCTION
@@ -239,7 +246,8 @@ static void reset_flags(struct si_sm_data *bt)
239 BT_CONTROL(BT_H_BUSY); 246 BT_CONTROL(BT_H_BUSY);
240 BT_CONTROL(BT_B2H_ATN); 247 BT_CONTROL(BT_B2H_ATN);
241 BT_CONTROL(BT_CLR_RD_PTR); 248 BT_CONTROL(BT_CLR_RD_PTR);
242 for (i = 0; i < IPMI_MAX_MSG_LENGTH + 2; i++) BMC2HOST; 249 for (i = 0; i < IPMI_MAX_MSG_LENGTH + 2; i++)
250 BMC2HOST;
243 BT_CONTROL(BT_H_BUSY); 251 BT_CONTROL(BT_H_BUSY);
244 } 252 }
245#endif 253#endif
@@ -256,7 +264,8 @@ static inline void write_all_bytes(struct si_sm_data *bt)
256 printk (" %02x", bt->write_data[i]); 264 printk (" %02x", bt->write_data[i]);
257 printk ("\n"); 265 printk ("\n");
258 } 266 }
259 for (i = 0; i < bt->write_count; i++) HOST2BMC(bt->write_data[i]); 267 for (i = 0; i < bt->write_count; i++)
268 HOST2BMC(bt->write_data[i]);
260} 269}
261 270
262static inline int read_all_bytes(struct si_sm_data *bt) 271static inline int read_all_bytes(struct si_sm_data *bt)
@@ -276,7 +285,8 @@ static inline int read_all_bytes(struct si_sm_data *bt)
276 bt->truncated = 1; 285 bt->truncated = 1;
277 return 1; /* let next XACTION START clean it up */ 286 return 1; /* let next XACTION START clean it up */
278 } 287 }
279 for (i = 1; i <= bt->read_count; i++) bt->read_data[i] = BMC2HOST; 288 for (i = 1; i <= bt->read_count; i++)
289 bt->read_data[i] = BMC2HOST;
280 bt->read_count++; /* account for the length byte */ 290 bt->read_count++; /* account for the length byte */
281 291
282 if (bt_debug & BT_DEBUG_MSG) { 292 if (bt_debug & BT_DEBUG_MSG) {
@@ -293,7 +303,8 @@ static inline int read_all_bytes(struct si_sm_data *bt)
293 ((bt->read_data[1] & 0xF8) == (bt->write_data[1] & 0xF8))) 303 ((bt->read_data[1] & 0xF8) == (bt->write_data[1] & 0xF8)))
294 return 1; 304 return 1;
295 305
296 if (bt_debug & BT_DEBUG_MSG) printk(KERN_WARNING "BT: bad packet: " 306 if (bt_debug & BT_DEBUG_MSG)
307 printk(KERN_WARNING "BT: bad packet: "
297 "want 0x(%02X, %02X, %02X) got (%02X, %02X, %02X)\n", 308 "want 0x(%02X, %02X, %02X) got (%02X, %02X, %02X)\n",
298 bt->write_data[1], bt->write_data[2], bt->write_data[3], 309 bt->write_data[1], bt->write_data[2], bt->write_data[3],
299 bt->read_data[1], bt->read_data[2], bt->read_data[3]); 310 bt->read_data[1], bt->read_data[2], bt->read_data[3]);
@@ -357,7 +368,8 @@ static enum si_sm_result bt_event(struct si_sm_data *bt, long time)
357 time); 368 time);
358 bt->last_state = bt->state; 369 bt->last_state = bt->state;
359 370
360 if (bt->state == BT_STATE_HOSED) return SI_SM_HOSED; 371 if (bt->state == BT_STATE_HOSED)
372 return SI_SM_HOSED;
361 373
362 if (bt->state != BT_STATE_IDLE) { /* do timeout test */ 374 if (bt->state != BT_STATE_IDLE) { /* do timeout test */
363 375
@@ -369,7 +381,8 @@ static enum si_sm_result bt_event(struct si_sm_data *bt, long time)
369 /* FIXME: bt_event is sometimes called with time > BT_NORMAL_TIMEOUT 381 /* FIXME: bt_event is sometimes called with time > BT_NORMAL_TIMEOUT
370 (noticed in ipmi_smic_sm.c January 2004) */ 382 (noticed in ipmi_smic_sm.c January 2004) */
371 383
372 if ((time <= 0) || (time >= BT_NORMAL_TIMEOUT)) time = 100; 384 if ((time <= 0) || (time >= BT_NORMAL_TIMEOUT))
385 time = 100;
373 bt->timeout -= time; 386 bt->timeout -= time;
374 if ((bt->timeout < 0) && (bt->state < BT_STATE_RESET1)) { 387 if ((bt->timeout < 0) && (bt->state < BT_STATE_RESET1)) {
375 error_recovery(bt, "timed out"); 388 error_recovery(bt, "timed out");
@@ -391,12 +404,14 @@ static enum si_sm_result bt_event(struct si_sm_data *bt, long time)
391 BT_CONTROL(BT_H_BUSY); 404 BT_CONTROL(BT_H_BUSY);
392 break; 405 break;
393 } 406 }
394 if (status & BT_B2H_ATN) break; 407 if (status & BT_B2H_ATN)
408 break;
395 bt->state = BT_STATE_WRITE_BYTES; 409 bt->state = BT_STATE_WRITE_BYTES;
396 return SI_SM_CALL_WITHOUT_DELAY; /* for logging */ 410 return SI_SM_CALL_WITHOUT_DELAY; /* for logging */
397 411
398 case BT_STATE_WRITE_BYTES: 412 case BT_STATE_WRITE_BYTES:
399 if (status & (BT_B_BUSY | BT_H2B_ATN)) break; 413 if (status & (BT_B_BUSY | BT_H2B_ATN))
414 break;
400 BT_CONTROL(BT_CLR_WR_PTR); 415 BT_CONTROL(BT_CLR_WR_PTR);
401 write_all_bytes(bt); 416 write_all_bytes(bt);
402 BT_CONTROL(BT_H2B_ATN); /* clears too fast to catch? */ 417 BT_CONTROL(BT_H2B_ATN); /* clears too fast to catch? */
@@ -404,7 +419,8 @@ static enum si_sm_result bt_event(struct si_sm_data *bt, long time)
404 return SI_SM_CALL_WITHOUT_DELAY; /* it MIGHT sail through */ 419 return SI_SM_CALL_WITHOUT_DELAY; /* it MIGHT sail through */
405 420
406 case BT_STATE_WRITE_CONSUME: /* BMCs usually blow right thru here */ 421 case BT_STATE_WRITE_CONSUME: /* BMCs usually blow right thru here */
407 if (status & (BT_H2B_ATN | BT_B_BUSY)) break; 422 if (status & (BT_H2B_ATN | BT_B_BUSY))
423 break;
408 bt->state = BT_STATE_B2H_WAIT; 424 bt->state = BT_STATE_B2H_WAIT;
409 /* fall through with status */ 425 /* fall through with status */
410 426
@@ -413,15 +429,18 @@ static enum si_sm_result bt_event(struct si_sm_data *bt, long time)
413 generation of B2H_ATN so ALWAYS return CALL_WITH_DELAY. */ 429 generation of B2H_ATN so ALWAYS return CALL_WITH_DELAY. */
414 430
415 case BT_STATE_B2H_WAIT: 431 case BT_STATE_B2H_WAIT:
416 if (!(status & BT_B2H_ATN)) break; 432 if (!(status & BT_B2H_ATN))
433 break;
417 434
418 /* Assume ordered, uncached writes: no need to wait */ 435 /* Assume ordered, uncached writes: no need to wait */
419 if (!(status & BT_H_BUSY)) BT_CONTROL(BT_H_BUSY); /* set */ 436 if (!(status & BT_H_BUSY))
437 BT_CONTROL(BT_H_BUSY); /* set */
420 BT_CONTROL(BT_B2H_ATN); /* clear it, ACK to the BMC */ 438 BT_CONTROL(BT_B2H_ATN); /* clear it, ACK to the BMC */
421 BT_CONTROL(BT_CLR_RD_PTR); /* reset the queue */ 439 BT_CONTROL(BT_CLR_RD_PTR); /* reset the queue */
422 i = read_all_bytes(bt); 440 i = read_all_bytes(bt);
423 BT_CONTROL(BT_H_BUSY); /* clear */ 441 BT_CONTROL(BT_H_BUSY); /* clear */
424 if (!i) break; /* Try this state again */ 442 if (!i) /* Try this state again */
443 break;
425 bt->state = BT_STATE_READ_END; 444 bt->state = BT_STATE_READ_END;
426 return SI_SM_CALL_WITHOUT_DELAY; /* for logging */ 445 return SI_SM_CALL_WITHOUT_DELAY; /* for logging */
427 446
@@ -434,7 +453,8 @@ static enum si_sm_result bt_event(struct si_sm_data *bt, long time)
434 453
435#ifdef MAKE_THIS_TRUE_IF_NECESSARY 454#ifdef MAKE_THIS_TRUE_IF_NECESSARY
436 455
437 if (status & BT_H_BUSY) break; 456 if (status & BT_H_BUSY)
457 break;
438#endif 458#endif
439 bt->seq++; 459 bt->seq++;
440 bt->state = BT_STATE_IDLE; 460 bt->state = BT_STATE_IDLE;
@@ -457,7 +477,8 @@ static enum si_sm_result bt_event(struct si_sm_data *bt, long time)
457 break; 477 break;
458 478
459 case BT_STATE_RESET3: 479 case BT_STATE_RESET3:
460 if (bt->timeout > 0) return SI_SM_CALL_WITH_DELAY; 480 if (bt->timeout > 0)
481 return SI_SM_CALL_WITH_DELAY;
461 bt->state = BT_STATE_RESTART; /* printk in debug modes */ 482 bt->state = BT_STATE_RESTART; /* printk in debug modes */
462 break; 483 break;
463 484
@@ -483,7 +504,8 @@ static int bt_detect(struct si_sm_data *bt)
483 but that's what you get from reading a bogus address, so we 504 but that's what you get from reading a bogus address, so we
484 test that first. The calling routine uses negative logic. */ 505 test that first. The calling routine uses negative logic. */
485 506
486 if ((BT_STATUS == 0xFF) && (BT_INTMASK_R == 0xFF)) return 1; 507 if ((BT_STATUS == 0xFF) && (BT_INTMASK_R == 0xFF))
508 return 1;
487 reset_flags(bt); 509 reset_flags(bt);
488 return 0; 510 return 0;
489} 511}
diff --git a/drivers/char/ipmi/ipmi_msghandler.c b/drivers/char/ipmi/ipmi_msghandler.c
index d0ed25278cbb..792f4c282291 100644
--- a/drivers/char/ipmi/ipmi_msghandler.c
+++ b/drivers/char/ipmi/ipmi_msghandler.c
@@ -117,7 +117,7 @@ struct seq_table
117 do { \ 117 do { \
118 seq = ((msgid >> 26) & 0x3f); \ 118 seq = ((msgid >> 26) & 0x3f); \
119 seqid = (msgid & 0x3fffff); \ 119 seqid = (msgid & 0x3fffff); \
120 } while(0) 120 } while (0)
121 121
122#define NEXT_SEQID(seqid) (((seqid) + 1) & 0x3fffff) 122#define NEXT_SEQID(seqid) (((seqid) + 1) & 0x3fffff)
123 123
@@ -326,7 +326,7 @@ int ipmi_smi_watcher_register(struct ipmi_smi_watcher *watcher)
326 down_read(&interfaces_sem); 326 down_read(&interfaces_sem);
327 down_write(&smi_watchers_sem); 327 down_write(&smi_watchers_sem);
328 list_add(&(watcher->link), &smi_watchers); 328 list_add(&(watcher->link), &smi_watchers);
329 for (i=0; i<MAX_IPMI_INTERFACES; i++) { 329 for (i = 0; i < MAX_IPMI_INTERFACES; i++) {
330 if (ipmi_interfaces[i] != NULL) { 330 if (ipmi_interfaces[i] != NULL) {
331 watcher->new_smi(i); 331 watcher->new_smi(i);
332 } 332 }
@@ -496,9 +496,9 @@ static int intf_next_seq(ipmi_smi_t intf,
496 int rv = 0; 496 int rv = 0;
497 unsigned int i; 497 unsigned int i;
498 498
499 for (i=intf->curr_seq; 499 for (i = intf->curr_seq;
500 (i+1)%IPMI_IPMB_NUM_SEQ != intf->curr_seq; 500 (i+1)%IPMI_IPMB_NUM_SEQ != intf->curr_seq;
501 i=(i+1)%IPMI_IPMB_NUM_SEQ) 501 i = (i+1)%IPMI_IPMB_NUM_SEQ)
502 { 502 {
503 if (! intf->seq_table[i].inuse) 503 if (! intf->seq_table[i].inuse)
504 break; 504 break;
@@ -733,7 +733,7 @@ static int ipmi_destroy_user_nolock(ipmi_user_t user)
733 733
734 /* Remove the user from the interfaces sequence table. */ 734 /* Remove the user from the interfaces sequence table. */
735 spin_lock_irqsave(&(user->intf->seq_lock), flags); 735 spin_lock_irqsave(&(user->intf->seq_lock), flags);
736 for (i=0; i<IPMI_IPMB_NUM_SEQ; i++) { 736 for (i = 0; i < IPMI_IPMB_NUM_SEQ; i++) {
737 if (user->intf->seq_table[i].inuse 737 if (user->intf->seq_table[i].inuse
738 && (user->intf->seq_table[i].recv_msg->user == user)) 738 && (user->intf->seq_table[i].recv_msg->user == user))
739 { 739 {
@@ -1370,7 +1370,7 @@ static inline int i_ipmi_request(ipmi_user_t user,
1370#ifdef DEBUG_MSGING 1370#ifdef DEBUG_MSGING
1371 { 1371 {
1372 int m; 1372 int m;
1373 for (m=0; m<smi_msg->data_size; m++) 1373 for (m = 0; m < smi_msg->data_size; m++)
1374 printk(" %2.2x", smi_msg->data[m]); 1374 printk(" %2.2x", smi_msg->data[m]);
1375 printk("\n"); 1375 printk("\n");
1376 } 1376 }
@@ -1467,7 +1467,7 @@ static int ipmb_file_read_proc(char *page, char **start, off_t off,
1467 int i; 1467 int i;
1468 int rv= 0; 1468 int rv= 0;
1469 1469
1470 for (i=0; i<IPMI_MAX_CHANNELS; i++) 1470 for (i = 0; i < IPMI_MAX_CHANNELS; i++)
1471 rv += sprintf(out+rv, "%x ", intf->channels[i].address); 1471 rv += sprintf(out+rv, "%x ", intf->channels[i].address);
1472 out[rv-1] = '\n'; /* Replace the final space with a newline */ 1472 out[rv-1] = '\n'; /* Replace the final space with a newline */
1473 out[rv] = '\0'; 1473 out[rv] = '\0';
@@ -1766,12 +1766,12 @@ int ipmi_register_smi(struct ipmi_smi_handlers *handlers,
1766 rv = -ENOMEM; 1766 rv = -ENOMEM;
1767 1767
1768 down_write(&interfaces_sem); 1768 down_write(&interfaces_sem);
1769 for (i=0; i<MAX_IPMI_INTERFACES; i++) { 1769 for (i = 0; i < MAX_IPMI_INTERFACES; i++) {
1770 if (ipmi_interfaces[i] == NULL) { 1770 if (ipmi_interfaces[i] == NULL) {
1771 new_intf->intf_num = i; 1771 new_intf->intf_num = i;
1772 new_intf->version_major = version_major; 1772 new_intf->version_major = version_major;
1773 new_intf->version_minor = version_minor; 1773 new_intf->version_minor = version_minor;
1774 for (j=0; j<IPMI_MAX_CHANNELS; j++) { 1774 for (j = 0; j < IPMI_MAX_CHANNELS; j++) {
1775 new_intf->channels[j].address 1775 new_intf->channels[j].address
1776 = IPMI_BMC_SLAVE_ADDR; 1776 = IPMI_BMC_SLAVE_ADDR;
1777 new_intf->channels[j].lun = 2; 1777 new_intf->channels[j].lun = 2;
@@ -1783,7 +1783,7 @@ int ipmi_register_smi(struct ipmi_smi_handlers *handlers,
1783 new_intf->handlers = handlers; 1783 new_intf->handlers = handlers;
1784 new_intf->send_info = send_info; 1784 new_intf->send_info = send_info;
1785 spin_lock_init(&(new_intf->seq_lock)); 1785 spin_lock_init(&(new_intf->seq_lock));
1786 for (j=0; j<IPMI_IPMB_NUM_SEQ; j++) { 1786 for (j = 0; j < IPMI_IPMB_NUM_SEQ; j++) {
1787 new_intf->seq_table[j].inuse = 0; 1787 new_intf->seq_table[j].inuse = 0;
1788 new_intf->seq_table[j].seqid = 0; 1788 new_intf->seq_table[j].seqid = 0;
1789 } 1789 }
@@ -1891,7 +1891,7 @@ static void clean_up_interface_data(ipmi_smi_t intf)
1891 free_recv_msg_list(&(intf->waiting_events)); 1891 free_recv_msg_list(&(intf->waiting_events));
1892 free_cmd_rcvr_list(&(intf->cmd_rcvrs)); 1892 free_cmd_rcvr_list(&(intf->cmd_rcvrs));
1893 1893
1894 for (i=0; i<IPMI_IPMB_NUM_SEQ; i++) { 1894 for (i = 0; i < IPMI_IPMB_NUM_SEQ; i++) {
1895 if ((intf->seq_table[i].inuse) 1895 if ((intf->seq_table[i].inuse)
1896 && (intf->seq_table[i].recv_msg)) 1896 && (intf->seq_table[i].recv_msg))
1897 { 1897 {
@@ -1910,7 +1910,7 @@ int ipmi_unregister_smi(ipmi_smi_t intf)
1910 down_write(&interfaces_sem); 1910 down_write(&interfaces_sem);
1911 if (list_empty(&(intf->users))) 1911 if (list_empty(&(intf->users)))
1912 { 1912 {
1913 for (i=0; i<MAX_IPMI_INTERFACES; i++) { 1913 for (i = 0; i < MAX_IPMI_INTERFACES; i++) {
1914 if (ipmi_interfaces[i] == intf) { 1914 if (ipmi_interfaces[i] == intf) {
1915 remove_proc_entries(intf); 1915 remove_proc_entries(intf);
1916 spin_lock_irqsave(&interfaces_lock, flags); 1916 spin_lock_irqsave(&interfaces_lock, flags);
@@ -2074,7 +2074,7 @@ static int handle_ipmb_get_msg_cmd(ipmi_smi_t intf,
2074 { 2074 {
2075 int m; 2075 int m;
2076 printk("Invalid command:"); 2076 printk("Invalid command:");
2077 for (m=0; m<msg->data_size; m++) 2077 for (m = 0; m < msg->data_size; m++)
2078 printk(" %2.2x", msg->data[m]); 2078 printk(" %2.2x", msg->data[m]);
2079 printk("\n"); 2079 printk("\n");
2080 } 2080 }
@@ -2469,7 +2469,7 @@ static int handle_new_recv_msg(ipmi_smi_t intf,
2469#ifdef DEBUG_MSGING 2469#ifdef DEBUG_MSGING
2470 int m; 2470 int m;
2471 printk("Recv:"); 2471 printk("Recv:");
2472 for (m=0; m<msg->rsp_size; m++) 2472 for (m = 0; m < msg->rsp_size; m++)
2473 printk(" %2.2x", msg->rsp[m]); 2473 printk(" %2.2x", msg->rsp[m]);
2474 printk("\n"); 2474 printk("\n");
2475#endif 2475#endif
@@ -2703,7 +2703,7 @@ smi_from_recv_msg(ipmi_smi_t intf, struct ipmi_recv_msg *recv_msg,
2703 { 2703 {
2704 int m; 2704 int m;
2705 printk("Resend: "); 2705 printk("Resend: ");
2706 for (m=0; m<smi_msg->data_size; m++) 2706 for (m = 0; m < smi_msg->data_size; m++)
2707 printk(" %2.2x", smi_msg->data[m]); 2707 printk(" %2.2x", smi_msg->data[m]);
2708 printk("\n"); 2708 printk("\n");
2709 } 2709 }
@@ -2724,7 +2724,7 @@ ipmi_timeout_handler(long timeout_period)
2724 INIT_LIST_HEAD(&timeouts); 2724 INIT_LIST_HEAD(&timeouts);
2725 2725
2726 spin_lock(&interfaces_lock); 2726 spin_lock(&interfaces_lock);
2727 for (i=0; i<MAX_IPMI_INTERFACES; i++) { 2727 for (i = 0; i < MAX_IPMI_INTERFACES; i++) {
2728 intf = ipmi_interfaces[i]; 2728 intf = ipmi_interfaces[i];
2729 if (intf == NULL) 2729 if (intf == NULL)
2730 continue; 2730 continue;
@@ -2749,7 +2749,7 @@ ipmi_timeout_handler(long timeout_period)
2749 have timed out, putting them in the timeouts 2749 have timed out, putting them in the timeouts
2750 list. */ 2750 list. */
2751 spin_lock_irqsave(&(intf->seq_lock), flags); 2751 spin_lock_irqsave(&(intf->seq_lock), flags);
2752 for (j=0; j<IPMI_IPMB_NUM_SEQ; j++) { 2752 for (j = 0; j < IPMI_IPMB_NUM_SEQ; j++) {
2753 struct seq_table *ent = &(intf->seq_table[j]); 2753 struct seq_table *ent = &(intf->seq_table[j]);
2754 if (!ent->inuse) 2754 if (!ent->inuse)
2755 continue; 2755 continue;
@@ -2789,7 +2789,7 @@ ipmi_timeout_handler(long timeout_period)
2789 spin_unlock(&intf->counter_lock); 2789 spin_unlock(&intf->counter_lock);
2790 smi_msg = smi_from_recv_msg(intf, 2790 smi_msg = smi_from_recv_msg(intf,
2791 ent->recv_msg, j, ent->seqid); 2791 ent->recv_msg, j, ent->seqid);
2792 if(!smi_msg) 2792 if (! smi_msg)
2793 continue; 2793 continue;
2794 2794
2795 spin_unlock_irqrestore(&(intf->seq_lock),flags); 2795 spin_unlock_irqrestore(&(intf->seq_lock),flags);
@@ -2820,7 +2820,7 @@ static void ipmi_request_event(void)
2820 int i; 2820 int i;
2821 2821
2822 spin_lock(&interfaces_lock); 2822 spin_lock(&interfaces_lock);
2823 for (i=0; i<MAX_IPMI_INTERFACES; i++) { 2823 for (i = 0; i < MAX_IPMI_INTERFACES; i++) {
2824 intf = ipmi_interfaces[i]; 2824 intf = ipmi_interfaces[i];
2825 if (intf == NULL) 2825 if (intf == NULL)
2826 continue; 2826 continue;
@@ -2982,7 +2982,7 @@ static void send_panic_events(char *str)
2982 recv_msg.done = dummy_recv_done_handler; 2982 recv_msg.done = dummy_recv_done_handler;
2983 2983
2984 /* For every registered interface, send the event. */ 2984 /* For every registered interface, send the event. */
2985 for (i=0; i<MAX_IPMI_INTERFACES; i++) { 2985 for (i = 0; i < MAX_IPMI_INTERFACES; i++) {
2986 intf = ipmi_interfaces[i]; 2986 intf = ipmi_interfaces[i];
2987 if (intf == NULL) 2987 if (intf == NULL)
2988 continue; 2988 continue;
@@ -3009,7 +3009,7 @@ static void send_panic_events(char *str)
3009 if (!str) 3009 if (!str)
3010 return; 3010 return;
3011 3011
3012 for (i=0; i<MAX_IPMI_INTERFACES; i++) { 3012 for (i = 0; i < MAX_IPMI_INTERFACES; i++) {
3013 char *p = str; 3013 char *p = str;
3014 struct ipmi_ipmb_addr *ipmb; 3014 struct ipmi_ipmb_addr *ipmb;
3015 int j; 3015 int j;
@@ -3149,7 +3149,7 @@ static int panic_event(struct notifier_block *this,
3149 has_paniced = 1; 3149 has_paniced = 1;
3150 3150
3151 /* For every registered interface, set it to run to completion. */ 3151 /* For every registered interface, set it to run to completion. */
3152 for (i=0; i<MAX_IPMI_INTERFACES; i++) { 3152 for (i = 0; i < MAX_IPMI_INTERFACES; i++) {
3153 intf = ipmi_interfaces[i]; 3153 intf = ipmi_interfaces[i];
3154 if (intf == NULL) 3154 if (intf == NULL)
3155 continue; 3155 continue;
@@ -3180,7 +3180,7 @@ static int ipmi_init_msghandler(void)
3180 printk(KERN_INFO "ipmi message handler version " 3180 printk(KERN_INFO "ipmi message handler version "
3181 IPMI_DRIVER_VERSION "\n"); 3181 IPMI_DRIVER_VERSION "\n");
3182 3182
3183 for (i=0; i<MAX_IPMI_INTERFACES; i++) { 3183 for (i = 0; i < MAX_IPMI_INTERFACES; i++) {
3184 ipmi_interfaces[i] = NULL; 3184 ipmi_interfaces[i] = NULL;
3185 } 3185 }
3186 3186
diff --git a/drivers/char/ipmi/ipmi_poweroff.c b/drivers/char/ipmi/ipmi_poweroff.c
index 170590153df6..42ea9843b394 100644
--- a/drivers/char/ipmi/ipmi_poweroff.c
+++ b/drivers/char/ipmi/ipmi_poweroff.c
@@ -525,7 +525,7 @@ static void ipmi_po_new_smi(int if_num)
525 525
526 526
527 /* Scan for a poweroff method */ 527 /* Scan for a poweroff method */
528 for (i=0; i<NUM_PO_FUNCS; i++) { 528 for (i = 0; i < NUM_PO_FUNCS; i++) {
529 if (poweroff_functions[i].detect(ipmi_user)) 529 if (poweroff_functions[i].detect(ipmi_user))
530 goto found; 530 goto found;
531 } 531 }
diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c
index b43172aee4c6..1abec687865c 100644
--- a/drivers/char/ipmi/ipmi_si_intf.c
+++ b/drivers/char/ipmi/ipmi_si_intf.c
@@ -267,7 +267,7 @@ static enum si_sm_result start_next_msg(struct smi_info *smi_info)
267 entry = smi_info->xmit_msgs.next; 267 entry = smi_info->xmit_msgs.next;
268 } 268 }
269 269
270 if (!entry) { 270 if (! entry) {
271 smi_info->curr_msg = NULL; 271 smi_info->curr_msg = NULL;
272 rv = SI_SM_IDLE; 272 rv = SI_SM_IDLE;
273 } else { 273 } else {
@@ -328,7 +328,7 @@ static void start_clear_flags(struct smi_info *smi_info)
328 memory, we will re-enable the interrupt. */ 328 memory, we will re-enable the interrupt. */
329static inline void disable_si_irq(struct smi_info *smi_info) 329static inline void disable_si_irq(struct smi_info *smi_info)
330{ 330{
331 if ((smi_info->irq) && (!smi_info->interrupt_disabled)) { 331 if ((smi_info->irq) && (! smi_info->interrupt_disabled)) {
332 disable_irq_nosync(smi_info->irq); 332 disable_irq_nosync(smi_info->irq);
333 smi_info->interrupt_disabled = 1; 333 smi_info->interrupt_disabled = 1;
334 } 334 }
@@ -359,7 +359,7 @@ static void handle_flags(struct smi_info *smi_info)
359 } else if (smi_info->msg_flags & RECEIVE_MSG_AVAIL) { 359 } else if (smi_info->msg_flags & RECEIVE_MSG_AVAIL) {
360 /* Messages available. */ 360 /* Messages available. */
361 smi_info->curr_msg = ipmi_alloc_smi_msg(); 361 smi_info->curr_msg = ipmi_alloc_smi_msg();
362 if (!smi_info->curr_msg) { 362 if (! smi_info->curr_msg) {
363 disable_si_irq(smi_info); 363 disable_si_irq(smi_info);
364 smi_info->si_state = SI_NORMAL; 364 smi_info->si_state = SI_NORMAL;
365 return; 365 return;
@@ -378,7 +378,7 @@ static void handle_flags(struct smi_info *smi_info)
378 } else if (smi_info->msg_flags & EVENT_MSG_BUFFER_FULL) { 378 } else if (smi_info->msg_flags & EVENT_MSG_BUFFER_FULL) {
379 /* Events available. */ 379 /* Events available. */
380 smi_info->curr_msg = ipmi_alloc_smi_msg(); 380 smi_info->curr_msg = ipmi_alloc_smi_msg();
381 if (!smi_info->curr_msg) { 381 if (! smi_info->curr_msg) {
382 disable_si_irq(smi_info); 382 disable_si_irq(smi_info);
383 smi_info->si_state = SI_NORMAL; 383 smi_info->si_state = SI_NORMAL;
384 return; 384 return;
@@ -414,7 +414,7 @@ static void handle_transaction_done(struct smi_info *smi_info)
414#endif 414#endif
415 switch (smi_info->si_state) { 415 switch (smi_info->si_state) {
416 case SI_NORMAL: 416 case SI_NORMAL:
417 if (!smi_info->curr_msg) 417 if (! smi_info->curr_msg)
418 break; 418 break;
419 419
420 smi_info->curr_msg->rsp_size 420 smi_info->curr_msg->rsp_size
@@ -1047,7 +1047,7 @@ static int std_irq_setup(struct smi_info *info)
1047{ 1047{
1048 int rv; 1048 int rv;
1049 1049
1050 if (!info->irq) 1050 if (! info->irq)
1051 return 0; 1051 return 0;
1052 1052
1053 if (info->si_type == SI_BT) { 1053 if (info->si_type == SI_BT) {
@@ -1056,7 +1056,7 @@ static int std_irq_setup(struct smi_info *info)
1056 SA_INTERRUPT, 1056 SA_INTERRUPT,
1057 DEVICE_NAME, 1057 DEVICE_NAME,
1058 info); 1058 info);
1059 if (!rv) 1059 if (! rv)
1060 /* Enable the interrupt in the BT interface. */ 1060 /* Enable the interrupt in the BT interface. */
1061 info->io.outputb(&info->io, IPMI_BT_INTMASK_REG, 1061 info->io.outputb(&info->io, IPMI_BT_INTMASK_REG,
1062 IPMI_BT_INTMASK_ENABLE_IRQ_BIT); 1062 IPMI_BT_INTMASK_ENABLE_IRQ_BIT);
@@ -1081,7 +1081,7 @@ static int std_irq_setup(struct smi_info *info)
1081 1081
1082static void std_irq_cleanup(struct smi_info *info) 1082static void std_irq_cleanup(struct smi_info *info)
1083{ 1083{
1084 if (!info->irq) 1084 if (! info->irq)
1085 return; 1085 return;
1086 1086
1087 if (info->si_type == SI_BT) 1087 if (info->si_type == SI_BT)
@@ -1154,7 +1154,7 @@ static int port_setup(struct smi_info *info)
1154 unsigned int *addr = info->io.info; 1154 unsigned int *addr = info->io.info;
1155 int mapsize; 1155 int mapsize;
1156 1156
1157 if (!addr || (!*addr)) 1157 if (! addr || (! *addr))
1158 return -ENODEV; 1158 return -ENODEV;
1159 1159
1160 info->io_cleanup = port_cleanup; 1160 info->io_cleanup = port_cleanup;
@@ -1197,15 +1197,15 @@ static int try_init_port(int intf_num, struct smi_info **new_info)
1197{ 1197{
1198 struct smi_info *info; 1198 struct smi_info *info;
1199 1199
1200 if (!ports[intf_num]) 1200 if (! ports[intf_num])
1201 return -ENODEV; 1201 return -ENODEV;
1202 1202
1203 if (!is_new_interface(intf_num, IPMI_IO_ADDR_SPACE, 1203 if (! is_new_interface(intf_num, IPMI_IO_ADDR_SPACE,
1204 ports[intf_num])) 1204 ports[intf_num]))
1205 return -ENODEV; 1205 return -ENODEV;
1206 1206
1207 info = kmalloc(sizeof(*info), GFP_KERNEL); 1207 info = kmalloc(sizeof(*info), GFP_KERNEL);
1208 if (!info) { 1208 if (! info) {
1209 printk(KERN_ERR "ipmi_si: Could not allocate SI data (1)\n"); 1209 printk(KERN_ERR "ipmi_si: Could not allocate SI data (1)\n");
1210 return -ENOMEM; 1210 return -ENOMEM;
1211 } 1211 }
@@ -1215,10 +1215,10 @@ static int try_init_port(int intf_num, struct smi_info **new_info)
1215 info->io.info = &(ports[intf_num]); 1215 info->io.info = &(ports[intf_num]);
1216 info->io.addr = NULL; 1216 info->io.addr = NULL;
1217 info->io.regspacing = regspacings[intf_num]; 1217 info->io.regspacing = regspacings[intf_num];
1218 if (!info->io.regspacing) 1218 if (! info->io.regspacing)
1219 info->io.regspacing = DEFAULT_REGSPACING; 1219 info->io.regspacing = DEFAULT_REGSPACING;
1220 info->io.regsize = regsizes[intf_num]; 1220 info->io.regsize = regsizes[intf_num];
1221 if (!info->io.regsize) 1221 if (! info->io.regsize)
1222 info->io.regsize = DEFAULT_REGSPACING; 1222 info->io.regsize = DEFAULT_REGSPACING;
1223 info->io.regshift = regshifts[intf_num]; 1223 info->io.regshift = regshifts[intf_num];
1224 info->irq = 0; 1224 info->irq = 0;
@@ -1303,7 +1303,7 @@ static int mem_setup(struct smi_info *info)
1303 unsigned long *addr = info->io.info; 1303 unsigned long *addr = info->io.info;
1304 int mapsize; 1304 int mapsize;
1305 1305
1306 if (!addr || (!*addr)) 1306 if (! addr || (! *addr))
1307 return -ENODEV; 1307 return -ENODEV;
1308 1308
1309 info->io_cleanup = mem_cleanup; 1309 info->io_cleanup = mem_cleanup;
@@ -1358,15 +1358,15 @@ static int try_init_mem(int intf_num, struct smi_info **new_info)
1358{ 1358{
1359 struct smi_info *info; 1359 struct smi_info *info;
1360 1360
1361 if (!addrs[intf_num]) 1361 if (! addrs[intf_num])
1362 return -ENODEV; 1362 return -ENODEV;
1363 1363
1364 if (!is_new_interface(intf_num, IPMI_MEM_ADDR_SPACE, 1364 if (! is_new_interface(intf_num, IPMI_MEM_ADDR_SPACE,
1365 addrs[intf_num])) 1365 addrs[intf_num]))
1366 return -ENODEV; 1366 return -ENODEV;
1367 1367
1368 info = kmalloc(sizeof(*info), GFP_KERNEL); 1368 info = kmalloc(sizeof(*info), GFP_KERNEL);
1369 if (!info) { 1369 if (! info) {
1370 printk(KERN_ERR "ipmi_si: Could not allocate SI data (2)\n"); 1370 printk(KERN_ERR "ipmi_si: Could not allocate SI data (2)\n");
1371 return -ENOMEM; 1371 return -ENOMEM;
1372 } 1372 }
@@ -1376,10 +1376,10 @@ static int try_init_mem(int intf_num, struct smi_info **new_info)
1376 info->io.info = &addrs[intf_num]; 1376 info->io.info = &addrs[intf_num];
1377 info->io.addr = NULL; 1377 info->io.addr = NULL;
1378 info->io.regspacing = regspacings[intf_num]; 1378 info->io.regspacing = regspacings[intf_num];
1379 if (!info->io.regspacing) 1379 if (! info->io.regspacing)
1380 info->io.regspacing = DEFAULT_REGSPACING; 1380 info->io.regspacing = DEFAULT_REGSPACING;
1381 info->io.regsize = regsizes[intf_num]; 1381 info->io.regsize = regsizes[intf_num];
1382 if (!info->io.regsize) 1382 if (! info->io.regsize)
1383 info->io.regsize = DEFAULT_REGSPACING; 1383 info->io.regsize = DEFAULT_REGSPACING;
1384 info->io.regshift = regshifts[intf_num]; 1384 info->io.regshift = regshifts[intf_num];
1385 info->irq = 0; 1385 info->irq = 0;
@@ -1437,7 +1437,7 @@ static int acpi_gpe_irq_setup(struct smi_info *info)
1437{ 1437{
1438 acpi_status status; 1438 acpi_status status;
1439 1439
1440 if (!info->irq) 1440 if (! info->irq)
1441 return 0; 1441 return 0;
1442 1442
1443 /* FIXME - is level triggered right? */ 1443 /* FIXME - is level triggered right? */
@@ -1461,7 +1461,7 @@ static int acpi_gpe_irq_setup(struct smi_info *info)
1461 1461
1462static void acpi_gpe_irq_cleanup(struct smi_info *info) 1462static void acpi_gpe_irq_cleanup(struct smi_info *info)
1463{ 1463{
1464 if (!info->irq) 1464 if (! info->irq)
1465 return; 1465 return;
1466 1466
1467 acpi_remove_gpe_handler(NULL, info->irq, &ipmi_acpi_gpe); 1467 acpi_remove_gpe_handler(NULL, info->irq, &ipmi_acpi_gpe);
@@ -1537,10 +1537,10 @@ static int try_init_acpi(int intf_num, struct smi_info **new_info)
1537 addr_space = IPMI_MEM_ADDR_SPACE; 1537 addr_space = IPMI_MEM_ADDR_SPACE;
1538 else 1538 else
1539 addr_space = IPMI_IO_ADDR_SPACE; 1539 addr_space = IPMI_IO_ADDR_SPACE;
1540 if (!is_new_interface(-1, addr_space, spmi->addr.address)) 1540 if (! is_new_interface(-1, addr_space, spmi->addr.address))
1541 return -ENODEV; 1541 return -ENODEV;
1542 1542
1543 if (!spmi->addr.register_bit_width) { 1543 if (! spmi->addr.register_bit_width) {
1544 acpi_failure = 1; 1544 acpi_failure = 1;
1545 return -ENODEV; 1545 return -ENODEV;
1546 } 1546 }
@@ -1567,7 +1567,7 @@ static int try_init_acpi(int intf_num, struct smi_info **new_info)
1567 } 1567 }
1568 1568
1569 info = kmalloc(sizeof(*info), GFP_KERNEL); 1569 info = kmalloc(sizeof(*info), GFP_KERNEL);
1570 if (!info) { 1570 if (! info) {
1571 printk(KERN_ERR "ipmi_si: Could not allocate SI data (3)\n"); 1571 printk(KERN_ERR "ipmi_si: Could not allocate SI data (3)\n");
1572 return -ENOMEM; 1572 return -ENOMEM;
1573 } 1573 }
@@ -1645,7 +1645,7 @@ static int dmi_data_entries;
1645 1645
1646static int __init decode_dmi(struct dmi_header *dm, int intf_num) 1646static int __init decode_dmi(struct dmi_header *dm, int intf_num)
1647{ 1647{
1648 u8 *data = (u8 *)dm; 1648 u8 *data = (u8 *)dm;
1649 unsigned long base_addr; 1649 unsigned long base_addr;
1650 u8 reg_spacing; 1650 u8 reg_spacing;
1651 u8 len = dm->length; 1651 u8 len = dm->length;
@@ -1714,7 +1714,7 @@ static int __init decode_dmi(struct dmi_header *dm, int intf_num)
1714static void __init dmi_find_bmc(void) 1714static void __init dmi_find_bmc(void)
1715{ 1715{
1716 struct dmi_device *dev = NULL; 1716 struct dmi_device *dev = NULL;
1717 int intf_num = 0; 1717 int intf_num = 0;
1718 1718
1719 while ((dev = dmi_find_device(DMI_DEV_TYPE_IPMI, NULL, dev))) { 1719 while ((dev = dmi_find_device(DMI_DEV_TYPE_IPMI, NULL, dev))) {
1720 if (intf_num >= SI_MAX_DRIVERS) 1720 if (intf_num >= SI_MAX_DRIVERS)
@@ -1726,14 +1726,14 @@ static void __init dmi_find_bmc(void)
1726 1726
1727static int try_init_smbios(int intf_num, struct smi_info **new_info) 1727static int try_init_smbios(int intf_num, struct smi_info **new_info)
1728{ 1728{
1729 struct smi_info *info; 1729 struct smi_info *info;
1730 dmi_ipmi_data_t *ipmi_data = dmi_data+intf_num; 1730 dmi_ipmi_data_t *ipmi_data = dmi_data+intf_num;
1731 char *io_type; 1731 char *io_type;
1732 1732
1733 if (intf_num >= dmi_data_entries) 1733 if (intf_num >= dmi_data_entries)
1734 return -ENODEV; 1734 return -ENODEV;
1735 1735
1736 switch(ipmi_data->type) { 1736 switch (ipmi_data->type) {
1737 case 0x01: /* KCS */ 1737 case 0x01: /* KCS */
1738 si_type[intf_num] = "kcs"; 1738 si_type[intf_num] = "kcs";
1739 break; 1739 break;
@@ -1748,7 +1748,7 @@ static int try_init_smbios(int intf_num, struct smi_info **new_info)
1748 } 1748 }
1749 1749
1750 info = kmalloc(sizeof(*info), GFP_KERNEL); 1750 info = kmalloc(sizeof(*info), GFP_KERNEL);
1751 if (!info) { 1751 if (! info) {
1752 printk(KERN_ERR "ipmi_si: Could not allocate SI data (4)\n"); 1752 printk(KERN_ERR "ipmi_si: Could not allocate SI data (4)\n");
1753 return -ENOMEM; 1753 return -ENOMEM;
1754 } 1754 }
@@ -1772,7 +1772,7 @@ static int try_init_smbios(int intf_num, struct smi_info **new_info)
1772 1772
1773 regspacings[intf_num] = ipmi_data->offset; 1773 regspacings[intf_num] = ipmi_data->offset;
1774 info->io.regspacing = regspacings[intf_num]; 1774 info->io.regspacing = regspacings[intf_num];
1775 if (!info->io.regspacing) 1775 if (! info->io.regspacing)
1776 info->io.regspacing = DEFAULT_REGSPACING; 1776 info->io.regspacing = DEFAULT_REGSPACING;
1777 info->io.regsize = DEFAULT_REGSPACING; 1777 info->io.regsize = DEFAULT_REGSPACING;
1778 info->io.regshift = regshifts[intf_num]; 1778 info->io.regshift = regshifts[intf_num];
@@ -1814,14 +1814,14 @@ static int find_pci_smic(int intf_num, struct smi_info **new_info)
1814 1814
1815 pci_smic_checked = 1; 1815 pci_smic_checked = 1;
1816 1816
1817 if ((pci_dev = pci_get_device(PCI_HP_VENDOR_ID, PCI_MMC_DEVICE_ID, 1817 pci_dev = pci_get_device(PCI_HP_VENDOR_ID, PCI_MMC_DEVICE_ID, NULL);
1818 NULL))) 1818 if (! pci_dev) {
1819 ; 1819 pci_dev = pci_get_class(PCI_ERMC_CLASSCODE, NULL);
1820 else if ((pci_dev = pci_get_class(PCI_ERMC_CLASSCODE, NULL)) && 1820 if (pci_dev && (pci_dev->subsystem_vendor == PCI_HP_VENDOR_ID))
1821 pci_dev->subsystem_vendor == PCI_HP_VENDOR_ID) 1821 fe_rmc = 1;
1822 fe_rmc = 1; 1822 else
1823 else 1823 return -ENODEV;
1824 return -ENODEV; 1824 }
1825 1825
1826 error = pci_read_config_word(pci_dev, PCI_MMC_ADDR_CW, &base_addr); 1826 error = pci_read_config_word(pci_dev, PCI_MMC_ADDR_CW, &base_addr);
1827 if (error) 1827 if (error)
@@ -1834,7 +1834,7 @@ static int find_pci_smic(int intf_num, struct smi_info **new_info)
1834 } 1834 }
1835 1835
1836 /* Bit 0: 1 specifies programmed I/O, 0 specifies memory mapped I/O */ 1836 /* Bit 0: 1 specifies programmed I/O, 0 specifies memory mapped I/O */
1837 if (!(base_addr & 0x0001)) 1837 if (! (base_addr & 0x0001))
1838 { 1838 {
1839 pci_dev_put(pci_dev); 1839 pci_dev_put(pci_dev);
1840 printk(KERN_ERR 1840 printk(KERN_ERR
@@ -1844,17 +1844,17 @@ static int find_pci_smic(int intf_num, struct smi_info **new_info)
1844 } 1844 }
1845 1845
1846 base_addr &= 0xFFFE; 1846 base_addr &= 0xFFFE;
1847 if (!fe_rmc) 1847 if (! fe_rmc)
1848 /* Data register starts at base address + 1 in eRMC */ 1848 /* Data register starts at base address + 1 in eRMC */
1849 ++base_addr; 1849 ++base_addr;
1850 1850
1851 if (!is_new_interface(-1, IPMI_IO_ADDR_SPACE, base_addr)) { 1851 if (! is_new_interface(-1, IPMI_IO_ADDR_SPACE, base_addr)) {
1852 pci_dev_put(pci_dev); 1852 pci_dev_put(pci_dev);
1853 return -ENODEV; 1853 return -ENODEV;
1854 } 1854 }
1855 1855
1856 info = kmalloc(sizeof(*info), GFP_KERNEL); 1856 info = kmalloc(sizeof(*info), GFP_KERNEL);
1857 if (!info) { 1857 if (! info) {
1858 pci_dev_put(pci_dev); 1858 pci_dev_put(pci_dev);
1859 printk(KERN_ERR "ipmi_si: Could not allocate SI data (5)\n"); 1859 printk(KERN_ERR "ipmi_si: Could not allocate SI data (5)\n");
1860 return -ENOMEM; 1860 return -ENOMEM;
@@ -1865,7 +1865,7 @@ static int find_pci_smic(int intf_num, struct smi_info **new_info)
1865 ports[intf_num] = base_addr; 1865 ports[intf_num] = base_addr;
1866 info->io.info = &(ports[intf_num]); 1866 info->io.info = &(ports[intf_num]);
1867 info->io.regspacing = regspacings[intf_num]; 1867 info->io.regspacing = regspacings[intf_num];
1868 if (!info->io.regspacing) 1868 if (! info->io.regspacing)
1869 info->io.regspacing = DEFAULT_REGSPACING; 1869 info->io.regspacing = DEFAULT_REGSPACING;
1870 info->io.regsize = DEFAULT_REGSPACING; 1870 info->io.regsize = DEFAULT_REGSPACING;
1871 info->io.regshift = regshifts[intf_num]; 1871 info->io.regshift = regshifts[intf_num];
@@ -1886,7 +1886,7 @@ static int find_pci_smic(int intf_num, struct smi_info **new_info)
1886static int try_init_plug_and_play(int intf_num, struct smi_info **new_info) 1886static int try_init_plug_and_play(int intf_num, struct smi_info **new_info)
1887{ 1887{
1888#ifdef CONFIG_PCI 1888#ifdef CONFIG_PCI
1889 if (find_pci_smic(intf_num, new_info)==0) 1889 if (find_pci_smic(intf_num, new_info) == 0)
1890 return 0; 1890 return 0;
1891#endif 1891#endif
1892 /* Include other methods here. */ 1892 /* Include other methods here. */
@@ -1904,7 +1904,7 @@ static int try_get_dev_id(struct smi_info *smi_info)
1904 int rv = 0; 1904 int rv = 0;
1905 1905
1906 resp = kmalloc(IPMI_MAX_MSG_LENGTH, GFP_KERNEL); 1906 resp = kmalloc(IPMI_MAX_MSG_LENGTH, GFP_KERNEL);
1907 if (!resp) 1907 if (! resp)
1908 return -ENOMEM; 1908 return -ENOMEM;
1909 1909
1910 /* Do a Get Device ID command, since it comes back with some 1910 /* Do a Get Device ID command, since it comes back with some
@@ -1986,7 +1986,7 @@ static int stat_file_read_proc(char *page, char **start, off_t off,
1986 struct smi_info *smi = data; 1986 struct smi_info *smi = data;
1987 1987
1988 out += sprintf(out, "interrupts_enabled: %d\n", 1988 out += sprintf(out, "interrupts_enabled: %d\n",
1989 smi->irq && !smi->interrupt_disabled); 1989 smi->irq && ! smi->interrupt_disabled);
1990 out += sprintf(out, "short_timeouts: %ld\n", 1990 out += sprintf(out, "short_timeouts: %ld\n",
1991 smi->short_timeouts); 1991 smi->short_timeouts);
1992 out += sprintf(out, "long_timeouts: %ld\n", 1992 out += sprintf(out, "long_timeouts: %ld\n",
@@ -2024,8 +2024,8 @@ static int stat_file_read_proc(char *page, char **start, off_t off,
2024 */ 2024 */
2025static int oem_data_avail_to_receive_msg_avail(struct smi_info *smi_info) 2025static int oem_data_avail_to_receive_msg_avail(struct smi_info *smi_info)
2026{ 2026{
2027 smi_info->msg_flags = (smi_info->msg_flags & ~OEM_DATA_AVAIL) | 2027 smi_info->msg_flags = ((smi_info->msg_flags & ~OEM_DATA_AVAIL) |
2028 RECEIVE_MSG_AVAIL; 2028 RECEIVE_MSG_AVAIL);
2029 return 1; 2029 return 1;
2030} 2030}
2031 2031
@@ -2059,10 +2059,11 @@ static void setup_dell_poweredge_oem_data_handler(struct smi_info *smi_info)
2059{ 2059{
2060 struct ipmi_device_id *id = &smi_info->device_id; 2060 struct ipmi_device_id *id = &smi_info->device_id;
2061 const char mfr[3]=DELL_IANA_MFR_ID; 2061 const char mfr[3]=DELL_IANA_MFR_ID;
2062 if (!memcmp(mfr, id->manufacturer_id, sizeof(mfr)) && 2062 if (! memcmp(mfr, id->manufacturer_id, sizeof(mfr))
2063 id->device_id == DELL_POWEREDGE_8G_BMC_DEVICE_ID && 2063 && (id->device_id == DELL_POWEREDGE_8G_BMC_DEVICE_ID)
2064 id->device_revision == DELL_POWEREDGE_8G_BMC_DEVICE_REV && 2064 && (id->device_revision == DELL_POWEREDGE_8G_BMC_DEVICE_REV)
2065 id->ipmi_version == DELL_POWEREDGE_8G_BMC_IPMI_VERSION) { 2065 && (id->ipmi_version == DELL_POWEREDGE_8G_BMC_IPMI_VERSION))
2066 {
2066 smi_info->oem_data_avail_handler = 2067 smi_info->oem_data_avail_handler =
2067 oem_data_avail_to_receive_msg_avail; 2068 oem_data_avail_to_receive_msg_avail;
2068 } 2069 }
@@ -2092,19 +2093,15 @@ static int init_one_smi(int intf_num, struct smi_info **smi)
2092 if (rv) 2093 if (rv)
2093 rv = try_init_port(intf_num, &new_smi); 2094 rv = try_init_port(intf_num, &new_smi);
2094#ifdef CONFIG_ACPI_INTERPRETER 2095#ifdef CONFIG_ACPI_INTERPRETER
2095 if ((rv) && (si_trydefaults)) { 2096 if (rv && si_trydefaults)
2096 rv = try_init_acpi(intf_num, &new_smi); 2097 rv = try_init_acpi(intf_num, &new_smi);
2097 }
2098#endif 2098#endif
2099#ifdef CONFIG_X86 2099#ifdef CONFIG_X86
2100 if ((rv) && (si_trydefaults)) { 2100 if (rv && si_trydefaults)
2101 rv = try_init_smbios(intf_num, &new_smi); 2101 rv = try_init_smbios(intf_num, &new_smi);
2102 }
2103#endif 2102#endif
2104 if ((rv) && (si_trydefaults)) { 2103 if (rv && si_trydefaults)
2105 rv = try_init_plug_and_play(intf_num, &new_smi); 2104 rv = try_init_plug_and_play(intf_num, &new_smi);
2106 }
2107
2108 2105
2109 if (rv) 2106 if (rv)
2110 return rv; 2107 return rv;
@@ -2114,7 +2111,7 @@ static int init_one_smi(int intf_num, struct smi_info **smi)
2114 new_smi->si_sm = NULL; 2111 new_smi->si_sm = NULL;
2115 new_smi->handlers = NULL; 2112 new_smi->handlers = NULL;
2116 2113
2117 if (!new_smi->irq_setup) { 2114 if (! new_smi->irq_setup) {
2118 new_smi->irq = irqs[intf_num]; 2115 new_smi->irq = irqs[intf_num];
2119 new_smi->irq_setup = std_irq_setup; 2116 new_smi->irq_setup = std_irq_setup;
2120 new_smi->irq_cleanup = std_irq_cleanup; 2117 new_smi->irq_cleanup = std_irq_cleanup;
@@ -2148,7 +2145,7 @@ static int init_one_smi(int intf_num, struct smi_info **smi)
2148 2145
2149 /* Allocate the state machine's data and initialize it. */ 2146 /* Allocate the state machine's data and initialize it. */
2150 new_smi->si_sm = kmalloc(new_smi->handlers->size(), GFP_KERNEL); 2147 new_smi->si_sm = kmalloc(new_smi->handlers->size(), GFP_KERNEL);
2151 if (!new_smi->si_sm) { 2148 if (! new_smi->si_sm) {
2152 printk(" Could not allocate state machine memory\n"); 2149 printk(" Could not allocate state machine memory\n");
2153 rv = -ENOMEM; 2150 rv = -ENOMEM;
2154 goto out_err; 2151 goto out_err;
@@ -2256,7 +2253,7 @@ static int init_one_smi(int intf_num, struct smi_info **smi)
2256 2253
2257 /* Wait for the timer to stop. This avoids problems with race 2254 /* Wait for the timer to stop. This avoids problems with race
2258 conditions removing the timer here. */ 2255 conditions removing the timer here. */
2259 while (!new_smi->timer_stopped) { 2256 while (! new_smi->timer_stopped) {
2260 set_current_state(TASK_UNINTERRUPTIBLE); 2257 set_current_state(TASK_UNINTERRUPTIBLE);
2261 schedule_timeout(1); 2258 schedule_timeout(1);
2262 } 2259 }
@@ -2296,7 +2293,7 @@ static __init int init_ipmi_si(void)
2296 /* Parse out the si_type string into its components. */ 2293 /* Parse out the si_type string into its components. */
2297 str = si_type_str; 2294 str = si_type_str;
2298 if (*str != '\0') { 2295 if (*str != '\0') {
2299 for (i=0; (i<SI_MAX_PARMS) && (*str != '\0'); i++) { 2296 for (i = 0; (i < SI_MAX_PARMS) && (*str != '\0'); i++) {
2300 si_type[i] = str; 2297 si_type[i] = str;
2301 str = strchr(str, ','); 2298 str = strchr(str, ',');
2302 if (str) { 2299 if (str) {
@@ -2315,7 +2312,7 @@ static __init int init_ipmi_si(void)
2315#endif 2312#endif
2316 2313
2317 rv = init_one_smi(0, &(smi_infos[pos])); 2314 rv = init_one_smi(0, &(smi_infos[pos]));
2318 if (rv && !ports[0] && si_trydefaults) { 2315 if (rv && ! ports[0] && si_trydefaults) {
2319 /* If we are trying defaults and the initial port is 2316 /* If we are trying defaults and the initial port is
2320 not set, then set it. */ 2317 not set, then set it. */
2321 si_type[0] = "kcs"; 2318 si_type[0] = "kcs";
@@ -2337,7 +2334,7 @@ static __init int init_ipmi_si(void)
2337 if (rv == 0) 2334 if (rv == 0)
2338 pos++; 2335 pos++;
2339 2336
2340 for (i=1; i < SI_MAX_PARMS; i++) { 2337 for (i = 1; i < SI_MAX_PARMS; i++) {
2341 rv = init_one_smi(i, &(smi_infos[pos])); 2338 rv = init_one_smi(i, &(smi_infos[pos]));
2342 if (rv == 0) 2339 if (rv == 0)
2343 pos++; 2340 pos++;
@@ -2379,14 +2376,14 @@ static void __exit cleanup_one_si(struct smi_info *to_clean)
2379 2376
2380 /* Wait for the timer to stop. This avoids problems with race 2377 /* Wait for the timer to stop. This avoids problems with race
2381 conditions removing the timer here. */ 2378 conditions removing the timer here. */
2382 while (!to_clean->timer_stopped) { 2379 while (! to_clean->timer_stopped) {
2383 set_current_state(TASK_UNINTERRUPTIBLE); 2380 set_current_state(TASK_UNINTERRUPTIBLE);
2384 schedule_timeout(1); 2381 schedule_timeout(1);
2385 } 2382 }
2386 2383
2387 /* Interrupts and timeouts are stopped, now make sure the 2384 /* Interrupts and timeouts are stopped, now make sure the
2388 interface is in a clean state. */ 2385 interface is in a clean state. */
2389 while ((to_clean->curr_msg) || (to_clean->si_state != SI_NORMAL)) { 2386 while (to_clean->curr_msg || (to_clean->si_state != SI_NORMAL)) {
2390 poll(to_clean); 2387 poll(to_clean);
2391 set_current_state(TASK_UNINTERRUPTIBLE); 2388 set_current_state(TASK_UNINTERRUPTIBLE);
2392 schedule_timeout(1); 2389 schedule_timeout(1);
@@ -2410,10 +2407,10 @@ static __exit void cleanup_ipmi_si(void)
2410{ 2407{
2411 int i; 2408 int i;
2412 2409
2413 if (!initialized) 2410 if (! initialized)
2414 return; 2411 return;
2415 2412
2416 for (i=0; i<SI_MAX_DRIVERS; i++) { 2413 for (i = 0; i < SI_MAX_DRIVERS; i++) {
2417 cleanup_one_si(smi_infos[i]); 2414 cleanup_one_si(smi_infos[i]);
2418 } 2415 }
2419} 2416}
diff --git a/drivers/char/ipmi/ipmi_watchdog.c b/drivers/char/ipmi/ipmi_watchdog.c
index 77ece1f218cd..e71aaae855ad 100644
--- a/drivers/char/ipmi/ipmi_watchdog.c
+++ b/drivers/char/ipmi/ipmi_watchdog.c
@@ -657,19 +657,18 @@ static ssize_t ipmi_read(struct file *file,
657 657
658static int ipmi_open(struct inode *ino, struct file *filep) 658static int ipmi_open(struct inode *ino, struct file *filep)
659{ 659{
660 switch (iminor(ino)) 660 switch (iminor(ino)) {
661 { 661 case WATCHDOG_MINOR:
662 case WATCHDOG_MINOR: 662 if (test_and_set_bit(0, &ipmi_wdog_open))
663 if(test_and_set_bit(0, &ipmi_wdog_open))
664 return -EBUSY; 663 return -EBUSY;
665 664
666 /* Don't start the timer now, let it start on the 665 /* Don't start the timer now, let it start on the
667 first heartbeat. */ 666 first heartbeat. */
668 ipmi_start_timer_on_heartbeat = 1; 667 ipmi_start_timer_on_heartbeat = 1;
669 return nonseekable_open(ino, filep); 668 return nonseekable_open(ino, filep);
670 669
671 default: 670 default:
672 return (-ENODEV); 671 return (-ENODEV);
673 } 672 }
674} 673}
675 674