Message ID | 20231108104343.24192-3-krzysztof.kozlowski@linaro.org |
---|---|
State | Accepted |
Commit | 9da80ed69eb150617e8c72aeb7fdb9bfc7b97fba |
Headers | show |
Series | dt-bindings: samsung: add specific compatibles for existing SoC | expand |
> -----Original Message----- > From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > Sent: Wednesday, November 8, 2023 4:13 PM > To: David Airlie <airlied@gmail.com>; Daniel Vetter <daniel@ffwll.ch>; > Maarten Lankhorst <maarten.lankhorst@linux.intel.com>; Maxime Ripard > <mripard@kernel.org>; Thomas Zimmermann <tzimmermann@suse.de>; > Rob Herring <robh+dt@kernel.org>; Krzysztof Kozlowski > <krzysztof.kozlowski+dt@linaro.org>; Conor Dooley > <conor+dt@kernel.org>; Alim Akhtar <alim.akhtar@samsung.com>; Andi > Shyti <andi.shyti@kernel.org>; Jonathan Cameron <jic23@kernel.org>; Lars- > Peter Clausen <lars@metafoo.de>; Lee Jones <lee@kernel.org>; Ulf > Hansson <ulf.hansson@linaro.org>; Tomasz Figa <tomasz.figa@gmail.com>; > Sylwester Nawrocki <s.nawrocki@samsung.com>; Linus Walleij > <linus.walleij@linaro.org>; Thierry Reding <thierry.reding@gmail.com>; Uwe > Kleine-König <u.kleine-koenig@pengutronix.de>; Alessandro Zummo > <a.zummo@towertech.it>; Alexandre Belloni > <alexandre.belloni@bootlin.com>; Greg Kroah-Hartman > <gregkh@linuxfoundation.org>; Jiri Slaby <jirislaby@kernel.org>; Liam > Girdwood <lgirdwood@gmail.com>; Mark Brown <broonie@kernel.org>; > Jaehoon Chung <jh80.chung@samsung.com>; Sam Protsenko > <semen.protsenko@linaro.org>; dri-devel@lists.freedesktop.org; > devicetree@vger.kernel.org; linux-kernel@vger.kernel.org; linux-arm- > kernel@lists.infradead.org; linux-samsung-soc@vger.kernel.org; linux- > i2c@vger.kernel.org; linux-iio@vger.kernel.org; linux-mmc@vger.kernel.org; > linux-gpio@vger.kernel.org; linux-pwm@vger.kernel.org; linux- > rtc@vger.kernel.org; linux-serial@vger.kernel.org; alsa-devel@alsa- > project.org; linux-sound@vger.kernel.org > Cc: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > Subject: [PATCH 02/17] dt-bindings: i2c: exynos5: add specific compatibles for > existing SoC > > 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(-) > > 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 Does this need an entry in allOf:? to indicate exynos850 also has 2 clocks? > + - 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>; > -- > 2.34.1
On Wed, Nov 08, 2023 at 11:43:28AM +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. I am fine that you take it once all review comments are addressed. Given that: Acked-by: Wolfram Sang <wsa@kernel.org>
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
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(-)