lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ef64816f-0ba2-4a12-bef8-aa10e44793e1@kernel.org>
Date: Mon, 23 Jun 2025 14:12:14 +0200
From: Krzysztof Kozlowski <krzk@...nel.org>
To: Laura Nao <laura.nao@...labora.com>, mturquette@...libre.com,
 sboyd@...nel.org, robh@...nel.org, krzk+dt@...nel.org, conor+dt@...nel.org,
 matthias.bgg@...il.com, angelogioacchino.delregno@...labora.com,
 p.zabel@...gutronix.de, richardcochran@...il.com
Cc: guangjie.song@...iatek.com, wenst@...omium.org,
 linux-clk@...r.kernel.org, devicetree@...r.kernel.org,
 linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
 linux-mediatek@...ts.infradead.org, netdev@...r.kernel.org,
 kernel@...labora.com
Subject: Re: [PATCH 09/30] dt-bindings: clock: mediatek: Describe MT8196
 peripheral clock controllers

On 23/06/2025 12:29, Laura Nao wrote:
> +properties:
> +  compatible:
> +    items:
> +      - enum:
> +          - mediatek,mt8196-adsp
> +          - 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
> +      - const: syscon

Why everything is syscon?


> +
> +  reg:
> +    maxItems: 1
> +
> +  '#clock-cells':
> +    const: 1
> +
> +  '#reset-cells':
> +    const: 1
> +
> +  mediatek,hardware-voter:
> +    $ref: /schemas/types.yaml#/definitions/phandle
> +    description: A phandle of the hw voter node
> +
> +required:
> +  - compatible
> +  - reg
> +  - '#clock-cells'
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    pericfg_ao: clock-controller@...40000 {
> +        compatible = "mediatek,mt8196-pericfg-ao", "syscon";
> +        reg = <0x16640000 0x1000>;
> +        mediatek,hardware-voter = <&scp_hwv>;
> +        #clock-cells = <1>;
> +    };
> +  - |
> +    pextp0cfg_ao: clock-controller@...b0000 {
> +        compatible = "mediatek,mt8196-pextp0cfg-ao", "syscon";
> +        reg = <0x169b0000 0x1000>;
> +        #clock-cells = <1>;
> +        #reset-cells = <1>;
> +    };
> diff --git a/Documentation/devicetree/bindings/clock/mediatek,mt8196-sys-clock.yaml b/Documentation/devicetree/bindings/clock/mediatek,mt8196-sys-clock.yaml
> new file mode 100644
> index 000000000000..363ebe87c525
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/clock/mediatek,mt8196-sys-clock.yaml
> @@ -0,0 +1,76 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/clock/mediatek,mt8196-sys-clock.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: MediaTek System Clock Controller for MT8196
> +
> +maintainers:
> +  - Guangjie Song <guangjie.song@...iatek.com>
> +  - Laura Nao <laura.nao@...labora.com>
> +
> +description: |
> +  The clock architecture in MediaTek SoCs is structured like below:
> +  PLLs -->
> +          dividers -->
> +                      muxes
> +                           -->
> +                              clock gate
> +
> +  The apmixedsys, apmixedsys_gp2, vlpckgen, armpll, ccipll, mfgpll and ptppll
> +  provide most of the PLLs which are generated from the SoC's 26MHZ crystal oscillator.
> +  The topckgen, topckgen_gp2 and vlpckgen provide dividers and muxes which
> +  provide the clock source to other IP blocks.
> +
> +properties:
> +  compatible:
> +    items:
> +      - enum:
> +          - mediatek,mt8196-apmixedsys
> +          - mediatek,mt8196-armpll-b-pll-ctrl
> +          - mediatek,mt8196-armpll-bl-pll-ctrl
> +          - mediatek,mt8196-armpll-ll-pll-ctrl
> +          - mediatek,mt8196-apmixedsys-gp2
> +          - mediatek,mt8196-ccipll-pll-ctrl
> +          - mediatek,mt8196-mfgpll-pll-ctrl
> +          - mediatek,mt8196-mfgpll-sc0-pll-ctrl
> +          - mediatek,mt8196-mfgpll-sc1-pll-ctrl
> +          - mediatek,mt8196-ptppll-pll-ctrl
> +          - mediatek,mt8196-topckgen
> +          - mediatek,mt8196-topckgen-gp2
> +          - mediatek,mt8196-vlpckgen
> +      - const: syscon

Why everything is syscon?

> +
> +  reg:
> +    maxItems: 1
> +
> +  '#clock-cells':
> +    const: 1
> +
> +  mediatek,hardware-voter:
> +    $ref: /schemas/types.yaml#/definitions/phandle
> +    description: A phandle of the hw voter node

Do not copy property name to description, but say something useful - for
what? And why this cannot be or is not a proper interconnect?

> +
> +required:
> +  - compatible
> +  - reg
> +  - '#clock-cells'
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    apmixedsys_clk: syscon@...00800 {
> +        compatible = "mediatek,mt8196-apmixedsys", "syscon";
> +        reg = <0x10000800 0x1000>;
> +        #clock-cells = <1>;
> +    };
> +  - |
> +    topckgen: syscon@...00000 {
> +        compatible = "mediatek,mt8196-topckgen", "syscon";
> +        reg = <0x10000000 0x800>;
> +        mediatek,hardware-voter = <&scp_hwv>;
> +        #clock-cells = <1>;
> +    };
> +



> +#define CLK_OVL1_DLO9					56
> +#define CLK_OVL1_DLO10					57
> +#define CLK_OVL1_DLO11					58
> +#define CLK_OVL1_DLO12					59
> +#define CLK_OVL1_OVLSYS_RELAY0				60
> +#define CLK_OVL1_OVL_INLINEROT0				61
> +#define CLK_OVL1_SMI					62
> +
> +
> +/* VDEC_SOC_GCON_BASE */
> +#define CLK_VDE1_LARB1_CKEN				0
> +#define CLK_VDE1_LAT_CKEN				3

IDs increment by 1, not 3.



Best regards,
Krzysztof

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ