1 /*
2  * omap iommu: main structures
3  *
4  * Copyright (C) 2008-2009 Nokia Corporation
5  *
6  * Written by Hiroshi DOYU <[email protected]>
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License version 2 as
10  * published by the Free Software Foundation.
11  */
12 
13 #define MMU_REG_SIZE		256
14 
15 /**
16  * struct iommu_arch_data - omap iommu private data
17  * @name: name of the iommu device
18  * @iommu_dev: handle of the iommu device
19  *
20  * This is an omap iommu private data object, which binds an iommu user
21  * to its iommu device. This object should be placed at the iommu user's
22  * dev_archdata so generic IOMMU API can be used without having to
23  * utilize omap-specific plumbing anymore.
24  */
25 struct omap_iommu_arch_data {
26 	const char *name;
27 	struct omap_iommu *iommu_dev;
28 };
29 
30 /**
31  * struct omap_mmu_dev_attr - OMAP mmu device attributes for omap_hwmod
32  * @da_start:		device address where the va space starts.
33  * @da_end:		device address where the va space ends.
34  * @nr_tlb_entries:	number of entries supported by the translation
35  *			look-aside buffer (TLB).
36  */
37 struct omap_mmu_dev_attr {
38 	u32 da_start;
39 	u32 da_end;
40 	int nr_tlb_entries;
41 };
42 
43 struct iommu_platform_data {
44 	const char *name;
45 	const char *clk_name;
46 	const int nr_tlb_entries;
47 	u32 da_start;
48 	u32 da_end;
49 };
50