Home | History | Annotate | Download | only in ofw
History log of /src/sys/dev/ofw/ofw_i2c_subr.c
RevisionDateAuthorComments
 1.3  18-Sep-2025  thorpej In the "i2c-child-devices" array, don't pass in a "cookie" and "cookietype".
Instead, just create the appropriate devhandle and pass that along as a
data object.
 1.2  16-Sep-2025  thorpej As with ACPI, iic_attach() now fetches the child device array directly
in the FDT case. Adjust the OFW case so that we're not forced to indirect
through a dictionary if it's not needed.
 1.1  04-Feb-2021  thorpej branches: 1.1.4; 1.1.6; 1.1.16;
Split the i2c and spi stuff out into their own files.
 1.1.16.4  11-Sep-2021  thorpej Building on the previous, some Sun OpenFirmware device trees have a
similar schema (e.g. /pci/pmu@6/i2c@0,0), but use a slightly different
name ("i2c" vs "i2c-bus"). Handle this.
 1.1.16.3  11-Sep-2021  thorpej The Device Tree bindings state that if a controller has a
child node named "i2c-bus", then that is the node beneath
which the child devices are populated.
 1.1.16.2  10-Sep-2021  thorpej Remove unnecessary references to i2c_attach_args::ia_prop and mark the ones
that remain as XXX.
 1.1.16.1  09-Aug-2021  thorpej Port over the changes from thorpej-i2c-spi-conf to thorpej-i2c-spi-conf2,
which is based on a newer HEAD revision.
 1.1.6.9  08-Aug-2021  thorpej If OFW_I2C_ALLOW_MISSING_COMPATIBLE_PROPERTY, ensure that clist_size
is not negative for the call to kmem_tmpbuf_alloc().
 1.1.6.8  18-May-2021  thorpej There is no code of DEC lineage in this file.
 1.1.6.7  14-May-2021  thorpej Do that again, but slightly differently: a "compatible" property is
required by the Device Tree i2c bindings, and is present on all of
the Sun i2c device nodes that are useful (the notable exception being
the i2c "idprom" nodes, which are actually duplicates of a regular
serial eeprom node). However, Apple's older OpenFirmware implementations
are rife with i2c nodes that lack a "compatible" property. So, define
a OFW_I2C_ALLOW_MISSING_COMPATIBLE_PROPERTY quirk, and enable it in
the __HAVE_OPENFIRMWARE_VARIANT_AAPL case.
 1.1.6.6  14-May-2021  thorpej Ooops, no, revert that.
 1.1.6.5  14-May-2021  thorpej Skip nodes without a "compatible" property.
 1.1.6.4  14-May-2021  thorpej Define __HAVE_OPENFIRMWARE_VARIANT_SUNW for sparc64 systems and handle
its OpenFirmware quirks with respect to i2c:

- "reg" property is 2 cells, the first one containing the channel the
device is on, the second one containing the i2c device address.
- The i2c device address is shifted left 1 bit to account for the r/w
bit on the wire.
 1.1.6.3  14-May-2021  thorpej Deal with quirks / differences in OpenFirmware implementations'
interpreation of the i2c "reg" property by embedding knowledge
of those quicks directly, rather than forcing lots of drivers
to provide their own devhandle implementations. We default to
assuming the Device Tree bindings, and tweak based on platform-
specific #ifdefs.

Start with __HAVE_OPENFIRMWARE_VARIANT_AAPL (all i2c "reg" properties
encode an address that's shifted left 1 bit to account for the R/W bit
that appears on the wire).
 1.1.6.2  08-May-2021  thorpej There are no more consumers of i2c attach args "cookie" and "cookietype",
so garbage-collect them.
 1.1.6.1  25-Apr-2021  thorpej Implement "i2c-enumerate-devices" for OFW / FDT.
 1.1.4.2  03-Apr-2021  thorpej Sync with HEAD.
 1.1.4.1  04-Feb-2021  thorpej file ofw_i2c_subr.c was added on branch thorpej-futex on 2021-04-03 22:28:45 +0000

RSS XML Feed