From: Fabio Estevam <festevam@xxxxxxx> The motivation for this imx6sx-gpr driver is to allow describing the LVDS LDB bridge as a GPR subnode. Signed-off-by: Fabio Estevam <festevam@xxxxxxx> --- Changes since v3: - None. drivers/soc/imx/Makefile | 1 + drivers/soc/imx/imx6sx-gpr.c | 29 +++++++++++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 drivers/soc/imx/imx6sx-gpr.c diff --git a/drivers/soc/imx/Makefile b/drivers/soc/imx/Makefile index a28c44a1f16a..9840d4c41015 100644 --- a/drivers/soc/imx/Makefile +++ b/drivers/soc/imx/Makefile @@ -4,6 +4,7 @@ obj-$(CONFIG_ARCH_MXC) += soc-imx.o endif obj-$(CONFIG_HAVE_IMX_GPC) += gpc.o obj-$(CONFIG_IMX_GPCV2_PM_DOMAINS) += gpcv2.o +obj-$(CONFIG_SOC_IMX6SX) += imx6sx-gpr.o obj-$(CONFIG_SOC_IMX8M) += soc-imx8m.o obj-$(CONFIG_IMX8M_BLK_CTRL) += imx8m-blk-ctrl.o obj-$(CONFIG_IMX8M_BLK_CTRL) += imx8mp-blk-ctrl.o diff --git a/drivers/soc/imx/imx6sx-gpr.c b/drivers/soc/imx/imx6sx-gpr.c new file mode 100644 index 000000000000..7684acbe43ff --- /dev/null +++ b/drivers/soc/imx/imx6sx-gpr.c @@ -0,0 +1,29 @@ +// SPDX-License-Identifier: GPL-2.0 + +#include <linux/module.h> +#include <linux/of_platform.h> +#include <linux/platform_device.h> + +static int imx6sx_gpr_probe(struct platform_device *pdev) +{ + return devm_of_platform_populate(&pdev->dev); +} + +static const struct of_device_id imx6sx_gpr_ids[] = { + { .compatible = "fsl,imx6sx-iomuxc-gpr" }, + { } +}; +MODULE_DEVICE_TABLE(of, imx6sx_gpr_ids); + +static struct platform_driver imx6sx_gpr_driver = { + .driver = { + .name = "imx6sx_gpr", + .of_match_table = imx6sx_gpr_ids, + }, + .probe = imx6sx_gpr_probe, +}; +module_platform_driver(imx6sx_gpr_driver); + +MODULE_AUTHOR("Fabio Estevam <festevam@xxxxxxx>"); +MODULE_DESCRIPTION("NXP i.MX6SX GPR driver"); +MODULE_LICENSE("GPL"); -- 2.34.1