123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- /*
- * Copyright (C) 2016 Peng Fan <van.freenix@gmail.com>
- *
- * SPDX-License-Identifier: GPL-2.0+
- */
- #include <dm/device.h>
- #include <dm/pinctrl.h>
- #include "pinctrl-imx.h"
- static struct imx_pinctrl_soc_info imx6_pinctrl_soc_info;
- static struct imx_pinctrl_soc_info imx6_snvs_pinctrl_soc_info = {
- .flags = ZERO_OFFSET_VALID,
- };
- static int imx6_pinctrl_probe(struct udevice *dev)
- {
- struct imx_pinctrl_soc_info *info =
- (struct imx_pinctrl_soc_info *)dev_get_driver_data(dev);
- return imx_pinctrl_probe(dev, info);
- }
- static const struct udevice_id imx6_pinctrl_match[] = {
- { .compatible = "fsl,imx6q-iomuxc", .data = (ulong)&imx6_pinctrl_soc_info },
- { .compatible = "fsl,imx6dl-iomuxc", .data = (ulong)&imx6_pinctrl_soc_info },
- { .compatible = "fsl,imx6sl-iomuxc", .data = (ulong)&imx6_pinctrl_soc_info },
- { .compatible = "fsl,imx6sll-iomuxc-snvs", .data = (ulong)&imx6_snvs_pinctrl_soc_info },
- { .compatible = "fsl,imx6sll-iomuxc", .data = (ulong)&imx6_pinctrl_soc_info },
- { .compatible = "fsl,imx6sx-iomuxc", .data = (ulong)&imx6_pinctrl_soc_info },
- { .compatible = "fsl,imx6ul-iomuxc", .data = (ulong)&imx6_pinctrl_soc_info },
- { .compatible = "fsl,imx6ull-iomuxc-snvs", .data = (ulong)&imx6_snvs_pinctrl_soc_info },
- { /* sentinel */ }
- };
- U_BOOT_DRIVER(imx6_pinctrl) = {
- .name = "imx6-pinctrl",
- .id = UCLASS_PINCTRL,
- .of_match = of_match_ptr(imx6_pinctrl_match),
- .probe = imx6_pinctrl_probe,
- .remove = imx_pinctrl_remove,
- .priv_auto_alloc_size = sizeof(struct imx_pinctrl_priv),
- .ops = &imx_pinctrl_ops,
- .flags = DM_FLAG_PRE_RELOC,
- };
|