clang-tidy: Initial commit

Added initial .clang-tidy configuration file with recommended C++ checks
aligned with the OpenBMC-approved checklist. This setup enforces modern
C++ best practices and helps catch common issues early in development.

Change-Id: I87f8970d13cdb543a3167b6aa069edf7c0f0f554
Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
1 file changed
tree: ecb325b1fcfda135cb3d8bb32c14a5fea1751e1c
  1. example/
  2. service_files/
  3. subprojects/
  4. test/
  5. .clang-format
  6. .clang-tidy
  7. .gitignore
  8. app.cpp
  9. file.hpp
  10. LICENSE
  11. meson.build
  12. meson.options
  13. occ-active.sh
  14. occ_command.cpp
  15. occ_command.hpp
  16. occ_dbus.cpp
  17. occ_dbus.hpp
  18. occ_device.cpp
  19. occ_device.hpp
  20. occ_errors.cpp
  21. occ_errors.hpp
  22. occ_events.hpp
  23. occ_ffdc.cpp
  24. occ_ffdc.hpp
  25. occ_manager.cpp
  26. occ_manager.hpp
  27. occ_pass_through.cpp
  28. occ_pass_through.hpp
  29. occ_presence.cpp
  30. occ_presence.hpp
  31. occ_sensor.mako.hpp
  32. occ_status.cpp
  33. occ_status.hpp
  34. OWNERS
  35. pldm.cpp
  36. pldm.hpp
  37. powercap.cpp
  38. powercap.hpp
  39. powermode.cpp
  40. powermode.hpp
  41. README.md
  42. sensor_gen.py
  43. utils.cpp
  44. utils.hpp
README.md

OpenPOWER OCC Control Service

This service will handle communications to the On-Chip Controller (OCC) on Power processors. The OCC provides processor and memory temperatures, power readings, power cap support, system power mode support, and idle power saver support. OCC Control will be interfacing with the OCC to collect the temperatures and power readings, updating the system power mode, setting power caps, and idle power save parameters.

The service is started automatically when the BMC is started.

Build Project

This project can be built with meson. The typical meson workflow is: meson builddir && ninja -C builddir.

Server

The server will start automatically after BMC is powered on.

Server status: systemctl status org.open_power.OCC.Control.service

To restart the service: systemctl restart org.open_power.OCC.Control.service

Configuration

Service files are located in service_files subdirectory.

References

Power10

IBM EnergyScale for Power10 Processor-Based Systems whitepaper: https://www.ibm.com/downloads/cas/E7RL9N4E

OCC Firmware Interface Spec for Power10: https://github.com/open-power/docs/blob/P10/occ/OCC_P10_FW_Interfaces_v1_17.pdf

OCC Firmware: https://github.com/open-power/occ/tree/master-p10

Power9

IBM EnergyScale for POWER9 Processor-Based Systems: https://www-01.ibm.com/common/ssi/cgi-bin/ssialias?htmlfid=49019149USEN&

OCC Firmware Interface Spec for POWER9: https://github.com/open-power/docs/blob/P9/occ/OCC_P9_FW_Interfaces.pdf