Date: Wed, 19 Dec 2018 14:35:14 -0500 From: Anthony Jenkins <Scoobi_doo@yahoo.com> To: John Baldwin <jhb@FreeBSD.org>, Ian Lepore <ian@freebsd.org> Cc: FreeBSD CURRENT <freebsd-current@freebsd.org>, Gleb Popov <6yearold@gmail.com> Subject: Re: Composite PCI devices in FreeBSD (mfd in Linux) Message-ID: <1c3e555d-7289-1219-8c66-07f75a335dc0@yahoo.com> In-Reply-To: <02e30a11-4adf-3efb-d2ce-89c598bda9cf@yahoo.com> References: <cf2c24e0-f7d4-9496-7efa-6c5963d77362@yahoo.com> <ff39b848-0444-2018-e206-1cf7486ab19e@FreeBSD.org> <b77e0aab-0b7f-96db-1488-32c92870642c@yahoo.com> <1544473194.1860.340.camel@freebsd.org> <05b1183c-6117-267b-42f9-19e750adfa07@FreeBSD.org> <02e30a11-4adf-3efb-d2ce-89c598bda9cf@yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 12/19/18 10:41 AM, Anthony Jenkins wrote: > [snip] > > I'm not feeling too confident about the condition of the FreeBSD ig4 > driver; the PCI attach code was calling pci_alloc_msi() wrong, passing > a pointer to the rid (0) instead of a pointer to a count variable, and > not passing bus_alloc_resource_any() an IRQ rid > 0 if it has an MSI. > I'd be happy(er) if ig4 created a /dev/iic0 node - I figured iicbus(4) > took care of all that... > > https://github.com/ScoobiFreeBSD/freebsd-intel-lpss > Found it! I didn't declare ig4_iic to include the ig4_lpss as a sub-device. Now it at least /looks/ like I'm getting I2C devices found on both my DesignWare I2C busses. diff --git a/sys/dev/ichiic/ig4_iic.c b/sys/dev/ichiic/ig4_iic.c index 6bbe417..34c1adb 100644 --- a/sys/dev/ichiic/ig4_iic.c +++ b/sys/dev/ichiic/ig4_iic.c @@ -802,3 +802,4 @@ ig4iic_dump(ig4iic_softc_t *sc) DRIVER_MODULE(iicbus, ig4iic_acpi, iicbus_driver, iicbus_devclass, NULL, NULL); DRIVER_MODULE(iicbus, ig4iic_pci, iicbus_driver, iicbus_devclass, NULL, NULL); +DRIVER_MODULE(iicbus, ig4iic_lpss, iicbus_driver, iicbus_devclass, NULL, NULL); ajenkins@ajenkins-delllaptop ~/Projects/freebsd-intel-lpss (master) $ ls /dev/ii* /dev/iic0 /dev/iic1 ajenkins@ajenkins-delllaptop ~/Projects/freebsd-intel-lpss (master) $ for i2cbus in iic0 iic1; do sudo i2c -s -f "/dev/${i2cbus}"; done Hardware may not support START/STOP scanning; trying less-reliable read method. Scanning I2C devices on /dev/iic0: 0a Hardware may not support START/STOP scanning; trying less-reliable read method. Scanning I2C devices on /dev/iic1: 2c Anthony
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1c3e555d-7289-1219-8c66-07f75a335dc0>