From 18f364f8718348205426e6add68431e888dbac28 Mon Sep 17 00:00:00 2001 From: Robin Gong Date: Wed, 8 Jan 2014 08:54:36 +0000 Subject: [PATCH] ENGR00294026-1 char: viim: modify for device tree Change iim driver code for device tree framework. Signed-off-by: Robin Gong --- drivers/char/Kconfig | 2 +- drivers/char/mxs_viim.c | 23 ++++++++++------------- 2 files changed, 11 insertions(+), 14 deletions(-) diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig index 926b469fd3bd..91252530b7bc 100644 --- a/drivers/char/Kconfig +++ b/drivers/char/Kconfig @@ -622,7 +622,7 @@ config TILE_SROM config MXS_VIIM tristate "MXS Virtual IIM device driver" - depends on (ARCH_MX50 || ARCH_MX6) + depends on (SOC_IMX50 || SOC_IMX6Q || SOC_IMX6SL) help Support for access to MXS Virtual IIM device, most people should say N here. diff --git a/drivers/char/mxs_viim.c b/drivers/char/mxs_viim.c index e02c330381d8..d0ad69be4319 100644 --- a/drivers/char/mxs_viim.c +++ b/drivers/char/mxs_viim.c @@ -17,6 +17,8 @@ #include #include #include +#include +#include static unsigned long iim_reg_base0, iim_reg_end0, iim_reg_size0; static unsigned long iim_reg_base1, iim_reg_end1, iim_reg_size1; @@ -147,27 +149,22 @@ static int mxs_viim_remove(struct platform_device *pdev) return 0; } +static const struct of_device_id mxs_viim_dt_ids[] = { + { .compatible = "fsl,mxs_viim", }, + { /* sentinel */ } +}; +MODULE_DEVICE_TABLE(of, mxs_viim_dt_ids); + static struct platform_driver mxs_viim_driver = { .driver = { .owner = THIS_MODULE, .name = "mxs_viim", + .of_match_table = mxs_viim_dt_ids, }, .probe = mxs_viim_probe, .remove = mxs_viim_remove, }; - -static int __init mxs_viim_dev_init(void) -{ - return platform_driver_register(&mxs_viim_driver); -} - -static void __exit mxs_viim_dev_cleanup(void) -{ - platform_driver_unregister(&mxs_viim_driver); -} - -module_init(mxs_viim_dev_init); -module_exit(mxs_viim_dev_cleanup); +module_platform_driver(mxs_viim_driver); MODULE_AUTHOR("Freescale Semiconductor, Inc."); MODULE_DESCRIPTION("IMX Virtual IIM driver"); -- 2.39.5