Message ID | 1543489197-183181-1-git-send-email-jian.hu@amlogic.com (mailing list archive) |
---|---|
Headers | show |
Series | i2c: meson: add support for Meson G12A SoC i2c controller | expand |
On Thu, 2018-11-29 at 18:59 +0800, Jian Hu wrote: > 1)Add G12A SoC i2c compatible string in dt-bindings. > 2)Add compatible and data for G12A I2C controller driver. > > Jian Hu (2): > dt-bindings: i2c: meson: add Meson G12A SoC i2c compatible string > i2c: meson: add support for Meson G12A SoC I2C controller Looks to me that the g12a is compatible with the axg. What is the point of adding this new compatible string ? > > Documentation/devicetree/bindings/i2c/i2c-meson.txt | 1 + > drivers/i2c/busses/i2c-meson.c | 5 +++++ > 2 files changed, 6 insertions(+) >
On 2018/11/29 19:02, Jerome Brunet wrote: > On Thu, 2018-11-29 at 18:59 +0800, Jian Hu wrote: >> 1)Add G12A SoC i2c compatible string in dt-bindings. >> 2)Add compatible and data for G12A I2C controller driver. >> >> Jian Hu (2): >> dt-bindings: i2c: meson: add Meson G12A SoC i2c compatible string >> i2c: meson: add support for Meson G12A SoC I2C controller > > Looks to me that the g12a is compatible with the axg. What is the point of > adding this new compatible string ? > I am okay if it is reasonable below in file arch/arm64/boot/dts/amlogic/meson-g12a.dtsi. I2c controller node just uses axg's compatible. i2c0: i2c@1f000 { compatible = "amlogic,meson-axg-i2c"; reg = <0x0 0x1f000 0x0 0x20>; interrupts = <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>; clocks = <&clkc CLKID_I2C>; #address-cells = <1>; #size-cells = <0>; status = "disabled"; }; If it is, I just submit the i2c controller node in meson-g12a.dtsi. >> >> Documentation/devicetree/bindings/i2c/i2c-meson.txt | 1 + >> drivers/i2c/busses/i2c-meson.c | 5 +++++ >> 2 files changed, 6 insertions(+) >> > > > . >
> I am okay if it is reasonable below in file > arch/arm64/boot/dts/amlogic/meson-g12a.dtsi. I2c controller node just uses > axg's compatible. > > i2c0: i2c@1f000 { > compatible = "amlogic,meson-axg-i2c"; Actually, you should have compatible = "amlogic,meson-g12a-i2c", "amlogic,meson-axg-i2c"; in the DT to have support for future SoC specific additions. And then, patch 1 is needed. Or do you handle this differently? I'd think this is DT standard.
Wolfram Sang <wsa@the-dreams.de> writes: >> I am okay if it is reasonable below in file >> arch/arm64/boot/dts/amlogic/meson-g12a.dtsi. I2c controller node just uses >> axg's compatible. >> >> i2c0: i2c@1f000 { >> compatible = "amlogic,meson-axg-i2c"; > > Actually, you should have > > compatible = "amlogic,meson-g12a-i2c", "amlogic,meson-axg-i2c"; > > in the DT to have support for future SoC specific additions. And then, > patch 1 is needed. > > Or do you handle this differently? I'd think this is DT standard. It's a DT standard *if* there are actual hardware differences. In this case, the IP block is identical, so there are no driver changes. We prefer to add a new compatible if and when there are actual driver/hardware changes. Kevin
> >> I am okay if it is reasonable below in file > >> arch/arm64/boot/dts/amlogic/meson-g12a.dtsi. I2c controller node just uses > >> axg's compatible. > >> > >> i2c0: i2c@1f000 { > >> compatible = "amlogic,meson-axg-i2c"; > > > > Actually, you should have > > > > compatible = "amlogic,meson-g12a-i2c", "amlogic,meson-axg-i2c"; > > > > in the DT to have support for future SoC specific additions. And then, > > patch 1 is needed. > > > > Or do you handle this differently? I'd think this is DT standard. > > It's a DT standard *if* there are actual hardware differences. In this > case, the IP block is identical, so there are no driver changes. > > We prefer to add a new compatible if and when there are actual > driver/hardware changes. OK, fine with me. I just hope for you guys that there really is no change in the IP block, otherwise you need to update DTs later.