[MinnowBoard] [edk2] i2cdetect inconsistency/problem
Gerard Bucas
gerard.b at tekmagic.net
Mon Aug 17 23:11:28 UTC 2015
Hi again Bill
Sorry to be a pain but I'm still not clear on why those devices are detected i2c bus 4 (yocto below) when minnowBoard does NOT have all those i2c devices on that bus!?
You wrote:
They are detected because both kernels are configured to support i2c.
So yes, it is a function of the OS configuration.
I DO know/realise that (as I configured the yocto kernel/build!).
Thanks for your help so far..!
Regards
Gerard
> On Aug 17, 2015, at 7:02 PM, Bill Traynor <btraynor at gmail.com> wrote:
>
>> On Mon, Aug 17, 2015 at 4:56 PM, Gerard Bucas <gerard.b at tekmagic.net> wrote:
>> Hi Bill
>>
>> Thanks for your fast response!
>>
>> You are right of course BUT why does one need the "Synopsis Designware I2c adapter"!? As I don't really know what it is, I assume I don't need it!!
>>
>> The fact that Ubuntu includes it, of course explains why it shows those extra two buses in ubuntu. So that answers my first question!
>> How about my 2nd queston? BOTH yocto and Ubuntu show the same i2c devices detected on the "5th i2c bus (# 4 in yocto and #6 in Ubuntu which makes sense when one compensates for the two Designware buses detected)?
>>
>> Including my questions again below, so you don't have to go and search for it.
>>
>> I have two questions:
>>
>> 1. Where does i2cdetect get the "i2c adapter" bus names? How can they be different with same firmware & hardware & linux kernel (between yocto & Ubuntu)? Is this from some firmware or OS config? OK - explained by the fact that Ubuntu includes two "Synopsis Designware" i2c buses.
>
> The i2c adapter bus names are directly from the Linux driver for the
> bus. For example, "Synopsys DesignWare I2C adapter" comes from:
>
> ../drivers/i2c/busses/i2c-designware-platdrv.c
>
>> 2. Why are all those i2c devices detected by BOTH yocto linux and Ubuntu!?
>> Where do they come from? Is this due to some firmware or OS config?
>
> They are detected because both kernels are configured to support i2c.
> So yes, it is a function of the OS configuration.
>
> "i2cdetect is a userspace program to scan an I2C bus for devices. It
> outputs a table with the list of detected devices on the specified
> bus." You are asking i2cdetect to list all of the devices on the
> i2cbus because you're not supplying a specific bus as a parameter.
> See man i2cdetect for more info.
>
> I hope that helps.
>
> If you're interested in i2c support in the linux kernel, see the
> documentation in the source:
>
> https://www.kernel.org/doc/Documentation/i2c/
>
>>
>> Below are the i2cdetect outputs from both my yocto and Ubuntu OS's (NOTE:
>> both are using the linux 3.19 kernel):
>>
>> YOCTO:
>> # uname -a
>> Linux intel-corei7-64 3.19.5-yocto-standard #1 SMP PREEMPT Fri Aug 14
>> 00:21:30 UTC 2015 x86_64 GNU/Linux
>>
>> #modprobe i2c-dev
>> #i2cdetect -l
>> i2c-0 i2c i915 gmbus ssc I2C adapter
>> i2c-1 i2c i915 gmbus vga I2C adapter
>> i2c-2 i2c i915 gmbus panel I2C adapter
>> i2c-3 i2c i915 gmbus dpc I2C adapter
>> i2c-4 i2c i915 gmbus dpb I2C adapter
>> i2c-5 i2c i915 gmbus dpd I2C adapter
>> i2c-6 i2c DPDDC-B I2C adapter
>>
>> #i2cdetect -y 4
>> 0 1 2 3 4 5 6 7 8 9 a b c d e f
>> 00: -- -- -- -- -- -- -- -- -- -- -- -- --
>> 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
>> 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
>> 30: 30 -- -- -- -- -- -- 37 -- -- 3a -- -- -- -- --
>> 40: -- -- -- -- -- -- -- -- -- -- 4a 4b -- -- -- --
>> 50: 50 51 52 53 54 55 56 57 -- -- -- -- -- -- -- --
>> 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
>> 70: -- -- -- -- -- -- -- --
>>
>> UBUNTU:
>> # uname -a
>> Linux tekmagic 3.19.0-26-generic #28~14.04.1-Ubuntu SMP Wed Aug 12 14:09:17 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
>>
>> # modprobe i2c-dev
>>
>> # i2cdetect -l
>> i2c-0 i2c Synopsys DesignWare I2C adapter I2C adapter
>> i2c-1 i2c Synopsys DesignWare I2C adapter I2C adapter
>> i2c-2 i2c i915 gmbus ssc I2C adapter
>> i2c-3 i2c i915 gmbus vga I2C adapter
>> i2c-4 i2c i915 gmbus panel I2C adapter
>> i2c-5 i2c i915 gmbus dpc I2C adapter
>> i2c-6 i2c i915 gmbus dpb I2C adapter
>> i2c-7 i2c i915 gmbus dpd I2C adapter
>> i2c-8 i2c DPDDC-B I2C adapter
>>
>> # i2cdetect -y 6
>> 0 1 2 3 4 5 6 7 8 9 a b c d e f
>> 00: -- -- -- -- -- -- -- -- -- -- -- -- --
>> 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
>> 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
>> 30: 30 -- -- -- -- -- -- 37 -- -- 3a -- -- -- -- --
>> 40: -- -- -- -- -- -- -- -- -- -- 4a 4b -- -- -- --
>> 50: 50 51 52 53 54 55 56 57 -- -- -- -- -- -- -- --
>> 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
>> 70: -- -- -- -- -- -- -- --
>>
>> Thanks!!
>>
>> Gerard
>>
>>
>> -----Original Message-----
>> From: Bill Traynor [mailto:btraynor at gmail.com]
>> Sent: Monday, August 17, 2015 4:38 PM
>> To: gerard.b at tekmagic.net; MinnowBoard Development and Community Discussion <elinux-minnowboard at lists.elinux.org>
>> Subject: Re: [MinnowBoard] [edk2] i2cdetect inconsistency/problem
>>
>> Are you using identical kernel configurations for each build?
>>
>> It looks to me like you may not have configured for the Synopsys DesignWare I2C adapter in the Yocto build.
>>
>>
>>> On Mon, Aug 17, 2015 at 4:30 PM, Gerard Bucas <gerard.b at tekmagic.net> wrote:
>>> Synopsys DesignWare I2C adapter
>>
More information about the elinux-MinnowBoard
mailing list