root/drivers/misc/habanalabs/include/qman_if.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0
   2  *
   3  * Copyright 2016-2018 HabanaLabs, Ltd.
   4  * All Rights Reserved.
   5  *
   6  */
   7 
   8 #ifndef QMAN_IF_H
   9 #define QMAN_IF_H
  10 
  11 #include <linux/types.h>
  12 
  13 /*
  14  * PRIMARY QUEUE
  15  */
  16 
  17 struct hl_bd {
  18         __le64  ptr;
  19         __le32  len;
  20         __le32  ctl;
  21 };
  22 
  23 #define HL_BD_SIZE                      sizeof(struct hl_bd)
  24 
  25 /*
  26  * BD_CTL_REPEAT_VALID tells the CP whether the repeat field in the BD CTL is
  27  * valid. 1 means the repeat field is valid, 0 means not-valid,
  28  * i.e. repeat == 1
  29  */
  30 #define BD_CTL_REPEAT_VALID_SHIFT       24
  31 #define BD_CTL_REPEAT_VALID_MASK        0x01000000
  32 
  33 #define BD_CTL_SHADOW_INDEX_SHIFT       0
  34 #define BD_CTL_SHADOW_INDEX_MASK        0x00000FFF
  35 
  36 /*
  37  * COMPLETION QUEUE
  38  */
  39 
  40 struct hl_cq_entry {
  41         __le32  data;
  42 };
  43 
  44 #define HL_CQ_ENTRY_SIZE                sizeof(struct hl_cq_entry)
  45 
  46 #define CQ_ENTRY_READY_SHIFT                    31
  47 #define CQ_ENTRY_READY_MASK                     0x80000000
  48 
  49 #define CQ_ENTRY_SHADOW_INDEX_VALID_SHIFT       30
  50 #define CQ_ENTRY_SHADOW_INDEX_VALID_MASK        0x40000000
  51 
  52 #define CQ_ENTRY_SHADOW_INDEX_SHIFT             BD_CTL_SHADOW_INDEX_SHIFT
  53 #define CQ_ENTRY_SHADOW_INDEX_MASK              BD_CTL_SHADOW_INDEX_MASK
  54 
  55 
  56 #endif /* QMAN_IF_H */

/* [<][>][^][v][top][bottom][index][help] */