The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/i2c/samsung,s3c2410-i2c.yaml

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
    2 %YAML 1.2
    3 ---
    4 $id: http://devicetree.org/schemas/i2c/samsung,s3c2410-i2c.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 title: Samsung S3C/S5P/Exynos SoC I2C Controller
    8 
    9 maintainers:
   10   - Krzysztof Kozlowski <krzk@kernel.org>
   11 
   12 properties:
   13   compatible:
   14     enum:
   15       - samsung,s3c2410-i2c
   16       - samsung,s3c2440-i2c
   17         # For s3c2440-like I2C used inside HDMIPHY block found on several SoCs:
   18       - samsung,s3c2440-hdmiphy-i2c
   19         # For s3c2440-like I2C used as a host to SATA PHY controller on an
   20         # internal bus:
   21       - samsung,exynos5-sata-phy-i2c
   22 
   23   '#address-cells':
   24     const: 1
   25 
   26   clocks:
   27     maxItems: 1
   28 
   29   clock-names:
   30     items:
   31       - const: i2c
   32 
   33   gpios:
   34     description: |
   35       The order of the GPIOs should be the following:: <SDA, SCL>.  The GPIO
   36       specifier depends on the gpio controller. Required in all cases except
   37       for "samsung,s3c2440-hdmiphy-i2c" whose input/output lines are
   38       permanently wired to the respective client.
   39       This property is deprecated. Use "pinctrl-0" and "pinctrl-names" instead.
   40     deprecated: yes
   41 
   42   interrupts:
   43     maxItems: 1
   44 
   45   reg:
   46     maxItems: 1
   47 
   48   samsung,i2c-max-bus-freq:
   49     $ref: /schemas/types.yaml#/definitions/uint32
   50     description:
   51       Desired frequency in Hz of the bus.
   52     default: 100000
   53 
   54   samsung,i2c-sda-delay:
   55     $ref: /schemas/types.yaml#/definitions/uint32
   56     description:
   57       Delay (in ns) applied to data line (SDA) edges.
   58     default: 0
   59 
   60   samsung,i2c-slave-addr:
   61     $ref: /schemas/types.yaml#/definitions/uint32
   62     description:
   63       Slave address in multi-master environment.
   64     default: 0
   65 
   66   samsung,sysreg-phandle:
   67     $ref: /schemas/types.yaml#/definitions/phandle
   68     description: Pandle to syscon used to control the system registers.
   69 
   70   '#size-cells':
   71     const: 0
   72 
   73 required:
   74   - compatible
   75   - reg
   76 
   77 allOf:
   78   - $ref: /schemas/i2c/i2c-controller.yaml#
   79   - if:
   80       properties:
   81         compatible:
   82           contains:
   83             enum:
   84               - samsung,s3c2440-hdmiphy-i2c
   85               - samsung,exynos5-sata-phy-i2c
   86     then:
   87       properties:
   88         gpios: false
   89 
   90   - if:
   91       properties:
   92         compatible:
   93           contains:
   94             enum:
   95               - samsung,s3c2410-i2c
   96               - samsung,s3c2440-i2c
   97               - samsung,s3c2440-hdmiphy-i2c
   98     then:
   99       required:
  100         - interrupts
  101 
  102 unevaluatedProperties: false
  103 
  104 examples:
  105   - |
  106     #include <dt-bindings/clock/exynos5250.h>
  107     #include <dt-bindings/interrupt-controller/arm-gic.h>
  108 
  109     i2c@12c60000 {
  110         compatible = "samsung,s3c2440-i2c";
  111         reg = <0x12C60000 0x100>;
  112         interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
  113         #address-cells = <1>;
  114         #size-cells = <0>;
  115         clocks = <&clock CLK_I2C0>;
  116         clock-names = "i2c";
  117         pinctrl-names = "default";
  118         pinctrl-0 = <&i2c0_bus>;
  119 
  120         samsung,sysreg-phandle = <&sysreg_system_controller>;
  121         samsung,i2c-sda-delay = <100>;
  122         samsung,i2c-max-bus-freq = <20000>;
  123         samsung,i2c-slave-addr = <0x66>;
  124 
  125         eeprom@50 {
  126             compatible = "samsung,s524ad0xd1", "atmel,24c128";
  127             reg = <0x50>;
  128         };
  129     };
  130 
  131     i2c@12ce0000 {
  132         compatible = "samsung,s3c2440-hdmiphy-i2c";
  133         reg = <0x12CE0000 0x1000>;
  134         interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
  135         #address-cells = <1>;
  136         #size-cells = <0>;
  137         clocks = <&clock CLK_I2C_HDMI>;
  138         clock-names = "i2c";
  139 
  140         samsung,i2c-sda-delay = <100>;
  141         samsung,i2c-max-bus-freq = <66000>;
  142 
  143         phy-i2c@38 {
  144             compatible = "samsung,exynos4212-hdmiphy";
  145             reg = <0x38>;
  146         };
  147     };
  148 
  149     i2c@121d0000 {
  150         compatible = "samsung,exynos5-sata-phy-i2c";
  151         reg = <0x121D0000 0x100>;
  152         #address-cells = <1>;
  153         #size-cells = <0>;
  154         clocks = <&clock CLK_SATA_PHYI2C>;
  155         clock-names = "i2c";
  156 
  157         samsung,i2c-sda-delay = <100>;
  158         samsung,i2c-max-bus-freq = <40000>;
  159 
  160         phy-i2c@38 {
  161             compatible = "samsung,exynos-sataphy-i2c";
  162             reg = <0x38>;
  163         };
  164     };

Cache object: 430a54cf2c06343c07125f4059009014


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.