The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/dev/qat/qat_api/qat_direct/include/icp_adf_accel_mgr.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /* SPDX-License-Identifier: BSD-3-Clause */
    2 /* Copyright(c) 2007-2022 Intel Corporation */
    3 /* $FreeBSD$ */
    4 /*****************************************************************************
    5  * @file icp_adf_accel_mgr.h
    6  *
    7  * @description
    8  *      This file contains the function prototype for accel
    9  *      instances management
   10  *
   11  *****************************************************************************/
   12 #ifndef ICP_ADF_ACCEL_MGR_H
   13 #define ICP_ADF_ACCEL_MGR_H
   14 
   15 /*
   16  * Device reset mode type.
   17  * If device reset is triggered from atomic context
   18  * it needs to be in ICP_ADF_DEV_RESET_ASYNC mode.
   19  * Otherwise can be either.
   20  */
   21 typedef enum icp_adf_dev_reset_mode_e {
   22         ICP_ADF_DEV_RESET_ASYNC = 0,
   23         ICP_ADF_DEV_RESET_SYNC
   24 } icp_adf_dev_reset_mode_t;
   25 
   26 /*
   27  * icp_adf_reset_dev
   28  *
   29  * Description:
   30  * Function resets the given device.
   31  * If device reset is triggered from atomic context
   32  * it needs to be in ICP_ADF_DEV_RESET_ASYNC mode.
   33  *
   34  * Returns:
   35  *   CPA_STATUS_SUCCESS   on success
   36  *   CPA_STATUS_FAIL      on failure
   37  */
   38 CpaStatus icp_adf_reset_dev(icp_accel_dev_t *accel_dev,
   39                             icp_adf_dev_reset_mode_t mode);
   40 
   41 /*
   42  * icp_adf_is_dev_in_reset
   43  * Check if device is in reset state.
   44  *
   45  * Returns:
   46  *   CPA_TRUE   device is in reset state
   47  *   CPA_FALSE  device is not in reset state
   48  */
   49 CpaBoolean icp_adf_is_dev_in_reset(icp_accel_dev_t *accel_dev);
   50 
   51 /*
   52  * icp_adf_is_dev_in_error
   53  * Check if device is in error state.
   54  *
   55  * Returns:
   56  *   CPA_TRUE   device is in error state
   57  *   CPA_FALSE  device is not in error state
   58  */
   59 CpaBoolean icp_adf_is_dev_in_error(icp_accel_dev_t *accel_dev);
   60 
   61 /*
   62  * icp_amgr_getNumInstances
   63  *
   64  * Description:
   65  * Returns number of accel instances in the system.
   66  *
   67  * Returns:
   68  *   CPA_STATUS_SUCCESS   on success
   69  *   CPA_STATUS_FAIL      on failure
   70  */
   71 CpaStatus icp_amgr_getNumInstances(Cpa16U *pNumInstances);
   72 
   73 /*
   74  * icp_amgr_getInstances
   75  *
   76  * Description:
   77  * Returns table of accel instances in the system.
   78  *
   79  * Returns:
   80  *   CPA_STATUS_SUCCESS   on success
   81  *   CPA_STATUS_FAIL      on failure
   82  */
   83 CpaStatus icp_amgr_getInstances(Cpa16U numInstances,
   84                                 icp_accel_dev_t **pAccel_devs);
   85 /*
   86  * icp_amgr_getAccelDevByName
   87  *
   88  * Description:
   89  * Returns the accel instance by name.
   90  *
   91  * Returns:
   92  *   CPA_STATUS_SUCCESS   on success
   93  *   CPA_STATUS_FAIL      on failure
   94  */
   95 CpaStatus icp_amgr_getAccelDevByName(unsigned char *instanceName,
   96                                      icp_accel_dev_t **pAccel_dev);
   97 /*
   98  * icp_amgr_getAccelDevByCapabilities
   99  *
  100  * Description:
  101  * Returns a started accel device that implements the capabilities
  102  * specified in capabilitiesMask.
  103  *
  104  * Returns:
  105  *   CPA_STATUS_SUCCESS   on success
  106  *   CPA_STATUS_FAIL      on failure
  107  */
  108 CpaStatus icp_amgr_getAccelDevByCapabilities(Cpa32U capabilitiesMask,
  109                                              icp_accel_dev_t **pAccel_devs,
  110                                              Cpa16U *pNumInstances);
  111 /*
  112  * icp_amgr_getAllAccelDevByCapabilities
  113  *
  114  * Description:
  115  * Returns table of accel devices that are started and implement
  116  * the capabilities specified in capabilitiesMask.
  117  *
  118  * Returns:
  119  *   CPA_STATUS_SUCCESS   on success
  120  *   CPA_STATUS_FAIL      on failure
  121  */
  122 CpaStatus icp_amgr_getAllAccelDevByCapabilities(Cpa32U capabilitiesMask,
  123                                                 icp_accel_dev_t **pAccel_devs,
  124                                                 Cpa16U *pNumInstances);
  125 
  126 /*
  127  * icp_amgr_getAccelDevCapabilities
  128  * Returns accel devices capabilities specified in capabilitiesMask.
  129  *
  130  * Returns:
  131  *   CPA_STATUS_SUCCESS   on success
  132  *   CPA_STATUS_FAIL      on failure
  133  */
  134 CpaStatus icp_amgr_getAccelDevCapabilities(icp_accel_dev_t *accel_dev,
  135                                            Cpa32U *pCapabilitiesMask);
  136 
  137 /*
  138  * icp_amgr_getAllAccelDevByEachCapability
  139  *
  140  * Description:
  141  * Returns table of accel devices that are started and implement
  142  * each of the capability specified in capabilitiesMask.
  143  *
  144  * Returns:
  145  *   CPA_STATUS_SUCCESS   on success
  146  *   CPA_STATUS_FAIL      on failure
  147  */
  148 CpaStatus icp_amgr_getAllAccelDevByEachCapability(Cpa32U capabilitiesMask,
  149                                                   icp_accel_dev_t **pAccel_devs,
  150                                                   Cpa16U *pNumInstances);
  151 
  152 /*
  153  * icp_qa_dev_get
  154  *
  155  * Description:
  156  * Function increments the device usage counter.
  157  *
  158  * Returns: void
  159  */
  160 void icp_qa_dev_get(icp_accel_dev_t *pDev);
  161 
  162 /*
  163  * icp_qa_dev_put
  164  *
  165  * Description:
  166  * Function decrements the device usage counter.
  167  *
  168  * Returns: void
  169  */
  170 void icp_qa_dev_put(icp_accel_dev_t *pDev);
  171 
  172 /*
  173  * icp_adf_getAccelDevByAccelId
  174  *
  175  * Description:
  176  * Gets the accel_dev structure based on accelId
  177  *
  178  * Returns: a pointer to the accelerator structure or NULL if not found.
  179  */
  180 icp_accel_dev_t *icp_adf_getAccelDevByAccelId(Cpa32U accelId);
  181 
  182 #endif /* ICP_ADF_ACCEL_MGR_H */

Cache object: 5c27575b793b1c788c7fbcd49d69e9c8


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.