|
@@ -1248,6 +1248,25 @@ static inline void unregister_tdev(struct t3cdev *tdev)
|
|
|
mutex_unlock(&cxgb3_db_lock);
|
|
|
}
|
|
|
|
|
|
+static inline int adap2type(struct adapter *adapter)
|
|
|
+{
|
|
|
+ int type = 0;
|
|
|
+
|
|
|
+ switch (adapter->params.rev) {
|
|
|
+ case T3_REV_A:
|
|
|
+ type = T3A;
|
|
|
+ break;
|
|
|
+ case T3_REV_B:
|
|
|
+ case T3_REV_B2:
|
|
|
+ type = T3B;
|
|
|
+ break;
|
|
|
+ case T3_REV_C:
|
|
|
+ type = T3C;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ return type;
|
|
|
+}
|
|
|
+
|
|
|
void __devinit cxgb3_adapter_ofld(struct adapter *adapter)
|
|
|
{
|
|
|
struct t3cdev *tdev = &adapter->tdev;
|
|
@@ -1257,7 +1276,7 @@ void __devinit cxgb3_adapter_ofld(struct adapter *adapter)
|
|
|
cxgb3_set_dummy_ops(tdev);
|
|
|
tdev->send = t3_offload_tx;
|
|
|
tdev->ctl = cxgb_offload_ctl;
|
|
|
- tdev->type = adapter->params.rev == 0 ? T3A : T3B;
|
|
|
+ tdev->type = adap2type(adapter);
|
|
|
|
|
|
register_tdev(tdev);
|
|
|
}
|