sys: Remove $FreeBSD$: one-line sh patternRemove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
enable ig4_acpi on aarch64The already-listed APMC0D0F ID belongs to the Ampere eMAG aarch64platform, but ACPI support was not even built on aarch64.Submitted by: Greg V <greg_unrelenting.technol
enable ig4_acpi on aarch64The already-listed APMC0D0F ID belongs to the Ampere eMAG aarch64platform, but ACPI support was not even built on aarch64.Submitted by: Greg V <greg_unrelenting.technology>Differential Revision: https://reviews.freebsd.org/D21059
show more ...
sys/modules: normalize .CURDIR-relative paths to SRCTOPThis simplifies make output/logicTested with: `cd sys/modules; make ALL_MODULES=` on amd64MFC after: 1 monthSponsored by: Dell EMC Isilon
[ig4] Add ACPI platform support for ig4 driverAdd ACPI part for ig4 driver to make it work on Intel BayTrail SoC whereig4 device is available only through ACPIReviewed by: avgMFC after: 1 week
[ig4] Add ACPI platform support for ig4 driverAdd ACPI part for ig4 driver to make it work on Intel BayTrail SoC whereig4 device is available only through ACPIReviewed by: avgMFC after: 1 weekDifferential Revision: https://reviews.freebsd.org/D8742
add iic interface to ig4 driver, move isl and cyapa to iicbusSummary:The hardware does not expose a classic SMBus interface.Instead it has a lower level interface that can express a far richerI2
add iic interface to ig4 driver, move isl and cyapa to iicbusSummary:The hardware does not expose a classic SMBus interface.Instead it has a lower level interface that can express a far richerI2C protocol than what smbus offers. However, the interface does notprovide a way to explicitly generate the I2C stop and start conditions.It's only possible to request that the stop condition is generatedafter transferring the next byte in either direction. So, at leastone data byte must always be transferred.Thus, some I2C sequences are impossible to generate, e.g., an equivalentof smbus quick command (<start>-<slave addr>-<r/w bit>-<stop>).At the same time isl(4) and cyapa(4) are moved to iicbus and now they useiicbus_transfer for communication. Previously they used smbus_trans()interface that is not defined by the SMBus protocol and was implementedonly by ig4(4). In fact, that interface was impossible to implementfor the typical SMBus controllers like intpm(4) or ichsmb(4) wherea type of the SMBus command must be programmed.The plan is to remove smbus_trans() and all its uses.As an aside, the smbus_trans() method deviates from the standard,but perhaps backwards, FreeBSD convention of using 8-bit slaveaddresses (shifted by 1 bit to the left). The method expects7-bit addresses.There is a user facing consequence of this change.A user must now provide device hints for isl and cyapa that specify an iicbus to useand a slave address on it.On Chromebook hardware where isl and cyapa devices are commonly foundit is also possible to use a new chromebook_platform(4) driver thatautomatically configures isl and cyapa devices. There is no need toprovide the device hints in that case,Right now smbus(4) driver tries to discover all slaves on the bus.That is very dangerous. Fortunately, the probing code uses smbus_trans()to do its job, so it is really enabled for ig4 only.The plan is to remove that auto-probing code and smbus_trans().Tested by: grembo, Matthias Apitz <[email protected]> (w/o chromebook_platform)Discussed with: grembo, impReviewed by: wblock (docs)MFC after: 1 monthRelnotes: yesDifferential Revision: https://reviews.freebsd.org/D8172
ig4 - Intel fourth gen integrated I2C SMBus driver.Differential Revision: https://reviews.freebsd.org/D2372Reviewed by: jhb, wblock, adrianApproved by: jhb, wblockRelnotes: yes