|
@@ -12710,6 +12710,7 @@ static void __devinit tg3_read_dash_ver(struct tg3 *tp)
|
|
|
{
|
|
|
int vlen;
|
|
|
u32 apedata;
|
|
|
+ char *fwtype;
|
|
|
|
|
|
if (!(tp->tg3_flags3 & TG3_FLG3_ENABLE_APE) ||
|
|
|
!(tp->tg3_flags & TG3_FLAG_ENABLE_ASF))
|
|
@@ -12725,9 +12726,15 @@ static void __devinit tg3_read_dash_ver(struct tg3 *tp)
|
|
|
|
|
|
apedata = tg3_ape_read32(tp, TG3_APE_FW_VERSION);
|
|
|
|
|
|
+ if (tg3_ape_read32(tp, TG3_APE_FW_FEATURES) & TG3_APE_FW_FEATURE_NCSI)
|
|
|
+ fwtype = "NCSI";
|
|
|
+ else
|
|
|
+ fwtype = "DASH";
|
|
|
+
|
|
|
vlen = strlen(tp->fw_ver);
|
|
|
|
|
|
- snprintf(&tp->fw_ver[vlen], TG3_VER_SIZE - vlen, " DASH v%d.%d.%d.%d",
|
|
|
+ snprintf(&tp->fw_ver[vlen], TG3_VER_SIZE - vlen, " %s v%d.%d.%d.%d",
|
|
|
+ fwtype,
|
|
|
(apedata & APE_FW_VERSION_MAJMSK) >> APE_FW_VERSION_MAJSFT,
|
|
|
(apedata & APE_FW_VERSION_MINMSK) >> APE_FW_VERSION_MINSFT,
|
|
|
(apedata & APE_FW_VERSION_REVMSK) >> APE_FW_VERSION_REVSFT,
|