[PATCH 7/9] pinctrl: mvebu: add driver for Armada AP806 pinctrl

Paul Gortmaker paul.gortmaker at windriver.com
Sat May 20 12:04:22 PDT 2017


On Fri, May 19, 2017 at 12:04 PM, Gregory CLEMENT
<gregory.clement at free-electrons.com> wrote:
> From: Hanna Hawa <hannah at marvell.com>
>
> This commit adds a pinctrl driver for the pin-muxing controller found in
> the AP806 part of the Marvell Armada 7K and 8K SoCs. Its register
> interface is compatible with the one used by previous mvebu pin
> controllers, so the common logic in drivers/pinctrl/mvebu/pinctrl-mvebu.c
> is used.
>
> Signed-off-by: Hanna Hawa <hannah at marvell.com>
> Reviewed-by: Shadi Ammouri <shadi at marvell.com>
> [updated for mvebu pinctrl changes
>  - converted to simple_mmio
>  - removed unimplemented .remove function
>  - removed DTS description
>   - converted  to use syscon/regmap
>  --rmk]
> Signed-off-by: Russell King <rmk+kernel at armlinux.org.uk>
> Reviewed-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
> Signed-off-by: Gregory CLEMENT <gregory.clement at free-electrons.com>
> ---
>  drivers/pinctrl/mvebu/Kconfig                |   4 +-
>  drivers/pinctrl/mvebu/Makefile               |   1 +-
>  drivers/pinctrl/mvebu/pinctrl-armada-ap806.c | 145 ++++++++++++++++++++-
>  3 files changed, 150 insertions(+)
>  create mode 100644 drivers/pinctrl/mvebu/pinctrl-armada-ap806.c
>
> diff --git a/drivers/pinctrl/mvebu/Kconfig b/drivers/pinctrl/mvebu/Kconfig
> index 8cb444b60ae9..0e0b009f2b71 100644
> --- a/drivers/pinctrl/mvebu/Kconfig
> +++ b/drivers/pinctrl/mvebu/Kconfig
> @@ -28,6 +28,10 @@ config PINCTRL_ARMADA_39X
>         bool
>         select PINCTRL_MVEBU
>
> +config PINCTRL_ARMADA_AP806
> +       bool
> +       select PINCTRL_MVEBU

If this isn't going to be modular, can we remove all the uses
of module.h and MODULE_ etc.   I've nearly got all of these
cleaned up in pinctrl and it would be nice to not have new
ones creep back in.

Thanks,
Paul.
--

> +
>  config PINCTRL_ARMADA_XP
>         bool
>         select PINCTRL_MVEBU
> diff --git a/drivers/pinctrl/mvebu/Makefile b/drivers/pinctrl/mvebu/Makefile
> index 60c245a60f39..455db274b53d 100644
> --- a/drivers/pinctrl/mvebu/Makefile
> +++ b/drivers/pinctrl/mvebu/Makefile
> @@ -5,6 +5,7 @@ obj-$(CONFIG_PINCTRL_ARMADA_370) += pinctrl-armada-370.o
>  obj-$(CONFIG_PINCTRL_ARMADA_375) += pinctrl-armada-375.o
>  obj-$(CONFIG_PINCTRL_ARMADA_38X) += pinctrl-armada-38x.o
>  obj-$(CONFIG_PINCTRL_ARMADA_39X) += pinctrl-armada-39x.o
> +obj-$(CONFIG_PINCTRL_ARMADA_AP806) += pinctrl-armada-ap806.o
>  obj-$(CONFIG_PINCTRL_ARMADA_XP)  += pinctrl-armada-xp.o
>  obj-$(CONFIG_PINCTRL_ARMADA_37XX)  += pinctrl-armada-37xx.o
>  obj-$(CONFIG_PINCTRL_ORION)  += pinctrl-orion.o
> diff --git a/drivers/pinctrl/mvebu/pinctrl-armada-ap806.c b/drivers/pinctrl/mvebu/pinctrl-armada-ap806.c
> new file mode 100644
> index 000000000000..269b1c1f53b1
> --- /dev/null
> +++ b/drivers/pinctrl/mvebu/pinctrl-armada-ap806.c
> @@ -0,0 +1,145 @@
> +/*
> + * Marvell Armada ap806 pinctrl driver based on mvebu pinctrl core
> + *
> + * Copyright (C) 2017 Marvell
> + *
> + * Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
> + * Hanna Hawa <hannah at marvell.com>
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License as published by
> + * the Free Software Foundation; either version 2 of the License, or
> + * (at your option) any later version.
> + */
> +
> +#include <linux/err.h>
> +#include <linux/init.h>
> +#include <linux/io.h>
> +#include <linux/module.h>

[...]

> +module_platform_driver(armada_ap806_pinctrl_driver);
> +
> +MODULE_AUTHOR("Thomas Petazzoni <thomas.petazzoni at free-electrons.com>");
> +MODULE_DESCRIPTION("Marvell Armada ap806 pinctrl driver");
> +MODULE_LICENSE("GPL v2");
> --
> git-series 0.9.1



More information about the linux-arm-kernel mailing list