2 * @file IxEthAccQueueAssign_p.h
4 * @author Intel Corporation
7 * @brief Mapping from QMgr Q's to internal assignment
13 * IXP400 SW Release version 2.0
15 * -- Copyright Notice --
18 * Copyright 2001-2005, Intel Corporation.
19 * All rights reserved.
22 * SPDX-License-Identifier: BSD-3-Clause
24 * -- End of Copyright Notice --
28 * @addtogroup IxEthAccPri
33 * Os/System dependancies.
38 * Intermodule dependancies
41 #include "IxQueueAssignments.h"
43 /* Check range of Q's assigned to this component. */
44 #if IX_ETH_ACC_RX_FRAME_ETH_Q >= (IX_QMGR_MIN_QUEUPP_QID ) | \
45 IX_ETH_ACC_RX_FREE_BUFF_ENET0_Q >= (IX_QMGR_MIN_QUEUPP_QID) | \
46 IX_ETH_ACC_RX_FREE_BUFF_ENET1_Q >= (IX_QMGR_MIN_QUEUPP_QID) | \
47 IX_ETH_ACC_TX_FRAME_ENET0_Q >= (IX_QMGR_MIN_QUEUPP_QID) | \
48 IX_ETH_ACC_TX_FRAME_ENET1_Q >= (IX_QMGR_MIN_QUEUPP_QID) | \
49 IX_ETH_ACC_TX_FRAME_DONE_ETH_Q >= (IX_QMGR_MIN_QUEUPP_QID)
50 #error "Not all Ethernet Access Queues are betweem 1-31, requires full functionalty Q's unless otherwise validated "
55 * @typedef IxEthAccQregInfo
64 IxQMgrCallback qCallback;
65 IxQMgrCallbackId callbackTag;
66 IxQMgrQSizeInWords qSize;
67 IxQMgrQEntrySizeInWords qWords;
68 BOOL qNotificationEnableAtStartup;
69 IxQMgrSourceId qConditionSource;
70 IxQMgrWMLevel AlmostEmptyThreshold;
71 IxQMgrWMLevel AlmostFullThreshold;
76 * Prototypes for all QM callbacks.
83 void ixEthRxFrameQMCallback(IxQMgrQId, IxQMgrCallbackId);
86 void ixEthRxMultiBufferQMCallback(IxQMgrQId, IxQMgrCallbackId);
89 void ixEthRxFreeQMCallback(IxQMgrQId, IxQMgrCallbackId);
95 void ixEthTxFrameQMCallback(IxQMgrQId, IxQMgrCallbackId);
98 void ixEthTxFrameDoneQMCallback(IxQMgrQId, IxQMgrCallbackId );
101 #define IX_ETH_ACC_QM_QUEUE_DISPATCH_PRIORITY (IX_QMGR_Q_PRIORITY_0) /* Highest priority */
106 #define IX_ETH_ACC_RX_FRAME_ETH_Q_SOURCE (IX_QMGR_Q_SOURCE_ID_NOT_E )
107 #define IX_ETH_ACC_RX_FREE_BUFF_ENET0_Q_SOURCE (IX_QMGR_Q_SOURCE_ID_E )
108 #define IX_ETH_ACC_RX_FREE_BUFF_ENET1_Q_SOURCE (IX_QMGR_Q_SOURCE_ID_E )
109 #define IX_ETH_ACC_RX_FREE_BUFF_ENET2_Q_SOURCE (IX_QMGR_Q_SOURCE_ID_E )
110 #define IX_ETH_ACC_TX_FRAME_ENET0_Q_SOURCE (IX_QMGR_Q_SOURCE_ID_E )
111 #define IX_ETH_ACC_TX_FRAME_ENET1_Q_SOURCE (IX_QMGR_Q_SOURCE_ID_E )
112 #define IX_ETH_ACC_TX_FRAME_ENET2_Q_SOURCE (IX_QMGR_Q_SOURCE_ID_E )
113 #define IX_ETH_ACC_TX_FRAME_DONE_ETH_Q_SOURCE (IX_QMGR_Q_SOURCE_ID_NOT_E )