aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/edac/e752x_edac.c
diff options
context:
space:
mode:
authorDouglas Thompson <dougthompson@xmission.com>2007-07-19 04:50:13 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-19 13:04:55 -0400
commit052dfb45ccb5ea354a426b52556bcfee75b9d2f5 (patch)
tree3f85586625b25f7eaf0471c99fc296bdd4ada4eb /drivers/edac/e752x_edac.c
parent6bc7840411b8c7fe11e1879d882c88119d1c033e (diff)
drivers/edac: cleanup spaces-gotos after Lindent messup
This patch fixes some remnant spaces inserted by the use of Lindent. Seems Lindent adds some spaces when it shoulded. These have been fixed. In addition, goto targets have issues, these have been fixed in this patch. Signed-off-by: Douglas Thompson <dougthompson@xmission.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/edac/e752x_edac.c')
-rw-r--r--drivers/edac/e752x_edac.c181
1 files changed, 91 insertions, 90 deletions
diff --git a/drivers/edac/e752x_edac.c b/drivers/edac/e752x_edac.c
index 45c55a067c73..a041218370f9 100644
--- a/drivers/edac/e752x_edac.c
+++ b/drivers/edac/e752x_edac.c
@@ -204,21 +204,21 @@ struct e752x_error_info {
204 204
205static const struct e752x_dev_info e752x_devs[] = { 205static const struct e752x_dev_info e752x_devs[] = {
206 [E7520] = { 206 [E7520] = {
207 .err_dev = PCI_DEVICE_ID_INTEL_7520_1_ERR, 207 .err_dev = PCI_DEVICE_ID_INTEL_7520_1_ERR,
208 .ctl_dev = PCI_DEVICE_ID_INTEL_7520_0, 208 .ctl_dev = PCI_DEVICE_ID_INTEL_7520_0,
209 .ctl_name = "E7520"}, 209 .ctl_name = "E7520"},
210 [E7525] = { 210 [E7525] = {
211 .err_dev = PCI_DEVICE_ID_INTEL_7525_1_ERR, 211 .err_dev = PCI_DEVICE_ID_INTEL_7525_1_ERR,
212 .ctl_dev = PCI_DEVICE_ID_INTEL_7525_0, 212 .ctl_dev = PCI_DEVICE_ID_INTEL_7525_0,
213 .ctl_name = "E7525"}, 213 .ctl_name = "E7525"},
214 [E7320] = { 214 [E7320] = {
215 .err_dev = PCI_DEVICE_ID_INTEL_7320_1_ERR, 215 .err_dev = PCI_DEVICE_ID_INTEL_7320_1_ERR,
216 .ctl_dev = PCI_DEVICE_ID_INTEL_7320_0, 216 .ctl_dev = PCI_DEVICE_ID_INTEL_7320_0,
217 .ctl_name = "E7320"}, 217 .ctl_name = "E7320"},
218}; 218};
219 219
220static unsigned long ctl_page_to_phys(struct mem_ctl_info *mci, 220static unsigned long ctl_page_to_phys(struct mem_ctl_info *mci,
221 unsigned long page) 221 unsigned long page)
222{ 222{
223 u32 remap; 223 u32 remap;
224 struct e752x_pvt *pvt = (struct e752x_pvt *)mci->pvt_info; 224 struct e752x_pvt *pvt = (struct e752x_pvt *)mci->pvt_info;
@@ -241,7 +241,7 @@ static unsigned long ctl_page_to_phys(struct mem_ctl_info *mci,
241} 241}
242 242
243static void do_process_ce(struct mem_ctl_info *mci, u16 error_one, 243static void do_process_ce(struct mem_ctl_info *mci, u16 error_one,
244 u32 sec1_add, u16 sec1_syndrome) 244 u32 sec1_add, u16 sec1_syndrome)
245{ 245{
246 u32 page; 246 u32 page;
247 int row; 247 int row;
@@ -259,10 +259,10 @@ static void do_process_ce(struct mem_ctl_info *mci, u16 error_one,
259 /* chip select are bits 14 & 13 */ 259 /* chip select are bits 14 & 13 */
260 row = ((page >> 1) & 3); 260 row = ((page >> 1) & 3);
261 e752x_printk(KERN_WARNING, 261 e752x_printk(KERN_WARNING,
262 "Test row %d Table %d %d %d %d %d %d %d %d\n", row, 262 "Test row %d Table %d %d %d %d %d %d %d %d\n", row,
263 pvt->map[0], pvt->map[1], pvt->map[2], pvt->map[3], 263 pvt->map[0], pvt->map[1], pvt->map[2], pvt->map[3],
264 pvt->map[4], pvt->map[5], pvt->map[6], 264 pvt->map[4], pvt->map[5], pvt->map[6],
265 pvt->map[7]); 265 pvt->map[7]);
266 266
267 /* test for channel remapping */ 267 /* test for channel remapping */
268 for (i = 0; i < 8; i++) { 268 for (i = 0; i < 8; i++) {
@@ -289,12 +289,12 @@ static void do_process_ce(struct mem_ctl_info *mci, u16 error_one,
289 289
290 /* e752x mc reads 34:6 of the DRAM linear address */ 290 /* e752x mc reads 34:6 of the DRAM linear address */
291 edac_mc_handle_ce(mci, page, offset_in_page(sec1_add << 4), 291 edac_mc_handle_ce(mci, page, offset_in_page(sec1_add << 4),
292 sec1_syndrome, row, channel, "e752x CE"); 292 sec1_syndrome, row, channel, "e752x CE");
293} 293}
294 294
295static inline void process_ce(struct mem_ctl_info *mci, u16 error_one, 295static inline void process_ce(struct mem_ctl_info *mci, u16 error_one,
296 u32 sec1_add, u16 sec1_syndrome, int *error_found, 296 u32 sec1_add, u16 sec1_syndrome, int *error_found,
297 int handle_error) 297 int handle_error)
298{ 298{
299 *error_found = 1; 299 *error_found = 1;
300 300
@@ -303,7 +303,7 @@ static inline void process_ce(struct mem_ctl_info *mci, u16 error_one,
303} 303}
304 304
305static void do_process_ue(struct mem_ctl_info *mci, u16 error_one, 305static void do_process_ue(struct mem_ctl_info *mci, u16 error_one,
306 u32 ded_add, u32 scrb_add) 306 u32 ded_add, u32 scrb_add)
307{ 307{
308 u32 error_2b, block_page; 308 u32 error_2b, block_page;
309 int row; 309 int row;
@@ -318,14 +318,14 @@ static void do_process_ue(struct mem_ctl_info *mci, u16 error_one,
318 block_page = error_2b >> (PAGE_SHIFT - 4); 318 block_page = error_2b >> (PAGE_SHIFT - 4);
319 319
320 row = pvt->mc_symmetric ? 320 row = pvt->mc_symmetric ?
321 /* chip select are bits 14 & 13 */ 321 /* chip select are bits 14 & 13 */
322 ((block_page >> 1) & 3) : 322 ((block_page >> 1) & 3) :
323 edac_mc_find_csrow_by_page(mci, block_page); 323 edac_mc_find_csrow_by_page(mci, block_page);
324 324
325 /* e752x mc reads 34:6 of the DRAM linear address */ 325 /* e752x mc reads 34:6 of the DRAM linear address */
326 edac_mc_handle_ue(mci, block_page, 326 edac_mc_handle_ue(mci, block_page,
327 offset_in_page(error_2b << 4), 327 offset_in_page(error_2b << 4),
328 row, "e752x UE from Read"); 328 row, "e752x UE from Read");
329 } 329 }
330 if (error_one & 0x0404) { 330 if (error_one & 0x0404) {
331 error_2b = scrb_add; 331 error_2b = scrb_add;
@@ -334,20 +334,20 @@ static void do_process_ue(struct mem_ctl_info *mci, u16 error_one,
334 block_page = error_2b >> (PAGE_SHIFT - 4); 334 block_page = error_2b >> (PAGE_SHIFT - 4);
335 335
336 row = pvt->mc_symmetric ? 336 row = pvt->mc_symmetric ?
337 /* chip select are bits 14 & 13 */ 337 /* chip select are bits 14 & 13 */
338 ((block_page >> 1) & 3) : 338 ((block_page >> 1) & 3) :
339 edac_mc_find_csrow_by_page(mci, block_page); 339 edac_mc_find_csrow_by_page(mci, block_page);
340 340
341 /* e752x mc reads 34:6 of the DRAM linear address */ 341 /* e752x mc reads 34:6 of the DRAM linear address */
342 edac_mc_handle_ue(mci, block_page, 342 edac_mc_handle_ue(mci, block_page,
343 offset_in_page(error_2b << 4), 343 offset_in_page(error_2b << 4),
344 row, "e752x UE from Scruber"); 344 row, "e752x UE from Scruber");
345 } 345 }
346} 346}
347 347
348static inline void process_ue(struct mem_ctl_info *mci, u16 error_one, 348static inline void process_ue(struct mem_ctl_info *mci, u16 error_one,
349 u32 ded_add, u32 scrb_add, int *error_found, 349 u32 ded_add, u32 scrb_add, int *error_found,
350 int handle_error) 350 int handle_error)
351{ 351{
352 *error_found = 1; 352 *error_found = 1;
353 353
@@ -377,15 +377,15 @@ static void do_process_ded_retry(struct mem_ctl_info *mci, u16 error,
377 error_1b = retry_add; 377 error_1b = retry_add;
378 page = error_1b >> (PAGE_SHIFT - 4); /* convert the addr to 4k page */ 378 page = error_1b >> (PAGE_SHIFT - 4); /* convert the addr to 4k page */
379 row = pvt->mc_symmetric ? ((page >> 1) & 3) : /* chip select are bits 14 & 13 */ 379 row = pvt->mc_symmetric ? ((page >> 1) & 3) : /* chip select are bits 14 & 13 */
380 edac_mc_find_csrow_by_page(mci, page); 380 edac_mc_find_csrow_by_page(mci, page);
381 e752x_mc_printk(mci, KERN_WARNING, 381 e752x_mc_printk(mci, KERN_WARNING,
382 "CE page 0x%lx, row %d : Memory read retry\n", 382 "CE page 0x%lx, row %d : Memory read retry\n",
383 (long unsigned int)page, row); 383 (long unsigned int)page, row);
384} 384}
385 385
386static inline void process_ded_retry(struct mem_ctl_info *mci, u16 error, 386static inline void process_ded_retry(struct mem_ctl_info *mci, u16 error,
387 u32 retry_add, int *error_found, 387 u32 retry_add, int *error_found,
388 int handle_error) 388 int handle_error)
389{ 389{
390 *error_found = 1; 390 *error_found = 1;
391 391
@@ -418,7 +418,7 @@ static void do_global_error(int fatal, u32 errors)
418 for (i = 0; i < 11; i++) { 418 for (i = 0; i < 11; i++) {
419 if (errors & (1 << i)) 419 if (errors & (1 << i))
420 e752x_printk(KERN_WARNING, "%sError %s\n", 420 e752x_printk(KERN_WARNING, "%sError %s\n",
421 fatal_message[fatal], global_message[i]); 421 fatal_message[fatal], global_message[i]);
422 } 422 }
423} 423}
424 424
@@ -445,12 +445,12 @@ static void do_hub_error(int fatal, u8 errors)
445 for (i = 0; i < 7; i++) { 445 for (i = 0; i < 7; i++) {
446 if (errors & (1 << i)) 446 if (errors & (1 << i))
447 e752x_printk(KERN_WARNING, "%sError %s\n", 447 e752x_printk(KERN_WARNING, "%sError %s\n",
448 fatal_message[fatal], hub_message[i]); 448 fatal_message[fatal], hub_message[i]);
449 } 449 }
450} 450}
451 451
452static inline void hub_error(int fatal, u8 errors, int *error_found, 452static inline void hub_error(int fatal, u8 errors, int *error_found,
453 int handle_error) 453 int handle_error)
454{ 454{
455 *error_found = 1; 455 *error_found = 1;
456 456
@@ -472,7 +472,7 @@ static void do_membuf_error(u8 errors)
472 for (i = 0; i < 4; i++) { 472 for (i = 0; i < 4; i++) {
473 if (errors & (1 << i)) 473 if (errors & (1 << i))
474 e752x_printk(KERN_WARNING, "Non-Fatal Error %s\n", 474 e752x_printk(KERN_WARNING, "Non-Fatal Error %s\n",
475 membuf_message[i]); 475 membuf_message[i]);
476 } 476 }
477} 477}
478 478
@@ -503,7 +503,7 @@ static void do_sysbus_error(int fatal, u32 errors)
503 for (i = 0; i < 10; i++) { 503 for (i = 0; i < 10; i++) {
504 if (errors & (1 << i)) 504 if (errors & (1 << i))
505 e752x_printk(KERN_WARNING, "%sError System Bus %s\n", 505 e752x_printk(KERN_WARNING, "%sError System Bus %s\n",
506 fatal_message[fatal], sysbus_message[i]); 506 fatal_message[fatal], sysbus_message[i]);
507 } 507 }
508} 508}
509 509
@@ -517,7 +517,7 @@ static inline void sysbus_error(int fatal, u32 errors, int *error_found,
517} 517}
518 518
519static void e752x_check_hub_interface(struct e752x_error_info *info, 519static void e752x_check_hub_interface(struct e752x_error_info *info,
520 int *error_found, int handle_error) 520 int *error_found, int handle_error)
521{ 521{
522 u8 stat8; 522 u8 stat8;
523 523
@@ -550,7 +550,7 @@ static void e752x_check_hub_interface(struct e752x_error_info *info,
550} 550}
551 551
552static void e752x_check_sysbus(struct e752x_error_info *info, 552static void e752x_check_sysbus(struct e752x_error_info *info,
553 int *error_found, int handle_error) 553 int *error_found, int handle_error)
554{ 554{
555 u32 stat32, error32; 555 u32 stat32, error32;
556 556
@@ -577,7 +577,7 @@ static void e752x_check_sysbus(struct e752x_error_info *info,
577} 577}
578 578
579static void e752x_check_membuf(struct e752x_error_info *info, 579static void e752x_check_membuf(struct e752x_error_info *info,
580 int *error_found, int handle_error) 580 int *error_found, int handle_error)
581{ 581{
582 u8 stat8; 582 u8 stat8;
583 583
@@ -597,8 +597,8 @@ static void e752x_check_membuf(struct e752x_error_info *info,
597} 597}
598 598
599static void e752x_check_dram(struct mem_ctl_info *mci, 599static void e752x_check_dram(struct mem_ctl_info *mci,
600 struct e752x_error_info *info, int *error_found, 600 struct e752x_error_info *info, int *error_found,
601 int handle_error) 601 int handle_error)
602{ 602{
603 u16 error_one, error_next; 603 u16 error_one, error_next;
604 604
@@ -608,11 +608,11 @@ static void e752x_check_dram(struct mem_ctl_info *mci,
608 /* decode and report errors */ 608 /* decode and report errors */
609 if (error_one & 0x0101) /* check first error correctable */ 609 if (error_one & 0x0101) /* check first error correctable */
610 process_ce(mci, error_one, info->dram_sec1_add, 610 process_ce(mci, error_one, info->dram_sec1_add,
611 info->dram_sec1_syndrome, error_found, handle_error); 611 info->dram_sec1_syndrome, error_found, handle_error);
612 612
613 if (error_next & 0x0101) /* check next error correctable */ 613 if (error_next & 0x0101) /* check next error correctable */
614 process_ce(mci, error_next, info->dram_sec2_add, 614 process_ce(mci, error_next, info->dram_sec2_add,
615 info->dram_sec2_syndrome, error_found, handle_error); 615 info->dram_sec2_syndrome, error_found, handle_error);
616 616
617 if (error_one & 0x4040) 617 if (error_one & 0x4040)
618 process_ue_no_info_wr(mci, error_found, handle_error); 618 process_ue_no_info_wr(mci, error_found, handle_error);
@@ -622,26 +622,26 @@ static void e752x_check_dram(struct mem_ctl_info *mci,
622 622
623 if (error_one & 0x2020) 623 if (error_one & 0x2020)
624 process_ded_retry(mci, error_one, info->dram_retr_add, 624 process_ded_retry(mci, error_one, info->dram_retr_add,
625 error_found, handle_error); 625 error_found, handle_error);
626 626
627 if (error_next & 0x2020) 627 if (error_next & 0x2020)
628 process_ded_retry(mci, error_next, info->dram_retr_add, 628 process_ded_retry(mci, error_next, info->dram_retr_add,
629 error_found, handle_error); 629 error_found, handle_error);
630 630
631 if (error_one & 0x0808) 631 if (error_one & 0x0808)
632 process_threshold_ce(mci, error_one, error_found, handle_error); 632 process_threshold_ce(mci, error_one, error_found, handle_error);
633 633
634 if (error_next & 0x0808) 634 if (error_next & 0x0808)
635 process_threshold_ce(mci, error_next, error_found, 635 process_threshold_ce(mci, error_next, error_found,
636 handle_error); 636 handle_error);
637 637
638 if (error_one & 0x0606) 638 if (error_one & 0x0606)
639 process_ue(mci, error_one, info->dram_ded_add, 639 process_ue(mci, error_one, info->dram_ded_add,
640 info->dram_scrb_add, error_found, handle_error); 640 info->dram_scrb_add, error_found, handle_error);
641 641
642 if (error_next & 0x0606) 642 if (error_next & 0x0606)
643 process_ue(mci, error_next, info->dram_ded_add, 643 process_ue(mci, error_next, info->dram_ded_add,
644 info->dram_scrb_add, error_found, handle_error); 644 info->dram_scrb_add, error_found, handle_error);
645} 645}
646 646
647static void e752x_get_error_info(struct mem_ctl_info *mci, 647static void e752x_get_error_info(struct mem_ctl_info *mci,
@@ -658,38 +658,38 @@ static void e752x_get_error_info(struct mem_ctl_info *mci,
658 if (info->ferr_global) { 658 if (info->ferr_global) {
659 pci_read_config_byte(dev, E752X_HI_FERR, &info->hi_ferr); 659 pci_read_config_byte(dev, E752X_HI_FERR, &info->hi_ferr);
660 pci_read_config_word(dev, E752X_SYSBUS_FERR, 660 pci_read_config_word(dev, E752X_SYSBUS_FERR,
661 &info->sysbus_ferr); 661 &info->sysbus_ferr);
662 pci_read_config_byte(dev, E752X_BUF_FERR, &info->buf_ferr); 662 pci_read_config_byte(dev, E752X_BUF_FERR, &info->buf_ferr);
663 pci_read_config_word(dev, E752X_DRAM_FERR, &info->dram_ferr); 663 pci_read_config_word(dev, E752X_DRAM_FERR, &info->dram_ferr);
664 pci_read_config_dword(dev, E752X_DRAM_SEC1_ADD, 664 pci_read_config_dword(dev, E752X_DRAM_SEC1_ADD,
665 &info->dram_sec1_add); 665 &info->dram_sec1_add);
666 pci_read_config_word(dev, E752X_DRAM_SEC1_SYNDROME, 666 pci_read_config_word(dev, E752X_DRAM_SEC1_SYNDROME,
667 &info->dram_sec1_syndrome); 667 &info->dram_sec1_syndrome);
668 pci_read_config_dword(dev, E752X_DRAM_DED_ADD, 668 pci_read_config_dword(dev, E752X_DRAM_DED_ADD,
669 &info->dram_ded_add); 669 &info->dram_ded_add);
670 pci_read_config_dword(dev, E752X_DRAM_SCRB_ADD, 670 pci_read_config_dword(dev, E752X_DRAM_SCRB_ADD,
671 &info->dram_scrb_add); 671 &info->dram_scrb_add);
672 pci_read_config_dword(dev, E752X_DRAM_RETR_ADD, 672 pci_read_config_dword(dev, E752X_DRAM_RETR_ADD,
673 &info->dram_retr_add); 673 &info->dram_retr_add);
674 674
675 if (info->hi_ferr & 0x7f) 675 if (info->hi_ferr & 0x7f)
676 pci_write_config_byte(dev, E752X_HI_FERR, 676 pci_write_config_byte(dev, E752X_HI_FERR,
677 info->hi_ferr); 677 info->hi_ferr);
678 678
679 if (info->sysbus_ferr) 679 if (info->sysbus_ferr)
680 pci_write_config_word(dev, E752X_SYSBUS_FERR, 680 pci_write_config_word(dev, E752X_SYSBUS_FERR,
681 info->sysbus_ferr); 681 info->sysbus_ferr);
682 682
683 if (info->buf_ferr & 0x0f) 683 if (info->buf_ferr & 0x0f)
684 pci_write_config_byte(dev, E752X_BUF_FERR, 684 pci_write_config_byte(dev, E752X_BUF_FERR,
685 info->buf_ferr); 685 info->buf_ferr);
686 686
687 if (info->dram_ferr) 687 if (info->dram_ferr)
688 pci_write_bits16(pvt->bridge_ck, E752X_DRAM_FERR, 688 pci_write_bits16(pvt->bridge_ck, E752X_DRAM_FERR,
689 info->dram_ferr, info->dram_ferr); 689 info->dram_ferr, info->dram_ferr);
690 690
691 pci_write_config_dword(dev, E752X_FERR_GLOBAL, 691 pci_write_config_dword(dev, E752X_FERR_GLOBAL,
692 info->ferr_global); 692 info->ferr_global);
693 } 693 }
694 694
695 pci_read_config_dword(dev, E752X_NERR_GLOBAL, &info->nerr_global); 695 pci_read_config_dword(dev, E752X_NERR_GLOBAL, &info->nerr_global);
@@ -697,38 +697,38 @@ static void e752x_get_error_info(struct mem_ctl_info *mci,
697 if (info->nerr_global) { 697 if (info->nerr_global) {
698 pci_read_config_byte(dev, E752X_HI_NERR, &info->hi_nerr); 698 pci_read_config_byte(dev, E752X_HI_NERR, &info->hi_nerr);
699 pci_read_config_word(dev, E752X_SYSBUS_NERR, 699 pci_read_config_word(dev, E752X_SYSBUS_NERR,
700 &info->sysbus_nerr); 700 &info->sysbus_nerr);
701 pci_read_config_byte(dev, E752X_BUF_NERR, &info->buf_nerr); 701 pci_read_config_byte(dev, E752X_BUF_NERR, &info->buf_nerr);
702 pci_read_config_word(dev, E752X_DRAM_NERR, &info->dram_nerr); 702 pci_read_config_word(dev, E752X_DRAM_NERR, &info->dram_nerr);
703 pci_read_config_dword(dev, E752X_DRAM_SEC2_ADD, 703 pci_read_config_dword(dev, E752X_DRAM_SEC2_ADD,
704 &info->dram_sec2_add); 704 &info->dram_sec2_add);
705 pci_read_config_word(dev, E752X_DRAM_SEC2_SYNDROME, 705 pci_read_config_word(dev, E752X_DRAM_SEC2_SYNDROME,
706 &info->dram_sec2_syndrome); 706 &info->dram_sec2_syndrome);
707 707
708 if (info->hi_nerr & 0x7f) 708 if (info->hi_nerr & 0x7f)
709 pci_write_config_byte(dev, E752X_HI_NERR, 709 pci_write_config_byte(dev, E752X_HI_NERR,
710 info->hi_nerr); 710 info->hi_nerr);
711 711
712 if (info->sysbus_nerr) 712 if (info->sysbus_nerr)
713 pci_write_config_word(dev, E752X_SYSBUS_NERR, 713 pci_write_config_word(dev, E752X_SYSBUS_NERR,
714 info->sysbus_nerr); 714 info->sysbus_nerr);
715 715
716 if (info->buf_nerr & 0x0f) 716 if (info->buf_nerr & 0x0f)
717 pci_write_config_byte(dev, E752X_BUF_NERR, 717 pci_write_config_byte(dev, E752X_BUF_NERR,
718 info->buf_nerr); 718 info->buf_nerr);
719 719
720 if (info->dram_nerr) 720 if (info->dram_nerr)
721 pci_write_bits16(pvt->bridge_ck, E752X_DRAM_NERR, 721 pci_write_bits16(pvt->bridge_ck, E752X_DRAM_NERR,
722 info->dram_nerr, info->dram_nerr); 722 info->dram_nerr, info->dram_nerr);
723 723
724 pci_write_config_dword(dev, E752X_NERR_GLOBAL, 724 pci_write_config_dword(dev, E752X_NERR_GLOBAL,
725 info->nerr_global); 725 info->nerr_global);
726 } 726 }
727} 727}
728 728
729static int e752x_process_error_info(struct mem_ctl_info *mci, 729static int e752x_process_error_info(struct mem_ctl_info *mci,
730 struct e752x_error_info *info, 730 struct e752x_error_info *info,
731 int handle_errors) 731 int handle_errors)
732{ 732{
733 u32 error32, stat32; 733 u32 error32, stat32;
734 int error_found; 734 int error_found;
@@ -775,7 +775,7 @@ static inline int dual_channel_active(u16 ddrcsr)
775} 775}
776 776
777static void e752x_init_csrows(struct mem_ctl_info *mci, struct pci_dev *pdev, 777static void e752x_init_csrows(struct mem_ctl_info *mci, struct pci_dev *pdev,
778 u16 ddrcsr) 778 u16 ddrcsr)
779{ 779{
780 struct csrow_info *csrow; 780 struct csrow_info *csrow;
781 unsigned long last_cumul_size; 781 unsigned long last_cumul_size;
@@ -841,7 +841,7 @@ static void e752x_init_csrows(struct mem_ctl_info *mci, struct pci_dev *pdev,
841} 841}
842 842
843static void e752x_init_mem_map_table(struct pci_dev *pdev, 843static void e752x_init_mem_map_table(struct pci_dev *pdev,
844 struct e752x_pvt *pvt) 844 struct e752x_pvt *pvt)
845{ 845{
846 int index; 846 int index;
847 u8 value, last, row, stat8; 847 u8 value, last, row, stat8;
@@ -864,11 +864,11 @@ static void e752x_init_mem_map_table(struct pci_dev *pdev,
864 * sided 864 * sided
865 */ 865 */
866 pci_read_config_byte(pdev, E752X_DRB + index + 1, 866 pci_read_config_byte(pdev, E752X_DRB + index + 1,
867 &value); 867 &value);
868 pvt->map[index + 1] = (value == last) ? 0xff : /* the dimm is single sided, 868
869 so flag as empty */ 869 /* the dimm is single sided, so flag as empty */
870 row; /* this is a double sided dimm 870 /* this is a double sided dimm to save the next row #*/
871 to save the next row # */ 871 pvt->map[index + 1] = (value == last) ? 0xff : row;
872 row++; 872 row++;
873 last = value; 873 last = value;
874 } 874 }
@@ -881,7 +881,7 @@ static void e752x_init_mem_map_table(struct pci_dev *pdev,
881 881
882/* Return 0 on success or 1 on failure. */ 882/* Return 0 on success or 1 on failure. */
883static int e752x_get_devs(struct pci_dev *pdev, int dev_idx, 883static int e752x_get_devs(struct pci_dev *pdev, int dev_idx,
884 struct e752x_pvt *pvt) 884 struct e752x_pvt *pvt)
885{ 885{
886 struct pci_dev *dev; 886 struct pci_dev *dev;
887 887
@@ -894,13 +894,13 @@ static int e752x_get_devs(struct pci_dev *pdev, int dev_idx,
894 894
895 if (pvt->bridge_ck == NULL) { 895 if (pvt->bridge_ck == NULL) {
896 e752x_printk(KERN_ERR, "error reporting device not found:" 896 e752x_printk(KERN_ERR, "error reporting device not found:"
897 "vendor %x device 0x%x (broken BIOS?)\n", 897 "vendor %x device 0x%x (broken BIOS?)\n",
898 PCI_VENDOR_ID_INTEL, e752x_devs[dev_idx].err_dev); 898 PCI_VENDOR_ID_INTEL, e752x_devs[dev_idx].err_dev);
899 return 1; 899 return 1;
900 } 900 }
901 901
902 dev = pci_get_device(PCI_VENDOR_ID_INTEL, e752x_devs[dev_idx].ctl_dev, 902 dev = pci_get_device(PCI_VENDOR_ID_INTEL, e752x_devs[dev_idx].ctl_dev,
903 NULL); 903 NULL);
904 904
905 if (dev == NULL) 905 if (dev == NULL)
906 goto fail; 906 goto fail;
@@ -910,7 +910,7 @@ static int e752x_get_devs(struct pci_dev *pdev, int dev_idx,
910 910
911 return 0; 911 return 0;
912 912
913 fail: 913fail:
914 pci_dev_put(pvt->bridge_ck); 914 pci_dev_put(pvt->bridge_ck);
915 return 1; 915 return 1;
916} 916}
@@ -961,7 +961,7 @@ static int e752x_probe1(struct pci_dev *pdev, int dev_idx)
961 pci_read_config_byte(pdev, E752X_DEVPRES1, &stat8); 961 pci_read_config_byte(pdev, E752X_DEVPRES1, &stat8);
962 if (!force_function_unhide && !(stat8 & (1 << 5))) { 962 if (!force_function_unhide && !(stat8 & (1 << 5))) {
963 printk(KERN_INFO "Contact your BIOS vendor to see if the " 963 printk(KERN_INFO "Contact your BIOS vendor to see if the "
964 "E752x error registers can be safely un-hidden\n"); 964 "E752x error registers can be safely un-hidden\n");
965 return -ENOMEM; 965 return -ENOMEM;
966 } 966 }
967 stat8 |= (1 << 5); 967 stat8 |= (1 << 5);
@@ -981,7 +981,7 @@ static int e752x_probe1(struct pci_dev *pdev, int dev_idx)
981 debugf3("%s(): init mci\n", __func__); 981 debugf3("%s(): init mci\n", __func__);
982 mci->mtype_cap = MEM_FLAG_RDDR; 982 mci->mtype_cap = MEM_FLAG_RDDR;
983 mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED | 983 mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED |
984 EDAC_FLAG_S4ECD4ED; 984 EDAC_FLAG_S4ECD4ED;
985 /* FIXME - what if different memory types are in different csrows? */ 985 /* FIXME - what if different memory types are in different csrows? */
986 mci->mod_name = EDAC_MOD_STR; 986 mci->mod_name = EDAC_MOD_STR;
987 mci->mod_ver = E752X_REVISION; 987 mci->mod_ver = E752X_REVISION;
@@ -1021,8 +1021,8 @@ static int e752x_probe1(struct pci_dev *pdev, int dev_idx)
1021 pci_read_config_word(pdev, E752X_REMAPLIMIT, &pci_data); 1021 pci_read_config_word(pdev, E752X_REMAPLIMIT, &pci_data);
1022 pvt->remaplimit = ((u32) pci_data) << 14; 1022 pvt->remaplimit = ((u32) pci_data) << 14;
1023 e752x_printk(KERN_INFO, 1023 e752x_printk(KERN_INFO,
1024 "tolm = %x, remapbase = %x, remaplimit = %x\n", pvt->tolm, 1024 "tolm = %x, remapbase = %x, remaplimit = %x\n",
1025 pvt->remapbase, pvt->remaplimit); 1025 pvt->tolm, pvt->remapbase, pvt->remaplimit);
1026 1026
1027 /* Here we assume that we will never see multiple instances of this 1027 /* Here we assume that we will never see multiple instances of this
1028 * type of memory controller. The ID is therefore hardcoded to 0. 1028 * type of memory controller. The ID is therefore hardcoded to 0.
@@ -1039,16 +1039,17 @@ static int e752x_probe1(struct pci_dev *pdev, int dev_idx)
1039 e752x_pci = edac_pci_create_generic_ctl(&pdev->dev, EDAC_MOD_STR); 1039 e752x_pci = edac_pci_create_generic_ctl(&pdev->dev, EDAC_MOD_STR);
1040 if (!e752x_pci) { 1040 if (!e752x_pci) {
1041 printk(KERN_WARNING 1041 printk(KERN_WARNING
1042 "%s(): Unable to create PCI control\n", __func__); 1042 "%s(): Unable to create PCI control\n", __func__);
1043 printk(KERN_WARNING 1043 printk(KERN_WARNING
1044 "%s(): PCI error report via EDAC not setup\n", __func__); 1044 "%s(): PCI error report via EDAC not setup\n",
1045 __func__);
1045 } 1046 }
1046 1047
1047 /* get this far and it's successful */ 1048 /* get this far and it's successful */
1048 debugf3("%s(): success\n", __func__); 1049 debugf3("%s(): success\n", __func__);
1049 return 0; 1050 return 0;
1050 1051
1051 fail: 1052fail:
1052 pci_dev_put(pvt->dev_d0f0); 1053 pci_dev_put(pvt->dev_d0f0);
1053 pci_dev_put(pvt->dev_d0f1); 1054 pci_dev_put(pvt->dev_d0f1);
1054 pci_dev_put(pvt->bridge_ck); 1055 pci_dev_put(pvt->bridge_ck);
@@ -1059,7 +1060,7 @@ static int e752x_probe1(struct pci_dev *pdev, int dev_idx)
1059 1060
1060/* returns count (>= 0), or negative on error */ 1061/* returns count (>= 0), or negative on error */
1061static int __devinit e752x_init_one(struct pci_dev *pdev, 1062static int __devinit e752x_init_one(struct pci_dev *pdev,
1062 const struct pci_device_id *ent) 1063 const struct pci_device_id *ent)
1063{ 1064{
1064 debugf0("%s()\n", __func__); 1065 debugf0("%s()\n", __func__);
1065 1066