peci.rst 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. .. SPDX-License-Identifier: GPL-2.0-only
  2. ========
  3. Overview
  4. ========
  5. The Platform Environment Control Interface (PECI) is a communication
  6. interface between Intel processor and management controllers
  7. (e.g. Baseboard Management Controller, BMC).
  8. PECI provides services that allow the management controller to
  9. configure, monitor and debug platform by accessing various registers.
  10. It defines a dedicated command protocol, where the management
  11. controller is acting as a PECI originator and the processor - as
  12. a PECI responder.
  13. PECI can be used in both single processor and multiple-processor based
  14. systems.
  15. NOTE:
  16. Intel PECI specification is not released as a dedicated document,
  17. instead it is a part of External Design Specification (EDS) for given
  18. Intel CPU. External Design Specifications are usually not publicly
  19. available.
  20. PECI Wire
  21. ---------
  22. PECI Wire interface uses a single wire for self-clocking and data
  23. transfer. It does not require any additional control lines - the
  24. physical layer is a self-clocked one-wire bus signal that begins each
  25. bit with a driven, rising edge from an idle near zero volts. The
  26. duration of the signal driven high allows to determine whether the bit
  27. value is logic '0' or logic '1'. PECI Wire also includes variable data
  28. rate established with every message.
  29. For PECI Wire, each processor package will utilize unique, fixed
  30. addresses within a defined range and that address should
  31. have a fixed relationship with the processor socket ID - if one of the
  32. processors is removed, it does not affect addresses of remaining
  33. processors.
  34. PECI subsystem internals
  35. ------------------------
  36. .. kernel-doc:: include/linux/peci.h
  37. .. kernel-doc:: drivers/peci/internal.h
  38. .. kernel-doc:: drivers/peci/core.c
  39. .. kernel-doc:: drivers/peci/request.c
  40. PECI CPU Driver API
  41. -------------------
  42. .. kernel-doc:: drivers/peci/cpu.c