Commit b2149f94 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull RTC updates from Alexandre Belloni:
 "More conversions of DT bindings to yaml. There is one new driver, for
  the DFRobot SD2405AL and support for important features of the stm32
  RTC. Summary:

  New driver:
   - DFRobot SD2405AL

  Drivers:
   - stm32: add alarm A out and LSCO support
   - sun6i: disable automatic clock input switching
   - m48t59: set range"

* tag 'rtc-6.12' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux:
  rtc: rc5t619: use proper module tables
  rtc: m48t59: set range
  dt-bindings: rtc: microcrystal,rv3028: add #clock-cells property
  rtc: m48t59: Remove division condition with direct comparison
  rtc: at91sam9: fix OF node leak in probe() error path
  rtc: sun6i: disable automatic clock input switching
  dt-bindings: rtc: Drop non-trivial duplicate compatibles
  dt-bindings: vendor-prefixes: Add DFRobot.
  dt-bindings: rtc: Add support for SD2405AL.
  rtc: Add driver for SD2405AL
  rtc: s35390a: Drop vendorless compatible string from match table
  rtc: twl: convert comma to semicolon
  dt-bindings: rtc: sprd,sc2731-rtc: convert to YAML
  rtc: stm32: add alarm A out feature
  rtc: stm32: add Low Speed Clock Output (LSCO) support
  rtc: stm32: add pinctrl and pinmux interfaces
  dt-bindings: rtc: stm32: describe pinmux nodes
parents aa486552 69028621
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -22,6 +22,9 @@ properties:
  interrupts:
    maxItems: 1

  "#clock-cells":
    const: 0

  trickle-resistor-ohms:
    enum:
      - 3000
+49 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/rtc/sprd,sc2731-rtc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Spreadtrum SC2731 Real Time Clock

maintainers:
  - Orson Zhai <orsonzhai@gmail.com>
  - Baolin Wang <baolin.wang7@gmail.com>
  - Chunyan Zhang <zhang.lyra@gmail.com>

properties:
  compatible:
    const: sprd,sc2731-rtc

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

required:
  - compatible
  - reg
  - interrupts

allOf:
  - $ref: rtc.yaml#

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>

    pmic {
      #address-cells = <1>;
      #size-cells = <0>;

      rtc@280 {
        compatible = "sprd,sc2731-rtc";
        reg = <0x280>;
        interrupt-parent = <&sc2731_pmic>;
        interrupts = <2 IRQ_TYPE_LEVEL_HIGH>;
      };
    };
...
+0 −26
Original line number Diff line number Diff line
Spreadtrum SC27xx Real Time Clock

Required properties:
- compatible: should be "sprd,sc2731-rtc".
- reg: address offset of rtc register.
- interrupts: rtc alarm interrupt.

Example:

	sc2731_pmic: pmic@0 {
		compatible = "sprd,sc2731";
		reg = <0>;
		spi-max-frequency = <26000000>;
		interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
		interrupt-controller;
		#interrupt-cells = <2>;
		#address-cells = <1>;
		#size-cells = <0>;

		rtc@280 {
			compatible = "sprd,sc2731-rtc";
			reg = <0x280>;
			interrupt-parent = <&sc2731_pmic>;
			interrupts = <2 IRQ_TYPE_LEVEL_HIGH>;
		};
	};
+28 −0
Original line number Diff line number Diff line
@@ -53,6 +53,28 @@ properties:
      override default rtc_ck parent clock phandle of the new parent clock of rtc_ck
    maxItems: 1

patternProperties:
  "^rtc-[a-z]+-[0-9]+$":
    type: object
    $ref: /schemas/pinctrl/pinmux-node.yaml
    description: |
      Configuration of STM32 RTC pins description. STM32 RTC is able to output
      some signals on specific pins:
      - LSCO (Low Speed Clock Output) that allow to output LSE clock on a pin.
      - Alarm out that allow to send a pulse on a pin when alarm A of the RTC
        expires.
    additionalProperties: false
    properties:
      function:
        enum:
          - lsco
          - alarm-a
      pins:
        enum:
          - out1
          - out2
          - out2_rmp

allOf:
  - if:
      properties:
@@ -68,6 +90,9 @@ allOf:

        clock-names: false

      patternProperties:
        "^rtc-[a-z]+-[0-9]+$": false

      required:
        - st,syscfg

@@ -83,6 +108,9 @@ allOf:
          minItems: 2
          maxItems: 2

      patternProperties:
        "^rtc-[a-z]+-[0-9]+$": false

      required:
        - clock-names
        - st,syscfg
+2 −7
Original line number Diff line number Diff line
@@ -38,12 +38,13 @@ properties:
      - dallas,ds1672
      # Extremely Accurate I²C RTC with Integrated Crystal and SRAM
      - dallas,ds3232
      # SD2405AL Real-Time Clock
      - dfrobot,sd2405al
      # EM Microelectronic EM3027 RTC
      - emmicro,em3027
      # I2C-BUS INTERFACE REAL TIME CLOCK MODULE
      - epson,rx8010
      # I2C-BUS INTERFACE REAL TIME CLOCK MODULE
      - epson,rx8025
      - epson,rx8035
      # I2C-BUS INTERFACE REAL TIME CLOCK MODULE with Battery Backed RAM
      - epson,rx8111
@@ -52,10 +53,6 @@ properties:
      - epson,rx8581
      # Android Goldfish Real-time Clock
      - google,goldfish-rtc
      # Intersil ISL1208 Low Power RTC with Battery Backed SRAM
      - isil,isl1208
      # Intersil ISL1218 Low Power RTC with Battery Backed SRAM
      - isil,isl1218
      # Mvebu Real-time Clock
      - marvell,orion-rtc
      # Maxim DS1742/DS1743 Real-time Clock
@@ -68,8 +65,6 @@ properties:
      - microcrystal,rv8523
      # NXP LPC32xx SoC Real-time Clock
      - nxp,lpc3220-rtc
      # Real-time Clock Module
      - pericom,pt7c4338
      # I2C bus SERIAL INTERFACE REAL-TIME CLOCK IC
      - ricoh,r2025sd
      # I2C bus SERIAL INTERFACE REAL-TIME CLOCK IC
Loading