mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-15 09:34:17 +00:00
[TG3]: Fix Sun tg3 variant detection.
Some Sun parts don't have PCI_VENDOR_ID_SUN in the subsystem vendor ID. So add another fallback test, which is the name of the OBP firmware device tree node. If it's a Sun part we'll get "network", else it will be named "ethernet". Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
de5f503cfb
commit
051d3cbd96
@ -9408,6 +9408,15 @@ static int __devinit tg3_is_sun_570X(struct tg3 *tp)
|
|||||||
return 0;
|
return 0;
|
||||||
if (venid == PCI_VENDOR_ID_SUN)
|
if (venid == PCI_VENDOR_ID_SUN)
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
|
/* TG3 chips onboard the SunBlade-2500 don't have the
|
||||||
|
* subsystem-vendor-id set to PCI_VENDOR_ID_SUN but they
|
||||||
|
* are distinguishable from non-Sun variants by being
|
||||||
|
* named "network" by the firmware. Non-Sun cards will
|
||||||
|
* show up as being named "ethernet".
|
||||||
|
*/
|
||||||
|
if (!strcmp(pcp->prom_name, "network"))
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user