3 * Copyright (C) 2012 Hideki EIRAKU
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; version 2 of the License.
10 #ifndef __SHMOBILE_IPMMU_H__
11 #define __SHMOBILE_IPMMU_H__
13 struct shmobile_ipmmu
{
15 void __iomem
*ipmmu_base
;
17 struct mutex flush_lock
;
18 const char * const *dev_names
;
19 unsigned int num_dev_names
;
22 #ifdef CONFIG_SHMOBILE_IPMMU_TLB
23 void ipmmu_tlb_flush(struct shmobile_ipmmu
*ipmmu
);
24 void ipmmu_tlb_set(struct shmobile_ipmmu
*ipmmu
, unsigned long phys
, int size
,
26 int ipmmu_iommu_init(struct shmobile_ipmmu
*ipmmu
);
28 static inline int ipmmu_iommu_init(struct shmobile_ipmmu
*ipmmu
)
34 #endif /* __SHMOBILE_IPMMU_H__ */