2018-03-06 08:09:47

by Patrice CHOTARD

[permalink] [raw]
Subject: [PATCH v2 0/3] Fix STi aliases property name

From: Patrice Chotard <[email protected]>

Since dtc v1.4.6-9-gaadd0b65c987, when compiling dtb with W=1 option,
the following warnings are triggered :

arch/arm/boot/dts/stih418-b2199.dtb: Warning (alias_paths): /aliases: aliases property name must include only lowercase and '-'
arch/arm/boot/dts/stih407-b2120.dtb: Warning (alias_paths): /aliases: aliases property name must include only lowercase and '-'
arch/arm/boot/dts/stih410-b2260.dtb: Warning (alias_paths): /aliases: aliases property name must include only lowercase and '-'
arch/arm/boot/dts/stih410-b2120.dtb: Warning (alias_paths): /aliases: aliases property name must include only lowercase and '-'

_ Patch 1, convert the aliases property name in lowercase in
all STi board dts files.

_ Patch 2, remove useless stdout-path property

_ Patch 3, rework the tty driver st-asc accordingly, as aliases id is retrieved
using of_alias_get_id() with a defined string with is not lowercase only.

v2: Fix Rob Herring's remarks :
_ use serialN instead of ttyasN aliases to not break ABI
_ remove useless stdout-path property
_ update st-asc driver with "serial" alias prefix

Patrice Chotard (2):
ARM: dts: STi: Fix aliases property name for STi boards
ARM: dts: STi: Remove useless stdout-path for STi boards
tty: st-asc: Update tty alias

arch/arm/boot/dts/stih407-b2120.dts | 5 ++---
arch/arm/boot/dts/stih410-b2120.dts | 5 ++---
arch/arm/boot/dts/stih410-b2260.dts | 5 ++---
arch/arm/boot/dts/stih418-b2199.dts | 5 ++---
drivers/tty/serial/st-asc.c | 2 +-
5 files changed, 9 insertions(+), 13 deletions(-)

--
1.9.1



2018-03-06 08:10:24

by Patrice CHOTARD

[permalink] [raw]
Subject: [PATCH v2 3/3] tty: st-asc: Update tty alias

From: Patrice Chotard <[email protected]>

Since dtc v1.4.6-9-gaadd0b65c987, aliases property name
must include only lowercase and '-'.

After having updated all STi boards serial aliases from "ttyASN"
to "serialN", st-asc driver need to be updated accordingly as tty
aliases id is retrieved using of_alias_get_id(np, ASC_SERIAL_NAME);

Signed-off-by: Patrice Chotard <[email protected]>
---

v2: _ update st-asc driver with "serial" alias prefix


drivers/tty/serial/st-asc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/tty/serial/st-asc.c b/drivers/tty/serial/st-asc.c
index c763253514e9..f9372b690e54 100644
--- a/drivers/tty/serial/st-asc.c
+++ b/drivers/tty/serial/st-asc.c
@@ -29,7 +29,7 @@
#include <linux/gpio/consumer.h>

#define DRIVER_NAME "st-asc"
-#define ASC_SERIAL_NAME "ttyAS"
+#define ASC_SERIAL_NAME "serial"
#define ASC_FIFO_SIZE 16
#define ASC_MAX_PORTS 8

--
1.9.1


2018-03-06 08:10:35

by Patrice CHOTARD

[permalink] [raw]
Subject: [PATCH v2 2/3] ARM: dts: STi: Remove useless stdout-path for STi boards

From: Patrice Chotard <[email protected]>

As serial interface is already specified into bootargs,
stdout-path can be removed.

Signed-off-by: Patrice Chotard <[email protected]>
---

v2: _ none

arch/arm/boot/dts/stih407-b2120.dts | 1 -
arch/arm/boot/dts/stih410-b2120.dts | 1 -
arch/arm/boot/dts/stih410-b2260.dts | 1 -
arch/arm/boot/dts/stih418-b2199.dts | 1 -
4 files changed, 4 deletions(-)

diff --git a/arch/arm/boot/dts/stih407-b2120.dts b/arch/arm/boot/dts/stih407-b2120.dts
index 2c4d6033b448..074b4cd0ca89 100644
--- a/arch/arm/boot/dts/stih407-b2120.dts
+++ b/arch/arm/boot/dts/stih407-b2120.dts
@@ -15,7 +15,6 @@

chosen {
bootargs = "console=serial0,115200 clk_ignore_unused";
- stdout-path = &sbc_serial0;
};

memory@40000000 {
diff --git a/arch/arm/boot/dts/stih410-b2120.dts b/arch/arm/boot/dts/stih410-b2120.dts
index 5422850641e8..eae3050984d0 100644
--- a/arch/arm/boot/dts/stih410-b2120.dts
+++ b/arch/arm/boot/dts/stih410-b2120.dts
@@ -15,7 +15,6 @@

chosen {
bootargs = "console=serial0,115200 clk_ignore_unused";
- stdout-path = &sbc_serial0;
};

memory@40000000 {
diff --git a/arch/arm/boot/dts/stih410-b2260.dts b/arch/arm/boot/dts/stih410-b2260.dts
index ca347160e35d..c26e388bd1a4 100644
--- a/arch/arm/boot/dts/stih410-b2260.dts
+++ b/arch/arm/boot/dts/stih410-b2260.dts
@@ -16,7 +16,6 @@

chosen {
bootargs = "console=serial1,115200 clk_ignore_unused";
- stdout-path = &uart1;
};

memory@40000000 {
diff --git a/arch/arm/boot/dts/stih418-b2199.dts b/arch/arm/boot/dts/stih418-b2199.dts
index dbf7bb704a1a..d948f774fee7 100644
--- a/arch/arm/boot/dts/stih418-b2199.dts
+++ b/arch/arm/boot/dts/stih418-b2199.dts
@@ -15,7 +15,6 @@

chosen {
bootargs = "console=serial0,115200 clk_ignore_unused";
- stdout-path = &sbc_serial0;
};

memory@40000000 {
--
1.9.1


2018-03-06 08:11:33

by Patrice CHOTARD

[permalink] [raw]
Subject: [PATCH v2 1/3] ARM: dts: STi: Fix aliases property name for STi boards

From: Patrice Chotard <[email protected]>

Update serial aliases from "ttyASN" to more common "serialN".

Since dtc v1.4.6-9-gaadd0b65c987, aliases property name must
be lowercase only. This allows to fix following dtc warnings:

arch/arm/boot/dts/stih418-b2199.dtb: Warning (alias_paths): /aliases: aliases property name must include only lowercase and '-'
arch/arm/boot/dts/stih407-b2120.dtb: Warning (alias_paths): /aliases: aliases property name must include only lowercase and '-'
arch/arm/boot/dts/stih410-b2260.dtb: Warning (alias_paths): /aliases: aliases property name must include only lowercase and '-'
arch/arm/boot/dts/stih410-b2120.dtb: Warning (alias_paths): /aliases: aliases property name must include only lowercase and '-'

Signed-off-by: Patrice Chotard <[email protected]>
---

v2: _ use serialN instead of ttyasN aliases to not break ABI


arch/arm/boot/dts/stih407-b2120.dts | 4 ++--
arch/arm/boot/dts/stih410-b2120.dts | 4 ++--
arch/arm/boot/dts/stih410-b2260.dts | 4 ++--
arch/arm/boot/dts/stih418-b2199.dts | 4 ++--
4 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/arch/arm/boot/dts/stih407-b2120.dts b/arch/arm/boot/dts/stih407-b2120.dts
index de3c8bf129b5..2c4d6033b448 100644
--- a/arch/arm/boot/dts/stih407-b2120.dts
+++ b/arch/arm/boot/dts/stih407-b2120.dts
@@ -14,7 +14,7 @@
compatible = "st,stih407-b2120", "st,stih407";

chosen {
- bootargs = "console=ttyAS0,115200 clk_ignore_unused";
+ bootargs = "console=serial0,115200 clk_ignore_unused";
stdout-path = &sbc_serial0;
};

@@ -24,7 +24,7 @@
};

aliases {
- ttyAS0 = &sbc_serial0;
+ serial0 = &sbc_serial0;
ethernet0 = &ethernet0;
};

diff --git a/arch/arm/boot/dts/stih410-b2120.dts b/arch/arm/boot/dts/stih410-b2120.dts
index 0a59b7b0f4b2..5422850641e8 100644
--- a/arch/arm/boot/dts/stih410-b2120.dts
+++ b/arch/arm/boot/dts/stih410-b2120.dts
@@ -14,7 +14,7 @@
compatible = "st,stih410-b2120", "st,stih410";

chosen {
- bootargs = "console=ttyAS0,115200 clk_ignore_unused";
+ bootargs = "console=serial0,115200 clk_ignore_unused";
stdout-path = &sbc_serial0;
};

@@ -24,7 +24,7 @@
};

aliases {
- ttyAS0 = &sbc_serial0;
+ serial0 = &sbc_serial0;
ethernet0 = &ethernet0;
};

diff --git a/arch/arm/boot/dts/stih410-b2260.dts b/arch/arm/boot/dts/stih410-b2260.dts
index feb8834478fa..ca347160e35d 100644
--- a/arch/arm/boot/dts/stih410-b2260.dts
+++ b/arch/arm/boot/dts/stih410-b2260.dts
@@ -15,7 +15,7 @@
compatible = "st,stih410-b2260", "st,stih410";

chosen {
- bootargs = "console=ttyAS1,115200 clk_ignore_unused";
+ bootargs = "console=serial1,115200 clk_ignore_unused";
stdout-path = &uart1;
};

@@ -25,7 +25,7 @@
};

aliases {
- ttyAS1 = &uart1;
+ serial1 = &uart1;
ethernet0 = &ethernet0;
};

diff --git a/arch/arm/boot/dts/stih418-b2199.dts b/arch/arm/boot/dts/stih418-b2199.dts
index 39b4db2e3507..dbf7bb704a1a 100644
--- a/arch/arm/boot/dts/stih418-b2199.dts
+++ b/arch/arm/boot/dts/stih418-b2199.dts
@@ -14,7 +14,7 @@
compatible = "st,stih418-b2199", "st,stih418";

chosen {
- bootargs = "console=ttyAS0,115200 clk_ignore_unused";
+ bootargs = "console=serial0,115200 clk_ignore_unused";
stdout-path = &sbc_serial0;
};

@@ -24,7 +24,7 @@
};

aliases {
- ttyAS0 = &sbc_serial0;
+ serial0 = &sbc_serial0;
ethernet0 = &ethernet0;
};

--
1.9.1


2018-03-06 13:27:54

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH v2 2/3] ARM: dts: STi: Remove useless stdout-path for STi boards

On Tue, Mar 6, 2018 at 2:07 AM, <[email protected]> wrote:
> From: Patrice Chotard <[email protected]>
>
> As serial interface is already specified into bootargs,
> stdout-path can be removed.

Wrong way around. stdout-path is preferred over using console in bootargs.

>
> Signed-off-by: Patrice Chotard <[email protected]>
> ---
>
> v2: _ none
>
> arch/arm/boot/dts/stih407-b2120.dts | 1 -
> arch/arm/boot/dts/stih410-b2120.dts | 1 -
> arch/arm/boot/dts/stih410-b2260.dts | 1 -
> arch/arm/boot/dts/stih418-b2199.dts | 1 -
> 4 files changed, 4 deletions(-)
>
> diff --git a/arch/arm/boot/dts/stih407-b2120.dts b/arch/arm/boot/dts/stih407-b2120.dts
> index 2c4d6033b448..074b4cd0ca89 100644
> --- a/arch/arm/boot/dts/stih407-b2120.dts
> +++ b/arch/arm/boot/dts/stih407-b2120.dts
> @@ -15,7 +15,6 @@
>
> chosen {
> bootargs = "console=serial0,115200 clk_ignore_unused";
> - stdout-path = &sbc_serial0;
> };
>
> memory@40000000 {
> diff --git a/arch/arm/boot/dts/stih410-b2120.dts b/arch/arm/boot/dts/stih410-b2120.dts
> index 5422850641e8..eae3050984d0 100644
> --- a/arch/arm/boot/dts/stih410-b2120.dts
> +++ b/arch/arm/boot/dts/stih410-b2120.dts
> @@ -15,7 +15,6 @@
>
> chosen {
> bootargs = "console=serial0,115200 clk_ignore_unused";
> - stdout-path = &sbc_serial0;
> };
>
> memory@40000000 {
> diff --git a/arch/arm/boot/dts/stih410-b2260.dts b/arch/arm/boot/dts/stih410-b2260.dts
> index ca347160e35d..c26e388bd1a4 100644
> --- a/arch/arm/boot/dts/stih410-b2260.dts
> +++ b/arch/arm/boot/dts/stih410-b2260.dts
> @@ -16,7 +16,6 @@
>
> chosen {
> bootargs = "console=serial1,115200 clk_ignore_unused";
> - stdout-path = &uart1;
> };
>
> memory@40000000 {
> diff --git a/arch/arm/boot/dts/stih418-b2199.dts b/arch/arm/boot/dts/stih418-b2199.dts
> index dbf7bb704a1a..d948f774fee7 100644
> --- a/arch/arm/boot/dts/stih418-b2199.dts
> +++ b/arch/arm/boot/dts/stih418-b2199.dts
> @@ -15,7 +15,6 @@
>
> chosen {
> bootargs = "console=serial0,115200 clk_ignore_unused";
> - stdout-path = &sbc_serial0;
> };
>
> memory@40000000 {
> --
> 1.9.1
>

2018-03-06 13:32:31

by Rob Herring

[permalink] [raw]
Subject: Re: [PATCH v2 3/3] tty: st-asc: Update tty alias

On Tue, Mar 6, 2018 at 2:07 AM, <[email protected]> wrote:
> From: Patrice Chotard <[email protected]>
>
> Since dtc v1.4.6-9-gaadd0b65c987, aliases property name
> must include only lowercase and '-'.
>
> After having updated all STi boards serial aliases from "ttyASN"
> to "serialN", st-asc driver need to be updated accordingly as tty
> aliases id is retrieved using of_alias_get_id(np, ASC_SERIAL_NAME);

Again, changing the tty name breaks userspace. You can't do that.

You need to do something like this:

diff --git a/drivers/tty/serial/st-asc.c b/drivers/tty/serial/st-asc.c
index c763253514e9..5f9f01fac6dd 100644
--- a/drivers/tty/serial/st-asc.c
+++ b/drivers/tty/serial/st-asc.c
@@ -782,7 +782,9 @@ static struct asc_port *asc_of_get_asc_port(struct
platform_device *pdev)
if (!np)
return NULL;

- id = of_alias_get_id(np, ASC_SERIAL_NAME);
+ id = of_alias_get_id(np, "serial");
+ if (id < 0)
+ id = of_alias_get_id(np, ASC_SERIAL_NAME);

if (id < 0)
id = 0;

2018-03-07 08:02:00

by Patrice CHOTARD

[permalink] [raw]
Subject: Re: [PATCH v2 2/3] ARM: dts: STi: Remove useless stdout-path for STi boards

Hi Rob

On 03/06/2018 02:26 PM, Rob Herring wrote:
> On Tue, Mar 6, 2018 at 2:07 AM, <[email protected]> wrote:
>> From: Patrice Chotard <[email protected]>
>>
>> As serial interface is already specified into bootargs,
>> stdout-path can be removed.
>
> Wrong way around. stdout-path is preferred over using console in bootargs.

Ah sorry, i misunderstood what you previously suggested. I will fix it.

Thanks

Patrice

>
>>
>> Signed-off-by: Patrice Chotard <[email protected]>
>> ---
>>
>> v2: _ none
>>
>> arch/arm/boot/dts/stih407-b2120.dts | 1 -
>> arch/arm/boot/dts/stih410-b2120.dts | 1 -
>> arch/arm/boot/dts/stih410-b2260.dts | 1 -
>> arch/arm/boot/dts/stih418-b2199.dts | 1 -
>> 4 files changed, 4 deletions(-)
>>
>> diff --git a/arch/arm/boot/dts/stih407-b2120.dts b/arch/arm/boot/dts/stih407-b2120.dts
>> index 2c4d6033b448..074b4cd0ca89 100644
>> --- a/arch/arm/boot/dts/stih407-b2120.dts
>> +++ b/arch/arm/boot/dts/stih407-b2120.dts
>> @@ -15,7 +15,6 @@
>>
>> chosen {
>> bootargs = "console=serial0,115200 clk_ignore_unused";
>> - stdout-path = &sbc_serial0;
>> };
>>
>> memory@40000000 {
>> diff --git a/arch/arm/boot/dts/stih410-b2120.dts b/arch/arm/boot/dts/stih410-b2120.dts
>> index 5422850641e8..eae3050984d0 100644
>> --- a/arch/arm/boot/dts/stih410-b2120.dts
>> +++ b/arch/arm/boot/dts/stih410-b2120.dts
>> @@ -15,7 +15,6 @@
>>
>> chosen {
>> bootargs = "console=serial0,115200 clk_ignore_unused";
>> - stdout-path = &sbc_serial0;
>> };
>>
>> memory@40000000 {
>> diff --git a/arch/arm/boot/dts/stih410-b2260.dts b/arch/arm/boot/dts/stih410-b2260.dts
>> index ca347160e35d..c26e388bd1a4 100644
>> --- a/arch/arm/boot/dts/stih410-b2260.dts
>> +++ b/arch/arm/boot/dts/stih410-b2260.dts
>> @@ -16,7 +16,6 @@
>>
>> chosen {
>> bootargs = "console=serial1,115200 clk_ignore_unused";
>> - stdout-path = &uart1;
>> };
>>
>> memory@40000000 {
>> diff --git a/arch/arm/boot/dts/stih418-b2199.dts b/arch/arm/boot/dts/stih418-b2199.dts
>> index dbf7bb704a1a..d948f774fee7 100644
>> --- a/arch/arm/boot/dts/stih418-b2199.dts
>> +++ b/arch/arm/boot/dts/stih418-b2199.dts
>> @@ -15,7 +15,6 @@
>>
>> chosen {
>> bootargs = "console=serial0,115200 clk_ignore_unused";
>> - stdout-path = &sbc_serial0;
>> };
>>
>> memory@40000000 {
>> --
>> 1.9.1
>>

2018-03-07 08:03:31

by Patrice CHOTARD

[permalink] [raw]
Subject: Re: [PATCH v2 3/3] tty: st-asc: Update tty alias

Hi Rob

On 03/06/2018 02:29 PM, Rob Herring wrote:
> On Tue, Mar 6, 2018 at 2:07 AM, <[email protected]> wrote:
>> From: Patrice Chotard <[email protected]>
>>
>> Since dtc v1.4.6-9-gaadd0b65c987, aliases property name
>> must include only lowercase and '-'.
>>
>> After having updated all STi boards serial aliases from "ttyASN"
>> to "serialN", st-asc driver need to be updated accordingly as tty
>> aliases id is retrieved using of_alias_get_id(np, ASC_SERIAL_NAME);
>
> Again, changing the tty name breaks userspace. You can't do that.
>
> You need to do something like this:
>
> diff --git a/drivers/tty/serial/st-asc.c b/drivers/tty/serial/st-asc.c
> index c763253514e9..5f9f01fac6dd 100644
> --- a/drivers/tty/serial/st-asc.c
> +++ b/drivers/tty/serial/st-asc.c
> @@ -782,7 +782,9 @@ static struct asc_port *asc_of_get_asc_port(struct
> platform_device *pdev)
> if (!np)
> return NULL;
>
> - id = of_alias_get_id(np, ASC_SERIAL_NAME);
> + id = of_alias_get_id(np, "serial");
> + if (id < 0)
> + id = of_alias_get_id(np, ASC_SERIAL_NAME);
>
> if (id < 0)
> id = 0;
>
I will fix this too

Patrice