mbox series

[4.4.y-cip,0/3] ARM: dts: am335x: Replace numeric pinmux address with macro defines

Message ID HK2PR01MB3281084A8DA1542518F65818FA850@HK2PR01MB3281.apcprd01.prod.exchangelabs.com (mailing list archive)
Headers show
Series ARM: dts: am335x: Replace numeric pinmux address with macro defines | expand

Message

Johnson CH Chen (陳昭勳) June 8, 2020, 10:33 a.m. UTC
Hello all,

This patchset replaces the register offsets for am335x with macro defines.
The values are extraced from the "AM335x SitaraTM Processors Technical
Reference Manual".

Use AM33XX_PADCONF to take three instead of two parameters for AM33XX_IOPAD, to make
future changes to #pinctrl-cells easier, and adjust pin direction and mux mode intuitively.

For now, only the am335x-moxa-uc-8100-me-t.dts changes are attached.

1. Add macros for numeric pinmux addresses. 
2. Add AM33XX_PADCONF macro.
3. Replace register offsets with define for moxa-uc8100-me-t.

It's tested with a Moxa UC-8100-ME-T platform.

Thanks!
Johnson

Christina Quast (2):
  ARM: dts: am33xx: Added macros for numeric pinmux addresses
  ARM: dts: am335x: moxa-uc-8100-me-t: Replaced register offsets with
    defines

Tony Lindgren (1):
  ARM: dts: am33xx: Added AM33XX_PADCONF macro

 arch/arm/boot/dts/am335x-moxa-uc-8100-me-t.dts | 116 +++++++++++-----------
 include/dt-bindings/pinctrl/am33xx.h           | 130 ++++++++++++++++++++++++-
 include/dt-bindings/pinctrl/omap.h             |   1 +
 3 files changed, 188 insertions(+), 59 deletions(-)

Comments

Johnson CH Chen (陳昭勳) June 8, 2020, 10:51 a.m. UTC | #1
Hi all,

> Christina Quast (2):
>   ARM: dts: am33xx: Added macros for numeric pinmux addresses
>   ARM: dts: am335x: moxa-uc-8100-me-t: Replaced register offsets with
>     defines
>
> Tony Lindgren (1):
>   ARM: dts: am33xx: Added AM33XX_PADCONF macro
>
>  arch/arm/boot/dts/am335x-moxa-uc-8100-me-t.dts | 116 +++++++++++-----------
>  include/dt-bindings/pinctrl/am33xx.h           | 130 ++++++++++++++++++++++++-
>  include/dt-bindings/pinctrl/omap.h             |   1 +
>  3 files changed, 188 insertions(+), 59 deletions(-)
>
These should be the following:

Christina Quast (3):
  ARM: dts: am33xx: Added macros for numeric pinmux addresses
  ARM: dts: am33xx: Added AM33XX_PADCONF macro
  ARM: dts: am335x: moxa-uc-8100-me-t: Replaced register offsets with
    defines

 .../arm/boot/dts/am335x-moxa-uc-8100-me-t.dts | 116 ++++++++--------
 include/dt-bindings/pinctrl/am33xx.h          | 131 +++++++++++++++++-
 include/dt-bindings/pinctrl/omap.h            |   2 +
 3 files changed, 190 insertions(+), 59 deletions(-)


Best regards,
Johnson

> --
> 2.11.0
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#4753): https://lists.cip-project.org/g/cip-dev/message/4753
Mute This Topic: https://lists.cip-project.org/mt/74749053/4520428
Group Owner: cip-dev+owner@lists.cip-project.org
Unsubscribe: https://lists.cip-project.org/g/cip-dev/leave/8129116/1171672734/xyzzy  [patchwork-cip-dev@patchwork.kernel.org]
-=-=-=-=-=-=-=-=-=-=-=-
Pavel Machek June 8, 2020, 9:30 p.m. UTC | #2
Hi!

> > Tony Lindgren (1):
> >   ARM: dts: am33xx: Added AM33XX_PADCONF macro
> >
> >  arch/arm/boot/dts/am335x-moxa-uc-8100-me-t.dts | 116 +++++++++++-----------
> >  include/dt-bindings/pinctrl/am33xx.h           | 130 ++++++++++++++++++++++++-
> >  include/dt-bindings/pinctrl/omap.h             |   1 +
> >  3 files changed, 188 insertions(+), 59 deletions(-)
> >
> These should be the following:
> 
> Christina Quast (3):
>   ARM: dts: am33xx: Added macros for numeric pinmux addresses
>   ARM: dts: am33xx: Added AM33XX_PADCONF macro
>   ARM: dts: am335x: moxa-uc-8100-me-t: Replaced register offsets with
>     defines

There's nothing obviously wrong with the patches (and they won't break
anything but am335x-moxa platform, so they are low risk).

On the other hand, I don't see any obvious benefit. Whether we use hex
constants or symbolic constants affects readability, but has no effect
on functionality.

Do you have any patches on top of these that rely on symbolic
constants in the dts? Are there any changes in the generated .dtb?
What is the benefit of this series (besides cleanup)?

Best regards,
								Pavel
Johnson CH Chen (陳昭勳) June 9, 2020, 3:54 a.m. UTC | #3
Hi,
> 
> Hi!
> 
> > > Tony Lindgren (1):
> > >   ARM: dts: am33xx: Added AM33XX_PADCONF macro
> > >
> > >  arch/arm/boot/dts/am335x-moxa-uc-8100-me-t.dts | 116
> +++++++++++-----------
> > >  include/dt-bindings/pinctrl/am33xx.h           | 130
> ++++++++++++++++++++++++-
> > >  include/dt-bindings/pinctrl/omap.h             |   1 +
> > >  3 files changed, 188 insertions(+), 59 deletions(-)
> > >
> > These should be the following:
> >
> > Christina Quast (3):
> >   ARM: dts: am33xx: Added macros for numeric pinmux addresses
> >   ARM: dts: am33xx: Added AM33XX_PADCONF macro
> >   ARM: dts: am335x: moxa-uc-8100-me-t: Replaced register offsets with
> >     defines
> 
> There's nothing obviously wrong with the patches (and they won't break
> anything but am335x-moxa platform, so they are low risk).
> 
> On the other hand, I don't see any obvious benefit. Whether we use hex
> constants or symbolic constants affects readability, but has no effect on
> functionality.
> 
> Do you have any patches on top of these that rely on symbolic constants in the
> dts? Are there any changes in the generated .dtb?
> What is the benefit of this series (besides cleanup)?

Thanks for your response!

If macros of numeric pinmux addresses is used, we don't need to see AM335X's Technical Reference Manual again and again to find out the meaning of each pinmux address, just check "am33xx.h". Besides, it helps us to configure module pin's for different device trees easily. For example of mii, If we want to configure module of mii pin, we check module in "am33xx.h" can pick register names we want to modify. It's hard to remember pin address number for the specific module to us.

If AM33XX_PADCONF is taken, we can make sure both of pin's direction and mux mode are actually set, and it helps us to debug.

We have many boards based on AM335x SoC. Some dts rely on symbolic constants and some dts are not. I think this patch series can let us develop boards with AM335x SoC easiler.

> Best regards,
> 
> Pavel
> --
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany

Best regards,
Johnson
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#4772): https://lists.cip-project.org/g/cip-dev/message/4772
Mute This Topic: https://lists.cip-project.org/mt/74749053/4520428
Group Owner: cip-dev+owner@lists.cip-project.org
Unsubscribe: https://lists.cip-project.org/g/cip-dev/leave/8129116/1171672734/xyzzy  [patchwork-cip-dev@patchwork.kernel.org]
-=-=-=-=-=-=-=-=-=-=-=-
Pavel Machek June 9, 2020, 10:45 a.m. UTC | #4
Hi!

> > On the other hand, I don't see any obvious benefit. Whether we use hex
> > constants or symbolic constants affects readability, but has no effect on
> > functionality.
> > 
> > Do you have any patches on top of these that rely on symbolic constants in the
> > dts? Are there any changes in the generated .dtb?
> > What is the benefit of this series (besides cleanup)?
> 
> Thanks for your response!
> 
> If macros of numeric pinmux addresses is used, we don't need to see AM335X's Technical Reference Manual again and again to find out the meaning of each pinmux address, just check "am33xx.h". Besides, it helps us to configure module pin's for different device trees easily. For example of mii, If we want to configure module of mii pin, we check module in "am33xx.h" can pick register names we want to modify. It's hard to remember pin address number for the specific module to us.
> 
> If AM33XX_PADCONF is taken, we can make sure both of pin's direction and mux mode are actually set, and it helps us to debug.
> 
> We have many boards based on AM335x SoC. Some dts rely on symbolic constants and some dts are not. I think this patch series can let us develop boards with AM335x SoC easiler.
>

Aha, ok, having more boards like this certainly explains the
benefits. Thanks for an explanation.

I have applied patches, I'll run some basic tests and push the
results.

Best regards,
								Pavel