Commit e112f2de authored by Rafał Miłecki's avatar Rafał Miłecki Committed by Lee Jones
Browse files

dt-bindings: timer: Add Broadcom's BCMBCA timers



BCA is a big set / family of Broadcom devices sharing multiple hardware
blocks. One of them is timer that actually exists in two versions. It's
a part of TWD MFD block.

Add binding for it so SoCs can be properly described. Linux (and
probably any other OS) doesn't really seem to need a driver for it. it
may be needed for bootloaders (e.g. U-Boot) though. Especially for SoCs
with CPUs other than Cortex-A9 (which contains arch timers).

Signed-off-by: default avatarRafał Miłecki <rafal@milecki.pl>
Reviewed-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: default avatarLee Jones <lee@kernel.org>
Link: https://lore.kernel.org/r/20221028115353.13881-1-zajec5@gmail.com
parent 727b67e3
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -36,6 +36,9 @@ properties:
    const: 1

patternProperties:
  '^timer@[a-f0-9]+$':
    $ref: /schemas/timer/brcm,bcmbca-timer.yaml

  '^watchdog@[a-f0-9]+$':
    $ref: /schemas/watchdog/brcm,bcm7038-wdt.yaml

@@ -54,6 +57,11 @@ examples:
        #address-cells = <1>;
        #size-cells = <1>;

        timer@0 {
            compatible = "brcm,bcm63138-timer";
            reg = <0x0 0x28>;
        };

        watchdog@28 {
            compatible = "brcm,bcm7038-wdt";
            reg = <0x28 0x8>;
+40 −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/timer/brcm,bcmbca-timer.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Broadcom Broadband SoC timer

maintainers:
  - Rafał Miłecki <rafal@milecki.pl>

properties:
  compatible:
    oneOf:
      - const: brcm,bcm6345-timer
        description: >
          An old block with 3 timers.

          It can be found in BCM6345, BCM6838 and BCM63268.
      - const: brcm,bcm63138-timer
        description: >
          Updated block with 4 timers and control regs at the beginning.

          It can be found in newer SoCs, e.g. BCM63138, BCM63148, BCM63381,
          BCM68360, BCM6848, BCM6858, BCM4908.

  reg:
    maxItems: 1

additionalProperties: false

required:
  - reg

examples:
  - |
    timer@fffe0200 {
      compatible = "brcm,bcm6345-timer";
      reg = <0xfffe0200 0x1c>;
    };