linux-i2c.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v6 3/4] ARM: dts: mvebu: Introduce a new compatible string for mv64xxx-i2c
@ 2013-08-22 14:19 Gregory CLEMENT
       [not found] ` <1377181169-17483-1-git-send-email-gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
  0 siblings, 1 reply; 7+ messages in thread
From: Gregory CLEMENT @ 2013-08-22 14:19 UTC (permalink / raw)
  To: Wolfram Sang, linux-i2c-u79uwXL29TY76Z2rM5mHXA, Mark Rutland,
	devicetree-u79uwXL29TY76Z2rM5mHXA, Jason Cooper, Andrew Lunn,
	Gregory CLEMENT
  Cc: Thomas Petazzoni, Ezequiel Garcia, Sebastian Hesselbarth,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Nicolas Pitre,
	Lior Amsalem, Maen Suleiman, Tawfik Bayouk, Shadi Ammouri,
	Eran Ben-Avi, Yehuda Yitschak, Nadav Haklai, Ike Pan,
	Chris Van Hoof, Dan Frazier, Leif Lindholm, Jon Masters,
	David Marlin

The mv64xxx-i2c embedded in the Armada XP have a new feature to
offload i2c transaction. This new version of the IP come also with
some errata. This lead to the introduction to a another compatible
string.

This commit updates the Device Tree binding documentation accordingly.

Signed-off-by: Gregory CLEMENT <gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
---
 Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt b/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt
index 6113f92..aeff1e2 100644
--- a/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt
@@ -5,6 +5,8 @@ Required properties :
 
  - reg             : Offset and length of the register set for the device
  - compatible      : Should be "marvell,mv64xxx-i2c" or "allwinner,sun4i-i2c"
+                     or for controller which support the I2C Transaction
+                     Generator "marvell,mv64xxx-i2c","marvell,mv7230-i2c"
  - interrupts      : The interrupt number
 
 Optional properties :
@@ -20,3 +22,12 @@ Examples:
 		interrupts = <29>;
 		clock-frequency = <100000>;
 	};
+
+For a controller which support the I2C Transaction Generator:
+
+	i2c@11000 {
+		compatible = "marvell,mv78230-i2c", "marvell,mv64xxx-i2c";
+		reg = <0x11000 0x100>;
+		interrupts = <29>;
+		clock-frequency = <100000>;
+	};
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH v6 4/4] ARM: dts: mvebu: Update with the new compatible string for mv64xxx-i2c
       [not found] ` <1377181169-17483-1-git-send-email-gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
@ 2013-08-22 14:19   ` Gregory CLEMENT
       [not found]     ` <1377181169-17483-2-git-send-email-gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
  2013-08-22 16:22   ` [PATCH v6 3/4] ARM: dts: mvebu: Introduce a " Wolfram Sang
  1 sibling, 1 reply; 7+ messages in thread
From: Gregory CLEMENT @ 2013-08-22 14:19 UTC (permalink / raw)
  To: Wolfram Sang, linux-i2c-u79uwXL29TY76Z2rM5mHXA, Mark Rutland,
	devicetree-u79uwXL29TY76Z2rM5mHXA, Jason Cooper, Andrew Lunn,
	Gregory CLEMENT
  Cc: Thomas Petazzoni, Ezequiel Garcia, Sebastian Hesselbarth,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Nicolas Pitre,
	Lior Amsalem, Maen Suleiman, Tawfik Bayouk, Shadi Ammouri,
	Eran Ben-Avi, Yehuda Yitschak, Nadav Haklai, Ike Pan,
	Chris Van Hoof, Dan Frazier, Leif Lindholm, Jon Masters,
	David Marlin

The mv64xxx-i2c embedded in the Armada XP have a new feature to
offload i2c transaction. This new version of the IP come also with
some errata. This lead to the introduction to a another compatible
string.

This commit split the i2c information into armada-370.dtsi and
armada-xp.dtsi. Most of the data remains the same and stay in the
common file Armada-370-xp.dtsi. With this new feature the size of the
registers are bigger for Armada XP and the new compatible string is
used.

Signed-off-by: Gregory CLEMENT <gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
---
 arch/arm/boot/dts/armada-370-xp.dtsi |  2 --
 arch/arm/boot/dts/armada-370.dtsi    |  8 ++++++++
 arch/arm/boot/dts/armada-xp.dtsi     | 10 ++++++++++
 3 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/armada-370-xp.dtsi b/arch/arm/boot/dts/armada-370-xp.dtsi
index 90b1176..d8b24c9 100644
--- a/arch/arm/boot/dts/armada-370-xp.dtsi
+++ b/arch/arm/boot/dts/armada-370-xp.dtsi
@@ -121,7 +121,6 @@
 
 			i2c0: i2c@11000 {
 				compatible = "marvell,mv64xxx-i2c";
-				reg = <0x11000 0x20>;
 				#address-cells = <1>;
 				#size-cells = <0>;
 				interrupts = <31>;
@@ -132,7 +131,6 @@
 
 			i2c1: i2c@11100 {
 				compatible = "marvell,mv64xxx-i2c";
-				reg = <0x11100 0x20>;
 				#address-cells = <1>;
 				#size-cells = <0>;
 				interrupts = <32>;
diff --git a/arch/arm/boot/dts/armada-370.dtsi b/arch/arm/boot/dts/armada-370.dtsi
index fa3dfc6..0e2eefa 100644
--- a/arch/arm/boot/dts/armada-370.dtsi
+++ b/arch/arm/boot/dts/armada-370.dtsi
@@ -155,6 +155,14 @@
 				};
 			};
 
+			i2c0: i2c@11000 {
+				reg = <0x11000 0x20>;
+			};
+
+			i2c1: i2c@11100 {
+				reg = <0x11100 0x20>;
+			};
+
 			usb@50000 {
 				clocks = <&coreclk 0>;
 			};
diff --git a/arch/arm/boot/dts/armada-xp.dtsi b/arch/arm/boot/dts/armada-xp.dtsi
index 416eb94..e1f2547 100644
--- a/arch/arm/boot/dts/armada-xp.dtsi
+++ b/arch/arm/boot/dts/armada-xp.dtsi
@@ -138,6 +138,16 @@
 				};
 			};
 
+			i2c0: i2c@11000 {
+				compatible = "marvell,mv78230-i2c", "marvell,mv64xxx-i2c";
+				reg = <0x11000 0x100>;
+			};
+
+			i2c1: i2c@11100 {
+				compatible = "marvell,mv78230-i2c", "marvell,mv64xxx-i2c";
+				reg = <0x11100 0x100>;
+			};
+
 			usb@50000 {
 				clocks = <&gateclk 18>;
 			};
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH v6 3/4] ARM: dts: mvebu: Introduce a new compatible string for mv64xxx-i2c
       [not found] ` <1377181169-17483-1-git-send-email-gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
  2013-08-22 14:19   ` [PATCH v6 4/4] ARM: dts: mvebu: Update with the " Gregory CLEMENT
@ 2013-08-22 16:22   ` Wolfram Sang
  2013-08-23  7:07     ` Gregory CLEMENT
  1 sibling, 1 reply; 7+ messages in thread
From: Wolfram Sang @ 2013-08-22 16:22 UTC (permalink / raw)
  To: Gregory CLEMENT
  Cc: linux-i2c-u79uwXL29TY76Z2rM5mHXA, Mark Rutland,
	devicetree-u79uwXL29TY76Z2rM5mHXA, Jason Cooper, Andrew Lunn,
	Thomas Petazzoni, Ezequiel Garcia, Sebastian Hesselbarth,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Nicolas Pitre,
	Lior Amsalem, Maen Suleiman, Tawfik Bayouk, Shadi Ammouri,
	Eran Ben-Avi, Yehuda Yitschak, Nadav Haklai, Ike Pan,
	Chris Van Hoof, Dan Frazier, Leif Lindholm, Jon Masters,
	David Marlin

[-- Attachment #1: Type: text/plain, Size: 1145 bytes --]


> --- a/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt
> +++ b/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt
> @@ -5,6 +5,8 @@ Required properties :
>  
>   - reg             : Offset and length of the register set for the device
>   - compatible      : Should be "marvell,mv64xxx-i2c" or "allwinner,sun4i-i2c"
> +                     or for controller which support the I2C Transaction
> +                     Generator "marvell,mv64xxx-i2c","marvell,mv7230-i2c"

Too complicated IMO:
+			or "marvell,mv7230-i2c".

DT creators don't need to know about transaction generators. They just
supply the compatible string and the driver knows the details.

> +For a controller which support the I2C Transaction Generator:

"For the Armada XP" - there might be later IP cores on later SoC with
transaction generators and different errata. They will just get a new
compatible and the driver know the details.

> +
> +	i2c@11000 {
> +		compatible = "marvell,mv78230-i2c", "marvell,mv64xxx-i2c";
> +		reg = <0x11000 0x100>;
> +		interrupts = <29>;
> +		clock-frequency = <100000>;
> +	};
> -- 
> 1.8.1.2
> 

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v6 3/4] ARM: dts: mvebu: Introduce a new compatible string for mv64xxx-i2c
  2013-08-22 16:22   ` [PATCH v6 3/4] ARM: dts: mvebu: Introduce a " Wolfram Sang
@ 2013-08-23  7:07     ` Gregory CLEMENT
  0 siblings, 0 replies; 7+ messages in thread
From: Gregory CLEMENT @ 2013-08-23  7:07 UTC (permalink / raw)
  To: Wolfram Sang
  Cc: linux-i2c-u79uwXL29TY76Z2rM5mHXA, Mark Rutland,
	devicetree-u79uwXL29TY76Z2rM5mHXA, Jason Cooper, Andrew Lunn,
	Thomas Petazzoni, Ezequiel Garcia, Sebastian Hesselbarth,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Nicolas Pitre,
	Lior Amsalem, Maen Suleiman, Tawfik Bayouk, Shadi Ammouri,
	Eran Ben-Avi, Yehuda Yitschak, Nadav Haklai, Ike Pan,
	Chris Van Hoof, Dan Frazier, Leif Lindholm, Jon Masters,
	David Marlin

On 22/08/2013 18:22, Wolfram Sang wrote:
> 
>> --- a/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt
>> +++ b/Documentation/devicetree/bindings/i2c/i2c-mv64xxx.txt
>> @@ -5,6 +5,8 @@ Required properties :
>>  
>>   - reg             : Offset and length of the register set for the device
>>   - compatible      : Should be "marvell,mv64xxx-i2c" or "allwinner,sun4i-i2c"
>> +                     or for controller which support the I2C Transaction
>> +                     Generator "marvell,mv64xxx-i2c","marvell,mv7230-i2c"
> 
> Too complicated IMO:
> +			or "marvell,mv7230-i2c".
> 
> DT creators don't need to know about transaction generators. They just
> supply the compatible string and the driver knows the details.
> 
>> +For a controller which support the I2C Transaction Generator:
> 
> "For the Armada XP" - there might be later IP cores on later SoC with
> transaction generators and different errata. They will just get a new
> compatible and the driver know the details.

You're right, I remained to close to my first version when it was a flag
and not a compatible name.

I will follow all your suggestions. A new version is coming soon.

Thanks,

> 
>> +
>> +	i2c@11000 {
>> +		compatible = "marvell,mv78230-i2c", "marvell,mv64xxx-i2c";
>> +		reg = <0x11000 0x100>;
>> +		interrupts = <29>;
>> +		clock-frequency = <100000>;
>> +	};
>> -- 
>> 1.8.1.2
>>


-- 
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v6 4/4] ARM: dts: mvebu: Update with the new compatible string for mv64xxx-i2c
       [not found]     ` <1377181169-17483-2-git-send-email-gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
@ 2013-09-02 11:44       ` Gregory CLEMENT
       [not found]         ` <52247A2D.9090400-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
  0 siblings, 1 reply; 7+ messages in thread
From: Gregory CLEMENT @ 2013-09-02 11:44 UTC (permalink / raw)
  To: Jason Cooper
  Cc: Gregory CLEMENT, Wolfram Sang, linux-i2c-u79uwXL29TY76Z2rM5mHXA,
	Mark Rutland, devicetree-u79uwXL29TY76Z2rM5mHXA, Andrew Lunn,
	Thomas Petazzoni, Ezequiel Garcia, Sebastian Hesselbarth,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Nicolas Pitre,
	Lior Amsalem, Maen Suleiman, Tawfik Bayouk, Shadi Ammouri,
	Eran Ben-Avi, Yehuda Yitschak, Nadav Haklai, Ike Pan,
	Chris Van Hoof, Dan Frazier, Leif Lindholm, Jon Masters

Hi Jason,

Unless I missed it I didn't see this patch in your last pull request.
Wolfram took the 3 others patches and Mark Rutland agreed with the binding
introduced in the patch 3. So I think we are fine to take this patch
in mvebu.

Thanks,

On 22/08/2013 16:19, Gregory CLEMENT wrote:
> The mv64xxx-i2c embedded in the Armada XP have a new feature to
> offload i2c transaction. This new version of the IP come also with
> some errata. This lead to the introduction to a another compatible
> string.
> 
> This commit split the i2c information into armada-370.dtsi and
> armada-xp.dtsi. Most of the data remains the same and stay in the
> common file Armada-370-xp.dtsi. With this new feature the size of the
> registers are bigger for Armada XP and the new compatible string is
> used.
> 
> Signed-off-by: Gregory CLEMENT <gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
> ---
>  arch/arm/boot/dts/armada-370-xp.dtsi |  2 --
>  arch/arm/boot/dts/armada-370.dtsi    |  8 ++++++++
>  arch/arm/boot/dts/armada-xp.dtsi     | 10 ++++++++++
>  3 files changed, 18 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/armada-370-xp.dtsi b/arch/arm/boot/dts/armada-370-xp.dtsi
> index 90b1176..d8b24c9 100644
> --- a/arch/arm/boot/dts/armada-370-xp.dtsi
> +++ b/arch/arm/boot/dts/armada-370-xp.dtsi
> @@ -121,7 +121,6 @@
>  
>  			i2c0: i2c@11000 {
>  				compatible = "marvell,mv64xxx-i2c";
> -				reg = <0x11000 0x20>;
>  				#address-cells = <1>;
>  				#size-cells = <0>;
>  				interrupts = <31>;
> @@ -132,7 +131,6 @@
>  
>  			i2c1: i2c@11100 {
>  				compatible = "marvell,mv64xxx-i2c";
> -				reg = <0x11100 0x20>;
>  				#address-cells = <1>;
>  				#size-cells = <0>;
>  				interrupts = <32>;
> diff --git a/arch/arm/boot/dts/armada-370.dtsi b/arch/arm/boot/dts/armada-370.dtsi
> index fa3dfc6..0e2eefa 100644
> --- a/arch/arm/boot/dts/armada-370.dtsi
> +++ b/arch/arm/boot/dts/armada-370.dtsi
> @@ -155,6 +155,14 @@
>  				};
>  			};
>  
> +			i2c0: i2c@11000 {
> +				reg = <0x11000 0x20>;
> +			};
> +
> +			i2c1: i2c@11100 {
> +				reg = <0x11100 0x20>;
> +			};
> +
>  			usb@50000 {
>  				clocks = <&coreclk 0>;
>  			};
> diff --git a/arch/arm/boot/dts/armada-xp.dtsi b/arch/arm/boot/dts/armada-xp.dtsi
> index 416eb94..e1f2547 100644
> --- a/arch/arm/boot/dts/armada-xp.dtsi
> +++ b/arch/arm/boot/dts/armada-xp.dtsi
> @@ -138,6 +138,16 @@
>  				};
>  			};
>  
> +			i2c0: i2c@11000 {
> +				compatible = "marvell,mv78230-i2c", "marvell,mv64xxx-i2c";
> +				reg = <0x11000 0x100>;
> +			};
> +
> +			i2c1: i2c@11100 {
> +				compatible = "marvell,mv78230-i2c", "marvell,mv64xxx-i2c";
> +				reg = <0x11100 0x100>;
> +			};
> +
>  			usb@50000 {
>  				clocks = <&gateclk 18>;
>  			};
> 


-- 
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v6 4/4] ARM: dts: mvebu: Update with the new compatible string for mv64xxx-i2c
       [not found]         ` <52247A2D.9090400-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
@ 2013-09-02 17:25           ` Jason Cooper
  2013-09-03 12:36           ` Jason Cooper
  1 sibling, 0 replies; 7+ messages in thread
From: Jason Cooper @ 2013-09-02 17:25 UTC (permalink / raw)
  To: Gregory CLEMENT
  Cc: Wolfram Sang, linux-i2c-u79uwXL29TY76Z2rM5mHXA, Mark Rutland,
	devicetree-u79uwXL29TY76Z2rM5mHXA, Andrew Lunn, Thomas Petazzoni,
	Ezequiel Garcia, Sebastian Hesselbarth,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Nicolas Pitre,
	Lior Amsalem, Maen Suleiman, Tawfik Bayouk, Shadi Ammouri,
	Eran Ben-Avi, Yehuda Yitschak, Nadav Haklai, Ike Pan,
	Chris Van Hoof, Dan Frazier, Leif Lindholm, Jon Masters,
	David Marlin

On Mon, Sep 02, 2013 at 01:44:45PM +0200, Gregory CLEMENT wrote:
> Hi Jason,
> 
> Unless I missed it I didn't see this patch in your last pull request.
> Wolfram took the 3 others patches and Mark Rutland agreed with the binding
> introduced in the patch 3. So I think we are fine to take this patch
> in mvebu.

Ahh, good.  Thanks for keeping an eye on this.  I'll submit a PR tonight
or tomorrow.  And for the couple of patches remaining in
mvebu/fixes-non-critical...

thx,

Jason.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH v6 4/4] ARM: dts: mvebu: Update with the new compatible string for mv64xxx-i2c
       [not found]         ` <52247A2D.9090400-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
  2013-09-02 17:25           ` Jason Cooper
@ 2013-09-03 12:36           ` Jason Cooper
  1 sibling, 0 replies; 7+ messages in thread
From: Jason Cooper @ 2013-09-03 12:36 UTC (permalink / raw)
  To: Gregory CLEMENT
  Cc: Wolfram Sang, linux-i2c-u79uwXL29TY76Z2rM5mHXA, Mark Rutland,
	devicetree-u79uwXL29TY76Z2rM5mHXA, Andrew Lunn, Thomas Petazzoni,
	Ezequiel Garcia, Sebastian Hesselbarth,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r, Nicolas Pitre,
	Lior Amsalem, Maen Suleiman, Tawfik Bayouk, Shadi Ammouri,
	Eran Ben-Avi, Yehuda Yitschak, Nadav Haklai, Ike Pan,
	Chris Van Hoof, Dan Frazier, Leif Lindholm, Jon Masters,
	David Marlin

On Mon, Sep 02, 2013 at 01:44:45PM +0200, Gregory CLEMENT wrote:
> Hi Jason,
> 
> Unless I missed it I didn't see this patch in your last pull request.
> Wolfram took the 3 others patches and Mark Rutland agreed with the binding
> introduced in the patch 3. So I think we are fine to take this patch
> in mvebu.

Ok, I had dropped it before until the dust settled.  I've re-applied it
and will be sending the last pull shortly.

thx,

Jason.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2013-09-03 12:36 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-22 14:19 [PATCH v6 3/4] ARM: dts: mvebu: Introduce a new compatible string for mv64xxx-i2c Gregory CLEMENT
     [not found] ` <1377181169-17483-1-git-send-email-gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
2013-08-22 14:19   ` [PATCH v6 4/4] ARM: dts: mvebu: Update with the " Gregory CLEMENT
     [not found]     ` <1377181169-17483-2-git-send-email-gregory.clement-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
2013-09-02 11:44       ` Gregory CLEMENT
     [not found]         ` <52247A2D.9090400-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
2013-09-02 17:25           ` Jason Cooper
2013-09-03 12:36           ` Jason Cooper
2013-08-22 16:22   ` [PATCH v6 3/4] ARM: dts: mvebu: Introduce a " Wolfram Sang
2013-08-23  7:07     ` Gregory CLEMENT

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).