1cd020be0STali Perry# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2cd020be0STali Perry%YAML 1.2 3cd020be0STali Perry--- 4cd020be0STali Perry$id: http://devicetree.org/schemas/i2c/nuvoton,npcm7xx-i2c.yaml# 5cd020be0STali Perry$schema: http://devicetree.org/meta-schemas/core.yaml# 6cd020be0STali Perry 7cd020be0STali Perrytitle: nuvoton NPCM7XX I2C Controller Device Tree Bindings 8cd020be0STali Perry 9cd020be0STali Perrydescription: | 10*29d2bff1STyrone Ting I2C bus controllers of the NPCM series support both master and 11*29d2bff1STyrone Ting slave mode. Each controller can switch between master and slave at run time 12*29d2bff1STyrone Ting (i.e. IPMB mode). HW FIFO for TX and RX are supported. 13cd020be0STali Perry 14cd020be0STali Perrymaintainers: 15cd020be0STali Perry - Tali Perry <tali.perry1@gmail.com> 16cd020be0STali Perry 17cd020be0STali Perryproperties: 18cd020be0STali Perry compatible: 19*29d2bff1STyrone Ting enum: 20*29d2bff1STyrone Ting - nuvoton,npcm750-i2c 21*29d2bff1STyrone Ting - nuvoton,npcm845-i2c 22cd020be0STali Perry 23cd020be0STali Perry reg: 24cd020be0STali Perry maxItems: 1 25cd020be0STali Perry 26cd020be0STali Perry interrupts: 27cd020be0STali Perry maxItems: 1 28cd020be0STali Perry 29cd020be0STali Perry clocks: 30cd020be0STali Perry maxItems: 1 31cd020be0STali Perry description: Reference clock for the I2C bus 32cd020be0STali Perry 33cd020be0STali Perry clock-frequency: 34cd020be0STali Perry description: Desired I2C bus clock frequency in Hz. If not specified, 35cd020be0STali Perry the default 100 kHz frequency will be used. 36cd020be0STali Perry possible values are 100000, 400000 and 1000000. 37cd020be0STali Perry default: 100000 38cd020be0STali Perry enum: [100000, 400000, 1000000] 39cd020be0STali Perry 40*29d2bff1STyrone Ting nuvoton,sys-mgr: 41*29d2bff1STyrone Ting $ref: /schemas/types.yaml#/definitions/phandle 42*29d2bff1STyrone Ting description: The phandle of system manager register node. 43*29d2bff1STyrone Ting 44cd020be0STali Perryrequired: 45cd020be0STali Perry - compatible 46cd020be0STali Perry - reg 47cd020be0STali Perry - interrupts 48cd020be0STali Perry - clocks 49cd020be0STali Perry 50cd020be0STali PerryallOf: 51cd020be0STali Perry - $ref: /schemas/i2c/i2c-controller.yaml# 52*29d2bff1STyrone Ting - if: 53*29d2bff1STyrone Ting properties: 54*29d2bff1STyrone Ting compatible: 55*29d2bff1STyrone Ting contains: 56*29d2bff1STyrone Ting const: nuvoton,npcm845-i2c 57*29d2bff1STyrone Ting 58*29d2bff1STyrone Ting then: 59*29d2bff1STyrone Ting required: 60*29d2bff1STyrone Ting - nuvoton,sys-mgr 61cd020be0STali Perry 62cd020be0STali PerryunevaluatedProperties: false 63cd020be0STali Perry 64cd020be0STali Perryexamples: 65cd020be0STali Perry - | 66cd020be0STali Perry #include <dt-bindings/clock/nuvoton,npcm7xx-clock.h> 67cd020be0STali Perry #include <dt-bindings/interrupt-controller/arm-gic.h> 68cd020be0STali Perry i2c0: i2c@80000 { 69cd020be0STali Perry reg = <0x80000 0x1000>; 70cd020be0STali Perry clocks = <&clk NPCM7XX_CLK_APB2>; 71cd020be0STali Perry clock-frequency = <100000>; 72cd020be0STali Perry interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>; 73cd020be0STali Perry compatible = "nuvoton,npcm750-i2c"; 74*29d2bff1STyrone Ting nuvoton,sys-mgr = <&gcr>; 75cd020be0STali Perry }; 76cd020be0STali Perry 77cd020be0STali Perry... 78