1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Support for Intel Camera Imaging ISP subsystem.
4  * Copyright (c) 2010-2015, Intel Corporation.
5  */
6 
7 /* The name "mmu.h is already taken" */
8 #include "mmu_device.h"
9 
mmu_set_page_table_base_index(const mmu_ID_t ID,const hrt_data base_index)10 void mmu_set_page_table_base_index(
11     const mmu_ID_t		ID,
12     const hrt_data		base_index)
13 {
14 	mmu_reg_store(ID, _HRT_MMU_PAGE_TABLE_BASE_ADDRESS_REG_IDX, base_index);
15 	return;
16 }
17 
mmu_get_page_table_base_index(const mmu_ID_t ID)18 hrt_data mmu_get_page_table_base_index(
19     const mmu_ID_t		ID)
20 {
21 	return mmu_reg_load(ID, _HRT_MMU_PAGE_TABLE_BASE_ADDRESS_REG_IDX);
22 }
23 
mmu_invalidate_cache(const mmu_ID_t ID)24 void mmu_invalidate_cache(
25     const mmu_ID_t		ID)
26 {
27 	mmu_reg_store(ID, _HRT_MMU_INVALIDATE_TLB_REG_IDX, 1);
28 	return;
29 }
30 
mmu_invalidate_cache_all(void)31 void mmu_invalidate_cache_all(void)
32 {
33 	mmu_ID_t	mmu_id;
34 
35 	for (mmu_id = (mmu_ID_t)0; mmu_id < N_MMU_ID; mmu_id++) {
36 		mmu_invalidate_cache(mmu_id);
37 	}
38 }
39