Path: blob/master/drivers/accel/habanalabs/include/common/qman_if.h
26447 views
/* SPDX-License-Identifier: GPL-2.01*2* Copyright 2016-2018 HabanaLabs, Ltd.3* All Rights Reserved.4*5*/67#ifndef QMAN_IF_H8#define QMAN_IF_H910#include <linux/types.h>1112/*13* PRIMARY QUEUE14*/1516struct hl_bd {17__le64 ptr;18__le32 len;19__le32 ctl;20};2122#define HL_BD_SIZE sizeof(struct hl_bd)2324/*25* S/W CTL FIELDS.26*27* BD_CTL_REPEAT_VALID tells the CP whether the repeat field in the BD CTL is28* valid. 1 means the repeat field is valid, 0 means not-valid,29* i.e. repeat == 130*/31#define BD_CTL_REPEAT_VALID_SHIFT 2432#define BD_CTL_REPEAT_VALID_MASK 0x010000003334#define BD_CTL_SHADOW_INDEX_SHIFT 035#define BD_CTL_SHADOW_INDEX_MASK 0x00000FFF3637/*38* H/W CTL FIELDS39*/4041#define BD_CTL_COMP_OFFSET_SHIFT 1642#define BD_CTL_COMP_OFFSET_MASK 0x0FFF00004344#define BD_CTL_COMP_DATA_SHIFT 045#define BD_CTL_COMP_DATA_MASK 0x0000FFFF4647/*48* COMPLETION QUEUE49*/5051struct hl_cq_entry {52__le32 data;53};5455#define HL_CQ_ENTRY_SIZE sizeof(struct hl_cq_entry)5657#define CQ_ENTRY_READY_SHIFT 3158#define CQ_ENTRY_READY_MASK 0x800000005960#define CQ_ENTRY_SHADOW_INDEX_VALID_SHIFT 3061#define CQ_ENTRY_SHADOW_INDEX_VALID_MASK 0x400000006263#define CQ_ENTRY_SHADOW_INDEX_SHIFT BD_CTL_SHADOW_INDEX_SHIFT64#define CQ_ENTRY_SHADOW_INDEX_MASK BD_CTL_SHADOW_INDEX_MASK656667#endif /* QMAN_IF_H */686970