2019-09-26 09:54:30

by Hongwei Zhang

[permalink] [raw]
Subject: [v2, 0/2] gpio: dts: aspeed: Add SGPIO driver

Hello,

This short series introduce the Kconfig, Makefile, and dts for the
Aspeed AST2500 SGPIO controller. This is the last patch set.
Please review.

[v2]: changes between v1 and v2:
- split the patches based on review feedback.

[v1]: Initial commit

The related SGPIO driver has been accepted and merged into v5.4:
_http://patchwork.ozlabs.org/patch/1150357/

The related SGPM pinmux dt-binding document, dts, and pinctrl driver
updates have been accepted and merged:
_http://patchwork.ozlabs.org/patch/1110210/

Thanks!
Hongwei Zhang (1):
gpio: dts: aspeed: Add SGPIO driver

arch/arm/Kconfig | 2 ++
arch/arm/boot/dts/aspeed-g5.dtsi | 16 +++++++++++++++-
drivers/gpio/Kconfig | 8 ++++++++
drivers/gpio/Makefile | 1 +
4 files changed, 26 insertions(+), 1 deletion(-)

--
2.7.4


2019-09-26 09:54:35

by Hongwei Zhang

[permalink] [raw]
Subject: [v2, 1/2] gpio: dts: aspeed: Add SGPIO driver

Add SGPIO driver support for Aspeed AST2500 SoC.

Signed-off-by: Hongwei Zhang <[email protected]>
---
arch/arm/Kconfig | 2 ++
arch/arm/boot/dts/aspeed-g5.dtsi | 16 +++++++++++++++-

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 2436021..c9f08ab 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1460,6 +1460,8 @@ config ARCH_NR_GPIO
default 416 if ARCH_SUNXI
default 392 if ARCH_U8500
default 352 if ARCH_VT8500
+ default 312 if MACH_ASPEED_G5
+ default 304 if MACH_ASPEED_G4
default 288 if ARCH_ROCKCHIP
default 264 if MACH_H4700
default 0
diff --git a/arch/arm/boot/dts/aspeed-g5.dtsi b/arch/arm/boot/dts/aspeed-g5.dtsi
index 00f05bd..85da7ea 100644
--- a/arch/arm/boot/dts/aspeed-g5.dtsi
+++ b/arch/arm/boot/dts/aspeed-g5.dtsi
@@ -311,7 +311,7 @@
#gpio-cells = <2>;
gpio-controller;
compatible = "aspeed,ast2500-gpio";
- reg = <0x1e780000 0x1000>;
+ reg = <0x1e780000 0x200>;
interrupts = <20>;
gpio-ranges = <&pinctrl 0 0 232>;
clocks = <&syscon ASPEED_CLK_APB>;
@@ -319,6 +319,20 @@
#interrupt-cells = <2>;
};

+ sgpio: sgpio@1e780200 {
+ #gpio-cells = <2>;
+ compatible = "aspeed,ast2500-sgpio";
+ gpio-controller;
+ interrupts = <40>;
+ reg = <0x1e780200 0x0100>;
+ clocks = <&syscon ASPEED_CLK_APB>;
+ interrupt-controller;
+ ngpios = <8>;
+ bus-frequency = <12000000>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_sgpm_default>;
+ };
+
rtc: rtc@1e781000 {
compatible = "aspeed,ast2500-rtc";
reg = <0x1e781000 0x18>;
--
2.7.4

2019-09-26 09:54:44

by Hongwei Zhang

[permalink] [raw]
Subject: [v2, 2/2] gpio: dts: aspeed: Add SGPIO driver

Add SGPIO driver support for Aspeed AST2500 SoC.

Signed-off-by: Hongwei Zhang <[email protected]>
---
drivers/gpio/Kconfig | 8 ++++++++
drivers/gpio/Makefile | 1 +

diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
index bb13c26..e94f903 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -120,6 +120,14 @@ config GPIO_ASPEED
help
Say Y here to support Aspeed AST2400 and AST2500 GPIO controllers.

+config SGPIO_ASPEED
+ bool "Aspeed SGPIO support"
+ depends on (ARCH_ASPEED || COMPILE_TEST) && OF_GPIO
+ select GPIO_GENERIC
+ select GPIOLIB_IRQCHIP
+ help
+ Say Y here to support Aspeed AST2500 SGPIO functionality.
+
config GPIO_ATH79
tristate "Atheros AR71XX/AR724X/AR913X GPIO support"
default y if ATH79
diff --git a/drivers/gpio/Makefile b/drivers/gpio/Makefile
index a4e9117..bebbd82 100644
--- a/drivers/gpio/Makefile
+++ b/drivers/gpio/Makefile
@@ -32,6 +32,7 @@ obj-$(CONFIG_GPIO_AMD_FCH) += gpio-amd-fch.o
obj-$(CONFIG_GPIO_AMDPT) += gpio-amdpt.o
obj-$(CONFIG_GPIO_ARIZONA) += gpio-arizona.o
obj-$(CONFIG_GPIO_ASPEED) += gpio-aspeed.o
+obj-$(CONFIG_SGPIO_ASPEED) += sgpio-aspeed.o
obj-$(CONFIG_GPIO_ATH79) += gpio-ath79.o
obj-$(CONFIG_GPIO_BCM_KONA) += gpio-bcm-kona.o
obj-$(CONFIG_GPIO_BD70528) += gpio-bd70528.o
--
2.7.4

2019-09-27 11:51:49

by Linus Walleij

[permalink] [raw]
Subject: Re: [v2, 2/2] gpio: dts: aspeed: Add SGPIO driver

On Wed, Sep 25, 2019 at 9:22 PM Hongwei Zhang <[email protected]> wrote:

> Add SGPIO driver support for Aspeed AST2500 SoC.
>
> Signed-off-by: Hongwei Zhang <[email protected]>

I sent a separate patch to fix this up the way I want it with the file
named gpio-aspeed-sgpio.c and CONFIG_GPIO_ASPEED_SGPIO.

I don't want to mix up the namespaces of something Aspeed-generic
with the namespace of the GPIO subsystem. SGPIO is the name
of a specific Aspeed component.

Yours,
Linus Walleij

2019-09-27 15:57:02

by Hongwei Zhang

[permalink] [raw]
Subject: [v2, 2/2] gpio: dts: aspeed: Add SGPIO driver

Thanks Linus,

>
> I sent a separate patch to fix this up the way I want it with the file named gpio-aspeed-sgpio.c and
> CONFIG_GPIO_ASPEED_SGPIO.
>
> I don't want to mix up the namespaces of something Aspeed-generic with the namespace of the GPIO
> subsystem. SGPIO is the name of a specific Aspeed component.
>
> Yours,
> Linus Walleij

I agree and gpio-aspeed-sgpio.c is better.

Regards,
--Hongwei