Sometimes the PCIe card indicates that it has a sprom somewhere and we
are able to read the memory region, but it is empty and not valid. In
these cases we should try to use the fallback sprom as a last chance.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33601 3c298f89-4303-0410-b956-a3cf2f4a3e73
The chip common and the PCIe code are accessing the sprom struct which
is not filled when these cores are initialized. Fix this by adding an
early initialize and fill the sprom struct before accessing it in other
code.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33600 3c298f89-4303-0410-b956-a3cf2f4a3e73
The bcma based SoCs with a ieee80211 core on the SoC and an other
connected via PCIe or USB store the sprom for the SoC with a sb/1/
prefix. The SoC with just one wifi core do not use prefixes. The
BCM4706 do not use a prefix for the SoC part at all, because the prefix
is the path to the ieee80211 core and there is non on the BCM4706.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33597 3c298f89-4303-0410-b956-a3cf2f4a3e73
When not removing support for the wait instruction, when ruining on the
BCM4706 SoC the system stops after msleep() without an exception. I
haven't seen this problem on the other Broadcom SoCs with a 74K CPU,
but in the Broadcom SDK it is deactivated for all CPUs of this type.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33496 3c298f89-4303-0410-b956-a3cf2f4a3e73
There are some ifdefs missing so when only ssb or only bcma was
selected in the kernel config it did not build.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33209 3c298f89-4303-0410-b956-a3cf2f4a3e73
The dcache bug that it works around is a generic issue, not a brcm47xx cache quirk
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32395 3c298f89-4303-0410-b956-a3cf2f4a3e73
Now tg3 works with the Ethernet core of the Linksys WRT610N v1 (again).
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31694 3c298f89-4303-0410-b956-a3cf2f4a3e73