# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/clock/mediatek,mt8196-clock.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: MediaTek Functional Clock Controller for MT8196

maintainers:
  - Guangjie Song <guangjie.song@mediatek.com>
  - Laura Nao <laura.nao@collabora.com>

description: |
  The clock architecture in MediaTek SoCs is structured like below:
  PLLs -->
          dividers -->
                      muxes
                           -->
                              clock gate

  The device nodes provide clock gate control in different IP blocks.

properties:
  compatible:
    items:
      - enum:
          - mediatek,mt8196-imp-iic-wrap-c
          - mediatek,mt8196-imp-iic-wrap-e
          - mediatek,mt8196-imp-iic-wrap-n
          - mediatek,mt8196-imp-iic-wrap-w
          - mediatek,mt8196-mdpsys0
          - mediatek,mt8196-mdpsys1
          - mediatek,mt8196-pericfg-ao
          - mediatek,mt8196-pextp0cfg-ao
          - mediatek,mt8196-pextp1cfg-ao
          - mediatek,mt8196-ufscfg-ao
          - mediatek,mt8196-vencsys
          - mediatek,mt8196-vencsys-c1
          - mediatek,mt8196-vencsys-c2
          - mediatek,mt8196-vdecsys
          - mediatek,mt8196-vdecsys-soc
          - mediatek,mt8196-vdisp-ao
      - const: syscon

  reg:
    maxItems: 1

  '#clock-cells':
    const: 1

  '#reset-cells':
    const: 1
    description:
      Reset lines for PEXTP0/1 and UFS blocks.

  mediatek,hardware-voter:
    $ref: /schemas/types.yaml#/definitions/phandle
    description: |
      Phandle to the "Hardware Voter" (HWV), as named in the vendor
      documentation for MT8196/MT6991.

      The HWV is a SoC-internal fixed-function MCU used to collect votes from
      both the Application Processor and other remote processors within the SoC.
      It is intended to transparently enable or disable hardware resources (such
      as power domains or clocks) based on internal vote aggregation handled by
      the MCU's internal state machine.

      However, in practice, this design is incomplete. While the HWV performs
      some internal vote aggregation,software is still required to
      - Manually enable power supplies externally, if present and if required
      - Manually enable parent clocks via direct MMIO writes to clock controllers
      - Enable the FENC after the clock has been ungated via direct MMIO
      writes to clock controllers

      As such, the HWV behaves more like a hardware-managed clock reference
      counter than a true voter. Furthermore, it is not a separate
      controller. It merely serves as an alternative interface to the same
      underlying clock or power controller. Actual control still requires
      direct access to the controller's own MMIO register space, in
      addition to writing to the HWV's MMIO region.

      For this reason, a custom phandle is used here - drivers need to directly
      access the HWV MMIO region in a syscon-like fashion, due to how the
      hardware is wired. This differs from true hardware voting systems, which
      typically do not require custom phandles and rely instead on generic APIs
      (clocks, power domains, interconnects).

      The name "hardware-voter" is retained to match vendor documentation, but
      this should not be reused or misunderstood as a proper voting mechanism.

required:
  - compatible
  - reg
  - '#clock-cells'

additionalProperties: false

examples:
  - |
    pericfg_ao: clock-controller@16640000 {
        compatible = "mediatek,mt8196-pericfg-ao", "syscon";
        reg = <0x16640000 0x1000>;
        mediatek,hardware-voter = <&scp_hwv>;
        #clock-cells = <1>;
    };
  - |
    pextp0cfg_ao: clock-controller@169b0000 {
        compatible = "mediatek,mt8196-pextp0cfg-ao", "syscon";
        reg = <0x169b0000 0x1000>;
        #clock-cells = <1>;
        #reset-cells = <1>;
    };
