diff mbox

[U-Boot,v2,14/17] dm: i2c: dts: Add an I2C bus for sandbox

Message ID 1415727993-22032-15-git-send-email-sjg@chromium.org
State Superseded
Delegated to: Simon Glass
Headers show

Commit Message

Simon Glass Nov. 11, 2014, 5:46 p.m. UTC
Add an I2C bus to the device tree, with an EEPROM emulator attached to one
of the addresses.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v2: None

 arch/sandbox/dts/sandbox.dts | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

Comments

Tom Rini Nov. 17, 2014, 12:47 a.m. UTC | #1
On Tue, Nov 11, 2014 at 10:46:30AM -0700, Simon Glass wrote:

> Add an I2C bus to the device tree, with an EEPROM emulator attached to one
> of the addresses.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>

Reviewed-by: Tom Rini <trini@ti.com>
Heiko Schocher Nov. 17, 2014, 6:40 a.m. UTC | #2
Hello Simon,

Am 11.11.2014 18:46, schrieb Simon Glass:
> Add an I2C bus to the device tree, with an EEPROM emulator attached to one
> of the addresses.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
>
> Changes in v2: None
>
>   arch/sandbox/dts/sandbox.dts | 17 +++++++++++++++++
>   1 file changed, 17 insertions(+)

Acked-by: Heiko Schocher <hs@denx.de>

bye,
Heiko
Masahiro Yamada Nov. 19, 2014, 8:29 a.m. UTC | #3
Hi Simon,



On Tue, 11 Nov 2014 10:46:30 -0700
Simon Glass <sjg@chromium.org> wrote:

> diff --git a/arch/sandbox/dts/sandbox.dts b/arch/sandbox/dts/sandbox.dts
> index 7614715..11748ae 100644
> --- a/arch/sandbox/dts/sandbox.dts
> +++ b/arch/sandbox/dts/sandbox.dts
> @@ -134,6 +134,23 @@
>  		num-gpios = <20>;
>  	};
>  
> +	i2c@0 {
> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +		reg = <0>;
> +		compatible = "sandbox,i2c";
> +		clock-frequency = <400000>;
> +		eeprom@2c {
> +			reg = <0x2c>;
> +			compatible = "i2c-eeprom";
> +			emul {
> +				compatible = "sandbox,i2c-eeprom";
> +				sandbox,filename = "i2c.bin";
> +				sandbox,size = <128>;
> +			};
> +		};
> +	};
> +
>  	spi@0 {
>  		#address-cells = <1>;
>  		#size-cells = <0>;




It is not clear to me why "sandbox,i2c-eeprom"  is not placed right under "i2c@0".

What does the intermediate node "eeprom@2c" do?
I checked drivers/misc/i2c_eeprom.c but it does not seem to do anything.


Best Regards
Masahiro Yamada
Simon Glass Nov. 19, 2014, 10:36 a.m. UTC | #4
Hi Masahiro,

On 19 November 2014 08:29, Masahiro Yamada <yamada.m@jp.panasonic.com> wrote:
> Hi Simon,
>
>
>
> On Tue, 11 Nov 2014 10:46:30 -0700
> Simon Glass <sjg@chromium.org> wrote:
>
>> diff --git a/arch/sandbox/dts/sandbox.dts b/arch/sandbox/dts/sandbox.dts
>> index 7614715..11748ae 100644
>> --- a/arch/sandbox/dts/sandbox.dts
>> +++ b/arch/sandbox/dts/sandbox.dts
>> @@ -134,6 +134,23 @@
>>               num-gpios = <20>;
>>       };
>>
>> +     i2c@0 {
>> +             #address-cells = <1>;
>> +             #size-cells = <0>;
>> +             reg = <0>;
>> +             compatible = "sandbox,i2c";
>> +             clock-frequency = <400000>;
>> +             eeprom@2c {
>> +                     reg = <0x2c>;
>> +                     compatible = "i2c-eeprom";
>> +                     emul {
>> +                             compatible = "sandbox,i2c-eeprom";
>> +                             sandbox,filename = "i2c.bin";
>> +                             sandbox,size = <128>;
>> +                     };
>> +             };
>> +     };
>> +
>>       spi@0 {
>>               #address-cells = <1>;
>>               #size-cells = <0>;
>
>
>
>
> It is not clear to me why "sandbox,i2c-eeprom"  is not placed right under "i2c@0".
>
> What does the intermediate node "eeprom@2c" do?
> I checked drivers/misc/i2c_eeprom.c but it does not seem to do anything.

Yes it doesn't yet, but could do in future.

The intermediate node is for the EEPROM driver, which we can build out
as needed. The emul node connects the sandbox EEPROM emulation to the
other side of the driver. On real hardware we don't have this, but we
must attach emulators to devices (SPI, I2C, etc.) when using sandbox.

Regards,
Simon
diff mbox

Patch

diff --git a/arch/sandbox/dts/sandbox.dts b/arch/sandbox/dts/sandbox.dts
index 7614715..11748ae 100644
--- a/arch/sandbox/dts/sandbox.dts
+++ b/arch/sandbox/dts/sandbox.dts
@@ -134,6 +134,23 @@ 
 		num-gpios = <20>;
 	};
 
+	i2c@0 {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		reg = <0>;
+		compatible = "sandbox,i2c";
+		clock-frequency = <400000>;
+		eeprom@2c {
+			reg = <0x2c>;
+			compatible = "i2c-eeprom";
+			emul {
+				compatible = "sandbox,i2c-eeprom";
+				sandbox,filename = "i2c.bin";
+				sandbox,size = <128>;
+			};
+		};
+	};
+
 	spi@0 {
 		#address-cells = <1>;
 		#size-cells = <0>;