mbox series

[v2,0/8] arm64: dts: Initial RTD1293/RTD1296 and DS418j/DS418 support

Message ID 20191020040817.16882-1-afaerber@suse.de
Headers show
Series arm64: dts: Initial RTD1293/RTD1296 and DS418j/DS418 support | expand

Message

Andreas Färber Oct. 20, 2019, 4:08 a.m. UTC
Hello,

This series adds Device Trees for the Realtek RTD1293 and RTD1296 SoCs and
Synology DiskStation DS418j and DS418 NAS devices.

v2 was updated to YAML schemas.

More details at:
https://en.opensuse.org/HCL:DS418j
https://en.opensuse.org/HCL:DS418

Latest experimental patches at:
https://github.com/afaerber/linux/commits/rtd1295-next

Have a lot of fun!

Cheers,
Andreas

v1 -> v2:
* Rebased onto Rob's SoC YAML schema conversion
* Moved SPDX-License-Identifier to top
* YAML schema conversions of watchdog and rtc
* Dropped "arm,armv8" (Rob)
* Adopted BSD-2-Clause instead of MIT dual-license (Rob)
* Dropped accidental enable-method and cpu-release-addr
* Fix DS418 to actually use rtd1296.dtsi

Cc: info@synology.com
Cc: devicetree@vger.kernel.org
Cc: Rob Herring <robh+dt@kernel.org>

Andreas Färber (8):
  dt-bindings: watchdog: realtek: Convert RTD119x to schema
  dt-bindings: rtc: realtek: Convert RTD119x to schema
  dt-bindings: arm: realtek: Tidy up conversion to json-schema
  dt-bindings: arm: realtek: Document RTD1293 and Synology DS418j
  arm64: dts: realtek: Change dual-license from MIT to BSD
  arm64: dts: realtek: Add RTD1293 and Synology DS418j
  dt-bindings: arm: realtek: Document RTD1296 and Synology DS418
  arm64: dts: realtek: Add RTD1296 and Synology DS418

 Documentation/devicetree/bindings/arm/realtek.yaml | 27 ++++++---
 .../devicetree/bindings/rtc/realtek,rtd119x.txt    | 16 ------
 .../devicetree/bindings/rtc/realtek,rtd119x.yaml   | 38 +++++++++++++
 .../bindings/watchdog/realtek,rtd119x.txt          | 17 ------
 .../bindings/watchdog/realtek,rtd119x.yaml         | 38 +++++++++++++
 arch/arm64/boot/dts/realtek/Makefile               |  5 ++
 arch/arm64/boot/dts/realtek/rtd1293-ds418j.dts     | 30 ++++++++++
 arch/arm64/boot/dts/realtek/rtd1293.dtsi           | 51 +++++++++++++++++
 arch/arm64/boot/dts/realtek/rtd1295-zidoo-x9s.dts  |  3 +-
 arch/arm64/boot/dts/realtek/rtd1295.dtsi           |  3 +-
 arch/arm64/boot/dts/realtek/rtd1296-ds418.dts      | 30 ++++++++++
 arch/arm64/boot/dts/realtek/rtd1296.dtsi           | 65 ++++++++++++++++++++++
 arch/arm64/boot/dts/realtek/rtd129x.dtsi           |  3 +-
 13 files changed, 280 insertions(+), 46 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/rtc/realtek,rtd119x.txt
 create mode 100644 Documentation/devicetree/bindings/rtc/realtek,rtd119x.yaml
 delete mode 100644 Documentation/devicetree/bindings/watchdog/realtek,rtd119x.txt
 create mode 100644 Documentation/devicetree/bindings/watchdog/realtek,rtd119x.yaml
 create mode 100644 arch/arm64/boot/dts/realtek/rtd1293-ds418j.dts
 create mode 100644 arch/arm64/boot/dts/realtek/rtd1293.dtsi
 create mode 100644 arch/arm64/boot/dts/realtek/rtd1296-ds418.dts
 create mode 100644 arch/arm64/boot/dts/realtek/rtd1296.dtsi

-- 
2.16.4

Comments

Rob Herring (Arm) Oct. 25, 2019, 9:16 p.m. UTC | #1
On Sun, Oct 20, 2019 at 06:08:10AM +0200, Andreas Färber wrote:
> Convert the Realtek watchdog binding to a YAML schema.

> 

> Signed-off-by: Andreas Färber <afaerber@suse.de>

> ---

>  v2: New

>  

>  .../bindings/watchdog/realtek,rtd119x.txt          | 17 ----------

>  .../bindings/watchdog/realtek,rtd119x.yaml         | 38 ++++++++++++++++++++++

>  2 files changed, 38 insertions(+), 17 deletions(-)

>  delete mode 100644 Documentation/devicetree/bindings/watchdog/realtek,rtd119x.txt

>  create mode 100644 Documentation/devicetree/bindings/watchdog/realtek,rtd119x.yaml

> 

> diff --git a/Documentation/devicetree/bindings/watchdog/realtek,rtd119x.txt b/Documentation/devicetree/bindings/watchdog/realtek,rtd119x.txt

> deleted file mode 100644

> index 05653054bd5b..000000000000

> --- a/Documentation/devicetree/bindings/watchdog/realtek,rtd119x.txt

> +++ /dev/null

> @@ -1,17 +0,0 @@

> -Realtek RTD1295 Watchdog

> -========================

> -

> -Required properties:

> -

> -- compatible :  Should be "realtek,rtd1295-watchdog"

> -- reg        :  Specifies the physical base address and size of registers

> -- clocks     :  Specifies one clock input

> -

> -

> -Example:

> -

> -	watchdog@98007680 {

> -		compatible = "realtek,rtd1295-watchdog";

> -		reg = <0x98007680 0x100>;

> -		clocks = <&osc27M>;

> -	};

> diff --git a/Documentation/devicetree/bindings/watchdog/realtek,rtd119x.yaml b/Documentation/devicetree/bindings/watchdog/realtek,rtd119x.yaml

> new file mode 100644

> index 000000000000..5d92cfdfd046

> --- /dev/null

> +++ b/Documentation/devicetree/bindings/watchdog/realtek,rtd119x.yaml

> @@ -0,0 +1,38 @@

> +# SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-2-Clause)

> +%YAML 1.2

> +---

> +$id: "http://devicetree.org/schemas/watchdog/realtek,rtd119x.yaml#"

> +$schema: "http://devicetree.org/meta-schemas/core.yaml#"

> +

> +title: Realtek RTD1295 Watchdog

> +

> +maintainers:

> +  - Andreas Färber <afaerber@suse.de>

> +

> +allOf:

> +  - $ref: watchdog.yaml#

> +

> +properties:

> +  compatible:

> +    oneOf:

> +      - const: realtek,rtd1295-watchdog


You can drop the 'oneOf' here unless you're planning to add another 
entry with 2 compatible strings.

With that,

Reviewed-by: Rob Herring <robh@kernel.org>


> +

> +  reg:

> +    maxItems: 1

> +

> +  clocks:

> +    maxItems: 1

> +

> +required:

> +  - compatible

> +  - reg

> +  - clocks

> +

> +examples:

> +  - |

> +	watchdog@98007680 {

> +		compatible = "realtek,rtd1295-watchdog";

> +		reg = <0x98007680 0x100>;

> +		clocks = <&osc27M>;

> +	};

> +...

> -- 

> 2.16.4

>
Rob Herring (Arm) Oct. 25, 2019, 9:21 p.m. UTC | #2
On Sun, 20 Oct 2019 06:08:12 +0200, =?UTF-8?q?Andreas=20F=C3=A4rber?= wrote:
> Restore the device names for compatible strings as comments.

> Prepare for adding more SoCs by inserting oneOf.

> 

> Fixes: 693af5f3eeaa ("dt-bindings: arm: Convert Realtek board/soc bindings to json-schema")

> Signed-off-by: Andreas Färber <afaerber@suse.de>

> ---

>  v2: New

>  

>  Documentation/devicetree/bindings/arm/realtek.yaml | 15 ++++++++-------

>  1 file changed, 8 insertions(+), 7 deletions(-)

> 


Reviewed-by: Rob Herring <robh@kernel.org>
Andreas Färber Oct. 27, 2019, 2:04 a.m. UTC | #3
Am 25.10.19 um 23:24 schrieb Andreas Färber:
> Am 25.10.19 um 23:16 schrieb Rob Herring:

>> On Sun, Oct 20, 2019 at 06:08:10AM +0200, Andreas Färber wrote:

>>> +properties:

>>> +  compatible:

>>> +    oneOf:

>>> +      - const: realtek,rtd1295-watchdog

>>

>> You can drop the 'oneOf' here unless you're planning to add another 

>> entry with 2 compatible strings.

> 

> It's a preparation for adding rtd1195-watchdog when needed, to make

> future diffs smaller. There's also RTD1395 and RTD1619 to be tested.

> 

>> With that,

>>

>> Reviewed-by: Rob Herring <robh@kernel.org>


Self-NAK.

The example doesn't pass dt_binding_check: It doesn't like the tabs
retained from the original binding. Replacing them with four spaces
makes it pass. Will post a v3.

As for the compatibles, currently in the rtd1195.dtsi patch I'm reusing
"realtek,rtd1295-watchdog", to avoid a dependency on the watchdog tree.

Long-term that's kind of ugly as it uses a later model number.
That leaves us with two alternatives:

a) "realtek,rtd1195-watchdog", "realtek,rtd1295-watchdog" - this
requires oneOf. Allows to distinguish between RTD1195 and RTD1295 while
remaining compatible with the current driver.

b) "realtek,rtd1195-watchdog" - requires the driver change now and
requires the binding to be merged before I can use it in the DT but
doesn't need oneOf here.

Guenter, any preference here?

Thanks,
Andreas

-- 
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Felix Imendörffer
HRB 36809 (AG Nürnberg)
Andreas Färber Oct. 29, 2019, 4:39 a.m. UTC | #4
Am 25.10.19 um 22:52 schrieb Rob Herring:
> On Sat, Oct 19, 2019 at 11:08 PM Andreas Färber <afaerber@suse.de> wrote:

>>

>> Move the SPDX-License-Identifier to the top line and update to SPDX 2.0.

>> While at it, switch from GPLv2+/MIT to GPLv2+/BSD2c before adding more.

>>

>> Suggested-by: Rob Herring <robh@kernel.org>

>> Cc: Rob Herring <robh@kernel.org>

>> Signed-off-by: Andreas Färber <afaerber@suse.de>

>> ---

>>  v2: New

>>

>>  arch/arm64/boot/dts/realtek/rtd1295-zidoo-x9s.dts | 3 +--

>>  arch/arm64/boot/dts/realtek/rtd1295.dtsi          | 3 +--

>>  arch/arm64/boot/dts/realtek/rtd129x.dtsi          | 3 +--

>>  3 files changed, 3 insertions(+), 6 deletions(-)

> 

> Acked-by: Rob Herring <robh@kernel.org>

> 

> It's really only schema files that I'm pushing towards BSD2C. Maybe in

> hindsight we should have done MIT as that's more common in the dts

> files.


After discussion with Rob about whether to drop this change I dropped
the misunderstood Suggested-by and applied this to linux-realtek.git
v5.5/dt64 anyway:

https://git.kernel.org/pub/scm/linux/kernel/git/afaerber/linux-realtek.git/log/?h=v5.5/dt64

I don't mind either license.

Thanks,
Andreas

-- 
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Felix Imendörffer
HRB 36809 (AG Nürnberg)
Andreas Färber Oct. 29, 2019, 4:40 a.m. UTC | #5
Am 20.10.19 um 06:08 schrieb Andreas Färber:
> Add Device Trees for RTD1293 SoC and Synology DiskStation DS418j NAS.

> 

> Cc: info@synology.com

> Signed-off-by: Andreas Färber <afaerber@suse.de>

> ---

>  v1 -> v2:

>  * Moved SPDX-License-Identifier to top

>  * Dropped "arm,armv8" (Rob)

>  * Changed from MIT to BSD-2-Clause (Rob)

>  * Dropped accidental enable-method and cpu-release-addr

>  

>  arch/arm64/boot/dts/realtek/Makefile           |  3 ++

>  arch/arm64/boot/dts/realtek/rtd1293-ds418j.dts | 30 +++++++++++++++

>  arch/arm64/boot/dts/realtek/rtd1293.dtsi       | 51 ++++++++++++++++++++++++++

>  3 files changed, 84 insertions(+)

>  create mode 100644 arch/arm64/boot/dts/realtek/rtd1293-ds418j.dts

>  create mode 100644 arch/arm64/boot/dts/realtek/rtd1293.dtsi


Applied to linux-realtek.git v5.5/dt64:

https://git.kernel.org/pub/scm/linux/kernel/git/afaerber/linux-realtek.git/log/?h=v5.5/dt64

Regards,
Andreas

-- 
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Felix Imendörffer
HRB 36809 (AG Nürnberg)
Andreas Färber Oct. 29, 2019, 4:41 a.m. UTC | #6
Am 20.10.19 um 06:08 schrieb Andreas Färber:
> Add Device Trees for RTD1296 SoC and Synology DiskStation DS418.

> 

> Cc: info@synology.com

> Signed-off-by: Andreas Färber <afaerber@suse.de>

> ---

>  v1 -> v2:

>  * Moved SPDX-License-Identifier to top

>  * Dropped "arm,armv8" (Rob)

>  * Changed from MIT to BSD-2-Clause (Rob)

>  * Dropped accidental enable-method and cpu-release-addr

>  * Fixed DS418 to use rtd1296.dtsi

>  

>  arch/arm64/boot/dts/realtek/Makefile          |  2 +

>  arch/arm64/boot/dts/realtek/rtd1296-ds418.dts | 30 +++++++++++++

>  arch/arm64/boot/dts/realtek/rtd1296.dtsi      | 65 +++++++++++++++++++++++++++

>  3 files changed, 97 insertions(+)

>  create mode 100644 arch/arm64/boot/dts/realtek/rtd1296-ds418.dts

>  create mode 100644 arch/arm64/boot/dts/realtek/rtd1296.dtsi


Applied to linux-realtek.git v5.5/dt64:

https://git.kernel.org/pub/scm/linux/kernel/git/afaerber/linux-realtek.git/log/?h=v5.5/dt64

Regards,
Andreas

-- 
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Felix Imendörffer
HRB 36809 (AG Nürnberg)