Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1324276

Re: [PATCH 05/11] drivers: pinctrl: add driver for Allwinner A64 SoC

From Andre Przywara <andre.przywara@arm.com>
Newsgroups linux.kernel
Subject Re: [PATCH 05/11] drivers: pinctrl: add driver for Allwinner A64 SoC
Date 2016-02-02 18:00 +0100
Message-ID <qXMt4-5Rl-1@gated-at.bofh.it> (permalink)
References <qXqCd-6ht-1@gated-at.bofh.it> <qXqLV-6lT-29@gated-at.bofh.it> <qXroC-6S9-11@gated-at.bofh.it> <qXvBV-1gM-31@gated-at.bofh.it> <qXG4i-ZH-15@gated-at.bofh.it>
Organization ARM Ltd.

Show all headers | View raw


Hi,

On 02/02/16 10:00, Maxime Ripard wrote:
> Hi Andre,
> 
> On Mon, Feb 01, 2016 at 10:49:16PM +0000, André Przywara wrote:
>> On 01/02/16 18:27, Karsten Merker wrote:
>>
>> Hi Karsten,
>>
>> thank you very much for your feedback!
>>
>>> On Mon, Feb 01, 2016 at 05:39:24PM +0000, Andre Przywara wrote:
>>>> Based on the Allwinner A64 user manual and on the previous sunxi
>>>> pinctrl drivers this introduces the pin multiplex assignments for
>>>> the ARMv8 Allwinner A64 SoC.
>>>> Port A is apparently used for the fixed function DRAM controller, so
>>>> the ports start at B here (the manual mentions "n from 1 to 7", so
>>>> not starting at 0).
>>>>
>>>> Signed-off-by: Andre Przywara <andre.przywara@arm.com>
>>>> ---
>>>>  .../bindings/pinctrl/allwinner,sunxi-pinctrl.txt   |   1 +
>>>>  arch/arm64/Kconfig.platforms                       |   1 +
>>>>  drivers/pinctrl/sunxi/Kconfig                      |   4 +
>>>>  drivers/pinctrl/sunxi/Makefile                     |   1 +
>>>>  drivers/pinctrl/sunxi/pinctrl-a64.c                | 606 +++++++++++++++++++++
>>>>  5 files changed, 613 insertions(+)
>>>>  create mode 100644 drivers/pinctrl/sunxi/pinctrl-a64.c
>>>>
>>>> diff --git a/Documentation/devicetree/bindings/pinctrl/allwinner,sunxi-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/allwinner,sunxi-pinctrl.txt
>>>> index 9213b27..9050002 100644
>>>> --- a/Documentation/devicetree/bindings/pinctrl/allwinner,sunxi-pinctrl.txt
>>>> +++ b/Documentation/devicetree/bindings/pinctrl/allwinner,sunxi-pinctrl.txt
>>>> @@ -21,6 +21,7 @@ Required properties:
>>>>    "allwinner,sun9i-a80-r-pinctrl"
>>>>    "allwinner,sun8i-a83t-pinctrl"
>>>>    "allwinner,sun8i-h3-pinctrl"
>>>> +  "allwinner,a64-pinctrl"
>>>
>>> Hello,
>>>
>>> on all other Allwinner SoCs we use the SoC family as part of the
>>> compatible, as well as in the names of the Kconfig options. To
>>> keep things consistent, I would like to propose doing the same on
>>> Arm64, i.e. using allwinner,sun50i-a64-pinctrl instead of
>>> allwinner,a64-pinctrl.
>>
>> Yes, I have been told this already. However I don't like this idea so
>> much, for the following reasons:
>> a) It is mostly redundant. The actual SoC (marketing) name is unique,
>> there is no sun6i-a20 or sun7i-a23.
> 
> At the same time, the family name is mostly valid too.
> 
> We do share some DTSI across some SoCs already by their family name
> (sun5i.dtsi for the A10s/A13/R8, sun8i-a23-a33.dtsi for the A23 and
> A33, etc.)
> 
>> b) It is not even helpful. If I got Maxime correctly, then the newer
>> sunxi generation numbers depend on the ARM _cores_ used in the SoC,
>> which is frankly the least interesting part from a Linux support
>> perspective. I would see some sense if it would reflect the generation
>> of IP blocks used, but so it is even more confusing to see that
>> sun7i-a20 and sun8i-a23 are related, but sun8i-h3 is a completely
>> different beast. The Allwinner marketing name tells you that, but the
>> sunxi one does not.
> 
> The opposite can be said too.
> 
> The A31 is quite different from the A33, while the A83 is much closer
> to the H3 than it is to the A80. Their marketing scheme is messy. In
> all aspects. We have a scheme that worked, I'd really like to stick
> with it.

But also H3 and A64 are closely related, still having a totally
different sunxi name.
I guess we could give examples and counter-examples for hours, and just
making it possible to have two contradicting rationales lets me think
this whole naming scheme is inconsistent ;-)
I see that it may have fulfilled a purpose in the past (sun3i-sun7i,
maybe sun8i), but I am not very happy with proliferating this into the
(arm64) future.
Allwinner A<something> is a perfectly google-able and well understood
naming, also unique. So why add some mysterious sun{4,5,6,7,8,9,50}i to it?
So I will amend identifiers/filenames where the name was just A64,
without any Allwinner reference (like in the pinctrl driver). I am in
for using sunxi as a shorthand for Allwinner, since this is a) shorter,
b) is already all over the kernel and c) doesn't give direct credit to a
company that apparently doesn't care ;-)

>> c) It is very confusing for people not dealing with it everyday. Just
>> because I own a BananaPi I know that the A20 is sun7i, but I am totally
>> lost when it comes to all the other names. And even now it took me about
>> a minute to find the appropriate Wiki page which explains part of that
>> story.
>> d) Most importantly ;-): It kills TAB completion, unless you know the
>> sunxi number, which is mostly not true as pointed out in c)
> 
> Both of these are true, but are about the DT filenames, and not the
> compatibles. I'd agree with you on this one now that we have
> per-vendor subfolders in boot/dts, but it was not the case before, and
> I'm pretty sure that to anyone that is not aware of the Allwinner SoCs
> names, having an A<number>.dtsi in arch/arm/boot/dts, it would be
> about a Cortex-A<number>, and definitely not an SoC from some random
> vendor.

I completely agree on that, but this is in
arch/arm64/boot/dts/allwinner, so it's pretty unique. Other vendors in
there seem to think the same. I also see that just an "a" as a prefix is
pretty short, so should we go with "aw" instead?
But actually I would just leave it as it is.

> So, droping it in the filenames, why not. But I'd really like to keep
> the same compatible scheme.

And I still don't get this: in the DT compatible scheme we always have a
vendor prefix, so allwinner,a64 is surely not a mysterious ARM Ltd. core
or a new Apple SoC. Instead it is the A64 from Allwinner, full stop. So
why should we add an arbitrary and confusing sun50i naming to it (when
it actually should be more like "sun8i-a64").

Cheers,
Andre.

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 00/11] arm64: Introduce Allwinner A64 and Pine64 support Andre Przywara <andre.przywara@arm.com> - 2016-02-01 18:40 +0100
  [PATCH 06/11] clk: sunxi: add generic multi-parent bus clock gates driver Andre Przywara <andre.przywara@arm.com> - 2016-02-01 18:50 +0100
    Re: [PATCH 06/11] clk: sunxi: add generic multi-parent bus clock  gates driver Jean-Francois Moine <moinejf@free.fr> - 2016-02-01 19:50 +0100
      Re: [PATCH 06/11] clk: sunxi: add generic multi-parent bus clock  gates driver André Przywara <andre.przywara@arm.com> - 2016-02-02 00:10 +0100
  [PATCH 10/11] arm64: dts: add Allwinner A64 SoC .dtsi Andre Przywara <andre.przywara@arm.com> - 2016-02-01 18:50 +0100
    Re: [linux-sunxi] [PATCH 10/11] arm64: dts: add Allwinner A64 SoC  .dtsi Karsten Merker <merker@debian.org> - 2016-02-01 20:10 +0100
      Re: [linux-sunxi] [PATCH 10/11] arm64: dts: add Allwinner A64 SoC  .dtsi André Przywara <andre.przywara@arm.com> - 2016-02-02 00:10 +0100
    Re: [linux-sunxi] [PATCH 10/11] arm64: dts: add Allwinner A64 SoC  .dtsi Jens Kuske <jenskuske@gmail.com> - 2016-02-02 17:30 +0100
      Re: [linux-sunxi] [PATCH 10/11] arm64: dts: add Allwinner A64 SoC  .dtsi Andre Przywara <andre.przywara@arm.com> - 2016-02-02 17:50 +0100
        Re: [linux-sunxi] [PATCH 10/11] arm64: dts: add Allwinner A64 SoC  .dtsi Jens Kuske <jenskuske@gmail.com> - 2016-02-02 18:50 +0100
        Re: [linux-sunxi] [PATCH 10/11] arm64: dts: add Allwinner A64 SoC .dtsi Chen-Yu Tsai <wens@csie.org> - 2016-02-05 10:00 +0100
    Re: [PATCH 10/11] arm64: dts: add Allwinner A64 SoC .dtsi Maxime Ripard <maxime.ripard@free-electrons.com> - 2016-02-05 10:00 +0100
      Re: [PATCH 10/11] arm64: dts: add Allwinner A64 SoC .dtsi Andre Przywara <andre.przywara@arm.com> - 2016-02-08 10:50 +0100
  [PATCH 01/11] irqchip: sun4i: fix compilation outside of arch/arm Andre Przywara <andre.przywara@arm.com> - 2016-02-01 18:50 +0100
    [tip:irq/urgent] irqchip/sun4i: Fix compilation outside of arch/  arm tip-bot for Andre Przywara <tipbot@zytor.com> - 2016-02-02 16:00 +0100
    Re: [PATCH 01/11] irqchip: sun4i: fix compilation outside of arch/arm Matthias Brugger <matthias.bgg@gmail.com> - 2016-02-02 16:20 +0100
      Re: [PATCH 01/11] irqchip: sun4i: fix compilation outside of arch/arm Andre Przywara <andre.przywara@arm.com> - 2016-02-02 16:40 +0100
        Re: [PATCH 01/11] irqchip: sun4i: fix compilation outside of arch/arm Matthias Brugger <matthias.bgg@gmail.com> - 2016-02-02 18:00 +0100
  [PATCH 08/11] clk: sunxi: improve error reporting for the mux clock Andre Przywara <andre.przywara@arm.com> - 2016-02-01 18:50 +0100
    Re: [PATCH 08/11] clk: sunxi: improve error reporting for the mux  clock Andre Przywara <andre.przywara@arm.com> - 2016-02-02 19:10 +0100
    Re: [PATCH 08/11] clk: sunxi: improve error reporting for the mux  clock Maxime Ripard <maxime.ripard@free-electrons.com> - 2016-02-02 19:10 +0100
  [PATCH 07/11] clk: sunxi: add generic allwinner,sunxi name Andre Przywara <andre.przywara@arm.com> - 2016-02-01 18:50 +0100
    Re: [PATCH 07/11] clk: sunxi: add generic allwinner,sunxi name Rob Herring <robh@kernel.org> - 2016-02-08 17:00 +0100
      Re: [PATCH 07/11] clk: sunxi: add generic allwinner,sunxi name Andre Przywara <andre.przywara@arm.com> - 2016-02-08 17:10 +0100
  [PATCH 11/11] arm64: dts: add Pine64 support Andre Przywara <andre.przywara@arm.com> - 2016-02-01 18:50 +0100
    Re: [linux-sunxi] [PATCH 11/11] arm64: dts: add Pine64 support Karsten Merker <merker@debian.org> - 2016-02-01 20:30 +0100
      Re: [linux-sunxi] [PATCH 11/11] arm64: dts: add Pine64 support André Przywara <andre.przywara@arm.com> - 2016-02-02 00:10 +0100
    Re: [PATCH 11/11] arm64: dts: add Pine64 support Maxime Ripard <maxime.ripard@free-electrons.com> - 2016-02-05 10:10 +0100
      Re: [PATCH 11/11] arm64: dts: add Pine64 support Andre Przywara <andre.przywara@arm.com> - 2016-02-05 11:10 +0100
        Re: [linux-sunxi] Re: [PATCH 11/11] arm64: dts: add Pine64 support Julian Calaby <julian.calaby@gmail.com> - 2016-02-08 02:00 +0100
  [PATCH 04/11] arm64: Introduce Allwinner SoC config option Andre Przywara <andre.przywara@arm.com> - 2016-02-01 18:50 +0100
    Re: [PATCH 04/11] arm64: Introduce Allwinner SoC config option Matthias Brugger <matthias.bgg@gmail.com> - 2016-02-02 16:30 +0100
      Re: [PATCH 04/11] arm64: Introduce Allwinner SoC config option Andre Przywara <andre.przywara@arm.com> - 2016-02-02 16:40 +0100
        Re: [PATCH 04/11] arm64: Introduce Allwinner SoC config option Arnd Bergmann <arnd@arndb.de> - 2016-02-02 17:10 +0100
  [PATCH 05/11] drivers: pinctrl: add driver for Allwinner A64 SoC Andre Przywara <andre.przywara@arm.com> - 2016-02-01 18:50 +0100
    Re: [PATCH 05/11] drivers: pinctrl: add driver for Allwinner A64 SoC Karsten Merker <merker@debian.org> - 2016-02-01 19:30 +0100
      Re: [linux-sunxi] Re: [PATCH 05/11] drivers: pinctrl: add driver for  Allwinner A64 SoC Karsten Merker <merker@debian.org> - 2016-02-01 19:50 +0100
        Re: [linux-sunxi] Re: [PATCH 05/11] drivers: pinctrl: add driver for  Allwinner A64 SoC André Przywara <andre.przywara@arm.com> - 2016-02-02 00:10 +0100
      Re: [PATCH 05/11] drivers: pinctrl: add driver for Allwinner A64 SoC André Przywara <andre.przywara@arm.com> - 2016-02-02 00:00 +0100
        Re: [linux-sunxi] Re: [PATCH 05/11] drivers: pinctrl: add driver  for Allwinner A64 SoC Siarhei Siamashka <siarhei.siamashka@gmail.com> - 2016-02-02 03:00 +0100
          Re: [linux-sunxi] Re: [PATCH 05/11] drivers: pinctrl: add driver for  Allwinner A64 SoC Andre Przywara <andre.przywara@arm.com> - 2016-02-02 15:30 +0100
          Re: [linux-sunxi] Re: [PATCH 05/11] drivers: pinctrl: add driver for  Allwinner A64 SoC Maxime Ripard <maxime.ripard@free-electrons.com> - 2016-02-02 18:40 +0100
        Re: [PATCH 05/11] drivers: pinctrl: add driver for Allwinner A64 SoC Maxime Ripard <maxime.ripard@free-electrons.com> - 2016-02-02 11:10 +0100
          Re: [PATCH 05/11] drivers: pinctrl: add driver for Allwinner A64 SoC Chen-Yu Tsai <wens@csie.org> - 2016-02-02 11:20 +0100
          Re: [PATCH 05/11] drivers: pinctrl: add driver for Allwinner A64 SoC Andre Przywara <andre.przywara@arm.com> - 2016-02-02 18:00 +0100
            Re: [PATCH 05/11] drivers: pinctrl: add driver for Allwinner A64 SoC Maxime Ripard <maxime.ripard@free-electrons.com> - 2016-02-04 20:00 +0100
              Re: [PATCH 05/11] drivers: pinctrl: add driver for Allwinner A64 SoC Andre Przywara <andre.przywara@arm.com> - 2016-02-08 17:00 +0100
              Re: [PATCH 05/11] drivers: pinctrl: add driver for Allwinner A64 SoC Rob Herring <robh@kernel.org> - 2016-02-08 17:00 +0100
  [PATCH 02/11] crypto: sunxi-ss: prevent compilation on 64-bit Andre Przywara <andre.przywara@arm.com> - 2016-02-01 18:50 +0100
    Re: [PATCH 02/11] crypto: sunxi-ss: prevent compilation on 64-bit Herbert Xu <herbert@gondor.apana.org.au> - 2016-02-02 04:20 +0100
    Re: [linux-sunxi] [PATCH 02/11] crypto: sunxi-ss: prevent  compilation on 64-bit LABBE Corentin <clabbe.montjoie@gmail.com> - 2016-02-02 09:50 +0100
    Re: [PATCH 02/11] crypto: sunxi-ss: prevent compilation on 64-bit Herbert Xu <herbert@gondor.apana.org.au> - 2016-02-06 08:50 +0100
  [PATCH 03/11] drivers: rtc: allow compilation of sun6i RTC for all sunxi SoCs Andre Przywara <andre.przywara@arm.com> - 2016-02-01 18:50 +0100
    Re: [PATCH 03/11] drivers: rtc: allow compilation of sun6i RTC for  all sunxi SoCs Maxime Ripard <maxime.ripard@free-electrons.com> - 2016-02-02 10:50 +0100
    Re: [PATCH 03/11] drivers: rtc: allow compilation of sun6i RTC for  all sunxi SoCs Alexandre Belloni <alexandre.belloni@free-electrons.com> - 2016-02-05 00:00 +0100
  [PATCH 09/11] clk: sunxi: add critical-clocks property to mux clocks Andre Przywara <andre.przywara@arm.com> - 2016-02-01 18:50 +0100
  Re: [PATCH 00/11] arm64: Introduce Allwinner A64 and Pine64 support André Przywara <andre.przywara@arm.com> - 2016-02-02 09:20 +0100
  Re: [PATCH 00/11] arm64: Introduce Allwinner A64 and Pine64 support lists.nick.betteridge@gmail.com - 2016-02-02 09:40 +0100

csiph-web