Message ID | 20231108104343.24192-3-krzysztof.kozlowski@linaro.org |
---|---|
State | New |
Headers | show |
Series | dt-bindings: samsung: add specific compatibles for existing SoC | expand |
On 09/11/2023 19:05, Alim Akhtar wrote: (...) Please trim unrelated parts of response/quote before and after your message. >> @@ -25,7 +25,15 @@ properties: >> - samsung,exynos5250-hsi2c # Exynos5250 and Exynos5420 >> - samsung,exynos5260-hsi2c # Exynos5260 >> - samsung,exynos7-hsi2c # Exynos7 >> - - samsung,exynosautov9-hsi2c # ExynosAutoV9 and Exynos850 >> + - samsung,exynosautov9-hsi2c >> + - items: >> + - enum: >> + - samsung,exynos5433-hsi2c >> + - const: samsung,exynos7-hsi2c >> + - items: >> + - enum: >> + - samsung,exynos850-hsi2c > Does this need an entry in allOf:? to indicate exynos850 also has 2 clocks? > No, autov9 is there already. >> + - const: samsung,exynosautov9-hsi2c Best regards, Krzysztof
On Wed, 08 Nov 2023 11:43:28 +0100, Krzysztof Kozlowski wrote: > Samsung Exynos SoC reuses several devices from older designs, thus > historically we kept the old (block's) compatible only. This works fine > and there is no bug here, however guidelines expressed in > Documentation/devicetree/bindings/writing-bindings.rst state that: > 1. Compatibles should be specific. > 2. We should add new compatibles in case of bugs or features. > > Add compatibles specific to each SoC in front of all old-SoC-like > compatibles. > > Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > > --- > > I propose to take the patch through Samsung SoC (me). See cover letter > for explanation. > --- > Documentation/devicetree/bindings/i2c/i2c-exynos5.yaml | 10 +++++++++- > .../devicetree/bindings/soc/samsung/exynos-usi.yaml | 2 +- > 2 files changed, 10 insertions(+), 2 deletions(-) > Acked-by: Rob Herring <robh@kernel.org>
diff --git a/Documentation/devicetree/bindings/i2c/i2c-exynos5.yaml b/Documentation/devicetree/bindings/i2c/i2c-exynos5.yaml index 3e52a0db6c41..c1f5d2cb7709 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-exynos5.yaml +++ b/Documentation/devicetree/bindings/i2c/i2c-exynos5.yaml @@ -25,7 +25,15 @@ properties: - samsung,exynos5250-hsi2c # Exynos5250 and Exynos5420 - samsung,exynos5260-hsi2c # Exynos5260 - samsung,exynos7-hsi2c # Exynos7 - - samsung,exynosautov9-hsi2c # ExynosAutoV9 and Exynos850 + - samsung,exynosautov9-hsi2c + - items: + - enum: + - samsung,exynos5433-hsi2c + - const: samsung,exynos7-hsi2c + - items: + - enum: + - samsung,exynos850-hsi2c + - const: samsung,exynosautov9-hsi2c - const: samsung,exynos5-hsi2c # Exynos5250 and Exynos5420 deprecated: true diff --git a/Documentation/devicetree/bindings/soc/samsung/exynos-usi.yaml b/Documentation/devicetree/bindings/soc/samsung/exynos-usi.yaml index a6836904a4f8..5b7ab69546c4 100644 --- a/Documentation/devicetree/bindings/soc/samsung/exynos-usi.yaml +++ b/Documentation/devicetree/bindings/soc/samsung/exynos-usi.yaml @@ -155,7 +155,7 @@ examples: }; hsi2c_0: i2c@13820000 { - compatible = "samsung,exynosautov9-hsi2c"; + compatible = "samsung,exynos850-hsi2c", "samsung,exynosautov9-hsi2c"; reg = <0x13820000 0xc0>; interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>; #address-cells = <1>;
Samsung Exynos SoC reuses several devices from older designs, thus historically we kept the old (block's) compatible only. This works fine and there is no bug here, however guidelines expressed in Documentation/devicetree/bindings/writing-bindings.rst state that: 1. Compatibles should be specific. 2. We should add new compatibles in case of bugs or features. Add compatibles specific to each SoC in front of all old-SoC-like compatibles. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> --- I propose to take the patch through Samsung SoC (me). See cover letter for explanation. --- Documentation/devicetree/bindings/i2c/i2c-exynos5.yaml | 10 +++++++++- .../devicetree/bindings/soc/samsung/exynos-usi.yaml | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-)