author | Suman Anna <s-anna@ti.com> | |
Mon, 18 May 2015 02:03:33 +0000 (21:03 -0500) | ||
committer | Suman Anna <s-anna@ti.com> | |
Mon, 18 May 2015 02:10:28 +0000 (21:10 -0500) |
Merge in the updated iommu feature branch into remoteproc tree to
pull in the suspend/resume support in the OMAP IOMMU driver. The
following are the main changes:
- improvements in the OMAP iommu to perform the enabling &
disabling of the IOMMU from within the runtime pm callbacks
- two new API that needs to be invoked from the OMAP remoteproc
driver to suspend/resume the IOMMU.
- locked TLB save & restore logic
- add needed pdata quirks to all supported IOMMUs
* 'iommu-linux-3.14.y' of git://git.ti.com/rpmsg/iommu:
iommu/omap: add support for runtime auto suspend/resume
iommu/omap: add logic to save/restore locked TLBs
iommu/omap: introduce new API for suspend/resume
iommu/omap: streamline enable/disable through runtime pm callbacks
ARM: OMAP2+: add pdata-quirks for OMAP3 ISP IOMMU
ARM: OMAP2+: Add iommu pdata-quirks for DRA7 DSP EDMA MMUs
ARM: OMAP2+: plug in device_enable/idle ops for IOMMUs
iommu/omap: add pdata ops for omap_device_enable/idle
Signed-off-by: Suman Anna <s-anna@ti.com>
pull in the suspend/resume support in the OMAP IOMMU driver. The
following are the main changes:
- improvements in the OMAP iommu to perform the enabling &
disabling of the IOMMU from within the runtime pm callbacks
- two new API that needs to be invoked from the OMAP remoteproc
driver to suspend/resume the IOMMU.
- locked TLB save & restore logic
- add needed pdata quirks to all supported IOMMUs
* 'iommu-linux-3.14.y' of git://git.ti.com/rpmsg/iommu:
iommu/omap: add support for runtime auto suspend/resume
iommu/omap: add logic to save/restore locked TLBs
iommu/omap: introduce new API for suspend/resume
iommu/omap: streamline enable/disable through runtime pm callbacks
ARM: OMAP2+: add pdata-quirks for OMAP3 ISP IOMMU
ARM: OMAP2+: Add iommu pdata-quirks for DRA7 DSP EDMA MMUs
ARM: OMAP2+: plug in device_enable/idle ops for IOMMUs
iommu/omap: add pdata ops for omap_device_enable/idle
Signed-off-by: Suman Anna <s-anna@ti.com>
1 | 2 | |||
---|---|---|---|---|
arch/arm/mach-omap2/pdata-quirks.c | patch | | diff1 | | diff2 | | blob | history |
diff --cc arch/arm/mach-omap2/pdata-quirks.c
index bce029f1bdcd22d822fafc35ff3881395255cc3c,ec7e6df8d0c67fa12f5aa5b8b1f1bb67a2e5eabd..9bb61bec9251b3fc73577067782ddd6b82ff2a7d
.reset_name = "mmu_cache",
.assert_reset = omap_device_assert_hardreset,
.deassert_reset = omap_device_deassert_hardreset,
+ .device_enable = omap_device_enable,
+ .device_idle = omap_device_idle,
};
+
+static struct omap_rproc_pdata omap4_ipu_pdata = {
+ .device_enable = omap_rproc_device_enable,
+ .device_shutdown = omap_rproc_device_shutdown,
+ .timer_ops = &omap_rproc_dmtimer_ops,
+};
+#endif
+
+#if defined(CONFIG_ARCH_OMAP4) || defined(CONFIG_SOC_OMAP5)
+static struct omap_rproc_pdata omap4_dsp_pdata = {
+ .device_enable = omap_rproc_device_enable,
+ .device_shutdown = omap_rproc_device_shutdown,
+ .set_bootaddr = omap_ctrl_write_dsp_boot_addr,
+ .timer_ops = &omap_rproc_dmtimer_ops,
+};
#endif
#ifdef CONFIG_SOC_DRA7XX
+ static struct iommu_platform_data dra7_dsp_mmu_edma_pdata = {
+ .device_enable = omap_device_enable,
+ .device_idle = omap_device_idle,
+ };
++
+static struct omap_rproc_pdata dra7_dsp1_pdata = {
+ .device_enable = omap_rproc_device_enable,
+ .device_shutdown = omap_rproc_device_shutdown,
+ .set_bootaddr = dra7_ctrl_write_dsp1_boot_addr,
+ .timer_ops = &omap_rproc_dmtimer_ops,
+};
+
+static struct omap_rproc_pdata dra7_dsp2_pdata = {
+ .device_enable = omap_rproc_device_enable,
+ .device_shutdown = omap_rproc_device_shutdown,
+ .set_bootaddr = dra7_ctrl_write_dsp2_boot_addr,
+ .timer_ops = &omap_rproc_dmtimer_ops,
+};
#endif
#ifdef CONFIG_SOC_AM33XX