linux/drivers/accel/habanalabs/include/hw_ip/mmu/mmu_general.h

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

#ifndef INCLUDE_MMU_GENERAL_H_
#define INCLUDE_MMU_GENERAL_H_

#define PAGE_SHIFT_4KB
#define PAGE_SHIFT_64KB
#define PAGE_SHIFT_2MB
#define PAGE_SHIFT_16MB
#define PAGE_SHIFT_64MB
#define PAGE_SHIFT_1GB
#define PAGE_SIZE_4KB
#define PAGE_SIZE_64KB
#define PAGE_SIZE_2MB
#define PAGE_SIZE_16MB
#define PAGE_SIZE_64MB
#define PAGE_SIZE_1GB

#define PAGE_PRESENT_MASK
#define SWAP_OUT_MASK
#define LAST_MASK
#define FLAGS_MASK

#define MMU_ARCH_3_HOPS
#define MMU_ARCH_4_HOPS
#define MMU_ARCH_5_HOPS
#define MMU_ARCH_6_HOPS

#define HOP_PHYS_ADDR_MASK

#define HL_PTE_SIZE

/* definitions for HOP with 512 PTE entries */
#define HOP_PTE_ENTRIES_512
#define HOP_TABLE_SIZE_512_PTE
#define HOP0_512_PTE_TABLES_TOTAL_SIZE

#define MMU_HOP0_PA43_12_SHIFT
#define MMU_HOP0_PA49_44_SHIFT
#define MMU_HOP0_PA63_44_SHIFT

#define MMU_CONFIG_TIMEOUT_USEC

enum mmu_hop_num {};

#endif /* INCLUDE_MMU_GENERAL_H_ */