Date: Tue, 9 Apr 2019 11:23:09 +0300 From: Daniel Braniss <danny@cs.huji.ac.il> To: Emmanuel Vadot <manu@bidouilliste.com> Cc: "freebsd-arm@freebsd.org" <arm@freebsd.org> Subject: Re: i2c still not working for me Message-ID: <B62656F4-F767-4D90-A01E-058B312A65A8@cs.huji.ac.il> In-Reply-To: <20190409101645.d645241fe12451f166e033a2@bidouilliste.com> References: <12F641C3-9FAA-4A3A-BA18-A7302F3A0F5E@cs.huji.ac.il> <20190409095819.c560dbc156c46e5ca0244e3e@bidouilliste.com> <23A47048-642A-481C-B7BE-B61E55F82955@cs.huji.ac.il> <20190409101645.d645241fe12451f166e033a2@bidouilliste.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> On 9 Apr 2019, at 11:16, Emmanuel Vadot <manu@bidouilliste.com> wrote: >=20 > On Tue, 9 Apr 2019 11:04:23 +0300 > Daniel Braniss <danny@cs.huji.ac.il <mailto:danny@cs.huji.ac.il>> = wrote: >=20 >>=20 >>=20 >>> On 9 Apr 2019, at 10:58, Emmanuel Vadot <manu@bidouilliste.com> = wrote: >>>=20 >>> On Tue, 9 Apr 2019 10:50:22 +0300 >>> Daniel Braniss <danny@cs.huji.ac.il> wrote: >>>=20 >>>> Hi, >>>> after the latest changes to i2c there is a small improvement, >>>> i2c -s finds the device but complains: >>>>=20 >>>> root@neo-14:~ # i2c -s >>>> Hardware may not support START/STOP scanning; trying less-reliable = read method. >>>> Scanning I2C devices on /dev/iic0: 24 >>>>=20 >>>> but nothing else works. >>>>=20 >>>> I?ll try and connect my saleae signal analyzer later, but in the = meantime this is what I get >>>> on the console: >>>> [?] >>>> iichb0: twsi_control_clear: read val=3D58 >>>> iichb0: twsi_control_clear: write val=3D40 >>>> iichb0: TWSI_WRITE: Writing 40 to c >>>> iichb0: twsi_start: twsi_start: slave=3D48 >>>> iichb0: twsi_locked_start: send start >>>> iichb0: TWSI_READ: read 58 from c >>>> iichb0: twsi_control_set: read val=3D58 >>>> iichb0: twsi_control_set: write val=3D68 >>>> iichb0: TWSI_WRITE: Writing 68 to c >>>> iichb0: twsi_poll_ctrl: Waiting for ctrl r. >>>> eg to match mask 8 >>>> iichb0: TWSI_READ: read 48 from c >>>> gic0: iichb0: Spurious interrupt detected: last irq: 32 on CPU1 >>>> twsi_poll_ctrl: done >>>> gic0: iichb0: Spurious interrupt detected: last irq: 32 on CPU1 >>>> TWSI_READ: read 8 from 10 >>>> iichb0: twsi_locked_start: status=3D8 >>>> iichb0: TWSI_WRITE: Writing 48 to 8 >>>> gic0: Spurious interrupt detected: last irq: 32 on CPU1 >>>> iichb0: TWSI_READ: read 48 from c >>>> gic0: iichb0: Spurious interrupt detected: last irq: 32 on CPU1 >>>> twsi_control_clear: read val=3D48 >>>> gic0: iichb0: Spurious interrupt detected: last irq: 32 on CPU1 >>>> twsi_control_clear: write val=3D40 >>>> gic0: iichb0: Spurious interrupt detected: last irq: 32 on CPU1 >>>> TWSI_WRITE: Writing 40 to c >>>> gic0: Spurious interrupt detected: last irq: 32 on CPU1 >>>> iichb0: twsi_poll_ctrl: Waiting for ctrl reg to match mask 8 >>>> gic0: iichb0: Spurious interrupt detected: last irq: 32 on CPU1 >>>> TWSI_READ: read 48 from c >>>> iichb0: twsi_poll_ctrl: done >>>> iichb0: TWSI_READ: read 8 from 10 >>>> iichb0: twsi_locked_start: no ACK (status: 08) after sending slave = address >>>> gic0: iichb0: Spurious interrupt detected: last irq: 32 on CPU1 >>>> twsi_stop: twsi_stop >>>> [?] >>>>=20 >>>> BTW, the hardware is NanoPi-neo and it?s running Current 345984 >>>>=20 >>>> thanks, >>>> danny >>>>=20 >>>=20 >>> Based on the function names you are using directly stop/start/etc = ... >>> My changes were only for i2c_transfer (I2CRDWR ioctls) >>>=20 >>=20 >> ok, this will show my ignorance, but could you send me some sample = code that uses I2CRDWR? >> btw, the device i?m trying out is an RFID reader pn533, which works = with a modified driver ? >>=20 >> thanks, >> danny >=20 > You can have a look at i2c(8) source code, it uses RDWR. > Basically you give the ioctl some i2c messages (struct iic_rdwr_data). > Also man 4 iic i=E2=80=99m looking at the driver,=20 thanks, danny >=20 > --=20 > Emmanuel Vadot <manu@bidouilliste.com <mailto:manu@bidouilliste.com>> = <manu@freebsd.org <mailto:manu@freebsd.org>>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?B62656F4-F767-4D90-A01E-058B312A65A8>