cxgb3: untie strict FW matching

The NIC driver can work with mutliple versions of the FW.
Let the driver load when the embedded FW does not match,
and the FW update mechanism failed.
The iWARP module will make its own loading decision.

Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Divy Le Ray
2008-12-16 01:51:47 -08:00
committed by David S. Miller
parent 5ad258c0a8
commit 8207befa19
3 changed files with 15 additions and 30 deletions

View File

@ -958,21 +958,22 @@ release_tpsram:
static int cxgb_up(struct adapter *adap)
{
int err;
int must_load;
if (!(adap->flags & FULL_INIT_DONE)) {
err = t3_check_fw_version(adap, &must_load);
err = t3_check_fw_version(adap);
if (err == -EINVAL) {
err = upgrade_fw(adap);
if (err && must_load)
goto out;
CH_WARN(adap, "FW upgrade to %d.%d.%d %s\n",
FW_VERSION_MAJOR, FW_VERSION_MINOR,
FW_VERSION_MICRO, err ? "failed" : "succeeded");
}
err = t3_check_tpsram_version(adap, &must_load);
err = t3_check_tpsram_version(adap);
if (err == -EINVAL) {
err = update_tpsram(adap);
if (err && must_load)
goto out;
CH_WARN(adap, "TP upgrade to %d.%d.%d %s\n",
TP_VERSION_MAJOR, TP_VERSION_MINOR,
TP_VERSION_MICRO, err ? "failed" : "succeeded");
}
/*