* [PATCH 0/4] Add support for MStar MSC313 uarts
@ 2022-03-24 12:43 Daniel Palmer
2022-03-24 12:43 ` [PATCH 1/4] dt-bindings: serial: snps-dw-apb-uart: Add " Daniel Palmer
` (3 more replies)
0 siblings, 4 replies; 10+ messages in thread
From: Daniel Palmer @ 2022-03-24 12:43 UTC (permalink / raw)
To: devicetree, linux-serial, robh+dt, andriy.shevchenko, jirislaby
Cc: linux-kernel, linux-arm-kernel, romain.perier, Daniel Palmer
This is a fairly simple series to add support for the MStar MSC313
uarts found in MStar/SigmaStar ARMv7 based SoCs.
I have been using this for years now but I held off sending it because
I wasn't entirely sure the uart was actually a DW based design.
We got documentation recently and it refers to this being a "DW UART"
so I'm pretty sure it is now.
Daniel Palmer (4):
dt-bindings: serial: snps-dw-apb-uart: Add MStar MSC313 uarts
serial: 8250_dw: Add MStar MSC313 quirk
ARM: dts: mstar: Switch pm_uart to mstar,msc313-uart
ARM: dts: mstar: Add second UART to base dtsi.
.../devicetree/bindings/serial/snps-dw-apb-uart.yaml | 3 +++
arch/arm/boot/dts/mstar-v7.dtsi | 10 +++++++++-
drivers/tty/serial/8250/8250_dw.c | 5 +++++
3 files changed, 17 insertions(+), 1 deletion(-)
--
2.35.1
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 1/4] dt-bindings: serial: snps-dw-apb-uart: Add MStar MSC313 uarts
2022-03-24 12:43 [PATCH 0/4] Add support for MStar MSC313 uarts Daniel Palmer
@ 2022-03-24 12:43 ` Daniel Palmer
2022-04-01 0:20 ` Rob Herring
2022-03-24 12:44 ` [PATCH 2/4] serial: 8250_dw: Add MStar MSC313 quirk Daniel Palmer
` (2 subsequent siblings)
3 siblings, 1 reply; 10+ messages in thread
From: Daniel Palmer @ 2022-03-24 12:43 UTC (permalink / raw)
To: devicetree, linux-serial, robh+dt, andriy.shevchenko, jirislaby
Cc: linux-kernel, linux-arm-kernel, romain.perier, Daniel Palmer
Add compatible for the MStar MSC313 uarts.
Signed-off-by: Daniel Palmer <daniel@0x0f.com>
---
Documentation/devicetree/bindings/serial/snps-dw-apb-uart.yaml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/Documentation/devicetree/bindings/serial/snps-dw-apb-uart.yaml b/Documentation/devicetree/bindings/serial/snps-dw-apb-uart.yaml
index 12137fe80acf..486e9deaef0f 100644
--- a/Documentation/devicetree/bindings/serial/snps-dw-apb-uart.yaml
+++ b/Documentation/devicetree/bindings/serial/snps-dw-apb-uart.yaml
@@ -45,6 +45,9 @@ properties:
- starfive,jh7100-hsuart
- starfive,jh7100-uart
- const: snps,dw-apb-uart
+ - items:
+ - const: mstar,msc313-uart
+ - const: snps,dw-apb-uart
- const: snps,dw-apb-uart
reg:
--
2.35.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 2/4] serial: 8250_dw: Add MStar MSC313 quirk
2022-03-24 12:43 [PATCH 0/4] Add support for MStar MSC313 uarts Daniel Palmer
2022-03-24 12:43 ` [PATCH 1/4] dt-bindings: serial: snps-dw-apb-uart: Add " Daniel Palmer
@ 2022-03-24 12:44 ` Daniel Palmer
2022-03-24 13:58 ` Andy Shevchenko
2022-03-24 12:44 ` [PATCH 3/4] ARM: dts: mstar: Switch pm_uart to mstar,msc313-uart Daniel Palmer
2022-03-24 12:44 ` [PATCH 4/4] ARM: dts: mstar: Add second UART to base dtsi Daniel Palmer
3 siblings, 1 reply; 10+ messages in thread
From: Daniel Palmer @ 2022-03-24 12:44 UTC (permalink / raw)
To: devicetree, linux-serial, robh+dt, andriy.shevchenko, jirislaby
Cc: linux-kernel, linux-arm-kernel, romain.perier, Daniel Palmer
The version of the IP used on the MStar MSC313 and later
MStar and SigmaStar SoCs has the USR register at a different
location. Add a quirk for this.
Signed-off-by: Daniel Palmer <daniel@0x0f.com>
---
drivers/tty/serial/8250/8250_dw.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/tty/serial/8250/8250_dw.c b/drivers/tty/serial/8250/8250_dw.c
index 1769808031c5..01737e5706a5 100644
--- a/drivers/tty/serial/8250/8250_dw.c
+++ b/drivers/tty/serial/8250/8250_dw.c
@@ -416,6 +416,10 @@ static void dw8250_quirks(struct uart_port *p, struct dw8250_data *data)
p->serial_out = dw8250_serial_out38x;
if (of_device_is_compatible(np, "starfive,jh7100-uart"))
p->set_termios = dw8250_do_set_termios;
+ if (of_device_is_compatible(np, "mstar,msc313-uart")) {
+ data->usr_reg = 0x7;
+ data->skip_autocfg = true;
+ }
} else if (acpi_dev_present("APMC0D08", NULL, -1)) {
p->iotype = UPIO_MEM32;
@@ -699,6 +703,7 @@ static const struct of_device_id dw8250_of_match[] = {
{ .compatible = "marvell,armada-38x-uart" },
{ .compatible = "renesas,rzn1-uart" },
{ .compatible = "starfive,jh7100-uart" },
+ { .compatible = "mstar,msc313-uart" },
{ /* Sentinel */ }
};
MODULE_DEVICE_TABLE(of, dw8250_of_match);
--
2.35.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 3/4] ARM: dts: mstar: Switch pm_uart to mstar,msc313-uart
2022-03-24 12:43 [PATCH 0/4] Add support for MStar MSC313 uarts Daniel Palmer
2022-03-24 12:43 ` [PATCH 1/4] dt-bindings: serial: snps-dw-apb-uart: Add " Daniel Palmer
2022-03-24 12:44 ` [PATCH 2/4] serial: 8250_dw: Add MStar MSC313 quirk Daniel Palmer
@ 2022-03-24 12:44 ` Daniel Palmer
2022-03-25 12:23 ` Romain Perier
2022-03-24 12:44 ` [PATCH 4/4] ARM: dts: mstar: Add second UART to base dtsi Daniel Palmer
3 siblings, 1 reply; 10+ messages in thread
From: Daniel Palmer @ 2022-03-24 12:44 UTC (permalink / raw)
To: devicetree, linux-serial, robh+dt, andriy.shevchenko, jirislaby
Cc: linux-kernel, linux-arm-kernel, romain.perier, Daniel Palmer
The UART used in these SoCs is actually a variant of the dw apb uart.
Now there is a compatible string in that driver to handle the quirks
switch the compatible for pm_uart over to mstar,msc313-uart.
Signed-off-by: Daniel Palmer <daniel@0x0f.com>
---
arch/arm/boot/dts/mstar-v7.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/mstar-v7.dtsi b/arch/arm/boot/dts/mstar-v7.dtsi
index c26ba9b7b6dd..8464a8f1b136 100644
--- a/arch/arm/boot/dts/mstar-v7.dtsi
+++ b/arch/arm/boot/dts/mstar-v7.dtsi
@@ -175,7 +175,7 @@ gpio: gpio@207800 {
};
pm_uart: uart@221000 {
- compatible = "ns16550a";
+ compatible = "mstar,msc313-uart", "snps,dw-apb-uart";
reg = <0x221000 0x100>;
reg-shift = <3>;
interrupts-extended = <&intc_irq GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
--
2.35.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 4/4] ARM: dts: mstar: Add second UART to base dtsi.
2022-03-24 12:43 [PATCH 0/4] Add support for MStar MSC313 uarts Daniel Palmer
` (2 preceding siblings ...)
2022-03-24 12:44 ` [PATCH 3/4] ARM: dts: mstar: Switch pm_uart to mstar,msc313-uart Daniel Palmer
@ 2022-03-24 12:44 ` Daniel Palmer
2022-03-25 12:25 ` Romain Perier
2022-03-28 13:28 ` Rob Herring
3 siblings, 2 replies; 10+ messages in thread
From: Daniel Palmer @ 2022-03-24 12:44 UTC (permalink / raw)
To: devicetree, linux-serial, robh+dt, andriy.shevchenko, jirislaby
Cc: linux-kernel, linux-arm-kernel, romain.perier, Daniel Palmer
Add the second UART to the base dtsi.
Signed-off-by: Daniel Palmer <daniel@0x0f.com>
---
arch/arm/boot/dts/mstar-v7.dtsi | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/arch/arm/boot/dts/mstar-v7.dtsi b/arch/arm/boot/dts/mstar-v7.dtsi
index 8464a8f1b136..baf2422b9854 100644
--- a/arch/arm/boot/dts/mstar-v7.dtsi
+++ b/arch/arm/boot/dts/mstar-v7.dtsi
@@ -182,6 +182,14 @@ pm_uart: uart@221000 {
clock-frequency = <172000000>;
status = "disabled";
};
+
+ uart1: uart@221200 {
+ compatible = "mstar,msc313-uart", "snps,dw-apb-uart";
+ reg = <0x221200 0x100>;
+ reg-shift = <3>;
+ interrupts-extended = <&intc_irq GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
};
imi: sram@a0000000 {
--
2.35.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH 2/4] serial: 8250_dw: Add MStar MSC313 quirk
2022-03-24 12:44 ` [PATCH 2/4] serial: 8250_dw: Add MStar MSC313 quirk Daniel Palmer
@ 2022-03-24 13:58 ` Andy Shevchenko
0 siblings, 0 replies; 10+ messages in thread
From: Andy Shevchenko @ 2022-03-24 13:58 UTC (permalink / raw)
To: Daniel Palmer
Cc: devicetree, linux-serial, robh+dt, jirislaby, linux-kernel,
linux-arm-kernel, romain.perier
On Thu, Mar 24, 2022 at 09:44:00PM +0900, Daniel Palmer wrote:
> The version of the IP used on the MStar MSC313 and later
> MStar and SigmaStar SoCs has the USR register at a different
> location. Add a quirk for this.
I'm fine with the change if it goes before [1]. Otherwise
you will need to rebase.
[1]: https://lore.kernel.org/linux-serial/20220317174627.360815-1-miquel.raynal@bootlin.com/
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 3/4] ARM: dts: mstar: Switch pm_uart to mstar,msc313-uart
2022-03-24 12:44 ` [PATCH 3/4] ARM: dts: mstar: Switch pm_uart to mstar,msc313-uart Daniel Palmer
@ 2022-03-25 12:23 ` Romain Perier
0 siblings, 0 replies; 10+ messages in thread
From: Romain Perier @ 2022-03-25 12:23 UTC (permalink / raw)
To: Daniel Palmer
Cc: devicetree, linux-serial, Rob Herring, andriy.shevchenko,
Jiri Slaby, Linux Kernel Mailing List, linux-arm-kernel
Hi Daniel,
Le jeu. 24 mars 2022 à 13:44, Daniel Palmer <daniel@0x0f.com> a écrit :
>
> The UART used in these SoCs is actually a variant of the dw apb uart.
> Now there is a compatible string in that driver to handle the quirks
> switch the compatible for pm_uart over to mstar,msc313-uart.
>
> Signed-off-by: Daniel Palmer <daniel@0x0f.com>
Reviewed-by: Romain Perier <romain.perier@gmail.com>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 4/4] ARM: dts: mstar: Add second UART to base dtsi.
2022-03-24 12:44 ` [PATCH 4/4] ARM: dts: mstar: Add second UART to base dtsi Daniel Palmer
@ 2022-03-25 12:25 ` Romain Perier
2022-03-28 13:28 ` Rob Herring
1 sibling, 0 replies; 10+ messages in thread
From: Romain Perier @ 2022-03-25 12:25 UTC (permalink / raw)
To: Daniel Palmer
Cc: devicetree, linux-serial, Rob Herring, andriy.shevchenko,
Jiri Slaby, Linux Kernel Mailing List, linux-arm-kernel
Hi Daniel,
Le jeu. 24 mars 2022 à 13:44, Daniel Palmer <daniel@0x0f.com> a écrit :
>
> Add the second UART to the base dtsi.
>
> Signed-off-by: Daniel Palmer <daniel@0x0f.com>
More context in the long message would help, imho.
Otherwise:
Reviewed-by: Romain Perier <romain.perier@gmail.com>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 4/4] ARM: dts: mstar: Add second UART to base dtsi.
2022-03-24 12:44 ` [PATCH 4/4] ARM: dts: mstar: Add second UART to base dtsi Daniel Palmer
2022-03-25 12:25 ` Romain Perier
@ 2022-03-28 13:28 ` Rob Herring
1 sibling, 0 replies; 10+ messages in thread
From: Rob Herring @ 2022-03-28 13:28 UTC (permalink / raw)
To: Daniel Palmer
Cc: devicetree, open list:SERIAL DRIVERS, Andy Shevchenko,
Jiri Slaby, linux-kernel, linux-arm-kernel, Romain Perier
On Thu, Mar 24, 2022 at 7:44 AM Daniel Palmer <daniel@0x0f.com> wrote:
>
> Add the second UART to the base dtsi.
>
> Signed-off-by: Daniel Palmer <daniel@0x0f.com>
> ---
> arch/arm/boot/dts/mstar-v7.dtsi | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/arch/arm/boot/dts/mstar-v7.dtsi b/arch/arm/boot/dts/mstar-v7.dtsi
> index 8464a8f1b136..baf2422b9854 100644
> --- a/arch/arm/boot/dts/mstar-v7.dtsi
> +++ b/arch/arm/boot/dts/mstar-v7.dtsi
> @@ -182,6 +182,14 @@ pm_uart: uart@221000 {
> clock-frequency = <172000000>;
> status = "disabled";
> };
> +
> + uart1: uart@221200 {
serial@...
Please run schema checks on your DT as that should be a warning that I
don't have to tell you about.
Rob
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/4] dt-bindings: serial: snps-dw-apb-uart: Add MStar MSC313 uarts
2022-03-24 12:43 ` [PATCH 1/4] dt-bindings: serial: snps-dw-apb-uart: Add " Daniel Palmer
@ 2022-04-01 0:20 ` Rob Herring
0 siblings, 0 replies; 10+ messages in thread
From: Rob Herring @ 2022-04-01 0:20 UTC (permalink / raw)
To: Daniel Palmer
Cc: romain.perier, robh+dt, jirislaby, linux-serial,
linux-arm-kernel, devicetree, andriy.shevchenko, linux-kernel
On Thu, 24 Mar 2022 21:43:59 +0900, Daniel Palmer wrote:
> Add compatible for the MStar MSC313 uarts.
>
> Signed-off-by: Daniel Palmer <daniel@0x0f.com>
> ---
> Documentation/devicetree/bindings/serial/snps-dw-apb-uart.yaml | 3 +++
> 1 file changed, 3 insertions(+)
>
Acked-by: Rob Herring <robh@kernel.org>
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2022-04-01 0:21 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-24 12:43 [PATCH 0/4] Add support for MStar MSC313 uarts Daniel Palmer
2022-03-24 12:43 ` [PATCH 1/4] dt-bindings: serial: snps-dw-apb-uart: Add " Daniel Palmer
2022-04-01 0:20 ` Rob Herring
2022-03-24 12:44 ` [PATCH 2/4] serial: 8250_dw: Add MStar MSC313 quirk Daniel Palmer
2022-03-24 13:58 ` Andy Shevchenko
2022-03-24 12:44 ` [PATCH 3/4] ARM: dts: mstar: Switch pm_uart to mstar,msc313-uart Daniel Palmer
2022-03-25 12:23 ` Romain Perier
2022-03-24 12:44 ` [PATCH 4/4] ARM: dts: mstar: Add second UART to base dtsi Daniel Palmer
2022-03-25 12:25 ` Romain Perier
2022-03-28 13:28 ` Rob Herring
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).