[MLX4] add 2 new functions to Eth interface: mlx4_register_vlan/mlx4_unregister_vlan...
authorleonidk <leonidk@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Mon, 26 Oct 2009 10:12:47 +0000 (10:12 +0000)
committerleonidk <leonidk@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Mon, 26 Oct 2009 10:12:47 +0000 (10:12 +0000)
The version of the interface has been increased!
Not relevant to IB drivers.

git-svn-id: svn://openib.tc.cornell.edu/gen1/trunk@2512 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

core/winmad/kernel/wm_driver.c
hw/mlx4/kernel/bus/drv/pdo.c
hw/mlx4/kernel/bus/inc/bus_intf.h

index 6d3cbdf..b5b79e5 100644 (file)
@@ -247,7 +247,7 @@ static ib_ca_attr_t *WmQueryCaAttributes(WM_IB_DEVICE *pDevice)
        ib_status = pDevice->VerbsInterface.Verbs.\r
                                query_ca(pDevice->VerbsInterface.Verbs.p_hca_obj, attr, &size, NULL);\r
        if (ib_status != IB_SUCCESS) {\r
-               ExFreePoolWithTag(attr, 'acmw');\r
+               ExFreePool(attr);\r
                attr = NULL;\r
        }\r
 \r
@@ -282,7 +282,7 @@ static NTSTATUS WmAddCa(WM_IB_DEVICE *pDevice)
 \r
        status = STATUS_SUCCESS;\r
 out:\r
-       ExFreePoolWithTag(attr, 'acmw');\r
+       ExFreePool(attr);\r
        return status;\r
 }\r
 \r
@@ -361,7 +361,7 @@ static NTSTATUS WmPowerD0Exit(WDFDEVICE Device, WDF_POWER_DEVICE_STATE TargetSta
 \r
        pdev->IbInterface.wdm.InterfaceDereference(pdev->IbInterface.wdm.Context);\r
        if (pdev->pPortArray != NULL) {\r
-               ExFreePoolWithTag(pdev->pPortArray, 'pimw');\r
+               ExFreePool(pdev->pPortArray);\r
        }\r
 \r
        if (destroy) {\r
index 2144404..61c2da4 100644 (file)
@@ -267,6 +267,8 @@ Return Value:
        p_fdo->bus_ib_ifc.mlx4_interface.mlx4_reset_request = mlx4_reset_request;\r
        p_fdo->bus_ib_ifc.mlx4_interface.mlx4_reset_execute = mlx4_reset_execute;\r
        p_fdo->bus_ib_ifc.mlx4_interface.mlx4_reset_ready = mlx4_reset_ready;\r
+       p_fdo->bus_ib_ifc.mlx4_interface.mlx4_register_vlan = mlx4_register_vlan;\r
+       p_fdo->bus_ib_ifc.mlx4_interface.mlx4_unregister_vlan = mlx4_unregister_vlan;\r
        \r
        //\r
        // Create a custom interface so that other drivers can\r
index ef401d9..89f452a 100644 (file)
@@ -1,6 +1,6 @@
 #pragma once
 
-#define MLX4_BUS_IB_INTERFACE_VERSION          3
+#define MLX4_BUS_IB_INTERFACE_VERSION          4
 
 #include <ib_verbs.h>
 //
@@ -58,6 +58,11 @@ typedef int (*MLX4_REGISTER_MAC)(struct mlx4_dev *dev, u8 port, u64 mac, int *in
 
 typedef void (*MLX4_UNREGISTER_MAC) (struct mlx4_dev *dev, u8 port, int index);
 
+typedef int (*MLX4_REGISTER_VLAN)(struct mlx4_dev *dev, u8 port, u16 vlan, int *index);
+
+typedef void (*MLX4_UNREGISTER_VLAN)(struct mlx4_dev *dev, u8 port, int index);
+
+
 typedef int (*MLX4_SRQ_ALLOC) (struct mlx4_dev *dev, u32 pdn, u32 cqn, u16 xrcd, 
            struct mlx4_mtt *mtt, u64 db_rec, struct mlx4_srq *srq);
 
@@ -171,6 +176,8 @@ struct mlx4_interface_ex {
        MLX4_RESET_REQUEST mlx4_reset_request;
        MLX4_RESET_EXECUTE mlx4_reset_execute;
        MLX4_RESET_READY mlx4_reset_ready;
+       MLX4_REGISTER_VLAN     mlx4_register_vlan;
+       MLX4_UNREGISTER_VLAN   mlx4_unregister_vlan;
        
 };