pci.c (50d1e9302bab7d35dae7146f8c468e0943015616) | pci.c (da1fdb02d9200ff28b6f3a380d21930335fe5429) |
---|---|
1/* 2 * Sonics Silicon Backplane PCI-Hostbus related functions. 3 * 4 * Copyright (C) 2005-2006 Michael Buesch <mb@bu3sch.de> 5 * Copyright (C) 2005 Martin Langer <martin-langer@gmx.de> 6 * Copyright (C) 2005 Stefano Brivio <st3@riseup.net> 7 * Copyright (C) 2005 Danny van Dyk <kugelfang@gentoo.org> 8 * Copyright (C) 2005 Andreas Jaggi <andreas.jaggi@waterwave.ch> --- 611 unchanged lines hidden (view full) --- 620 const struct ssb_sprom *fallback; 621 int err = -ENOMEM; 622 u16 *buf; 623 624 if (!ssb_is_sprom_available(bus)) { 625 ssb_printk(KERN_ERR PFX "No SPROM available!\n"); 626 return -ENODEV; 627 } | 1/* 2 * Sonics Silicon Backplane PCI-Hostbus related functions. 3 * 4 * Copyright (C) 2005-2006 Michael Buesch <mb@bu3sch.de> 5 * Copyright (C) 2005 Martin Langer <martin-langer@gmx.de> 6 * Copyright (C) 2005 Stefano Brivio <st3@riseup.net> 7 * Copyright (C) 2005 Danny van Dyk <kugelfang@gentoo.org> 8 * Copyright (C) 2005 Andreas Jaggi <andreas.jaggi@waterwave.ch> --- 611 unchanged lines hidden (view full) --- 620 const struct ssb_sprom *fallback; 621 int err = -ENOMEM; 622 u16 *buf; 623 624 if (!ssb_is_sprom_available(bus)) { 625 ssb_printk(KERN_ERR PFX "No SPROM available!\n"); 626 return -ENODEV; 627 } |
628 if (bus->chipco.dev) { /* can be unavailible! */ 629 bus->sprom_offset = (bus->chipco.dev->id.revision < 31) ? 630 SSB_SPROM_BASE1 : SSB_SPROM_BASE31; 631 } else { 632 bus->sprom_offset = SSB_SPROM_BASE1; 633 } |
|
628 | 634 |
629 bus->sprom_offset = (bus->chipco.dev->id.revision < 31) ? 630 SSB_SPROM_BASE1 : SSB_SPROM_BASE31; 631 | |
632 buf = kcalloc(SSB_SPROMSIZE_WORDS_R123, sizeof(u16), GFP_KERNEL); 633 if (!buf) 634 goto out; 635 bus->sprom_size = SSB_SPROMSIZE_WORDS_R123; 636 sprom_do_read(bus, buf); 637 err = sprom_check_crc(buf, bus->sprom_size); 638 if (err) { 639 /* try for a 440 byte SPROM - revision 4 and higher */ --- 296 unchanged lines hidden --- | 635 buf = kcalloc(SSB_SPROMSIZE_WORDS_R123, sizeof(u16), GFP_KERNEL); 636 if (!buf) 637 goto out; 638 bus->sprom_size = SSB_SPROMSIZE_WORDS_R123; 639 sprom_do_read(bus, buf); 640 err = sprom_check_crc(buf, bus->sprom_size); 641 if (err) { 642 /* try for a 440 byte SPROM - revision 4 and higher */ --- 296 unchanged lines hidden --- |