⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ixnpemh.h

📁 OMAP2530 uboot source code
💻 H
📖 第 1 页 / 共 2 页
字号:
 * @ingroup IxNpeMh * * @fn IX_STATUS ixNpeMhUnsolicitedCallbackForRangeRegister (           IxNpeMhNpeId npeId,           IxNpeMhMessageId minMessageId,           IxNpeMhMessageId maxMessageId,           IxNpeMhCallback unsolicitedCallback) * * @brief This function will register an unsolicited callback for a * particular NPE and range of message IDs. * * @param npeId @ref IxNpeMhNpeId [in] - The ID of the NPE whose messages the * unsolicited callback will handle. * @param minMessageId @ref IxNpeMhMessageId [in] - The minimum message ID in * the range of message IDs the unsolicited callback will handle. * @param maxMessageId @ref IxNpeMhMessageId [in] - The maximum message ID in * the range of message IDs the unsolicited callback will handle. * @param unsolicitedCallback @ref IxNpeMhCallback [in] - The unsolicited * callback function.  A value of NULL will deregister any previously * registered callback(s) for this NPE and range of message IDs. * * This function will register an unsolicited callback for a particular NPE * and range of message IDs.  It is a convenience function that is * effectively the same as calling ixNpeMhUnsolicitedCallbackRegister() for * each ID in the specified range.  See * ixNpeMhUnsolicitedCallbackRegister() for more * information.<P><B>Re-entrancy:</B> This function will be callable from * any thread at any time.  IxOsal will be used for any necessary * resource protection. * * @return The function returns a status indicating success or failure. */PUBLIC IX_STATUS ixNpeMhUnsolicitedCallbackForRangeRegister (    IxNpeMhNpeId npeId,    IxNpeMhMessageId minMessageId,    IxNpeMhMessageId maxMessageId,    IxNpeMhCallback unsolicitedCallback);/** * @ingroup IxNpeMh * * @fn IX_STATUS ixNpeMhMessageSend (           IxNpeMhNpeId npeId,           IxNpeMhMessage message,           UINT32 maxSendRetries) * * @brief This function will send a message to a particular NPE. * * @param npeId @ref IxNpeMhNpeId [in] - The ID of the NPE to send the message * to. * @param message @ref IxNpeMhMessage [in] - The message to send. * @param maxSendRetries UINT32 [in] - Max num. of retries to perform * if the NPE's inFIFO is full. * * This function will send a message to a particular NPE.  It will be the * client's responsibility to ensure that the message is properly formed. * The return status will signify to the client if the message was * successfully sent or not.<P>If the message is sent to the NPE then this * function will return a status of success.  Note that this will only mean * the message has been placed in the NPE's inFIFO.  There will be no way * of knowing that the NPE has actually read the message, but once in the * incoming message queue it will be safe to assume that the NPE will * process it. * <P>The inFIFO may fill up sometimes if the Xscale is sending messages * faster than the NPE can handle them. This forces us to retry attempts  * to send the message until the NPE services the inFIFO. The client should * specify a ceiling value for the number of retries suitable to their * needs. IX_NPEMH_SEND_RETRIES_DEFAULT can be used as a default value for * the <i>maxSendRetries</i> parameter for this function. Each retry * exceeding this default number will incur a blocking delay of 1 microsecond, * to avoid consuming too much AHB bus bandwidth while performing retries. * <P>Note this function <B>must</B> only be used for messages. * that do not solicit responses. If the message being sent will solicit a * response then the ixNpeMhMessageWithResponseSend() function <B>must</B> * be used to ensure that the response is correctly * handled. <P> This function will return timeout status if NPE hang / halt  * while sending message. The timeout error is not related to the  * <i>maxSendRetries</i> as mentioned above. The timeout error will only occur  * if the first word of the message has been sent to NPE (not exceeding  * <i>maxSendRetries</i> when sending 1st message word), but the second word of * the message can't be written to NPE's inFIFO due to NPE hang / halt after  * maximum waiting time (IX_NPE_MH_MAX_NUM_OF_RETRIES).  * <P><B>Re-entrancy:</B> This function will be callable from any * thread at any time.  IxOsal will be used for any necessary * resource protection. * * @return The function returns a status indicating success, failure or timeout. */PUBLIC IX_STATUS ixNpeMhMessageSend (    IxNpeMhNpeId npeId,    IxNpeMhMessage message,    UINT32 maxSendRetries);/** * @ingroup IxNpeMh * * @fn IX_STATUS ixNpeMhMessageWithResponseSend (           IxNpeMhNpeId npeId,           IxNpeMhMessage message,           IxNpeMhMessageId solicitedMessageId,           IxNpeMhCallback solicitedCallback,           UINT32 maxSendRetries) * * @brief This function is equivalent to the ixNpeMhMessageSend() function, * but must be used when the message being sent will solicited a response. * * @param npeId @ref IxNpeMhNpeId [in] - The ID of the NPE to send the message * to. * @param message @ref IxNpeMhMessage [in] - The message to send. * @param solicitedMessageId @ref IxNpeMhMessageId [in] - The ID of the * solicited response message. * @param solicitedCallback @ref IxNpeMhCallback [in] - The function to use to * pass the response message back to the client.  A value of NULL will * cause the response message to be discarded. * @param maxSendRetries UINT32 [in] - Max num. of retries to perform * if the NPE's inFIFO is full. * * This function is equivalent to the ixNpeMhMessageSend() function, but * must be used when the message being sent will solicited a * response.<P>The client must specify the ID of the solicited response * message to allow the response to be recognised when it is received.  The * client must also specify a callback function to handle the received * response.  The IxNpeMh component will not offer the facility to send a * message to a NPE and receive a response within the same context.<P>Note * if the client is not interested in the response, specifying a NULL * callback will cause the response message to be discarded.<P>The * solicited callback will be stored and called some time later from an ISR * that will be triggered by the NPE's "outFIFO not empty" interrupt (see * ixNpeMhInitialize()) to handle the response message corresponding to the * message sent.  Response messages will be handled in the order they are * received.<P> * <P>The inFIFO may fill up sometimes if the Xscale is sending messages * faster than the NPE can handle them. This forces us to retry attempts  * to send the message until the NPE services the inFIFO. The client should * specify a ceiling value for the number of retries suitable to their * needs. IX_NPEMH_SEND_RETRIES_DEFAULT can be used as a default value for * the <i>maxSendRetries</i> parameter for this function. Each retry * exceeding this default number will incur a blocking delay of 1 microsecond, * to avoid consuming too much AHB bus bandwidth while performing retries. * <P> This function will return timeout status if NPE hang / halt  * while sending message. The timeout error is not related to the  * <i>maxSendRetries</i> as mentioned above. The timeout error will only occur  * if the first word of the message has been sent to NPE (not exceeding  * <i>maxSendRetries</i> when sending 1st message word), but the second word of * the message can't be written to NPE's inFIFO due to NPE hang / halt after  * maximum waiting time (IX_NPE_MH_MAX_NUM_OF_RETRIES).  * <P><B>Re-entrancy:</B> This function will be callable from any * thread at any time.  IxOsal will be used for any necessary * resource protection. * * @return The function returns a status indicating success or failure. */PUBLIC IX_STATUS ixNpeMhMessageWithResponseSend (    IxNpeMhNpeId npeId,    IxNpeMhMessage message,    IxNpeMhMessageId solicitedMessageId,    IxNpeMhCallback solicitedCallback,    UINT32 maxSendRetries);/** * @ingroup IxNpeMh * * @fn IX_STATUS ixNpeMhMessagesReceive (           IxNpeMhNpeId npeId) * * @brief This function will receive messages from a particular NPE and * pass each message to the client via a solicited callback (for solicited * messages) or an unsolicited callback (for unsolicited messages). * * @param npeId @ref IxNpeMhNpeId [in] - The ID of the NPE to receive and * process messages from. * * This function will receive messages from a particular NPE and pass each * message to the client via a solicited callback (for solicited messages) * or an unsolicited callback (for unsolicited messages).<P>If the IxNpeMh * component is initialised to service NPE "outFIFO not empty" interrupts * (see ixNpeMhInitialize()) then there is no need to call this function. * This function is only provided as an alternative mechanism to control * the receiving and processing of messages from the NPEs.<P> This function * will return timeout status if NPE hang / halt while receiving message. The * timeout error will only occur if this function has read the first word of * the message and can't read second word of the message from NPE's outFIFO * after maximum retries (IX_NPE_MH_MAX_NUM_OF_RETRIES).  * <P>Note this function cannot be called from within  * an ISR as it will use resource protection mechanisms.<P><B>Re-entrancy:</B>  * This function will be callable from any thread at any time.  IxOsal will be  * used for any necessary resource protection. * * @return The function returns a status indicating success, failure or timeout. */PUBLIC IX_STATUS ixNpeMhMessagesReceive (    IxNpeMhNpeId npeId);/** * @ingroup IxNpeMh * * @fn IX_STATUS ixNpeMhShow (           IxNpeMhNpeId npeId) * * @brief This function will display the current state of the IxNpeMh * component. * * <B>Re-entrancy:</B> This function will be callable from * any thread at any time.  However, no resource protection will be used * so as not to impact system performance.  As this function is only * reading statistical information then this is acceptable. * * @param npeId @ref IxNpeMhNpeId [in] - The ID of the NPE to display state * information for. * * @return The function returns a status indicating success or failure. */PUBLIC IX_STATUS ixNpeMhShow (    IxNpeMhNpeId npeId);/** * @ingroup IxNpeMh * * @fn IX_STATUS ixNpeMhShowReset (           IxNpeMhNpeId npeId) * * @brief This function will reset the current state of the IxNpeMh * component. * * <B>Re-entrancy:</B> This function will be callable from * any thread at any time.  However, no resource protection will be used * so as not to impact system performance.  As this function is only * writing statistical information then this is acceptable. * * @param npeId @ref IxNpeMhNpeId [in] - The ID of the NPE to reset state * information for. * * @return The function returns a status indicating success or failure. */PUBLIC IX_STATUS ixNpeMhShowReset (    IxNpeMhNpeId npeId);#endif /* IXNPEMH_H *//** * @} defgroup IxNpeMh */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -