123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- /*
- * omap iommu: main structures
- *
- * Copyright (C) 2008-2009 Nokia Corporation
- *
- * Written by Hiroshi DOYU <Hiroshi.DOYU@nokia.com>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- */
- #include <linux/platform_device.h>
- #define MMU_REG_SIZE 256
- /**
- * struct iommu_arch_data - omap iommu private data
- * @name: name of the iommu device
- * @iommu_dev: handle of the iommu device
- *
- * This is an omap iommu private data object, which binds an iommu user
- * to its iommu device. This object should be placed at the iommu user's
- * dev_archdata so generic IOMMU API can be used without having to
- * utilize omap-specific plumbing anymore.
- */
- struct omap_iommu_arch_data {
- const char *name;
- struct omap_iommu *iommu_dev;
- };
- /**
- * struct omap_mmu_dev_attr - OMAP mmu device attributes for omap_hwmod
- * @da_start: device address where the va space starts.
- * @da_end: device address where the va space ends.
- * @nr_tlb_entries: number of entries supported by the translation
- * look-aside buffer (TLB).
- */
- struct omap_mmu_dev_attr {
- u32 da_start;
- u32 da_end;
- int nr_tlb_entries;
- };
- struct iommu_platform_data {
- const char *name;
- const char *reset_name;
- int nr_tlb_entries;
- u32 da_start;
- u32 da_end;
- int (*assert_reset)(struct platform_device *pdev, const char *name);
- int (*deassert_reset)(struct platform_device *pdev, const char *name);
- };
|