Re: [PATCH v2 - dt-bindings: maxim-ds1302: Convert to dt schema v2] dt-bindings: maxim-ds1302: Convert to dt schema

From: Krzysztof Kozlowski

Date: Wed Sep 09 2026 - 05:39:59 EST


On Tue, Sep 08, 2026 at 12:01:37PM -0700, Sudheendra Sampath wrote:
> Convert Maxim DS1302 real-time clock binding to DT schema.
> Changes based on code review comments.
>
> Signed-off-by: Sudheendra Sampath <giveback4fun@xxxxxxxxx>
> ---

Your subject PATCH prefix is odd. Please use git format-patch -v2 or b4.


> .../devicetree/bindings/rtc/maxim-ds1302.txt | 46 -----------------
> .../devicetree/bindings/rtc/maxim-ds1302.yaml | 50 +++++++++++++++++++
> 2 files changed, 50 insertions(+), 46 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/rtc/maxim-ds1302.txt
> create mode 100644 Documentation/devicetree/bindings/rtc/maxim-ds1302.yaml
>
> diff --git a/Documentation/devicetree/bindings/rtc/maxim-ds1302.txt b/Documentation/devicetree/bindings/rtc/maxim-ds1302.txt
> deleted file mode 100644
> index ba470c56cdec..000000000000
> --- a/Documentation/devicetree/bindings/rtc/maxim-ds1302.txt
> +++ /dev/null
> @@ -1,46 +0,0 @@
> -* Maxim/Dallas Semiconductor DS-1302 RTC
> -
> -Simple device which could be used to store date/time between reboots.
> -
> -The device uses the standard MicroWire half-duplex transfer timing.
> -Master output is set on low clock and sensed by the RTC on the rising
> -edge. Master input is set by the RTC on the trailing edge and is sensed
> -by the master on low clock.
> -
> -Required properties:
> -
> -- compatible : Should be "maxim,ds1302"
> -
> -Required SPI properties:
> -
> -- reg : Should be address of the device chip select within
> - the controller.
> -
> -- spi-max-frequency : DS-1302 has 500 kHz if powered at 2.2V,
> - and 2MHz if powered at 5V.
> -
> -- spi-3wire : The device has a shared signal IN/OUT line.
> -
> -- spi-lsb-first : DS-1302 requires least significant bit first
> - transfers.
> -
> -- spi-cs-high: DS-1302 has active high chip select line. This is
> - required unless inverted in hardware.
> -
> -Example:
> -
> -spi@901c {
> - #address-cells = <1>;
> - #size-cells = <0>;
> - compatible = "icpdas,lp8841-spi-rtc";
> - reg = <0x901c 0x1>;
> -
> - rtc@0 {
> - compatible = "maxim,ds1302";
> - reg = <0>;
> - spi-max-frequency = <500000>;
> - spi-3wire;
> - spi-lsb-first;
> - spi-cs-high;
> - };
> -};
> diff --git a/Documentation/devicetree/bindings/rtc/maxim-ds1302.yaml b/Documentation/devicetree/bindings/rtc/maxim-ds1302.yaml
> new file mode 100644
> index 000000000000..54a2fcf7f8e7
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/rtc/maxim-ds1302.yaml

Filename should match compatible.

> @@ -0,0 +1,50 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/rtc/maxim-ds1302.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Maxim/Dallas Semiconductor DS-1302 RTC
> +
> +maintainers:
> + - Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx>
> + - Sergey Yanovich <ynvich@xxxxxxxxx>
> +
> +description: |
> + Simple device which could be used to store date/time between reboots.
> +
> + The device uses the standard MicroWire half-duplex transfer timing.
> + Master output is set on low clock and sensed by the RTC on the rising
> + edge. Master input is set by the RTC on the trailing edge and is sensed
> + by the master on low clock.
> +
> +properties:
> + compatible:
> + items:

No need for items.

> + - const: maxim,ds1302
> +
> + reg:
> + maxItems: 1
> +
> + spi-max-frequency:
> + $ref: /schemas/types.yaml#/definitions/uint32

Why do you need the type? Please look at other bindings.

> + description: DS-1302 has 500 kHz if powered at 2.2V, and 2MHz if powered at 5V
> + enum:
> + - 500000
> + - 2000000
> +
> + spi-3wire: true
> +
> + spi-lsb-first: true
> +
> + spi-cs-high: true
> +
> +required:
> + - compatible
> + - reg
> + - spi-max-frequency
> + - spi-3wire
> + - spi-lsb-first
> + - spi-cs-high
> +
> +additionalProperties: false

Missing example. Please follow standard rules, expressed in writing
bindings and writing schema docs, DTS101 slides or just look how other
people do it. Otherwise explain why doing this differently?

Best regards,
Krzysztof