Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 25 May 2010 22:42:10 +0200
From:      Andreas Tobler <andreast-list@fgznet.ch>
To:        FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>
Subject:   Re: iic/i2c debugging on PowerMac
Message-ID:  <4BFC3622.50609@fgznet.ch>
In-Reply-To: <4BF5991A.9090602@fgznet.ch>
References:  <4BF58342.7010707@fgznet.ch>	<C2885CB4-252F-4354-8BF3-3865C5CCD63E@semihalf.com>	<4BF58FF6.4050202@fgznet.ch> <4BF5991A.9090602@fgznet.ch>

next in thread | previous in thread | raw e-mail | index | archive | help
On 20.05.10 22:18, Andreas Tobler wrote:
> On 20.05.10 21:39, Andreas Tobler wrote:
>> On 20.05.10 21:16, Rafal Jaworowski wrote:
>>>
>>> On 2010-05-20, at 20:45, Andreas Tobler wrote:
>>>
>>>> Hi,
>>>>
>>>> I'm trying to access (read/write) an i2c device on my G5. The
>>>> problem is, I do not know the right i2c address although I have it
>>>> from the device-tree, it's 0x15e.
>>>>
>>>> I read about the i2c utilitiy which requires the iic driver
>>>> compiled into the kernel. Done that and it seems it is there:
>>>>
>>>> unin0 iichb0 pnpinfo name=i2c compat=keywest-i2c iicbus0 iic0 at
>>>> addr=0 fcu0 pnpinfo name=fan compat=fcu at addr=0x15e
>>>>
>>>> But I do not have this device entry in /dev. Trying to create one
>>>> does not work. mknod /dev/iic0 c 103 0 mknod: /dev/iic0: No such
>>>> file or directory
>>>>
>>>> This is a netboot environment, might this be the cause of not being
>>>> able to create the device? Or do I have another issue?
>>>
>>> This shouldn't be related to the boot method.
>>>
>>> Do you see any failure output during iic attach (there should be a
>>> diag error)? If not try to intstrument the iic_probe() routine and
>>> see what happens.
>>
>> unin0:<Apple UniNorth System Controller>   on nexus0
>> unin0: Version 179
>> iichb0:<Keywest I2C controller>   mem 0xf8001000-0xf8001fff irq 42 on unin0
>> iichb0: [ITHREAD]
>> iicbus0:<OFW I2C bus>   on iichb0
>> iicbus0: iic identify
>> iic0: iic probe failure
>> iic0: addr: 0x8a
>> iicbus0:<unknown card>   at addr 0
>> iic1: iic probe failure
>> iic1: addr: 0x8a
>>
>> The same on this one:
>>
>> iichb1:<Keywest I2C controller>   mem 0x18000-0x18fff irq 282 on macio0
>> iichb1: [ITHREAD]
>> iicbus1:<OFW I2C bus>   on iichb1
>> iicbus1: iic identify
>> iic1: iic probe failure
>> iic1: addr: 0x8a
>> iicbus1:<unknown card>   at addr 0
>>
>> Hm, I suspect that either the kiic has an issue or the iicbus_get_addr
>> function is not working properly.
>
> Ok. I forced the iic_probe to accept the first device:
>
> iicbus0:<OFW I2C bus>  on iichb0
> iicbus0: iic identify
> iic0:<I2C generic I/O>  on iicbus0
>
> Fine.
>
> [andreast@bohrium] /home/andreast/>  i2c -s -v
> dev: /dev/iic0, addr: 0x0, r/w: r, offset: 0x00, width: 8, count: 1
> Error scanning I2C controller (/dev/iic0): Device not configured
>
> Hm. Going back upstairs, where is the iicbus_get_addr function
> implemented/defined?
>
> I'm lost in this area since a few days and I do not know if I opened a
> can of worms here. IOW, my thinking is ok, but I rely on things which do
> not work. (kiic, iic, iicbus?)
>
> Thanks for any hints!

Ok, no hints so far.

My original issue happens on the ppc64 tree. Now I switched to -CURRENT 
and I see the same behavior on my G4 powerbook. I added the iic driver 
and I can attach it but when I try to 'access' it I get the same message:

[andreast@wolfram] /home/andreast/> i2c -s
Error scanning I2C controller (/dev/iic0): Device not configured
Scanning I2C devices on /dev/iic0:

The device is _here_:

[andreast@wolfram] /home/andreast/> ll /dev/iic0
crw-------  1 root  wheel    0,  48 May 25 22:18 /dev/iic0

And the snippet from the dmesg looks like this:

iichb0: <Keywest I2C controller> mem 0x18000-0x18fff irq 26 on macio0
iichb0: [ITHREAD]
iicbus0: <OFW I2C bus> on iichb0
iic0: <I2C generic I/O> on iicbus0

I have no mods on the iic.c.

Do I do something completely wrong? Or something else?

As said, thanks for any hints.
Andreas



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4BFC3622.50609>