1b97ee269SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2b97ee269SEmmanuel Vadot%YAML 1.2 3b97ee269SEmmanuel Vadot--- 4b97ee269SEmmanuel Vadot$id: http://devicetree.org/schemas/i2c/st,nomadik-i2c.yaml# 5b97ee269SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6b97ee269SEmmanuel Vadot 7*8bab661aSEmmanuel Vadottitle: ST Microelectronics Nomadik I2C 8b97ee269SEmmanuel Vadot 9b97ee269SEmmanuel Vadotdescription: The Nomadik I2C host controller began its life in the ST 10b97ee269SEmmanuel Vadot Microelectronics STn8800 SoC, and was then inherited into STn8810 and 11b97ee269SEmmanuel Vadot STn8815. It was part of the prototype STn8500 which then became ST-Ericsson 12b97ee269SEmmanuel Vadot DB8500 after the merge of these two companies wireless divisions. 13b97ee269SEmmanuel Vadot 14b97ee269SEmmanuel Vadotmaintainers: 15b97ee269SEmmanuel Vadot - Linus Walleij <linus.walleij@linaro.org> 16b97ee269SEmmanuel Vadot 17b97ee269SEmmanuel VadotallOf: 18b97ee269SEmmanuel Vadot - $ref: /schemas/i2c/i2c-controller.yaml# 19b97ee269SEmmanuel Vadot 20b97ee269SEmmanuel Vadot# Need a custom select here or 'arm,primecell' will match on lots of nodes 21b97ee269SEmmanuel Vadotselect: 22b97ee269SEmmanuel Vadot properties: 23b97ee269SEmmanuel Vadot compatible: 24b97ee269SEmmanuel Vadot contains: 25b97ee269SEmmanuel Vadot enum: 26b97ee269SEmmanuel Vadot - st,nomadik-i2c 27b97ee269SEmmanuel Vadot required: 28b97ee269SEmmanuel Vadot - compatible 29b97ee269SEmmanuel Vadot 30b97ee269SEmmanuel Vadotproperties: 31b97ee269SEmmanuel Vadot compatible: 32b97ee269SEmmanuel Vadot oneOf: 33b97ee269SEmmanuel Vadot # The variant found in STn8815 34b97ee269SEmmanuel Vadot - items: 35b97ee269SEmmanuel Vadot - const: st,nomadik-i2c 36b97ee269SEmmanuel Vadot - const: arm,primecell 37b97ee269SEmmanuel Vadot # The variant found in DB8500 38b97ee269SEmmanuel Vadot - items: 39b97ee269SEmmanuel Vadot - const: stericsson,db8500-i2c 40b97ee269SEmmanuel Vadot - const: st,nomadik-i2c 41b97ee269SEmmanuel Vadot - const: arm,primecell 42b97ee269SEmmanuel Vadot 43b97ee269SEmmanuel Vadot reg: 44b97ee269SEmmanuel Vadot maxItems: 1 45b97ee269SEmmanuel Vadot 46b97ee269SEmmanuel Vadot interrupts: 47b97ee269SEmmanuel Vadot maxItems: 1 48b97ee269SEmmanuel Vadot 49b97ee269SEmmanuel Vadot clocks: 50b97ee269SEmmanuel Vadot maxItems: 2 51b97ee269SEmmanuel Vadot 52b97ee269SEmmanuel Vadot clock-names: 53b97ee269SEmmanuel Vadot oneOf: 54b97ee269SEmmanuel Vadot # Clock name in STn8815 55b97ee269SEmmanuel Vadot - items: 56b97ee269SEmmanuel Vadot - const: mclk 57b97ee269SEmmanuel Vadot - const: apb_pclk 58b97ee269SEmmanuel Vadot # Clock name in DB8500 59b97ee269SEmmanuel Vadot - items: 60b97ee269SEmmanuel Vadot - const: i2cclk 61b97ee269SEmmanuel Vadot - const: apb_pclk 62b97ee269SEmmanuel Vadot 63b97ee269SEmmanuel Vadot power-domains: 64b97ee269SEmmanuel Vadot maxItems: 1 65b97ee269SEmmanuel Vadot 66b97ee269SEmmanuel Vadot resets: 67b97ee269SEmmanuel Vadot maxItems: 1 68b97ee269SEmmanuel Vadot 69b97ee269SEmmanuel Vadot clock-frequency: 70b97ee269SEmmanuel Vadot minimum: 1 71b97ee269SEmmanuel Vadot maximum: 400000 72b97ee269SEmmanuel Vadot 73b97ee269SEmmanuel Vadotrequired: 74b97ee269SEmmanuel Vadot - compatible 75b97ee269SEmmanuel Vadot - reg 76b97ee269SEmmanuel Vadot - interrupts 77b97ee269SEmmanuel Vadot - clocks 78b97ee269SEmmanuel Vadot - clock-names 79b97ee269SEmmanuel Vadot 80b97ee269SEmmanuel VadotunevaluatedProperties: false 81b97ee269SEmmanuel Vadot 82b97ee269SEmmanuel Vadotexamples: 83b97ee269SEmmanuel Vadot - | 84b97ee269SEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 85b97ee269SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 86b97ee269SEmmanuel Vadot #include <dt-bindings/reset/stericsson,db8500-prcc-reset.h> 87b97ee269SEmmanuel Vadot #include <dt-bindings/arm/ux500_pm_domains.h> 88b97ee269SEmmanuel Vadot i2c@80004000 { 89b97ee269SEmmanuel Vadot compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell"; 90b97ee269SEmmanuel Vadot reg = <0x80004000 0x1000>; 91b97ee269SEmmanuel Vadot interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; 92b97ee269SEmmanuel Vadot 93b97ee269SEmmanuel Vadot #address-cells = <1>; 94b97ee269SEmmanuel Vadot #size-cells = <0>; 95b97ee269SEmmanuel Vadot 96b97ee269SEmmanuel Vadot clock-frequency = <400000>; 97b97ee269SEmmanuel Vadot clocks = <&prcc_kclk 3 3>, <&prcc_pclk 3 3>; 98b97ee269SEmmanuel Vadot clock-names = "i2cclk", "apb_pclk"; 99b97ee269SEmmanuel Vadot power-domains = <&pm_domains DOMAIN_VAPE>; 100b97ee269SEmmanuel Vadot resets = <&prcc_reset DB8500_PRCC_3 DB8500_PRCC_3_RESET_I2C0>; 101b97ee269SEmmanuel Vadot }; 102b97ee269SEmmanuel Vadot 103b97ee269SEmmanuel Vadot i2c@101f8000 { 104b97ee269SEmmanuel Vadot compatible = "st,nomadik-i2c", "arm,primecell"; 105b97ee269SEmmanuel Vadot reg = <0x101f8000 0x1000>; 106b97ee269SEmmanuel Vadot interrupt-parent = <&vica>; 107b97ee269SEmmanuel Vadot interrupts = <20>; 108b97ee269SEmmanuel Vadot clock-frequency = <100000>; 109b97ee269SEmmanuel Vadot #address-cells = <1>; 110b97ee269SEmmanuel Vadot #size-cells = <0>; 111b97ee269SEmmanuel Vadot clocks = <&i2c0clk>, <&pclki2c0>; 112b97ee269SEmmanuel Vadot clock-names = "mclk", "apb_pclk"; 113b97ee269SEmmanuel Vadot }; 114b97ee269SEmmanuel Vadot 115b97ee269SEmmanuel Vadot... 116