/*****************************************************************************
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*
* Copyright 2014 QLogic Corporation
* The contents of this file are subject to the terms of the
* QLogic End User License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the License at
* See the License for the specific language governing permissions
* and limitations under the License.
*
*****************************************************************************/
#if defined(_VBD_)
#include <ntddk.h>
#include "vc_os_emul.h"
#endif
// portable integer type of the pointer size for current platform (64/32)
#else
#endif
/* Sections that are different between VBD_CMD and VBD (shouldn't be alot...) */
#if defined(_VBD_)
#else
#endif
InterlockedExchangeAdd((long*)(_p), (long)(0))
{ \
LM_BAR_WR32_ADDRESS((PDEV), ((u8_t *)PFDEV(PDEV)->context_info->array[VF_TO_PF_CID((PDEV), (CID))].cid_resc.mapped_cid_bar_addr + (DPM_TRIGER_TYPE)), (VAL)); \
} \
else \
{ \
LM_BAR_WR32_ADDRESS((PDEV), ((u8_t *)(PDEV)->context_info->array[VF_TO_PF_CID((PDEV), (CID))].cid_resc.mapped_cid_bar_addr), (VAL)); \
}
void MM_ACQUIRE_LOADER_LOCK_IMP();
void MM_RELEASE_LOADER_LOCK_IMP();
#ifdef VF_INVOLVED
void
struct _lm_device_t *pdev,
#endif /* VF_INVOLVED */
const u32_t empty_data);
#ifdef BIG_ENDIAN
// LE
// BE
#else /* LITTLE_ENDIAN */
// LE
// BE
#endif /* ifdef BIG_ENDIAN */
{ \
_field); \
}
{ \
_field); \
}
{ \
}
{ \
{ \
} \
{ \
} \
}
/* this is _NTDDK_ only... */
/* this is _NTDDK_ only... */
/* this is _NTDDK_ only... */
void mm_dcb_indicate_event(
);
#define MM_DCB_INDICATE_EVENT(_pdev,_event,_event_buf, _event_buf_size) mm_dcb_indicate_event(_pdev,_event,_event_buf, _event_buf_size)