Add the schema for the Samsung SPEEDY serial bus host controller. The bus has 4 bit wide addresses for addressing devices and 8 bit wide register addressing. Each register is also 8 bit long, so the address can be 0-f (hexadecimal), node name for child device follows the format: node_name@[0-f]. Co-developed-by: Maksym Holovach <nergzd@xxxxxxxxxxxxx> Signed-off-by: Maksym Holovach <nergzd@xxxxxxxxxxxxx> Signed-off-by: Markuss Broks <markuss.broks@xxxxxxxxx> --- .../bindings/soc/samsung/exynos-speedy.yaml | 78 ++++++++++++++++++++++ 1 file changed, 78 insertions(+) diff --git a/Documentation/devicetree/bindings/soc/samsung/exynos-speedy.yaml b/Documentation/devicetree/bindings/soc/samsung/exynos-speedy.yaml new file mode 100644 index 0000000000000000000000000000000000000000..304b322a74ea70f23d8c072b44b6ca86b7cc807f --- /dev/null +++ b/Documentation/devicetree/bindings/soc/samsung/exynos-speedy.yaml @@ -0,0 +1,78 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/samsung/exynos-speedy.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Samsung Exynos SPEEDY serial bus host controller + +maintainers: + - Markuss Broks <markuss.broks@xxxxxxxxx> + +description: + Samsung SPEEDY is a proprietary Samsung serial 1-wire bus. + It is used on various Samsung Exynos chips. The bus can + address at most 4 bit (16) devices. The devices on the bus + have 8 bit long register line, and the registers are also + 8 bit long each. It is typically used for communicating with + Samsung PMICs (s2mps17, s2mps18, ...) and other Samsung chips, + such as RF parts. + +properties: + compatible: + - items: + - enum: + - samsung,exynos9810-speedy + - const: samsung,exynos-speedy + + reg: + maxItems: 1 + + clocks: + maxItems: 1 + + clock-names: + - const: pclk + + interrupts: + maxItems: 1 + +required: + - compatible + - reg + - "#address-cells" + - "#size-cells" + +patternProperties: + "^[a-z][a-z0-9]*@[0-9a-f]$": + type: object + additionalProperties: true + + properties: + reg: + maxItems: 1 + + required: + - reg + +additionalProperties: false + +examples: + - | + speedy0: speedy@141c0000 { + compatible = "samsung,exynos9810-speedy", + "samsung-exynos-speedy"; + reg = <0x141c0000 0x2000>; + #address-cells = <1>; + #size-cells = <0>; + + pmic@0 { + compatible = "samsung,s2mps18-pmic"; + reg = <0x0>; + }; + + regulator@1 { + compatible = "samsung,s2mps18-regulator"; + reg = <0x1>; + }; + }; -- 2.47.0