Message ID | 1436560985-5947-1-git-send-email-s-anna@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
* Suman Anna <s-anna@ti.com> [150710 13:45]: > The OMAP IOMMU driver has been adapted to the IOMMU framework > for a while now, and it no longer supports being built as a > module. Cleanup all the module related references both from > the code and in the build. > > While at it, also relocate a comment around the initcall to > avoid a checkpatch strict warning about using a blank line > after function/struct/union/enum declarations. OK applying into omap-for-v4.3/soc. You may want to check few things after this: - Does it still need to be omap_subsys_initcall or can it happen later? Anything we can initialize later on is worth doing as then we have proper debug console available. - For multi_v7_defconfig it would be nice to be able to make the driver/iommu components into standard Linux loadable modules. - Actually you can probably get rid of mach-omap2/omap-iommu.c completely by implementing PM runtime and and possibly reset controller. Regrds, Tony
Hi Tony, On 07/16/2015 02:16 AM, Tony Lindgren wrote: > * Suman Anna <s-anna@ti.com> [150710 13:45]: >> The OMAP IOMMU driver has been adapted to the IOMMU framework >> for a while now, and it no longer supports being built as a >> module. Cleanup all the module related references both from >> the code and in the build. >> >> While at it, also relocate a comment around the initcall to >> avoid a checkpatch strict warning about using a blank line >> after function/struct/union/enum declarations. > > OK applying into omap-for-v4.3/soc. Thanks. > > You may want to check few things after this: > > - Does it still need to be omap_subsys_initcall or can it > happen later? Anything we can initialize later on is worth > doing as then we have proper debug console available. This code will be cleaned up once the non-DT references/users for OMAP3 IOMMUs go away. I will do this in the next merge window once Laurent's OMAP3ISP legacy device creation cleanup series gets into mainline [1]. > > - For multi_v7_defconfig it would be nice to be able to > make the driver/iommu components into standard Linux > loadable modules. We used to be module before, and the built-in is coming from the IOMMU framework. The init function in the OMAP IOMMU driver already handles the multi_v7_defconfig scenario, so no issues there. > > - Actually you can probably get rid of mach-omap2/omap-iommu.c > completely by implementing PM runtime and and possibly > reset controller. Yeah, any need for this file after the non-DT device creation removal would arises from the PRCM/reset dependencies against API present in mach-omap2 layer only. regards Suman [1] http://marc.info/?l=linux-omap&m=143705130631733&w=2
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile index 903c85be2897..d4579f856b25 100644 --- a/arch/arm/mach-omap2/Makefile +++ b/arch/arm/mach-omap2/Makefile @@ -234,8 +234,7 @@ obj-$(CONFIG_SOC_DRA7XX) += omap_hwmod_7xx_data.o # EMU peripherals obj-$(CONFIG_HW_PERF_EVENTS) += pmu.o -iommu-$(CONFIG_OMAP_IOMMU) := omap-iommu.o -obj-y += $(iommu-m) $(iommu-y) +obj-$(CONFIG_OMAP_IOMMU) += omap-iommu.o # OMAP2420 MSDI controller integration support ("MMC") obj-$(CONFIG_SOC_OMAP2420) += msdi.o diff --git a/arch/arm/mach-omap2/omap-iommu.c b/arch/arm/mach-omap2/omap-iommu.c index 4068350f9059..8867eb4025bf 100644 --- a/arch/arm/mach-omap2/omap-iommu.c +++ b/arch/arm/mach-omap2/omap-iommu.c @@ -11,7 +11,6 @@ */ #include <linux/of.h> -#include <linux/module.h> #include <linux/platform_device.h> #include <linux/err.h> #include <linux/slab.h> @@ -63,15 +62,5 @@ static int __init omap_iommu_init(void) return omap_hwmod_for_each_by_class("mmu", omap_iommu_dev_init, NULL); } -/* must be ready before omap3isp is probed */ omap_subsys_initcall(omap_iommu_init); - -static void __exit omap_iommu_exit(void) -{ - /* Do nothing */ -} -module_exit(omap_iommu_exit); - -MODULE_AUTHOR("Hiroshi DOYU"); -MODULE_DESCRIPTION("omap iommu: omap device registration"); -MODULE_LICENSE("GPL v2"); +/* must be ready before omap3isp is probed */
The OMAP IOMMU driver has been adapted to the IOMMU framework for a while now, and it no longer supports being built as a module. Cleanup all the module related references both from the code and in the build. While at it, also relocate a comment around the initcall to avoid a checkpatch strict warning about using a blank line after function/struct/union/enum declarations. Signed-off-by: Suman Anna <s-anna@ti.com> --- arch/arm/mach-omap2/Makefile | 3 +-- arch/arm/mach-omap2/omap-iommu.c | 13 +------------ 2 files changed, 2 insertions(+), 14 deletions(-)