/* __vxge_hw_vp_terminate - Terminate Virtual Path structure This routine closes all channels it opened and freeup memory  */
void __vxge_hw_vp_terminate(struct __vxge_hw_device *hldev, u32 vp_id)
/* __vxge_hw_vp_terminate - Terminate Virtual Path structure This routine closes all channels it opened and freeup memory  */
void __vxge_hw_vp_terminate(struct __vxge_hw_device *hldev, u32 vp_id)
{
	struct __vxge_hw_virtualpath *vpath;
	vpath = &hldev->virtual_paths[vp_id];
	if (vpath->vp_open == VXGE_HW_VP_NOT_OPEN)
		goto exit;
	VXGE_HW_DEVICE_TIM_INT_MASK_RESET(vpath->hldev->tim_int_mask0,
		vpath->hldev->tim_int_mask1, vpath->vp_id);
	hldev->stats.hw_dev_info_stats.vpath_info[vpath->vp_id] = NULL;
	memset(vpath, 0, sizeof(struct __vxge_hw_virtualpath));
exit:
	return;
}