Unlike already implemented Keyboard Controller Style (KCS) interface Block Transfer interface is not byte-oriented and implies that device is capable of buffering a command before processing it. Another difference is that polling can be replaced with interrupts, though this isn't used by this implementation. More details can be found in "Intelligent Platform Management Interface Specification", v2.0, Rev. 1.1: https://www.intel.com/content/dam/www/public/us/en/documents/specification-updates/ipmi-intelligent-platform-mgt-interface-spec-2nd-gen-v2-0-spec-update.pdf This was initially tested on Talos II (OpenPower platform) by Raptor Computing Systems. Later versions were tested using QEMU and ipmi_sim from OpenIPMI project as well as QEMU's builtin BMC simulator. Change-Id: Idb67972d1c38bbae04c7b4de3405350c229a05b9 Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/67057 Reviewed-by: Nicholas Sudsgaard <devel+coreboot@nsudsgaard.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
796 B
796 B
Platform independent drivers documentation
The drivers can be found in src/drivers. They are intended for onboard
and plugin devices, significantly reducing integration complexity and
they allow to easily reuse existing code across platforms.
For details on how to connect device drivers to a mainboard, see Driver Devicetree Entries.
:maxdepth: 1
:hidden:
Driver Devicetree Entries <dt_entries.md>
Some of the drivers currently available include:
:maxdepth: 1
CFR <cfr.md>
CFR use within coreboot <cfr_internal.md>
Intel DPTF <dptf.md>
IPMI BT (Block Transfer) <ipmi_bt.md>
IPMI KCS <ipmi_kcs.md>
SMMSTORE <smmstore.md>
SMMSTOREv2 <smmstorev2.md>
SoundWire <soundwire.md>
USB4 Retimer <retimer.md>
CBFS SMBIOS hooks <cbfs_smbios.md>