* [PATCH v4 0/4] pinctrl: meson-a1: add pinctrl driver @ 2019-10-25 11:49 Qianggui Song 2019-10-25 11:49 ` [PATCH v4 1/4] pinctrl: add compatible for Amlogic Meson A1 pin controller Qianggui Song 2019-10-25 11:49 ` [PATCH v4 4/4] arm64: dts: meson: a1: add pinctrl controller support Qianggui Song 0 siblings, 2 replies; 5+ messages in thread From: Qianggui Song @ 2019-10-25 11:49 UTC (permalink / raw) To: Linus Walleij, linux-gpio Cc: Qianggui Song, Neil Armstrong, Jerome Brunet, Kevin Hilman, Martin Blumenstingl, Carlo Caione, Rob Herring, Xingyu Chen, Jianxin Pan, Hanjie Lin, Mark Rutland, linux-arm-kernel, linux-amlogic, linux-kernel, devicetree This patchset adds Pin controller driver support for Meson-A1 Soc which shares the same register layout of pinmux with previous Meson-G12A, however there is difference for gpio and pin config registers in A1. Changes since v3 at [2] - separate ao fixup from meson_pinctrl_parse_dt - provide ao extra dt parse callback for each SoC Changes since v2 at [1]: - make dt parser callback as a separate patch Changes since v1 at [0]: - collect Reviewed-by - modify commit log - add an extra dt parser function for a1 [0] https://lore.kernel.org/linux-amlogic/1568700442-18540-1-git-send-email-qianggui.song@amlogic.com/ [1] https://lore.kernel.org/linux-amlogic/1570532999-23302-1-git-send-email-qianggui.song@amlogic.com/ [2] https://lore.kernel.org/linux-amlogic/1571050492-6598-1-git-send-email-qianggui.song@amlogic.com/ Qianggui Song (4): pinctrl: add compatible for Amlogic Meson A1 pin controller pinctrl: meson: add a new callback for SoCs fixup pinctrl: meson: add pinctrl driver support for Meson-A1 SoC arm64: dts: meson: a1: add pinctrl controller support .../devicetree/bindings/pinctrl/meson,pinctrl.txt | 1 + arch/arm64/boot/dts/amlogic/meson-a1.dtsi | 18 + drivers/pinctrl/meson/Kconfig | 6 + drivers/pinctrl/meson/Makefile | 1 + drivers/pinctrl/meson/pinctrl-meson-a1.c | 951 +++++++++++++++++++++ drivers/pinctrl/meson/pinctrl-meson-axg.c | 11 + drivers/pinctrl/meson/pinctrl-meson-g12a.c | 9 + drivers/pinctrl/meson/pinctrl-meson-gxbb.c | 11 + drivers/pinctrl/meson/pinctrl-meson-gxl.c | 11 + drivers/pinctrl/meson/pinctrl-meson.c | 9 +- drivers/pinctrl/meson/pinctrl-meson.h | 3 + drivers/pinctrl/meson/pinctrl-meson8.c | 11 + drivers/pinctrl/meson/pinctrl-meson8b.c | 11 + include/dt-bindings/gpio/meson-a1-gpio.h | 73 ++ 14 files changed, 1122 insertions(+), 4 deletions(-) create mode 100644 drivers/pinctrl/meson/pinctrl-meson-a1.c create mode 100644 include/dt-bindings/gpio/meson-a1-gpio.h -- 1.9.1 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v4 1/4] pinctrl: add compatible for Amlogic Meson A1 pin controller 2019-10-25 11:49 [PATCH v4 0/4] pinctrl: meson-a1: add pinctrl driver Qianggui Song @ 2019-10-25 11:49 ` Qianggui Song 2019-11-04 15:31 ` Linus Walleij 2019-10-25 11:49 ` [PATCH v4 4/4] arm64: dts: meson: a1: add pinctrl controller support Qianggui Song 1 sibling, 1 reply; 5+ messages in thread From: Qianggui Song @ 2019-10-25 11:49 UTC (permalink / raw) To: Linus Walleij, linux-gpio Cc: Qianggui Song, Neil Armstrong, Jerome Brunet, Kevin Hilman, Martin Blumenstingl, Carlo Caione, Rob Herring, Xingyu Chen, Jianxin Pan, Hanjie Lin, Mark Rutland, linux-arm-kernel, linux-amlogic, linux-kernel, devicetree Add new compatible name for Amlogic's Meson-A1 pin controller add a dt-binding header file which document the detail pin names. Note that A1 doesn't need DS bank reg any more, use gpio reg as base. Reviewed-by: Rob Herring <robh@kernel.org> Reviewed-by: Neil Armstrong <narmstrong@baylibre.com> Signed-off-by: Qianggui Song <qianggui.song@amlogic.com> --- .../devicetree/bindings/pinctrl/meson,pinctrl.txt | 1 + include/dt-bindings/gpio/meson-a1-gpio.h | 73 ++++++++++++++++++++++ 2 files changed, 74 insertions(+) create mode 100644 include/dt-bindings/gpio/meson-a1-gpio.h diff --git a/Documentation/devicetree/bindings/pinctrl/meson,pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/meson,pinctrl.txt index 10dc4f7176ca..0aff1f28495c 100644 --- a/Documentation/devicetree/bindings/pinctrl/meson,pinctrl.txt +++ b/Documentation/devicetree/bindings/pinctrl/meson,pinctrl.txt @@ -15,6 +15,7 @@ Required properties for the root node: "amlogic,meson-axg-aobus-pinctrl" "amlogic,meson-g12a-periphs-pinctrl" "amlogic,meson-g12a-aobus-pinctrl" + "amlogic,meson-a1-periphs-pinctrl" - reg: address and size of registers controlling irq functionality === GPIO sub-nodes === diff --git a/include/dt-bindings/gpio/meson-a1-gpio.h b/include/dt-bindings/gpio/meson-a1-gpio.h new file mode 100644 index 000000000000..40e57a5ff1db --- /dev/null +++ b/include/dt-bindings/gpio/meson-a1-gpio.h @@ -0,0 +1,73 @@ +/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ +/* + * Copyright (c) 2019 Amlogic, Inc. All rights reserved. + * Author: Qianggui Song <qianggui.song@amlogic.com> + */ + +#ifndef _DT_BINDINGS_MESON_A1_GPIO_H +#define _DT_BINDINGS_MESON_A1_GPIO_H + +#define GPIOP_0 0 +#define GPIOP_1 1 +#define GPIOP_2 2 +#define GPIOP_3 3 +#define GPIOP_4 4 +#define GPIOP_5 5 +#define GPIOP_6 6 +#define GPIOP_7 7 +#define GPIOP_8 8 +#define GPIOP_9 9 +#define GPIOP_10 10 +#define GPIOP_11 11 +#define GPIOP_12 12 +#define GPIOB_0 13 +#define GPIOB_1 14 +#define GPIOB_2 15 +#define GPIOB_3 16 +#define GPIOB_4 17 +#define GPIOB_5 18 +#define GPIOB_6 19 +#define GPIOX_0 20 +#define GPIOX_1 21 +#define GPIOX_2 22 +#define GPIOX_3 23 +#define GPIOX_4 24 +#define GPIOX_5 25 +#define GPIOX_6 26 +#define GPIOX_7 27 +#define GPIOX_8 28 +#define GPIOX_9 29 +#define GPIOX_10 30 +#define GPIOX_11 31 +#define GPIOX_12 32 +#define GPIOX_13 33 +#define GPIOX_14 34 +#define GPIOX_15 35 +#define GPIOX_16 36 +#define GPIOF_0 37 +#define GPIOF_1 38 +#define GPIOF_2 39 +#define GPIOF_3 40 +#define GPIOF_4 41 +#define GPIOF_5 42 +#define GPIOF_6 43 +#define GPIOF_7 44 +#define GPIOF_8 45 +#define GPIOF_9 46 +#define GPIOF_10 47 +#define GPIOF_11 48 +#define GPIOF_12 49 +#define GPIOA_0 50 +#define GPIOA_1 51 +#define GPIOA_2 52 +#define GPIOA_3 53 +#define GPIOA_4 54 +#define GPIOA_5 55 +#define GPIOA_6 56 +#define GPIOA_7 57 +#define GPIOA_8 58 +#define GPIOA_9 59 +#define GPIOA_10 60 +#define GPIOA_11 61 + +#endif /* _DT_BINDINGS_MESON_A1_GPIO_H */ -- 1.9.1 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v4 1/4] pinctrl: add compatible for Amlogic Meson A1 pin controller 2019-10-25 11:49 ` [PATCH v4 1/4] pinctrl: add compatible for Amlogic Meson A1 pin controller Qianggui Song @ 2019-11-04 15:31 ` Linus Walleij 2019-11-04 15:33 ` Linus Walleij 0 siblings, 1 reply; 5+ messages in thread From: Linus Walleij @ 2019-11-04 15:31 UTC (permalink / raw) To: Qianggui Song Cc: open list:GPIO SUBSYSTEM, Neil Armstrong, Jerome Brunet, Kevin Hilman, Martin Blumenstingl, Carlo Caione, Rob Herring, Xingyu Chen, Jianxin Pan, Hanjie Lin, Mark Rutland, Linux ARM, open list:ARM/Amlogic Meson..., linux-kernel@vger.kernel.org, open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS On Fri, Oct 25, 2019 at 1:49 PM Qianggui Song <qianggui.song@amlogic.com> wrote: > Add new compatible name for Amlogic's Meson-A1 pin controller > add a dt-binding header file which document the detail pin names. > Note that A1 doesn't need DS bank reg any more, use gpio reg as > base. > > Reviewed-by: Rob Herring <robh@kernel.org> > Reviewed-by: Neil Armstrong <narmstrong@baylibre.com> > Signed-off-by: Qianggui Song <qianggui.song@amlogic.com> Patch applied. Yours, Linus Walleij ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v4 1/4] pinctrl: add compatible for Amlogic Meson A1 pin controller 2019-11-04 15:31 ` Linus Walleij @ 2019-11-04 15:33 ` Linus Walleij 0 siblings, 0 replies; 5+ messages in thread From: Linus Walleij @ 2019-11-04 15:33 UTC (permalink / raw) To: Qianggui Song Cc: open list:GPIO SUBSYSTEM, Neil Armstrong, Jerome Brunet, Kevin Hilman, Martin Blumenstingl, Carlo Caione, Rob Herring, Xingyu Chen, Jianxin Pan, Hanjie Lin, Mark Rutland, Linux ARM, open list:ARM/Amlogic Meson..., linux-kernel@vger.kernel.org, open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS On Mon, Nov 4, 2019 at 4:31 PM Linus Walleij <linus.walleij@linaro.org> wrote: > On Fri, Oct 25, 2019 at 1:49 PM Qianggui Song <qianggui.song@amlogic.com> wrote: > > > Add new compatible name for Amlogic's Meson-A1 pin controller > > add a dt-binding header file which document the detail pin names. > > Note that A1 doesn't need DS bank reg any more, use gpio reg as > > base. > > > > Reviewed-by: Rob Herring <robh@kernel.org> > > Reviewed-by: Neil Armstrong <narmstrong@baylibre.com> > > Signed-off-by: Qianggui Song <qianggui.song@amlogic.com> > > Patch applied. I see there are still comments on the code patches but that is fine, we can merge these bindings anyway. Just resend the remaining 3 patches when you repost. Yours, Linus Walleij ^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v4 4/4] arm64: dts: meson: a1: add pinctrl controller support 2019-10-25 11:49 [PATCH v4 0/4] pinctrl: meson-a1: add pinctrl driver Qianggui Song 2019-10-25 11:49 ` [PATCH v4 1/4] pinctrl: add compatible for Amlogic Meson A1 pin controller Qianggui Song @ 2019-10-25 11:49 ` Qianggui Song 1 sibling, 0 replies; 5+ messages in thread From: Qianggui Song @ 2019-10-25 11:49 UTC (permalink / raw) To: Linus Walleij, linux-gpio Cc: Qianggui Song, Neil Armstrong, Jerome Brunet, Kevin Hilman, Martin Blumenstingl, Carlo Caione, Rob Herring, Xingyu Chen, Jianxin Pan, Hanjie Lin, Mark Rutland, linux-arm-kernel, linux-amlogic, linux-kernel, devicetree add peripheral pinctrl controller to a1 SoC Signed-off-by: Qianggui Song <qianggui.song@amlogic.com> --- arch/arm64/boot/dts/amlogic/meson-a1.dtsi | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/arch/arm64/boot/dts/amlogic/meson-a1.dtsi b/arch/arm64/boot/dts/amlogic/meson-a1.dtsi index 7210ad049d1d..0965259af869 100644 --- a/arch/arm64/boot/dts/amlogic/meson-a1.dtsi +++ b/arch/arm64/boot/dts/amlogic/meson-a1.dtsi @@ -5,6 +5,7 @@ #include <dt-bindings/interrupt-controller/irq.h> #include <dt-bindings/interrupt-controller/arm-gic.h> +#include <dt-bindings/gpio/meson-a1-gpio.h> / { compatible = "amlogic,a1"; @@ -74,6 +75,23 @@ #size-cells = <2>; ranges = <0x0 0x0 0x0 0xfe000000 0x0 0x1000000>; + periphs_pinctrl: pinctrl@0400 { + compatible = "amlogic,meson-a1-periphs-pinctrl"; + #address-cells = <2>; + #size-cells = <2>; + ranges; + + gpio: bank@0400 { + reg = <0x0 0x0400 0x0 0x003c>, + <0x0 0x0480 0x0 0x0118>; + reg-names = "mux", "gpio"; + gpio-controller; + #gpio-cells = <2>; + gpio-ranges = <&periphs_pinctrl 0 0 62>; + }; + + }; + uart_AO: serial@1c00 { compatible = "amlogic,meson-gx-uart", "amlogic,meson-ao-uart"; -- 1.9.1 ^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-11-04 15:33 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2019-10-25 11:49 [PATCH v4 0/4] pinctrl: meson-a1: add pinctrl driver Qianggui Song 2019-10-25 11:49 ` [PATCH v4 1/4] pinctrl: add compatible for Amlogic Meson A1 pin controller Qianggui Song 2019-11-04 15:31 ` Linus Walleij 2019-11-04 15:33 ` Linus Walleij 2019-10-25 11:49 ` [PATCH v4 4/4] arm64: dts: meson: a1: add pinctrl controller support Qianggui Song
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).