* [PATCH 0/2] i2c: meson: add support for Meson G12A SoC i2c controller @ 2018-11-29 10:59 Jian Hu 2018-11-29 10:59 ` [PATCH 1/2] dt-bindings: i2c: meson: add Meson G12A SoC i2c compatible string Jian Hu ` (2 more replies) 0 siblings, 3 replies; 10+ messages in thread From: Jian Hu @ 2018-11-29 10:59 UTC (permalink / raw) To: Jerome Brunet, Neil Armstrong Cc: Jian Hu, Kevin Hilman, Carlo Caione, Rob Herring, Martin Blumenstingl, Michael Turquette, Stephen Boyd, Wolfram Sang, Mark Rutland, Jianxin Pan, Hanjie Lin, linux-amlogic, linux-i2c, linux-arm-kernel, linux-kernel, devicetree 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 Documentation/devicetree/bindings/i2c/i2c-meson.txt | 1 + drivers/i2c/busses/i2c-meson.c | 5 +++++ 2 files changed, 6 insertions(+) -- 1.9.1 ^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 1/2] dt-bindings: i2c: meson: add Meson G12A SoC i2c compatible string 2018-11-29 10:59 [PATCH 0/2] i2c: meson: add support for Meson G12A SoC i2c controller Jian Hu @ 2018-11-29 10:59 ` Jian Hu 2018-11-29 10:59 ` [PATCH 2/2] i2c: meson: add support for Meson G12A SoC I2C controller Jian Hu 2018-11-29 11:02 ` [PATCH 0/2] i2c: meson: add support for Meson G12A SoC i2c controller Jerome Brunet 2 siblings, 0 replies; 10+ messages in thread From: Jian Hu @ 2018-11-29 10:59 UTC (permalink / raw) To: Jerome Brunet, Neil Armstrong Cc: Jian Hu, Kevin Hilman, Carlo Caione, Rob Herring, Martin Blumenstingl, Michael Turquette, Stephen Boyd, Wolfram Sang, Mark Rutland, Jianxin Pan, Hanjie Lin, linux-amlogic, linux-i2c, linux-arm-kernel, linux-kernel, devicetree Add Meson G12A SoC i2c controller compatible string Signed-off-by: Jian Hu <jian.hu@amlogic.com> --- Documentation/devicetree/bindings/i2c/i2c-meson.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/i2c/i2c-meson.txt b/Documentation/devicetree/bindings/i2c/i2c-meson.txt index 13d410d..795bc12 100644 --- a/Documentation/devicetree/bindings/i2c/i2c-meson.txt +++ b/Documentation/devicetree/bindings/i2c/i2c-meson.txt @@ -5,6 +5,7 @@ Required properties: "amlogic,meson6-i2c" for Meson8 and compatible SoCs "amlogic,meson-gxbb-i2c" for GXBB and compatible SoCs "amlogic,meson-axg-i2c"for AXG and compatible SoCs + "amlogic,meson-g12a-i2c" for G12A and compatible SoCs - reg: physical address and length of the device registers - interrupts: a single interrupt specifier -- 1.9.1 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 2/2] i2c: meson: add support for Meson G12A SoC I2C controller 2018-11-29 10:59 [PATCH 0/2] i2c: meson: add support for Meson G12A SoC i2c controller Jian Hu 2018-11-29 10:59 ` [PATCH 1/2] dt-bindings: i2c: meson: add Meson G12A SoC i2c compatible string Jian Hu @ 2018-11-29 10:59 ` Jian Hu 2018-11-29 11:26 ` Neil Armstrong 2018-11-29 11:02 ` [PATCH 0/2] i2c: meson: add support for Meson G12A SoC i2c controller Jerome Brunet 2 siblings, 1 reply; 10+ messages in thread From: Jian Hu @ 2018-11-29 10:59 UTC (permalink / raw) To: Jerome Brunet, Neil Armstrong Cc: Jian Hu, Kevin Hilman, Carlo Caione, Rob Herring, Martin Blumenstingl, Michael Turquette, Stephen Boyd, Wolfram Sang, Mark Rutland, Jianxin Pan, Hanjie Lin, linux-amlogic, linux-i2c, linux-arm-kernel, linux-kernel, devicetree Add compatible and data for G12A I2C controller. Signed-off-by: Jian Hu <jian.hu@amlogic.com> --- drivers/i2c/busses/i2c-meson.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/i2c/busses/i2c-meson.c b/drivers/i2c/busses/i2c-meson.c index 90f5d04..b86eed7 100644 --- a/drivers/i2c/busses/i2c-meson.c +++ b/drivers/i2c/busses/i2c-meson.c @@ -462,10 +462,15 @@ static int meson_i2c_remove(struct platform_device *pdev) .div_factor = 3, }; +static const struct meson_i2c_data i2c_g12a_data = { + .div_factor = 3, +}; + static const struct of_device_id meson_i2c_match[] = { { .compatible = "amlogic,meson6-i2c", .data = &i2c_meson6_data }, { .compatible = "amlogic,meson-gxbb-i2c", .data = &i2c_gxbb_data }, { .compatible = "amlogic,meson-axg-i2c", .data = &i2c_axg_data }, + { .compatible = "amlogic,meson-g12a-i2c", .data = &i2c_g12a_data }, {}, }; -- 1.9.1 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH 2/2] i2c: meson: add support for Meson G12A SoC I2C controller 2018-11-29 10:59 ` [PATCH 2/2] i2c: meson: add support for Meson G12A SoC I2C controller Jian Hu @ 2018-11-29 11:26 ` Neil Armstrong 2018-11-29 12:18 ` Jian Hu 0 siblings, 1 reply; 10+ messages in thread From: Neil Armstrong @ 2018-11-29 11:26 UTC (permalink / raw) To: Jian Hu, Jerome Brunet Cc: Kevin Hilman, Carlo Caione, Rob Herring, Martin Blumenstingl, Michael Turquette, Stephen Boyd, Wolfram Sang, Mark Rutland, Jianxin Pan, Hanjie Lin, linux-amlogic, linux-i2c, linux-arm-kernel, linux-kernel, devicetree On 29/11/2018 11:59, Jian Hu wrote: > Add compatible and data for G12A I2C controller. > > Signed-off-by: Jian Hu <jian.hu@amlogic.com> > --- > drivers/i2c/busses/i2c-meson.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/i2c/busses/i2c-meson.c b/drivers/i2c/busses/i2c-meson.c > index 90f5d04..b86eed7 100644 > --- a/drivers/i2c/busses/i2c-meson.c > +++ b/drivers/i2c/busses/i2c-meson.c > @@ -462,10 +462,15 @@ static int meson_i2c_remove(struct platform_device *pdev) > .div_factor = 3, > }; > > +static const struct meson_i2c_data i2c_g12a_data = { > + .div_factor = 3, Especially if the div_factor is the same as AXG. If you have some other fixes for G12a in the pipe, you will add the new compatible and meson_i2c_data later, for the div_factor, simply use the axg struct and compatible. Neil > +}; > + > static const struct of_device_id meson_i2c_match[] = { > { .compatible = "amlogic,meson6-i2c", .data = &i2c_meson6_data }, > { .compatible = "amlogic,meson-gxbb-i2c", .data = &i2c_gxbb_data }, > { .compatible = "amlogic,meson-axg-i2c", .data = &i2c_axg_data }, > + { .compatible = "amlogic,meson-g12a-i2c", .data = &i2c_g12a_data }, > {}, > }; > > ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 2/2] i2c: meson: add support for Meson G12A SoC I2C controller 2018-11-29 11:26 ` Neil Armstrong @ 2018-11-29 12:18 ` Jian Hu 0 siblings, 0 replies; 10+ messages in thread From: Jian Hu @ 2018-11-29 12:18 UTC (permalink / raw) To: Neil Armstrong, Jerome Brunet Cc: Kevin Hilman, Carlo Caione, Rob Herring, Martin Blumenstingl, Michael Turquette, Stephen Boyd, Wolfram Sang, Mark Rutland, Jianxin Pan, Hanjie Lin, linux-amlogic, linux-i2c, linux-arm-kernel, linux-kernel, devicetree Hi Neil, On 2018/11/29 19:26, Neil Armstrong wrote: > On 29/11/2018 11:59, Jian Hu wrote: >> Add compatible and data for G12A I2C controller. >> >> Signed-off-by: Jian Hu <jian.hu@amlogic.com> >> --- >> drivers/i2c/busses/i2c-meson.c | 5 +++++ >> 1 file changed, 5 insertions(+) >> >> diff --git a/drivers/i2c/busses/i2c-meson.c b/drivers/i2c/busses/i2c-meson.c >> index 90f5d04..b86eed7 100644 >> --- a/drivers/i2c/busses/i2c-meson.c >> +++ b/drivers/i2c/busses/i2c-meson.c >> @@ -462,10 +462,15 @@ static int meson_i2c_remove(struct platform_device *pdev) >> .div_factor = 3, >> }; >> >> +static const struct meson_i2c_data i2c_g12a_data = { >> + .div_factor = 3, > > Especially if the div_factor is the same as AXG. > > If you have some other fixes for G12a in the pipe, you will add the new compatible and meson_i2c_data later, > for the div_factor, simply use the axg struct and compatible. > > Neil > For axg and g12a SoC, the div_factor is the same, and I have confirmed that they share the same IP. I prefer g12a uses axg's compatible and data if it is reasonable. I will just submit the i2c controller node in meson-g12a.dtsi. >> +}; >> + >> static const struct of_device_id meson_i2c_match[] = { >> { .compatible = "amlogic,meson6-i2c", .data = &i2c_meson6_data }, >> { .compatible = "amlogic,meson-gxbb-i2c", .data = &i2c_gxbb_data }, >> { .compatible = "amlogic,meson-axg-i2c", .data = &i2c_axg_data }, >> + { .compatible = "amlogic,meson-g12a-i2c", .data = &i2c_g12a_data }, >> {}, >> }; >> >> > > . > ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 0/2] i2c: meson: add support for Meson G12A SoC i2c controller 2018-11-29 10:59 [PATCH 0/2] i2c: meson: add support for Meson G12A SoC i2c controller Jian Hu 2018-11-29 10:59 ` [PATCH 1/2] dt-bindings: i2c: meson: add Meson G12A SoC i2c compatible string Jian Hu 2018-11-29 10:59 ` [PATCH 2/2] i2c: meson: add support for Meson G12A SoC I2C controller Jian Hu @ 2018-11-29 11:02 ` Jerome Brunet 2018-11-29 11:55 ` Jian Hu 2 siblings, 1 reply; 10+ messages in thread From: Jerome Brunet @ 2018-11-29 11:02 UTC (permalink / raw) To: Jian Hu, Neil Armstrong Cc: Kevin Hilman, Carlo Caione, Rob Herring, Martin Blumenstingl, Michael Turquette, Stephen Boyd, Wolfram Sang, Mark Rutland, Jianxin Pan, Hanjie Lin, linux-amlogic, linux-i2c, linux-arm-kernel, linux-kernel, devicetree 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(+) > ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 0/2] i2c: meson: add support for Meson G12A SoC i2c controller 2018-11-29 11:02 ` [PATCH 0/2] i2c: meson: add support for Meson G12A SoC i2c controller Jerome Brunet @ 2018-11-29 11:55 ` Jian Hu 2018-12-11 20:36 ` Wolfram Sang 0 siblings, 1 reply; 10+ messages in thread From: Jian Hu @ 2018-11-29 11:55 UTC (permalink / raw) To: Jerome Brunet, Neil Armstrong Cc: Kevin Hilman, Carlo Caione, Rob Herring, Martin Blumenstingl, Michael Turquette, Stephen Boyd, Wolfram Sang, Mark Rutland, Jianxin Pan, Hanjie Lin, linux-amlogic, linux-i2c, linux-arm-kernel, linux-kernel, devicetree 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(+) >> > > > . > ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 0/2] i2c: meson: add support for Meson G12A SoC i2c controller 2018-11-29 11:55 ` Jian Hu @ 2018-12-11 20:36 ` Wolfram Sang 2018-12-11 21:41 ` Kevin Hilman 0 siblings, 1 reply; 10+ messages in thread From: Wolfram Sang @ 2018-12-11 20:36 UTC (permalink / raw) To: Jian Hu Cc: Jerome Brunet, Neil Armstrong, Kevin Hilman, Carlo Caione, Rob Herring, Martin Blumenstingl, Michael Turquette, Stephen Boyd, Mark Rutland, Jianxin Pan, Hanjie Lin, linux-amlogic, linux-i2c, linux-arm-kernel, linux-kernel, devicetree [-- Attachment #1: Type: text/plain, Size: 483 bytes --] > 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. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 0/2] i2c: meson: add support for Meson G12A SoC i2c controller 2018-12-11 20:36 ` Wolfram Sang @ 2018-12-11 21:41 ` Kevin Hilman 2018-12-11 21:45 ` Wolfram Sang 0 siblings, 1 reply; 10+ messages in thread From: Kevin Hilman @ 2018-12-11 21:41 UTC (permalink / raw) To: Wolfram Sang, Jian Hu Cc: Jerome Brunet, Neil Armstrong, Carlo Caione, Rob Herring, Martin Blumenstingl, Michael Turquette, Stephen Boyd, Mark Rutland, Jianxin Pan, Hanjie Lin, linux-amlogic, linux-i2c, linux-arm-kernel, linux-kernel, devicetree 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 ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 0/2] i2c: meson: add support for Meson G12A SoC i2c controller 2018-12-11 21:41 ` Kevin Hilman @ 2018-12-11 21:45 ` Wolfram Sang 0 siblings, 0 replies; 10+ messages in thread From: Wolfram Sang @ 2018-12-11 21:45 UTC (permalink / raw) To: Kevin Hilman Cc: Jian Hu, Jerome Brunet, Neil Armstrong, Carlo Caione, Rob Herring, Martin Blumenstingl, Michael Turquette, Stephen Boyd, Mark Rutland, Jianxin Pan, Hanjie Lin, linux-amlogic, linux-i2c, linux-arm-kernel, linux-kernel, devicetree [-- Attachment #1: Type: text/plain, Size: 913 bytes --] > >> 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. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2018-12-11 21:45 UTC | newest] Thread overview: 10+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2018-11-29 10:59 [PATCH 0/2] i2c: meson: add support for Meson G12A SoC i2c controller Jian Hu 2018-11-29 10:59 ` [PATCH 1/2] dt-bindings: i2c: meson: add Meson G12A SoC i2c compatible string Jian Hu 2018-11-29 10:59 ` [PATCH 2/2] i2c: meson: add support for Meson G12A SoC I2C controller Jian Hu 2018-11-29 11:26 ` Neil Armstrong 2018-11-29 12:18 ` Jian Hu 2018-11-29 11:02 ` [PATCH 0/2] i2c: meson: add support for Meson G12A SoC i2c controller Jerome Brunet 2018-11-29 11:55 ` Jian Hu 2018-12-11 20:36 ` Wolfram Sang 2018-12-11 21:41 ` Kevin Hilman 2018-12-11 21:45 ` Wolfram Sang
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).