Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 24 Mar 2017 11:56:52 -0700
From:      Oleksandr Tymoshenko <gonzo@bluezbox.com>
To:        Karl Denninger <karl@denninger.net>
Cc:        "freebsd-arm@freebsd.org" <freebsd-arm@freebsd.org>
Subject:   Re: i2c on Pi3?
Message-ID:  <20170324185652.GA65910@bluezbox.com>
In-Reply-To: <843bbe39-0b74-0d27-598d-ae16aea52a37@denninger.net>
References:  <0b83d41a-1a9e-28cc-6ecd-03e6a63a06a2@denninger.net> <DAC58CC9-9D1C-483F-B748-3BD20A8245CE@thehowies.com> <f1c3c4bb-976c-05ba-24ec-212bc9412a33@denninger.net> <20170323175342.GA55627@bluezbox.com> <843bbe39-0b74-0d27-598d-ae16aea52a37@denninger.net>

next in thread | previous in thread | raw e-mail | index | archive | help
Karl Denninger (karl@denninger.net) wrote:
> 
> On 3/23/2017 12:53, Oleksandr Tymoshenko wrote:
> > Karl Denninger (karl@denninger.net) wrote:
> >> On 3/23/2017 12:34, John Howie wrote:
> >>
> >>> Hi Karl,
> >>>
> >>> I can only speak to the Raspberry Pi 2 kernel, but I2C is supported. For an example how to use it from userland, check out a project I posted on github eighteen months ago, that was for the PiFace RTC.
> >>>
> >>> https://github.com/jhowie/FreeBSDPiFaceRTC
> >>>
> >>> There are useful routines I created for working with devices on the I2C bus, which you are free to use. They are not RPI2-specific, so they should work on other boards. 
> > .. skipped ..
> >> It works on the Pi2; I am using it in production.
> >>
> >> The driver appears to be /missing /in the Pi3 kernel.
> > Probably it's not enabled in DTB. Try adding this line to config.txt:
> >
> > dtparam=i2c_arm=on,spi=on
> >
> Nope, already in the base config.txt file:
> 
> arm_control=0x200
> dtparam=audio=on,i2c_arm=on,spi=on
> dtoverlay=mmc
> dtoverlay=pi3-disable-bt
> device_tree_address=0x4000
> kernel=u-boot.bin

I just built latest HEAD, i2c driver is available in GENERIC kernel:
# dmesg | grep iic
iichb0: <BCM2708/2835 BSC controller> mem 0x7e804000-0x7e804fff irq 31
on simplebus0
iicbus0: <OFW I2C bus> on iichb0
random: harvesting attach, 8 bytes (4 bits) from iicbus0
random: harvesting attach, 8 bytes (4 bits) from iichb0

The driver itself is sys/arm/broadcom/bcm2835/bcm2835_bsc.c

Could you run this command on your Pi3 and send output? Thanks

 sysctl -b hw.fdt.dtb | dtc -I dtb | grep -A 13 'i2c@.*{'


-- 
gonzo



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