mbox series

[00/12] riscv: Allwinner D1 platform support

Message ID 20220815050815.22340-1-samuel@sholland.org (mailing list archive)
Headers show
Series riscv: Allwinner D1 platform support | expand

Message

Samuel Holland Aug. 15, 2022, 5:08 a.m. UTC
This series adds the Kconfig/defconfig plumbing and devicetrees for a
range of Allwinner D1-based boards. Many features are already enabled,
including USB, Ethernet, and WiFi.

The SoC devicetree uses bindings from the following series which have
not yet been merged:
- SRAM controller:
  https://lore.kernel.org/lkml/20220815041248.53268-1-samuel@sholland.org/
- NVMEM cell bits property change:
  https://lore.kernel.org/lkml/20220814173656.11856-1-samuel@sholland.org/
- In-package LDO regulators:
  https://lore.kernel.org/lkml/20220815043436.20170-1-samuel@sholland.org/

All three of these are required to set the correct I/O domain voltages
in the pin controller, which I would consider important to have in the
initial version of the devicetree.

The SoC devicetree does contain one small hack to avoid a dependency on
the audio codec binding, since that is not ready yet: the codec node
uses a bare "simple-mfd", "syscon" compatible.


Samuel Holland (12):
  MAINTAINERS: Match the sun20i family of Allwinner SoCs
  dt-bindings: riscv: Add T-HEAD C906 and C910 compatibles
  dt-bindings: vendor-prefixes: Add Allwinner D1 board vendors
  dt-bindings: riscv: Add Allwinner D1 board compatibles
  riscv: Add the Allwinner SoC family Kconfig option
  riscv: dts: allwinner: Add the D1 SoC base devicetree
  riscv: dts: allwinner: Add Allwinner D1 Nezha devicetree
  riscv: dts: allwinner: Add Sipeed Lichee RV devicetrees
  riscv: dts: allwinner: Add MangoPi MQ Pro devicetree
  riscv: dts: allwinner: Add Dongshan Nezha STU devicetree
  riscv: dts: allwinner: Add ClockworkPi and DevTerm devicetrees
  riscv: defconfig: Enable the Allwinner D1 platform and drivers

 .../devicetree/bindings/riscv/cpus.yaml       |   2 +
 .../devicetree/bindings/riscv/sunxi.yaml      |  64 ++
 .../devicetree/bindings/vendor-prefixes.yaml  |   4 +
 MAINTAINERS                                   |   2 +-
 arch/riscv/Kconfig.socs                       |   9 +
 arch/riscv/boot/dts/Makefile                  |   1 +
 arch/riscv/boot/dts/allwinner/Makefile        |  10 +
 .../allwinner/sun20i-d1-clockworkpi-v3.14.dts | 242 +++++
 .../sun20i-d1-common-regulators.dtsi          |  51 +
 .../dts/allwinner/sun20i-d1-devterm-v3.14.dts |  37 +
 .../sun20i-d1-dongshan-nezha-stu.dts          | 114 +++
 .../sun20i-d1-lichee-rv-86-panel-480p.dts     |  29 +
 .../sun20i-d1-lichee-rv-86-panel-720p.dts     |  10 +
 .../sun20i-d1-lichee-rv-86-panel.dtsi         |  92 ++
 .../allwinner/sun20i-d1-lichee-rv-dock.dts    |  74 ++
 .../dts/allwinner/sun20i-d1-lichee-rv.dts     |  84 ++
 .../allwinner/sun20i-d1-mangopi-mq-pro.dts    | 128 +++
 .../boot/dts/allwinner/sun20i-d1-nezha.dts    | 171 ++++
 arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi  | 900 ++++++++++++++++++
 arch/riscv/configs/defconfig                  |  23 +-
 20 files changed, 2045 insertions(+), 2 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/riscv/sunxi.yaml
 create mode 100644 arch/riscv/boot/dts/allwinner/Makefile
 create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-clockworkpi-v3.14.dts
 create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-common-regulators.dtsi
 create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-devterm-v3.14.dts
 create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-dongshan-nezha-stu.dts
 create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-480p.dts
 create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-720p.dts
 create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel.dtsi
 create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-dock.dts
 create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv.dts
 create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-mangopi-mq-pro.dts
 create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-nezha.dts
 create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi

Comments

Conor Dooley Aug. 15, 2022, 7:05 a.m. UTC | #1
Hey Samuel,
Apologies for the last email, the first 5 patches in this series
didn't correctly land in my inbox and I skimmed & replied to the
wrong cover letter... I blame it being pre 8 AM ;)

On 15/08/2022 06:08, Samuel Holland wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> This series adds the Kconfig/defconfig plumbing and devicetrees for a
> range of Allwinner D1-based boards. Many features are already enabled,
> including USB, Ethernet, and WiFi.
> 
> The SoC devicetree uses bindings from the following series which have
> not yet been merged:
> - SRAM controller:
>    https://lore.kernel.org/lkml/20220815041248.53268-1-samuel@sholland.org/
> - NVMEM cell bits property change:
>    https://lore.kernel.org/lkml/20220814173656.11856-1-samuel@sholland.org/
> - In-package LDO regulators:
>    https://lore.kernel.org/lkml/20220815043436.20170-1-samuel@sholland.org/
> 
> All three of these are required to set the correct I/O domain voltages
> in the pin controller, which I would consider important to have in the
> initial version of the devicetree.
> 
> The SoC devicetree does contain one small hack to avoid a dependency on
> the audio codec binding, since that is not ready yet: the codec node
> uses a bare "simple-mfd", "syscon" compatible.


I tried this series on top of both 6.0-rc1 & next, but I saw a shed
load of errors from dtbs_check. I'll take a look at the rest of the
series later on, but just FYI. This time I did at least read the
right cover letter and actually applied your dependent series..
/facepalm

I have been trying to get riscv down to 0 warnings and would not be
in favour of accepting patches that go in the other direction.
(This patchset currently produces about 47 new warnings)

Thanks,
Conor.
> 
> 
> Samuel Holland (12):
>    MAINTAINERS: Match the sun20i family of Allwinner SoCs
>    dt-bindings: riscv: Add T-HEAD C906 and C910 compatibles
>    dt-bindings: vendor-prefixes: Add Allwinner D1 board vendors
>    dt-bindings: riscv: Add Allwinner D1 board compatibles
>    riscv: Add the Allwinner SoC family Kconfig option
>    riscv: dts: allwinner: Add the D1 SoC base devicetree
>    riscv: dts: allwinner: Add Allwinner D1 Nezha devicetree
>    riscv: dts: allwinner: Add Sipeed Lichee RV devicetrees
>    riscv: dts: allwinner: Add MangoPi MQ Pro devicetree
>    riscv: dts: allwinner: Add Dongshan Nezha STU devicetree
>    riscv: dts: allwinner: Add ClockworkPi and DevTerm devicetrees
>    riscv: defconfig: Enable the Allwinner D1 platform and drivers
> 
>   .../devicetree/bindings/riscv/cpus.yaml       |   2 +
>   .../devicetree/bindings/riscv/sunxi.yaml      |  64 ++
>   .../devicetree/bindings/vendor-prefixes.yaml  |   4 +
>   MAINTAINERS                                   |   2 +-
>   arch/riscv/Kconfig.socs                       |   9 +
>   arch/riscv/boot/dts/Makefile                  |   1 +
>   arch/riscv/boot/dts/allwinner/Makefile        |  10 +
>   .../allwinner/sun20i-d1-clockworkpi-v3.14.dts | 242 +++++
>   .../sun20i-d1-common-regulators.dtsi          |  51 +
>   .../dts/allwinner/sun20i-d1-devterm-v3.14.dts |  37 +
>   .../sun20i-d1-dongshan-nezha-stu.dts          | 114 +++
>   .../sun20i-d1-lichee-rv-86-panel-480p.dts     |  29 +
>   .../sun20i-d1-lichee-rv-86-panel-720p.dts     |  10 +
>   .../sun20i-d1-lichee-rv-86-panel.dtsi         |  92 ++
>   .../allwinner/sun20i-d1-lichee-rv-dock.dts    |  74 ++
>   .../dts/allwinner/sun20i-d1-lichee-rv.dts     |  84 ++
>   .../allwinner/sun20i-d1-mangopi-mq-pro.dts    | 128 +++
>   .../boot/dts/allwinner/sun20i-d1-nezha.dts    | 171 ++++
>   arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi  | 900 ++++++++++++++++++
>   arch/riscv/configs/defconfig                  |  23 +-
>   20 files changed, 2045 insertions(+), 2 deletions(-)
>   create mode 100644 Documentation/devicetree/bindings/riscv/sunxi.yaml
>   create mode 100644 arch/riscv/boot/dts/allwinner/Makefile
>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-clockworkpi-v3.14.dts
>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-common-regulators.dtsi
>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-devterm-v3.14.dts
>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-dongshan-nezha-stu.dts
>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-480p.dts
>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-720p.dts
>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel.dtsi
>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-dock.dts
>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv.dts
>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-mangopi-mq-pro.dts
>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-nezha.dts
>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi
> 
> --
> 2.35.1
>
Conor Dooley Aug. 15, 2022, 5:12 p.m. UTC | #2
On 15/08/2022 08:05, Conor Dooley wrote:
> Hey Samuel,
> Apologies for the last email, the first 5 patches in this series
> didn't correctly land in my inbox and I skimmed & replied to the
> wrong cover letter... I blame it being pre 8 AM ;)
> 
> On 15/08/2022 06:08, Samuel Holland wrote:
>> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>>
>> This series adds the Kconfig/defconfig plumbing and devicetrees for a
>> range of Allwinner D1-based boards. Many features are already enabled,
>> including USB, Ethernet, and WiFi.
>>
>> The SoC devicetree uses bindings from the following series which have
>> not yet been merged:
>> - SRAM controller:
>>    https://lore.kernel.org/lkml/20220815041248.53268-1-samuel@sholland.org/
>> - NVMEM cell bits property change:
>>    https://lore.kernel.org/lkml/20220814173656.11856-1-samuel@sholland.org/
>> - In-package LDO regulators:
>>    https://lore.kernel.org/lkml/20220815043436.20170-1-samuel@sholland.org/
>>
>> All three of these are required to set the correct I/O domain voltages
>> in the pin controller, which I would consider important to have in the
>> initial version of the devicetree.
>>
>> The SoC devicetree does contain one small hack to avoid a dependency on
>> the audio codec binding, since that is not ready yet: the codec node
>> uses a bare "simple-mfd", "syscon" compatible.
> 
> 
> I tried this series on top of both 6.0-rc1 & next, but I saw a shed
> load of errors from dtbs_check. I'll take a look at the rest of the
> series later on, but just FYI. This time I did at least read the
> right cover letter and actually applied your dependent series..
> /facepalm
> 
> I have been trying to get riscv down to 0 warnings and would not be
> in favour of accepting patches that go in the other direction.
> (This patchset currently produces about 47 new warnings)

FWIW this is what I see, LMK if I am missing something.
allwinner/sun20i-d1-lichee-rv.dtb: i2c@2502000: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-clockworkpi-v3.14.dtb: i2c@2502000: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv.dtb: i2c@2502400: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv-86-panel-720p.dtb: i2c@2502000: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv-dock.dtb: i2c@2502000: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-clockworkpi-v3.14.dtb: pmic@34: compatible: 'oneOf' conditional failed, one must be fixed:
allwinner/sun20i-d1-dongshan-nezha-stu.dtb: i2c@2502000: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv.dtb: i2c@2502800: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv-86-panel-720p.dtb: i2c@2502400: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv-dock.dtb: i2c@2502400: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-mangopi-mq-pro.dtb: i2c@2502000: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-dongshan-nezha-stu.dtb: i2c@2502400: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-devterm-v3.14.dtb: i2c@2502000: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv-86-panel-480p.dtb: i2c@2502000: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv.dtb: i2c@2502c00: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv-86-panel-720p.dtb: i2c@2502800: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-dongshan-nezha-stu.dtb: i2c@2502800: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-mangopi-mq-pro.dtb: i2c@2502400: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv-dock.dtb: i2c@2502800: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv-86-panel-480p.dtb: i2c@2502400: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-devterm-v3.14.dtb: pmic@34: compatible: 'oneOf' conditional failed, one must be fixed:
allwinner/sun20i-d1-lichee-rv-86-panel-720p.dtb: i2c@2502c00: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-mangopi-mq-pro.dtb: i2c@2502800: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-dongshan-nezha-stu.dtb: i2c@2502c00: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv-dock.dtb: i2c@2502c00: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv-86-panel-480p.dtb: i2c@2502800: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-mangopi-mq-pro.dtb: i2c@2502c00: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv-86-panel-480p.dtb: i2c@2502c00: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-clockworkpi-v3.14.dtb: i2c@2502400: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-clockworkpi-v3.14.dtb: i2c@2502800: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-clockworkpi-v3.14.dtb: i2c@2502c00: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-devterm-v3.14.dtb: i2c@2502400: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-devterm-v3.14.dtb: i2c@2502800: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-devterm-v3.14.dtb: i2c@2502c00: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-lichee-rv.dtb: ethernet@4500000: Unevaluated properties are not allowed ('mdio', 'reset-names', 'resets' were unexpected)
allwinner/sun20i-d1-lichee-rv-86-panel-720p.dtb: ethernet@4500000: Unevaluated properties are not allowed ('phy-supply' was unexpected)
allwinner/sun20i-d1-dongshan-nezha-stu.dtb: ethernet@4500000: Unevaluated properties are not allowed ('phy-supply' was unexpected)
allwinner/sun20i-d1-lichee-rv-dock.dtb: ethernet@4500000: Unevaluated properties are not allowed ('mdio', 'reset-names', 'resets' were unexpected)
allwinner/sun20i-d1-mangopi-mq-pro.dtb: ethernet@4500000: Unevaluated properties are not allowed ('mdio', 'reset-names', 'resets' were unexpected)
allwinner/sun20i-d1-lichee-rv-86-panel-480p.dtb: ethernet@4500000: Unevaluated properties are not allowed ('phy-supply' was unexpected)
allwinner/sun20i-d1-nezha.dtb: i2c@2502000: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-nezha.dtb: i2c@2502400: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-clockworkpi-v3.14.dtb: ethernet@4500000: Unevaluated properties are not allowed ('mdio', 'reset-names', 'resets' were unexpected)
allwinner/sun20i-d1-nezha.dtb: i2c@2502800: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-nezha.dtb: i2c@2502c00: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
allwinner/sun20i-d1-devterm-v3.14.dtb: ethernet@4500000: Unevaluated properties are not allowed ('mdio', 'reset-names', 'resets' were unexpected)
allwinner/sun20i-d1-nezha.dtb: ethernet@4500000: Unevaluated properties are not allowed ('phy-supply' was unexpected)


> 
> Thanks,
> Conor.
>>
>>
>> Samuel Holland (12):
>>    MAINTAINERS: Match the sun20i family of Allwinner SoCs
>>    dt-bindings: riscv: Add T-HEAD C906 and C910 compatibles
>>    dt-bindings: vendor-prefixes: Add Allwinner D1 board vendors
>>    dt-bindings: riscv: Add Allwinner D1 board compatibles
>>    riscv: Add the Allwinner SoC family Kconfig option
>>    riscv: dts: allwinner: Add the D1 SoC base devicetree
>>    riscv: dts: allwinner: Add Allwinner D1 Nezha devicetree
>>    riscv: dts: allwinner: Add Sipeed Lichee RV devicetrees
>>    riscv: dts: allwinner: Add MangoPi MQ Pro devicetree
>>    riscv: dts: allwinner: Add Dongshan Nezha STU devicetree
>>    riscv: dts: allwinner: Add ClockworkPi and DevTerm devicetrees
>>    riscv: defconfig: Enable the Allwinner D1 platform and drivers
>>
>>   .../devicetree/bindings/riscv/cpus.yaml       |   2 +
>>   .../devicetree/bindings/riscv/sunxi.yaml      |  64 ++
>>   .../devicetree/bindings/vendor-prefixes.yaml  |   4 +
>>   MAINTAINERS                                   |   2 +-
>>   arch/riscv/Kconfig.socs                       |   9 +
>>   arch/riscv/boot/dts/Makefile                  |   1 +
>>   arch/riscv/boot/dts/allwinner/Makefile        |  10 +
>>   .../allwinner/sun20i-d1-clockworkpi-v3.14.dts | 242 +++++
>>   .../sun20i-d1-common-regulators.dtsi          |  51 +
>>   .../dts/allwinner/sun20i-d1-devterm-v3.14.dts |  37 +
>>   .../sun20i-d1-dongshan-nezha-stu.dts          | 114 +++
>>   .../sun20i-d1-lichee-rv-86-panel-480p.dts     |  29 +
>>   .../sun20i-d1-lichee-rv-86-panel-720p.dts     |  10 +
>>   .../sun20i-d1-lichee-rv-86-panel.dtsi         |  92 ++
>>   .../allwinner/sun20i-d1-lichee-rv-dock.dts    |  74 ++
>>   .../dts/allwinner/sun20i-d1-lichee-rv.dts     |  84 ++
>>   .../allwinner/sun20i-d1-mangopi-mq-pro.dts    | 128 +++
>>   .../boot/dts/allwinner/sun20i-d1-nezha.dts    | 171 ++++
>>   arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi  | 900 ++++++++++++++++++
>>   arch/riscv/configs/defconfig                  |  23 +-
>>   20 files changed, 2045 insertions(+), 2 deletions(-)
>>   create mode 100644 Documentation/devicetree/bindings/riscv/sunxi.yaml
>>   create mode 100644 arch/riscv/boot/dts/allwinner/Makefile
>>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-clockworkpi-v3.14.dts
>>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-common-regulators.dtsi
>>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-devterm-v3.14.dts
>>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-dongshan-nezha-stu.dts
>>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-480p.dts
>>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-720p.dts
>>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel.dtsi
>>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-dock.dts
>>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv.dts
>>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-mangopi-mq-pro.dts
>>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-nezha.dts
>>   create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi
>>
>> -- 
>> 2.35.1
>>
>
Samuel Holland Aug. 16, 2022, 2:42 a.m. UTC | #3
On 8/15/22 12:12 PM, Conor.Dooley@microchip.com wrote:
> On 15/08/2022 08:05, Conor Dooley wrote:
>> Hey Samuel,
>> Apologies for the last email, the first 5 patches in this series
>> didn't correctly land in my inbox and I skimmed & replied to the
>> wrong cover letter... I blame it being pre 8 AM ;)
>>
>> On 15/08/2022 06:08, Samuel Holland wrote:
>>> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>>>
>>> This series adds the Kconfig/defconfig plumbing and devicetrees for a
>>> range of Allwinner D1-based boards. Many features are already enabled,
>>> including USB, Ethernet, and WiFi.
>>>
>>> The SoC devicetree uses bindings from the following series which have
>>> not yet been merged:
>>> - SRAM controller:
>>>    https://lore.kernel.org/lkml/20220815041248.53268-1-samuel@sholland.org/
>>> - NVMEM cell bits property change:
>>>    https://lore.kernel.org/lkml/20220814173656.11856-1-samuel@sholland.org/
>>> - In-package LDO regulators:
>>>    https://lore.kernel.org/lkml/20220815043436.20170-1-samuel@sholland.org/
>>>
>>> All three of these are required to set the correct I/O domain voltages
>>> in the pin controller, which I would consider important to have in the
>>> initial version of the devicetree.
>>>
>>> The SoC devicetree does contain one small hack to avoid a dependency on
>>> the audio codec binding, since that is not ready yet: the codec node
>>> uses a bare "simple-mfd", "syscon" compatible.
>>
>>
>> I tried this series on top of both 6.0-rc1 & next, but I saw a shed
>> load of errors from dtbs_check. I'll take a look at the rest of the
>> series later on, but just FYI. This time I did at least read the
>> right cover letter and actually applied your dependent series..
>> /facepalm
>>
>> I have been trying to get riscv down to 0 warnings and would not be
>> in favour of accepting patches that go in the other direction.
>> (This patchset currently produces about 47 new warnings)

Only 4 unique ones :)

Thanks for checking this. I had done a couple of passes cleaning things up. The
remaining warnings are the ones I was unsure how to fix.

> FWIW this is what I see, LMK if I am missing something.
> allwinner/sun20i-d1-lichee-rv.dtb: i2c@2502000: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)

This one is new with dt-schema 2022.08.1 (I was previously on d1f3102e locally).
I'm not sure if it is a bug in the binding or in the dt-schema tool. The
warnings go away if I do:

--- a/Documentation/devicetree/bindings/i2c/marvell,mv64xxx-i2c.yaml
+++ b/Documentation/devicetree/bindings/i2c/marvell,mv64xxx-i2c.yaml
@@ -72,6 +72,7 @@ required:
   - interrupts

 allOf:
+  - $ref: /schemas/dma/dma.yaml#
   - $ref: /schemas/i2c/i2c-controller.yaml#
   - if:
       properties:

But I wouldn't expect this to be necessary, since dma.yaml has "select: true".
Compare the this with the UARTs. Neither serial/snps-dw-apb-uart.yaml nor
serial/serial.yaml references any DMA properties, yet there is no warning for those.

> allwinner/sun20i-d1-clockworkpi-v3.14.dtb: pmic@34: compatible: 'oneOf' conditional failed, one must be fixed:
> allwinner/sun20i-d1-devterm-v3.14.dtb: pmic@34: compatible: 'oneOf' conditional failed, one must be fixed:

The new compatible is in linux-next. I can add it to the cover letter for v2:
https://lore.kernel.org/linux-devicetree/20220810013430.27061-1-samuel@sholland.org/
https://git.kernel.org/lee/mfd/c/97ecda0f615e

> allwinner/sun20i-d1-lichee-rv.dtb: ethernet@4500000: Unevaluated properties are not allowed ('mdio', 'reset-names', 'resets' were unexpected)

This showed up with a dt-schema update in the last year or so. This may be a bug
in the binding? allwinner,sun8i-a83t-emac.yaml picks up these three properties
from snps,dwmac.yaml, but does not have them in its own "properties" block.
(resets and reset-names are even in "required"!)

> allwinner/sun20i-d1-lichee-rv-86-panel-720p.dtb: ethernet@4500000: Unevaluated properties are not allowed ('phy-supply' was unexpected)
> allwinner/sun20i-d1-dongshan-nezha-stu.dtb: ethernet@4500000: Unevaluated properties are not allowed ('phy-supply' was unexpected)

I think this one is just flat out missing from the binding. It is present in the
other two Allwinner Ethernet MAC bindings, but not this one.

Regards,
Samuel
Conor Dooley Aug. 16, 2022, 6:38 a.m. UTC | #4
On 16/08/2022 03:42, Samuel Holland wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> On 8/15/22 12:12 PM, Conor.Dooley@microchip.com wrote:
>> On 15/08/2022 08:05, Conor Dooley wrote:
>>> Hey Samuel,
>>> Apologies for the last email, the first 5 patches in this series
>>> didn't correctly land in my inbox and I skimmed & replied to the
>>> wrong cover letter... I blame it being pre 8 AM ;)
>>>
>>> On 15/08/2022 06:08, Samuel Holland wrote:
>>>> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>>>>
>>>> This series adds the Kconfig/defconfig plumbing and devicetrees for a
>>>> range of Allwinner D1-based boards. Many features are already enabled,
>>>> including USB, Ethernet, and WiFi.
>>>>
>>>> The SoC devicetree uses bindings from the following series which have
>>>> not yet been merged:
>>>> - SRAM controller:
>>>>     https://lore.kernel.org/lkml/20220815041248.53268-1-samuel@sholland.org/
>>>> - NVMEM cell bits property change:
>>>>     https://lore.kernel.org/lkml/20220814173656.11856-1-samuel@sholland.org/
>>>> - In-package LDO regulators:
>>>>     https://lore.kernel.org/lkml/20220815043436.20170-1-samuel@sholland.org/
>>>>
>>>> All three of these are required to set the correct I/O domain voltages
>>>> in the pin controller, which I would consider important to have in the
>>>> initial version of the devicetree.
>>>>
>>>> The SoC devicetree does contain one small hack to avoid a dependency on
>>>> the audio codec binding, since that is not ready yet: the codec node
>>>> uses a bare "simple-mfd", "syscon" compatible.
>>>
>>>
>>> I tried this series on top of both 6.0-rc1 & next, but I saw a shed
>>> load of errors from dtbs_check. I'll take a look at the rest of the
>>> series later on, but just FYI. This time I did at least read the
>>> right cover letter and actually applied your dependent series..
>>> /facepalm
>>>
>>> I have been trying to get riscv down to 0 warnings and would not be
>>> in favour of accepting patches that go in the other direction.
>>> (This patchset currently produces about 47 new warnings)
> 
> Only 4 unique ones :)
> 
> Thanks for checking this. I had done a couple of passes cleaning things up. The
> remaining warnings are the ones I was unsure how to fix.
> 
>> FWIW this is what I see, LMK if I am missing something.
>> allwinner/sun20i-d1-lichee-rv.dtb: i2c@2502000: Unevaluated properties are not allowed ('dma-names', 'dmas' were unexpected)
> 
> This one is new with dt-schema 2022.08.1 (I was previously on d1f3102e locally).
> I'm not sure if it is a bug in the binding or in the dt-schema tool. The
> warnings go away if I do:

Yup, there were some changes to handling of unevaluatedProperties
between .07 & .08
> 
> --- a/Documentation/devicetree/bindings/i2c/marvell,mv64xxx-i2c.yaml
> +++ b/Documentation/devicetree/bindings/i2c/marvell,mv64xxx-i2c.yaml
> @@ -72,6 +72,7 @@ required:
>     - interrupts
> 
>   allOf:
> +  - $ref: /schemas/dma/dma.yaml#
>     - $ref: /schemas/i2c/i2c-controller.yaml#
>     - if:
>         properties:
> 
> But I wouldn't expect this to be necessary, since dma.yaml has "select: true".
> Compare the this with the UARTs. Neither serial/snps-dw-apb-uart.yaml nor
> serial/serial.yaml references any DMA properties, yet there is no warning for those.
> 
>> allwinner/sun20i-d1-clockworkpi-v3.14.dtb: pmic@34: compatible: 'oneOf' conditional failed, one must be fixed:
>> allwinner/sun20i-d1-devterm-v3.14.dtb: pmic@34: compatible: 'oneOf' conditional failed, one must be fixed:
> 
> The new compatible is in linux-next. I can add it to the cover letter for v2:
> https://lore.kernel.org/linux-devicetree/20220810013430.27061-1-samuel@sholland.org/
> https://git.kernel.org/lee/mfd/c/97ecda0f615e

Please do :)

> 
>> allwinner/sun20i-d1-lichee-rv.dtb: ethernet@4500000: Unevaluated properties are not allowed ('mdio', 'reset-names', 'resets' were unexpected)
> 
> This showed up with a dt-schema update in the last year or so. This may be a bug
> in the binding? allwinner,sun8i-a83t-emac.yaml picks up these three properties
> from snps,dwmac.yaml, but does not have them in its own "properties" block.
> (resets and reset-names are even in "required"!)
> 
>> allwinner/sun20i-d1-lichee-rv-86-panel-720p.dtb: ethernet@4500000: Unevaluated properties are not allowed ('phy-supply' was unexpected)
>> allwinner/sun20i-d1-dongshan-nezha-stu.dtb: ethernet@4500000: Unevaluated properties are not allowed ('phy-supply' was unexpected)
> 
> I think this one is just flat out missing from the binding. It is present in the
> other two Allwinner Ethernet MAC bindings, but not this one.

Cool. Maybe Rob Or Krzysztof can shed some light on the others.

Thanks,
Conor.
Palmer Dabbelt Sept. 1, 2022, 6:10 p.m. UTC | #5
On Sun, 14 Aug 2022 22:08:03 PDT (-0700), samuel@sholland.org wrote:
> This series adds the Kconfig/defconfig plumbing and devicetrees for a
> range of Allwinner D1-based boards. Many features are already enabled,
> including USB, Ethernet, and WiFi.
>
> The SoC devicetree uses bindings from the following series which have
> not yet been merged:
> - SRAM controller:
>   https://lore.kernel.org/lkml/20220815041248.53268-1-samuel@sholland.org/
> - NVMEM cell bits property change:
>   https://lore.kernel.org/lkml/20220814173656.11856-1-samuel@sholland.org/
> - In-package LDO regulators:
>   https://lore.kernel.org/lkml/20220815043436.20170-1-samuel@sholland.org/
>
> All three of these are required to set the correct I/O domain voltages
> in the pin controller, which I would consider important to have in the
> initial version of the devicetree.
>
> The SoC devicetree does contain one small hack to avoid a dependency on
> the audio codec binding, since that is not ready yet: the codec node
> uses a bare "simple-mfd", "syscon" compatible.
>
>
> Samuel Holland (12):
>   MAINTAINERS: Match the sun20i family of Allwinner SoCs
>   dt-bindings: riscv: Add T-HEAD C906 and C910 compatibles
>   dt-bindings: vendor-prefixes: Add Allwinner D1 board vendors
>   dt-bindings: riscv: Add Allwinner D1 board compatibles
>   riscv: Add the Allwinner SoC family Kconfig option
>   riscv: dts: allwinner: Add the D1 SoC base devicetree
>   riscv: dts: allwinner: Add Allwinner D1 Nezha devicetree
>   riscv: dts: allwinner: Add Sipeed Lichee RV devicetrees
>   riscv: dts: allwinner: Add MangoPi MQ Pro devicetree
>   riscv: dts: allwinner: Add Dongshan Nezha STU devicetree
>   riscv: dts: allwinner: Add ClockworkPi and DevTerm devicetrees
>   riscv: defconfig: Enable the Allwinner D1 platform and drivers
>
>  .../devicetree/bindings/riscv/cpus.yaml       |   2 +
>  .../devicetree/bindings/riscv/sunxi.yaml      |  64 ++
>  .../devicetree/bindings/vendor-prefixes.yaml  |   4 +
>  MAINTAINERS                                   |   2 +-
>  arch/riscv/Kconfig.socs                       |   9 +
>  arch/riscv/boot/dts/Makefile                  |   1 +
>  arch/riscv/boot/dts/allwinner/Makefile        |  10 +
>  .../allwinner/sun20i-d1-clockworkpi-v3.14.dts | 242 +++++
>  .../sun20i-d1-common-regulators.dtsi          |  51 +
>  .../dts/allwinner/sun20i-d1-devterm-v3.14.dts |  37 +
>  .../sun20i-d1-dongshan-nezha-stu.dts          | 114 +++
>  .../sun20i-d1-lichee-rv-86-panel-480p.dts     |  29 +
>  .../sun20i-d1-lichee-rv-86-panel-720p.dts     |  10 +
>  .../sun20i-d1-lichee-rv-86-panel.dtsi         |  92 ++
>  .../allwinner/sun20i-d1-lichee-rv-dock.dts    |  74 ++
>  .../dts/allwinner/sun20i-d1-lichee-rv.dts     |  84 ++
>  .../allwinner/sun20i-d1-mangopi-mq-pro.dts    | 128 +++
>  .../boot/dts/allwinner/sun20i-d1-nezha.dts    | 171 ++++
>  arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi  | 900 ++++++++++++++++++
>  arch/riscv/configs/defconfig                  |  23 +-
>  20 files changed, 2045 insertions(+), 2 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/riscv/sunxi.yaml
>  create mode 100644 arch/riscv/boot/dts/allwinner/Makefile
>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-clockworkpi-v3.14.dts
>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-common-regulators.dtsi
>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-devterm-v3.14.dts
>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-dongshan-nezha-stu.dts
>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-480p.dts
>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-720p.dts
>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel.dtsi
>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-dock.dts
>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv.dts
>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-mangopi-mq-pro.dts
>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-nezha.dts
>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi

I'm assuming these are aimed at the RISC-V tree?  I'm generally OK with 
that, though the DT folks have pointed out a handful of issues that look 
pretty reasonable to me.

I can't find a v2, not sure if I missed it.  No rush on my end, just 
want to make sure I'm not dropping the ball on anything.

Thanks!
Conor Dooley Sept. 2, 2022, 5:42 a.m. UTC | #6
On 01/09/2022 19:10, Palmer Dabbelt wrote:
> On Sun, 14 Aug 2022 22:08:03 PDT (-0700), samuel@sholland.org wrote:
>> This series adds the Kconfig/defconfig plumbing and devicetrees for a
>> range of Allwinner D1-based boards. Many features are already enabled,
>> including USB, Ethernet, and WiFi.
>>

> I can't find a v2, not sure if I missed it.  No rush on my end, just
> want to make sure I'm not dropping the ball on anything.

There's been no v2 yet.

Thanks,
Conor.
Jernej Škrabec Sept. 6, 2022, 8:29 p.m. UTC | #7
Dne četrtek, 01. september 2022 ob 20:10:13 CEST je Palmer Dabbelt napisal(a):
> On Sun, 14 Aug 2022 22:08:03 PDT (-0700), samuel@sholland.org wrote:
> > This series adds the Kconfig/defconfig plumbing and devicetrees for a
> > range of Allwinner D1-based boards. Many features are already enabled,
> > including USB, Ethernet, and WiFi.
> > 
> > The SoC devicetree uses bindings from the following series which have
> > not yet been merged:
> > 
> > - SRAM controller:
> >   https://lore.kernel.org/lkml/20220815041248.53268-1-samuel@sholland.org/
> > 
> > - NVMEM cell bits property change:
> >   https://lore.kernel.org/lkml/20220814173656.11856-1-samuel@sholland.org/
> > 
> > - In-package LDO regulators:
> >   https://lore.kernel.org/lkml/20220815043436.20170-1-samuel@sholland.org/
> > 
> > All three of these are required to set the correct I/O domain voltages
> > in the pin controller, which I would consider important to have in the
> > initial version of the devicetree.
> > 
> > The SoC devicetree does contain one small hack to avoid a dependency on
> > the audio codec binding, since that is not ready yet: the codec node
> > uses a bare "simple-mfd", "syscon" compatible.
> > 
> > Samuel Holland (12):
> >   MAINTAINERS: Match the sun20i family of Allwinner SoCs
> >   dt-bindings: riscv: Add T-HEAD C906 and C910 compatibles
> >   dt-bindings: vendor-prefixes: Add Allwinner D1 board vendors
> >   dt-bindings: riscv: Add Allwinner D1 board compatibles
> >   riscv: Add the Allwinner SoC family Kconfig option
> >   riscv: dts: allwinner: Add the D1 SoC base devicetree
> >   riscv: dts: allwinner: Add Allwinner D1 Nezha devicetree
> >   riscv: dts: allwinner: Add Sipeed Lichee RV devicetrees
> >   riscv: dts: allwinner: Add MangoPi MQ Pro devicetree
> >   riscv: dts: allwinner: Add Dongshan Nezha STU devicetree
> >   riscv: dts: allwinner: Add ClockworkPi and DevTerm devicetrees
> >   riscv: defconfig: Enable the Allwinner D1 platform and drivers
> >  
> >  .../devicetree/bindings/riscv/cpus.yaml       |   2 +
> >  .../devicetree/bindings/riscv/sunxi.yaml      |  64 ++
> >  .../devicetree/bindings/vendor-prefixes.yaml  |   4 +
> >  MAINTAINERS                                   |   2 +-
> >  arch/riscv/Kconfig.socs                       |   9 +
> >  arch/riscv/boot/dts/Makefile                  |   1 +
> >  arch/riscv/boot/dts/allwinner/Makefile        |  10 +
> >  .../allwinner/sun20i-d1-clockworkpi-v3.14.dts | 242 +++++
> >  .../sun20i-d1-common-regulators.dtsi          |  51 +
> >  .../dts/allwinner/sun20i-d1-devterm-v3.14.dts |  37 +
> >  .../sun20i-d1-dongshan-nezha-stu.dts          | 114 +++
> >  .../sun20i-d1-lichee-rv-86-panel-480p.dts     |  29 +
> >  .../sun20i-d1-lichee-rv-86-panel-720p.dts     |  10 +
> >  .../sun20i-d1-lichee-rv-86-panel.dtsi         |  92 ++
> >  .../allwinner/sun20i-d1-lichee-rv-dock.dts    |  74 ++
> >  .../dts/allwinner/sun20i-d1-lichee-rv.dts     |  84 ++
> >  .../allwinner/sun20i-d1-mangopi-mq-pro.dts    | 128 +++
> >  .../boot/dts/allwinner/sun20i-d1-nezha.dts    | 171 ++++
> >  arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi  | 900 ++++++++++++++++++
> >  arch/riscv/configs/defconfig                  |  23 +-
> >  20 files changed, 2045 insertions(+), 2 deletions(-)
> >  create mode 100644 Documentation/devicetree/bindings/riscv/sunxi.yaml
> >  create mode 100644 arch/riscv/boot/dts/allwinner/Makefile
> >  create mode 100644
> >  arch/riscv/boot/dts/allwinner/sun20i-d1-clockworkpi-v3.14.dts create
> >  mode 100644
> >  arch/riscv/boot/dts/allwinner/sun20i-d1-common-regulators.dtsi create
> >  mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-devterm-v3.14.dts
> >  create mode 100644
> >  arch/riscv/boot/dts/allwinner/sun20i-d1-dongshan-nezha-stu.dts create
> >  mode 100644
> >  arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-480p.dts
> >  create mode 100644
> >  arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-720p.dts
> >  create mode 100644
> >  arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel.dtsi create
> >  mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-dock.dts
> >  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv.dts
> >  create mode 100644
> >  arch/riscv/boot/dts/allwinner/sun20i-d1-mangopi-mq-pro.dts create mode
> >  100644 arch/riscv/boot/dts/allwinner/sun20i-d1-nezha.dts create mode
> >  100644 arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi
> 
> I'm assuming these are aimed at the RISC-V tree?  I'm generally OK with
> that, though the DT folks have pointed out a handful of issues that look
> pretty reasonable to me.

DT changes for Allwinner ARM SoCs go trough sunxi tree. Should this be handled 
differently for RISC-V?

Best regards,
Jernej

> 
> I can't find a v2, not sure if I missed it.  No rush on my end, just
> want to make sure I'm not dropping the ball on anything.
> 
> Thanks!
Conor Dooley Sept. 7, 2022, 8:43 p.m. UTC | #8
On 06/09/2022 21:29, Jernej Škrabec wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> Dne četrtek, 01. september 2022 ob 20:10:13 CEST je Palmer Dabbelt napisal(a):
>> On Sun, 14 Aug 2022 22:08:03 PDT (-0700), samuel@sholland.org wrote:
>>> This series adds the Kconfig/defconfig plumbing and devicetrees for a
>>> range of Allwinner D1-based boards. Many features are already enabled,
>>> including USB, Ethernet, and WiFi.
>>>
>>> The SoC devicetree uses bindings from the following series which have
>>> not yet been merged:
>>>
>>> - SRAM controller:
>>>   https://lore.kernel.org/lkml/20220815041248.53268-1-samuel@sholland.org/
>>>
>>> - NVMEM cell bits property change:
>>>   https://lore.kernel.org/lkml/20220814173656.11856-1-samuel@sholland.org/
>>>
>>> - In-package LDO regulators:
>>>   https://lore.kernel.org/lkml/20220815043436.20170-1-samuel@sholland.org/
>>>
>>> All three of these are required to set the correct I/O domain voltages
>>> in the pin controller, which I would consider important to have in the
>>> initial version of the devicetree.
>>>
>>> The SoC devicetree does contain one small hack to avoid a dependency on
>>> the audio codec binding, since that is not ready yet: the codec node
>>> uses a bare "simple-mfd", "syscon" compatible.
>>>
>>> Samuel Holland (12):
>>>   MAINTAINERS: Match the sun20i family of Allwinner SoCs
>>>   dt-bindings: riscv: Add T-HEAD C906 and C910 compatibles
>>>   dt-bindings: vendor-prefixes: Add Allwinner D1 board vendors
>>>   dt-bindings: riscv: Add Allwinner D1 board compatibles
>>>   riscv: Add the Allwinner SoC family Kconfig option
>>>   riscv: dts: allwinner: Add the D1 SoC base devicetree
>>>   riscv: dts: allwinner: Add Allwinner D1 Nezha devicetree
>>>   riscv: dts: allwinner: Add Sipeed Lichee RV devicetrees
>>>   riscv: dts: allwinner: Add MangoPi MQ Pro devicetree
>>>   riscv: dts: allwinner: Add Dongshan Nezha STU devicetree
>>>   riscv: dts: allwinner: Add ClockworkPi and DevTerm devicetrees
>>>   riscv: defconfig: Enable the Allwinner D1 platform and drivers
>>>
>>>  .../devicetree/bindings/riscv/cpus.yaml       |   2 +
>>>  .../devicetree/bindings/riscv/sunxi.yaml      |  64 ++
>>>  .../devicetree/bindings/vendor-prefixes.yaml  |   4 +
>>>  MAINTAINERS                                   |   2 +-
>>>  arch/riscv/Kconfig.socs                       |   9 +
>>>  arch/riscv/boot/dts/Makefile                  |   1 +
>>>  arch/riscv/boot/dts/allwinner/Makefile        |  10 +
>>>  .../allwinner/sun20i-d1-clockworkpi-v3.14.dts | 242 +++++
>>>  .../sun20i-d1-common-regulators.dtsi          |  51 +
>>>  .../dts/allwinner/sun20i-d1-devterm-v3.14.dts |  37 +
>>>  .../sun20i-d1-dongshan-nezha-stu.dts          | 114 +++
>>>  .../sun20i-d1-lichee-rv-86-panel-480p.dts     |  29 +
>>>  .../sun20i-d1-lichee-rv-86-panel-720p.dts     |  10 +
>>>  .../sun20i-d1-lichee-rv-86-panel.dtsi         |  92 ++
>>>  .../allwinner/sun20i-d1-lichee-rv-dock.dts    |  74 ++
>>>  .../dts/allwinner/sun20i-d1-lichee-rv.dts     |  84 ++
>>>  .../allwinner/sun20i-d1-mangopi-mq-pro.dts    | 128 +++
>>>  .../boot/dts/allwinner/sun20i-d1-nezha.dts    | 171 ++++
>>>  arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi  | 900 ++++++++++++++++++
>>>  arch/riscv/configs/defconfig                  |  23 +-
>>>  20 files changed, 2045 insertions(+), 2 deletions(-)
>>>  create mode 100644 Documentation/devicetree/bindings/riscv/sunxi.yaml
>>>  create mode 100644 arch/riscv/boot/dts/allwinner/Makefile
>>>  create mode 100644
>>>  arch/riscv/boot/dts/allwinner/sun20i-d1-clockworkpi-v3.14.dts create
>>>  mode 100644
>>>  arch/riscv/boot/dts/allwinner/sun20i-d1-common-regulators.dtsi create
>>>  mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-devterm-v3.14.dts
>>>  create mode 100644
>>>  arch/riscv/boot/dts/allwinner/sun20i-d1-dongshan-nezha-stu.dts create
>>>  mode 100644
>>>  arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-480p.dts
>>>  create mode 100644
>>>  arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-720p.dts
>>>  create mode 100644
>>>  arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel.dtsi create
>>>  mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-dock.dts
>>>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv.dts
>>>  create mode 100644
>>>  arch/riscv/boot/dts/allwinner/sun20i-d1-mangopi-mq-pro.dts create mode
>>>  100644 arch/riscv/boot/dts/allwinner/sun20i-d1-nezha.dts create mode
>>>  100644 arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi
>>
>> I'm assuming these are aimed at the RISC-V tree?  I'm generally OK with
>> that, though the DT folks have pointed out a handful of issues that look
>> pretty reasonable to me.
> 
> DT changes for Allwinner ARM SoCs go trough sunxi tree. Should this be handled
> differently for RISC-V?

Microchip RISC-V DT go via a Microchip tree to Palmer. The other stuff gets
picked directly by him as it has no clear "owner". I think it would be nice
to be consistent for the new {renesas,sunxi} stuff and send those via vendor
trees to Palmer too. Just my 2 cents...

Conor.
Geert Uytterhoeven Sept. 8, 2022, 7 a.m. UTC | #9
Hi Conor,

CC soc people

On Wed, Sep 7, 2022 at 10:43 PM <Conor.Dooley@microchip.com> wrote:
> On 06/09/2022 21:29, Jernej Škrabec wrote:
> > Dne četrtek, 01. september 2022 ob 20:10:13 CEST je Palmer Dabbelt napisal(a):
> >> On Sun, 14 Aug 2022 22:08:03 PDT (-0700), samuel@sholland.org wrote:
> >>>  arch/riscv/boot/dts/allwinner/sun20i-d1-clockworkpi-v3.14.dts create
> >>>  mode 100644
> >>>  arch/riscv/boot/dts/allwinner/sun20i-d1-common-regulators.dtsi create
> >>>  mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-devterm-v3.14.dts
> >>>  create mode 100644
> >>>  arch/riscv/boot/dts/allwinner/sun20i-d1-dongshan-nezha-stu.dts create
> >>>  mode 100644
> >>>  arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-480p.dts
> >>>  create mode 100644
> >>>  arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-720p.dts
> >>>  create mode 100644
> >>>  arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel.dtsi create
> >>>  mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-dock.dts
> >>>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv.dts
> >>>  create mode 100644
> >>>  arch/riscv/boot/dts/allwinner/sun20i-d1-mangopi-mq-pro.dts create mode
> >>>  100644 arch/riscv/boot/dts/allwinner/sun20i-d1-nezha.dts create mode
> >>>  100644 arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi
> >>
> >> I'm assuming these are aimed at the RISC-V tree?  I'm generally OK with
> >> that, though the DT folks have pointed out a handful of issues that look
> >> pretty reasonable to me.
> >
> > DT changes for Allwinner ARM SoCs go trough sunxi tree. Should this be handled
> > differently for RISC-V?
>
> Microchip RISC-V DT go via a Microchip tree to Palmer. The other stuff gets
> picked directly by him as it has no clear "owner". I think it would be nice
> to be consistent for the new {renesas,sunxi} stuff and send those via vendor
> trees to Palmer too. Just my 2 cents...

Wasn't the intention behind the rename s/arm-soc/soc/ to start
accepting PRs for non-arm DT, too?
Especially if we start having dependencies due to riscv DTS files
including arm64 DTS snippets through scripts/dtc/include-prefixes/arm64/.

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
Arnd Bergmann Sept. 8, 2022, 9:04 a.m. UTC | #10
On Thu, Sep 8, 2022, at 9:00 AM, Geert Uytterhoeven wrote:
> On Wed, Sep 7, 2022 at 10:43 PM <Conor.Dooley@microchip.com> wrote:
>> On 06/09/2022 21:29, Jernej Škrabec wrote:
>> > Dne četrtek, 01. september 2022 ob 20:10:13 CEST je Palmer Dabbelt napisal(a):
>> >> On Sun, 14 Aug 2022 22:08:03 PDT (-0700), samuel@sholland.org wrote:
>> >>>  arch/riscv/boot/dts/allwinner/sun20i-d1-clockworkpi-v3.14.dts create
>> >>>  mode 100644
>> >>>  arch/riscv/boot/dts/allwinner/sun20i-d1-common-regulators.dtsi create
>> >>>  mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-devterm-v3.14.dts
>> >>>  create mode 100644
>> >>>  arch/riscv/boot/dts/allwinner/sun20i-d1-dongshan-nezha-stu.dts create
>> >>>  mode 100644
>> >>>  arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-480p.dts
>> >>>  create mode 100644
>> >>>  arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel-720p.dts
>> >>>  create mode 100644
>> >>>  arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-86-panel.dtsi create
>> >>>  mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv-dock.dts
>> >>>  create mode 100644 arch/riscv/boot/dts/allwinner/sun20i-d1-lichee-rv.dts
>> >>>  create mode 100644
>> >>>  arch/riscv/boot/dts/allwinner/sun20i-d1-mangopi-mq-pro.dts create mode
>> >>>  100644 arch/riscv/boot/dts/allwinner/sun20i-d1-nezha.dts create mode
>> >>>  100644 arch/riscv/boot/dts/allwinner/sun20i-d1.dtsi
>> >>
>> >> I'm assuming these are aimed at the RISC-V tree?  I'm generally OK with
>> >> that, though the DT folks have pointed out a handful of issues that look
>> >> pretty reasonable to me.
>> >
>> > DT changes for Allwinner ARM SoCs go trough sunxi tree. Should this be handled
>> > differently for RISC-V?
>>
>> Microchip RISC-V DT go via a Microchip tree to Palmer. The other stuff gets
>> picked directly by him as it has no clear "owner". I think it would be nice
>> to be consistent for the new {renesas,sunxi} stuff and send those via vendor
>> trees to Palmer too. Just my 2 cents...
>
> Wasn't the intention behind the rename s/arm-soc/soc/ to start
> accepting PRs for non-arm DT, too?
> Especially if we start having dependencies due to riscv DTS files
> including arm64 DTS snippets through scripts/dtc/include-prefixes/arm64/.

Yes, absolutely. My impression was that most architecture
maintainers prefer to handle the SoC support themselves, and
I would not want to step on anyone's toes with this, but I'm
definitely happy to take pull requests for dts files etc on
any architecture if that helps.

    Arnd