/* SPDX-License-Identifier: GPL-2.0
 *
 * Copyright 2016-2020 HabanaLabs, Ltd.
 * All Rights Reserved.
 *
 */

/************************************
 ** This is an auto-generated file **
 **       DO NOT EDIT BELOW        **
 ************************************/

#ifndef ASIC_REG_PDMA1_QM_AXUSER_NONSECURED_REGS_H_
#define ASIC_REG_PDMA1_QM_AXUSER_NONSECURED_REGS_H_

/*
 *****************************************
 *   PDMA1_QM_AXUSER_NONSECURED
 *   (Prototype: AXUSER)
 *****************************************
 */

#define mmPDMA1_QM_AXUSER_NONSECURED_HB_ASID 0x4C9AB80

#define mmPDMA1_QM_AXUSER_NONSECURED_HB_MMU_BP 0x4C9AB84

#define mmPDMA1_QM_AXUSER_NONSECURED_HB_STRONG_ORDER 0x4C9AB88

#define mmPDMA1_QM_AXUSER_NONSECURED_HB_NO_SNOOP 0x4C9AB8C

#define mmPDMA1_QM_AXUSER_NONSECURED_HB_WR_REDUCTION 0x4C9AB90

#define mmPDMA1_QM_AXUSER_NONSECURED_HB_RD_ATOMIC 0x4C9AB94

#define mmPDMA1_QM_AXUSER_NONSECURED_HB_QOS 0x4C9AB98

#define mmPDMA1_QM_AXUSER_NONSECURED_HB_RSVD 0x4C9AB9C

#define mmPDMA1_QM_AXUSER_NONSECURED_HB_EMEM_CPAGE 0x4C9ABA0

#define mmPDMA1_QM_AXUSER_NONSECURED_HB_CORE 0x4C9ABA4

#define mmPDMA1_QM_AXUSER_NONSECURED_E2E_COORD 0x4C9ABA8

#define mmPDMA1_QM_AXUSER_NONSECURED_HB_WR_OVRD_LO 0x4C9ABB0

#define mmPDMA1_QM_AXUSER_NONSECURED_HB_WR_OVRD_HI 0x4C9ABB4

#define mmPDMA1_QM_AXUSER_NONSECURED_HB_RD_OVRD_LO 0x4C9ABB8

#define mmPDMA1_QM_AXUSER_NONSECURED_HB_RD_OVRD_HI 0x4C9ABBC

#define mmPDMA1_QM_AXUSER_NONSECURED_LB_COORD 0x4C9ABC0

#define mmPDMA1_QM_AXUSER_NONSECURED_LB_LOCK 0x4C9ABC4

#define mmPDMA1_QM_AXUSER_NONSECURED_LB_RSVD 0x4C9ABC8

#define mmPDMA1_QM_AXUSER_NONSECURED_LB_OVRD 0x4C9ABCC

#endif /* ASIC_REG_PDMA1_QM_AXUSER_NONSECURED_REGS_H_ */
