pinctrl-imx28.c (e5451c8f8330e03ad3cfa16048b4daf961af434f) pinctrl-imx28.c (37824c122cc4d3b6f8b8f6591279386672049360)
1/*
1/*
2 * Freescale i.MX28 pinctrl driver
3 *
4 * Author: Shawn Guo <shawn.guo@linaro.org>
2 * Copyright 2012 Freescale Semiconductor, Inc.
3 *
4 * The code contained herein is licensed under the GNU General Public
5 * License. You may obtain a copy of the GNU General Public License
6 * Version 2 or later at the following locations:
7 *
8 * http://www.opensource.org/licenses/gpl-license.html
9 * http://www.gnu.org/copyleft/gpl.html
10 */
11
12#include <linux/init.h>
5 * Copyright 2012 Freescale Semiconductor, Inc.
6 *
7 * The code contained herein is licensed under the GNU General Public
8 * License. You may obtain a copy of the GNU General Public License
9 * Version 2 or later at the following locations:
10 *
11 * http://www.opensource.org/licenses/gpl-license.html
12 * http://www.gnu.org/copyleft/gpl.html
13 */
14
15#include <linux/init.h>
13#include <linux/module.h>
14#include <linux/of_device.h>
15#include <linux/pinctrl/pinctrl.h>
16#include "pinctrl-mxs.h"
17
18enum imx28_pin_enum {
19 GPMI_D00 = PINID(0, 0),
20 GPMI_D01 = PINID(0, 1),
21 GPMI_D02 = PINID(0, 2),

--- 365 unchanged lines hidden (view full) ---

387{
388 return mxs_pinctrl_probe(pdev, &imx28_pinctrl_data);
389}
390
391static const struct of_device_id imx28_pinctrl_of_match[] = {
392 { .compatible = "fsl,imx28-pinctrl", },
393 { /* sentinel */ }
394};
16#include <linux/of_device.h>
17#include <linux/pinctrl/pinctrl.h>
18#include "pinctrl-mxs.h"
19
20enum imx28_pin_enum {
21 GPMI_D00 = PINID(0, 0),
22 GPMI_D01 = PINID(0, 1),
23 GPMI_D02 = PINID(0, 2),

--- 365 unchanged lines hidden (view full) ---

389{
390 return mxs_pinctrl_probe(pdev, &imx28_pinctrl_data);
391}
392
393static const struct of_device_id imx28_pinctrl_of_match[] = {
394 { .compatible = "fsl,imx28-pinctrl", },
395 { /* sentinel */ }
396};
395MODULE_DEVICE_TABLE(of, imx28_pinctrl_of_match);
396
397static struct platform_driver imx28_pinctrl_driver = {
398 .driver = {
399 .name = "imx28-pinctrl",
397
398static struct platform_driver imx28_pinctrl_driver = {
399 .driver = {
400 .name = "imx28-pinctrl",
401 .suppress_bind_attrs = true,
400 .of_match_table = imx28_pinctrl_of_match,
401 },
402 .probe = imx28_pinctrl_probe,
402 .of_match_table = imx28_pinctrl_of_match,
403 },
404 .probe = imx28_pinctrl_probe,
403 .remove = mxs_pinctrl_remove,
404};
405
406static int __init imx28_pinctrl_init(void)
407{
408 return platform_driver_register(&imx28_pinctrl_driver);
409}
410postcore_initcall(imx28_pinctrl_init);
405};
406
407static int __init imx28_pinctrl_init(void)
408{
409 return platform_driver_register(&imx28_pinctrl_driver);
410}
411postcore_initcall(imx28_pinctrl_init);
411
412static void __exit imx28_pinctrl_exit(void)
413{
414 platform_driver_unregister(&imx28_pinctrl_driver);
415}
416module_exit(imx28_pinctrl_exit);
417
418MODULE_AUTHOR("Shawn Guo <shawn.guo@linaro.org>");
419MODULE_DESCRIPTION("Freescale i.MX28 pinctrl driver");
420MODULE_LICENSE("GPL v2");