From: Conor Dooley <conor@kernel.org>
To: Dmitry Rokosov <ddrokosov@sberdevices.ru>
Cc: gregkh@linuxfoundation.org, robh+dt@kernel.org,
krzysztof.kozlowski+dt@linaro.org, conor+dt@kernel.org,
neil.armstrong@linaro.org, jbrunet@baylibre.com,
jirislaby@kernel.org, khilman@baylibre.com,
martin.blumenstingl@googlemail.com, kelvin.zhang@amlogic.com,
xianwei.zhao@amlogic.com, kernel@sberdevices.ru,
rockosov@gmail.com, linux-amlogic@lists.infradead.org,
linux-serial@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v1 3/5] tty: serial: meson: apply ttyS devname instead of ttyAML for new SoCs
Date: Tue, 4 Jul 2023 17:57:15 +0100 [thread overview]
Message-ID: <20230704-pogo-zeppelin-5fa281f5c9e6@spud> (raw)
In-Reply-To: <20230704135936.14697-4-ddrokosov@sberdevices.ru>
[-- Attachment #1.1: Type: text/plain, Size: 3745 bytes --]
On Tue, Jul 04, 2023 at 04:59:34PM +0300, Dmitry Rokosov wrote:
> It is worth noting that the devname ttyS is a widely recognized tty name
> and is commonly used by many uart device drivers. Given the established
> usage and compatibility concerns, it may not be feasible to change the
> devname for older SoCs. However, for new definitions, it is acceptable
> and even recommended to use a new devname to help ensure clarity and
> avoid any potential conflicts on lower or upper software levels.
> In
> addition, modify the meson_uart_dt match data for g12a, a1, and s4 to
> their appropriate values to ensure proper devname values and
> functionality.
IMO, this is a separate change that should be in another patch, had to
go looking through a several of unrelated $subject patches to understand
how the binding patch was going to work.
Cheers,
Conor.
> For more information please refer to IRC discussion at [1].
>
> Links:
> [1]: https://libera.irclog.whitequark.org/linux-amlogic/2023-07-03
>
> Signed-off-by: Dmitry Rokosov <ddrokosov@sberdevices.ru>
> ---
> drivers/tty/serial/meson_uart.c | 33 +++++++++++++++++++++++++++++++--
> 1 file changed, 31 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/tty/serial/meson_uart.c b/drivers/tty/serial/meson_uart.c
> index 87c0eb5f2dba..361f9326b527 100644
> --- a/drivers/tty/serial/meson_uart.c
> +++ b/drivers/tty/serial/meson_uart.c
> @@ -82,6 +82,7 @@ static struct uart_driver meson_uart_driver;
> static struct uart_port *meson_ports[AML_UART_PORT_NUM];
>
> struct meson_uart_data {
> + const char *dev_name;
> bool has_xtal_div2;
> };
>
> @@ -683,6 +684,7 @@ static int meson_uart_probe_clocks(struct platform_device *pdev,
>
> static int meson_uart_probe(struct platform_device *pdev)
> {
> + const struct meson_uart_data *priv_data;
> struct resource *res_mem;
> struct uart_port *port;
> u32 fifosize = 64; /* Default is 64, 128 for EE UART_0 */
> @@ -729,6 +731,18 @@ static int meson_uart_probe(struct platform_device *pdev)
> if (ret)
> return ret;
>
> + priv_data = device_get_match_data(&pdev->dev);
> +
> + if (priv_data) {
> + struct console *cons = meson_uart_driver.cons;
> +
> + meson_uart_driver.dev_name = priv_data->dev_name;
> +
> + if (cons)
> + strscpy(cons->name, priv_data->dev_name,
> + sizeof(cons->name));
> + }
> +
> if (!meson_uart_driver.state) {
> ret = uart_register_driver(&meson_uart_driver);
> if (ret)
> @@ -748,7 +762,7 @@ static int meson_uart_probe(struct platform_device *pdev)
> port->x_char = 0;
> port->ops = &meson_uart_ops;
> port->fifosize = fifosize;
> - port->private_data = (void *)device_get_match_data(&pdev->dev);
> + port->private_data = (void *)priv_data;
>
> meson_ports[pdev->id] = port;
> platform_set_drvdata(pdev, port);
> @@ -780,6 +794,17 @@ static int meson_uart_remove(struct platform_device *pdev)
> }
>
> static struct meson_uart_data meson_g12a_uart_data = {
> + .dev_name = "ttyAML",
> + .has_xtal_div2 = true,
> +};
> +
> +static struct meson_uart_data meson_a1_uart_data = {
> + .dev_name = "ttyS",
> + .has_xtal_div2 = false,
> +};
> +
> +static struct meson_uart_data meson_s4_uart_data = {
> + .dev_name = "ttyS",
> .has_xtal_div2 = true,
> };
>
> @@ -794,7 +819,11 @@ static const struct of_device_id meson_uart_dt_match[] = {
> },
> {
> .compatible = "amlogic,meson-s4-uart",
> - .data = (void *)&meson_g12a_uart_data,
> + .data = (void *)&meson_s4_uart_data,
> + },
> + {
> + .compatible = "amlogic,meson-a1-uart",
> + .data = (void *)&meson_a1_uart_data,
> },
> { /* sentinel */ },
> };
> --
> 2.36.0
>
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
WARNING: multiple messages have this Message-ID (diff)
From: Conor Dooley <conor@kernel.org>
To: Dmitry Rokosov <ddrokosov@sberdevices.ru>
Cc: gregkh@linuxfoundation.org, robh+dt@kernel.org,
krzysztof.kozlowski+dt@linaro.org, conor+dt@kernel.org,
neil.armstrong@linaro.org, jbrunet@baylibre.com,
jirislaby@kernel.org, khilman@baylibre.com,
martin.blumenstingl@googlemail.com, kelvin.zhang@amlogic.com,
xianwei.zhao@amlogic.com, kernel@sberdevices.ru,
rockosov@gmail.com, linux-amlogic@lists.infradead.org,
linux-serial@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v1 3/5] tty: serial: meson: apply ttyS devname instead of ttyAML for new SoCs
Date: Tue, 4 Jul 2023 17:57:15 +0100 [thread overview]
Message-ID: <20230704-pogo-zeppelin-5fa281f5c9e6@spud> (raw)
In-Reply-To: <20230704135936.14697-4-ddrokosov@sberdevices.ru>
[-- Attachment #1: Type: text/plain, Size: 3745 bytes --]
On Tue, Jul 04, 2023 at 04:59:34PM +0300, Dmitry Rokosov wrote:
> It is worth noting that the devname ttyS is a widely recognized tty name
> and is commonly used by many uart device drivers. Given the established
> usage and compatibility concerns, it may not be feasible to change the
> devname for older SoCs. However, for new definitions, it is acceptable
> and even recommended to use a new devname to help ensure clarity and
> avoid any potential conflicts on lower or upper software levels.
> In
> addition, modify the meson_uart_dt match data for g12a, a1, and s4 to
> their appropriate values to ensure proper devname values and
> functionality.
IMO, this is a separate change that should be in another patch, had to
go looking through a several of unrelated $subject patches to understand
how the binding patch was going to work.
Cheers,
Conor.
> For more information please refer to IRC discussion at [1].
>
> Links:
> [1]: https://libera.irclog.whitequark.org/linux-amlogic/2023-07-03
>
> Signed-off-by: Dmitry Rokosov <ddrokosov@sberdevices.ru>
> ---
> drivers/tty/serial/meson_uart.c | 33 +++++++++++++++++++++++++++++++--
> 1 file changed, 31 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/tty/serial/meson_uart.c b/drivers/tty/serial/meson_uart.c
> index 87c0eb5f2dba..361f9326b527 100644
> --- a/drivers/tty/serial/meson_uart.c
> +++ b/drivers/tty/serial/meson_uart.c
> @@ -82,6 +82,7 @@ static struct uart_driver meson_uart_driver;
> static struct uart_port *meson_ports[AML_UART_PORT_NUM];
>
> struct meson_uart_data {
> + const char *dev_name;
> bool has_xtal_div2;
> };
>
> @@ -683,6 +684,7 @@ static int meson_uart_probe_clocks(struct platform_device *pdev,
>
> static int meson_uart_probe(struct platform_device *pdev)
> {
> + const struct meson_uart_data *priv_data;
> struct resource *res_mem;
> struct uart_port *port;
> u32 fifosize = 64; /* Default is 64, 128 for EE UART_0 */
> @@ -729,6 +731,18 @@ static int meson_uart_probe(struct platform_device *pdev)
> if (ret)
> return ret;
>
> + priv_data = device_get_match_data(&pdev->dev);
> +
> + if (priv_data) {
> + struct console *cons = meson_uart_driver.cons;
> +
> + meson_uart_driver.dev_name = priv_data->dev_name;
> +
> + if (cons)
> + strscpy(cons->name, priv_data->dev_name,
> + sizeof(cons->name));
> + }
> +
> if (!meson_uart_driver.state) {
> ret = uart_register_driver(&meson_uart_driver);
> if (ret)
> @@ -748,7 +762,7 @@ static int meson_uart_probe(struct platform_device *pdev)
> port->x_char = 0;
> port->ops = &meson_uart_ops;
> port->fifosize = fifosize;
> - port->private_data = (void *)device_get_match_data(&pdev->dev);
> + port->private_data = (void *)priv_data;
>
> meson_ports[pdev->id] = port;
> platform_set_drvdata(pdev, port);
> @@ -780,6 +794,17 @@ static int meson_uart_remove(struct platform_device *pdev)
> }
>
> static struct meson_uart_data meson_g12a_uart_data = {
> + .dev_name = "ttyAML",
> + .has_xtal_div2 = true,
> +};
> +
> +static struct meson_uart_data meson_a1_uart_data = {
> + .dev_name = "ttyS",
> + .has_xtal_div2 = false,
> +};
> +
> +static struct meson_uart_data meson_s4_uart_data = {
> + .dev_name = "ttyS",
> .has_xtal_div2 = true,
> };
>
> @@ -794,7 +819,11 @@ static const struct of_device_id meson_uart_dt_match[] = {
> },
> {
> .compatible = "amlogic,meson-s4-uart",
> - .data = (void *)&meson_g12a_uart_data,
> + .data = (void *)&meson_s4_uart_data,
> + },
> + {
> + .compatible = "amlogic,meson-a1-uart",
> + .data = (void *)&meson_a1_uart_data,
> },
> { /* sentinel */ },
> };
> --
> 2.36.0
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: Conor Dooley <conor@kernel.org>
To: Dmitry Rokosov <ddrokosov@sberdevices.ru>
Cc: gregkh@linuxfoundation.org, robh+dt@kernel.org,
krzysztof.kozlowski+dt@linaro.org, conor+dt@kernel.org,
neil.armstrong@linaro.org, jbrunet@baylibre.com,
jirislaby@kernel.org, khilman@baylibre.com,
martin.blumenstingl@googlemail.com, kelvin.zhang@amlogic.com,
xianwei.zhao@amlogic.com, kernel@sberdevices.ru,
rockosov@gmail.com, linux-amlogic@lists.infradead.org,
linux-serial@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v1 3/5] tty: serial: meson: apply ttyS devname instead of ttyAML for new SoCs
Date: Tue, 4 Jul 2023 17:57:15 +0100 [thread overview]
Message-ID: <20230704-pogo-zeppelin-5fa281f5c9e6@spud> (raw)
In-Reply-To: <20230704135936.14697-4-ddrokosov@sberdevices.ru>
[-- Attachment #1.1: Type: text/plain, Size: 3745 bytes --]
On Tue, Jul 04, 2023 at 04:59:34PM +0300, Dmitry Rokosov wrote:
> It is worth noting that the devname ttyS is a widely recognized tty name
> and is commonly used by many uart device drivers. Given the established
> usage and compatibility concerns, it may not be feasible to change the
> devname for older SoCs. However, for new definitions, it is acceptable
> and even recommended to use a new devname to help ensure clarity and
> avoid any potential conflicts on lower or upper software levels.
> In
> addition, modify the meson_uart_dt match data for g12a, a1, and s4 to
> their appropriate values to ensure proper devname values and
> functionality.
IMO, this is a separate change that should be in another patch, had to
go looking through a several of unrelated $subject patches to understand
how the binding patch was going to work.
Cheers,
Conor.
> For more information please refer to IRC discussion at [1].
>
> Links:
> [1]: https://libera.irclog.whitequark.org/linux-amlogic/2023-07-03
>
> Signed-off-by: Dmitry Rokosov <ddrokosov@sberdevices.ru>
> ---
> drivers/tty/serial/meson_uart.c | 33 +++++++++++++++++++++++++++++++--
> 1 file changed, 31 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/tty/serial/meson_uart.c b/drivers/tty/serial/meson_uart.c
> index 87c0eb5f2dba..361f9326b527 100644
> --- a/drivers/tty/serial/meson_uart.c
> +++ b/drivers/tty/serial/meson_uart.c
> @@ -82,6 +82,7 @@ static struct uart_driver meson_uart_driver;
> static struct uart_port *meson_ports[AML_UART_PORT_NUM];
>
> struct meson_uart_data {
> + const char *dev_name;
> bool has_xtal_div2;
> };
>
> @@ -683,6 +684,7 @@ static int meson_uart_probe_clocks(struct platform_device *pdev,
>
> static int meson_uart_probe(struct platform_device *pdev)
> {
> + const struct meson_uart_data *priv_data;
> struct resource *res_mem;
> struct uart_port *port;
> u32 fifosize = 64; /* Default is 64, 128 for EE UART_0 */
> @@ -729,6 +731,18 @@ static int meson_uart_probe(struct platform_device *pdev)
> if (ret)
> return ret;
>
> + priv_data = device_get_match_data(&pdev->dev);
> +
> + if (priv_data) {
> + struct console *cons = meson_uart_driver.cons;
> +
> + meson_uart_driver.dev_name = priv_data->dev_name;
> +
> + if (cons)
> + strscpy(cons->name, priv_data->dev_name,
> + sizeof(cons->name));
> + }
> +
> if (!meson_uart_driver.state) {
> ret = uart_register_driver(&meson_uart_driver);
> if (ret)
> @@ -748,7 +762,7 @@ static int meson_uart_probe(struct platform_device *pdev)
> port->x_char = 0;
> port->ops = &meson_uart_ops;
> port->fifosize = fifosize;
> - port->private_data = (void *)device_get_match_data(&pdev->dev);
> + port->private_data = (void *)priv_data;
>
> meson_ports[pdev->id] = port;
> platform_set_drvdata(pdev, port);
> @@ -780,6 +794,17 @@ static int meson_uart_remove(struct platform_device *pdev)
> }
>
> static struct meson_uart_data meson_g12a_uart_data = {
> + .dev_name = "ttyAML",
> + .has_xtal_div2 = true,
> +};
> +
> +static struct meson_uart_data meson_a1_uart_data = {
> + .dev_name = "ttyS",
> + .has_xtal_div2 = false,
> +};
> +
> +static struct meson_uart_data meson_s4_uart_data = {
> + .dev_name = "ttyS",
> .has_xtal_div2 = true,
> };
>
> @@ -794,7 +819,11 @@ static const struct of_device_id meson_uart_dt_match[] = {
> },
> {
> .compatible = "amlogic,meson-s4-uart",
> - .data = (void *)&meson_g12a_uart_data,
> + .data = (void *)&meson_s4_uart_data,
> + },
> + {
> + .compatible = "amlogic,meson-a1-uart",
> + .data = (void *)&meson_a1_uart_data,
> },
> { /* sentinel */ },
> };
> --
> 2.36.0
>
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
[-- Attachment #2: Type: text/plain, Size: 176 bytes --]
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2023-07-04 16:57 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-07-04 13:59 [PATCH v1 0/5] tty: serial: meson: support ttyS devname Dmitry Rokosov
2023-07-04 13:59 ` Dmitry Rokosov
2023-07-04 13:59 ` Dmitry Rokosov
2023-07-04 13:59 ` [PATCH v1 1/5] tty: serial: meson: use dev_err_probe Dmitry Rokosov
2023-07-04 13:59 ` Dmitry Rokosov
2023-07-04 13:59 ` Dmitry Rokosov
2023-07-04 13:59 ` [PATCH v1 2/5] tty: serial: meson: redesign the module to platform_driver Dmitry Rokosov
2023-07-04 13:59 ` Dmitry Rokosov
2023-07-04 13:59 ` Dmitry Rokosov
2023-07-04 14:46 ` neil.armstrong
2023-07-04 14:46 ` neil.armstrong
2023-07-04 14:46 ` neil.armstrong
2023-07-04 15:19 ` Dmitry Rokosov
2023-07-04 15:19 ` Dmitry Rokosov
2023-07-04 15:19 ` Dmitry Rokosov
2023-07-04 17:06 ` Dmitry Rokosov
2023-07-04 17:06 ` Dmitry Rokosov
2023-07-04 17:06 ` Dmitry Rokosov
2023-07-04 13:59 ` [PATCH v1 3/5] tty: serial: meson: apply ttyS devname instead of ttyAML for new SoCs Dmitry Rokosov
2023-07-04 13:59 ` Dmitry Rokosov
2023-07-04 13:59 ` Dmitry Rokosov
2023-07-04 14:42 ` neil.armstrong
2023-07-04 14:42 ` neil.armstrong
2023-07-04 14:42 ` neil.armstrong
2023-07-04 14:59 ` Dmitry Rokosov
2023-07-04 14:59 ` Dmitry Rokosov
2023-07-04 14:59 ` Dmitry Rokosov
2023-07-04 15:29 ` neil.armstrong
2023-07-04 15:29 ` neil.armstrong
2023-07-04 15:29 ` neil.armstrong
2023-07-04 16:00 ` Dmitry Rokosov
2023-07-04 16:00 ` Dmitry Rokosov
2023-07-04 16:00 ` Dmitry Rokosov
2023-07-04 16:57 ` Conor Dooley [this message]
2023-07-04 16:57 ` Conor Dooley
2023-07-04 16:57 ` Conor Dooley
2023-07-04 17:13 ` Dmitry Rokosov
2023-07-04 17:13 ` Dmitry Rokosov
2023-07-04 17:13 ` Dmitry Rokosov
2023-07-04 19:14 ` Conor Dooley
2023-07-04 19:14 ` Conor Dooley
2023-07-04 19:14 ` Conor Dooley
2023-07-04 13:59 ` [PATCH v1 4/5] dt-bindings: serial: amlogic,meson-uart: support Amlogic A1 Dmitry Rokosov
2023-07-04 13:59 ` Dmitry Rokosov
2023-07-04 13:59 ` Dmitry Rokosov
2023-07-05 19:00 ` Rob Herring
2023-07-05 19:00 ` Rob Herring
2023-07-05 19:00 ` Rob Herring
2023-07-04 13:59 ` [PATCH v1 5/5] arm64: dts: meson: a1: change uart compatible string Dmitry Rokosov
2023-07-04 13:59 ` Dmitry Rokosov
2023-07-04 13:59 ` Dmitry Rokosov
2023-07-04 17:02 ` Conor Dooley
2023-07-04 17:02 ` Conor Dooley
2023-07-04 17:02 ` Conor Dooley
2023-07-04 17:08 ` Dmitry Rokosov
2023-07-04 17:08 ` Dmitry Rokosov
2023-07-04 17:08 ` Dmitry Rokosov
2023-07-04 17:10 ` Conor Dooley
2023-07-04 17:10 ` Conor Dooley
2023-07-04 17:10 ` Conor Dooley
2023-07-04 17:19 ` Dmitry Rokosov
2023-07-04 17:19 ` Dmitry Rokosov
2023-07-04 17:19 ` Dmitry Rokosov
2023-07-05 9:46 ` Dmitry Rokosov
2023-07-05 9:46 ` Dmitry Rokosov
2023-07-05 9:46 ` Dmitry Rokosov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230704-pogo-zeppelin-5fa281f5c9e6@spud \
--to=conor@kernel.org \
--cc=conor+dt@kernel.org \
--cc=ddrokosov@sberdevices.ru \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=jbrunet@baylibre.com \
--cc=jirislaby@kernel.org \
--cc=kelvin.zhang@amlogic.com \
--cc=kernel@sberdevices.ru \
--cc=khilman@baylibre.com \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-amlogic@lists.infradead.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=martin.blumenstingl@googlemail.com \
--cc=neil.armstrong@linaro.org \
--cc=robh+dt@kernel.org \
--cc=rockosov@gmail.com \
--cc=xianwei.zhao@amlogic.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.