1a03d23f8SBiju Das# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2a03d23f8SBiju Das%YAML 1.2 3a03d23f8SBiju Das--- 4a03d23f8SBiju Das$id: http://devicetree.org/schemas/clock/renesas,5p35023.yaml# 5a03d23f8SBiju Das$schema: http://devicetree.org/meta-schemas/core.yaml# 6a03d23f8SBiju Das 7a03d23f8SBiju Dastitle: Renesas 5p35023 VersaClock 3 programmable I2C clock generator 8a03d23f8SBiju Das 9a03d23f8SBiju Dasmaintainers: 10a03d23f8SBiju Das - Biju Das <biju.das.jz@bp.renesas.com> 11a03d23f8SBiju Das 12a03d23f8SBiju Dasdescription: | 13a03d23f8SBiju Das The 5P35023 is a VersaClock programmable clock generator and 14a03d23f8SBiju Das is designed for low-power, consumer, and high-performance PCI 15a03d23f8SBiju Das express applications. The 5P35023 device is a three PLL 16a03d23f8SBiju Das architecture design, and each PLL is individually programmable 17a03d23f8SBiju Das and allowing for up to 6 unique frequency outputs. 18a03d23f8SBiju Das 19a03d23f8SBiju Das An internal OTP memory allows the user to store the configuration 20a03d23f8SBiju Das in the device. After power up, the user can change the device register 21a03d23f8SBiju Das settings through the I2C interface when I2C mode is selected. 22a03d23f8SBiju Das 23a03d23f8SBiju Das The driver can read a full register map from the DT, and will use that 24a03d23f8SBiju Das register map to initialize the attached part (via I2C) when the system 25a03d23f8SBiju Das boots. Any configuration not supported by the common clock framework 26a03d23f8SBiju Das must be done via the full register map, including optimized settings. 27a03d23f8SBiju Das 28a03d23f8SBiju Das Link to datasheet: 29a03d23f8SBiju Das https://www.renesas.com/us/en/products/clocks-timing/clock-generation/programmable-clocks/5p35023-versaclock-3s-programmable-clock-generator 30a03d23f8SBiju Das 31a03d23f8SBiju Dasproperties: 32a03d23f8SBiju Das compatible: 33a03d23f8SBiju Das enum: 34a03d23f8SBiju Das - renesas,5p35023 35a03d23f8SBiju Das 36a03d23f8SBiju Das reg: 37a03d23f8SBiju Das maxItems: 1 38a03d23f8SBiju Das 39a03d23f8SBiju Das '#clock-cells': 40*1aa2a9f2SBiju Das description: 41*1aa2a9f2SBiju Das The index in the assigned-clocks is mapped to the output clock as below 42*1aa2a9f2SBiju Das 0 - REF, 1 - SE1, 2 - SE2, 3 - SE3, 4 - DIFF1, 5 - DIFF2. 43a03d23f8SBiju Das const: 1 44a03d23f8SBiju Das 45a03d23f8SBiju Das clocks: 46a03d23f8SBiju Das maxItems: 1 47a03d23f8SBiju Das 48a03d23f8SBiju Das renesas,settings: 49a03d23f8SBiju Das description: Optional, complete register map of the device. 50a03d23f8SBiju Das Optimized settings for the device must be provided in full 51a03d23f8SBiju Das and are written during initialization. 52a03d23f8SBiju Das $ref: /schemas/types.yaml#/definitions/uint8-array 53a03d23f8SBiju Das maxItems: 37 54a03d23f8SBiju Das 55a03d23f8SBiju Dasrequired: 56a03d23f8SBiju Das - compatible 57a03d23f8SBiju Das - reg 58a03d23f8SBiju Das - '#clock-cells' 59a03d23f8SBiju Das - clocks 60a03d23f8SBiju Das 61a03d23f8SBiju DasadditionalProperties: false 62a03d23f8SBiju Das 63a03d23f8SBiju Dasexamples: 64a03d23f8SBiju Das - | 65a03d23f8SBiju Das i2c { 66a03d23f8SBiju Das #address-cells = <1>; 67a03d23f8SBiju Das #size-cells = <0>; 68a03d23f8SBiju Das 69a03d23f8SBiju Das versa3: clock-generator@68 { 70a03d23f8SBiju Das compatible = "renesas,5p35023"; 71a03d23f8SBiju Das reg = <0x68>; 72a03d23f8SBiju Das #clock-cells = <1>; 73a03d23f8SBiju Das 74*1aa2a9f2SBiju Das clocks = <&x1>; 75a03d23f8SBiju Das 76a03d23f8SBiju Das renesas,settings = [ 77a03d23f8SBiju Das 80 00 11 19 4c 02 23 7f 83 19 08 a9 5f 25 24 bf 78a03d23f8SBiju Das 00 14 7a e1 00 00 00 00 01 55 59 bb 3f 30 90 b6 79a03d23f8SBiju Das 80 b0 45 c4 95 80a03d23f8SBiju Das ]; 81a03d23f8SBiju Das 82a03d23f8SBiju Das assigned-clocks = <&versa3 0>, <&versa3 1>, 83a03d23f8SBiju Das <&versa3 2>, <&versa3 3>, 84a03d23f8SBiju Das <&versa3 4>, <&versa3 5>; 85*1aa2a9f2SBiju Das assigned-clock-rates = <24000000>, <11289600>, 86*1aa2a9f2SBiju Das <11289600>, <12000000>, 87*1aa2a9f2SBiju Das <25000000>, <12288000>; 88a03d23f8SBiju Das }; 89a03d23f8SBiju Das }; 90