2012/7/24 Álvaro Fernández Rojas <[email protected]>:
> ++              //Get MAC address.
> ++              if(bcm63xx_nvram_get_mac_address(out->il0mac)) {
> ++                      printk("bcm63xx_sprom_bcma: failed to get 
> bcm63xx_nvram mac address\n");
> ++                      return -EINVAL;
> ++              }

I don't have much experience with SoC SPROMs, but this seems weird to
me. You hardcode all entries of SPROM excluding just a MAC. This
sounds really wrong to me, SPROM contains important info about the
hardware, it tells the driver how to program it.

My nvram in WNDR4500 contains a lot of SPROM entries, 52 for card 1
and 85 for card in slot 2.

Let's get some random one like "boardflags". For BCM4331 you filly only:
boardflags_lo          = 0x200,

Both my BCM4331 have different values:
pci/1/1/boardflags=0x80003200
pci/1/1/boardflags2=0x4000000
pci/2/1/boardflags=0x90000200
pci/2/1/boardflags2=0x4200000

-- 
Rafał
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to