1bdd9cb71SJosh D. King #include "config.h" 2e426b589SAndrew Geissler 3bdd9cb71SJosh D. King #include "bmc_state_manager.hpp" 4bdd9cb71SJosh D. King 5e426b589SAndrew Geissler #include <sdbusplus/bus.hpp> 6e426b589SAndrew Geissler 7f566c964SAmithash Prasasd using BMCState = sdbusplus::server::xyz::openbmc_project::state::BMC; 8f566c964SAmithash Prasasd main()9769a62f1SAndrew Geisslerint main() 10bdd9cb71SJosh D. King { 11bdd9cb71SJosh D. King auto bus = sdbusplus::bus::new_default(); 12bdd9cb71SJosh D. King 13bdd9cb71SJosh D. King // For now, we only have one instance of the BMC 14bdd9cb71SJosh D. King // 0 is for the current instance 15f566c964SAmithash Prasasd const auto* BMCName = BMCState::namespace_path::bmc; 16f566c964SAmithash Prasasd const auto* objPath = BMCState::namespace_path::value; 17f566c964SAmithash Prasasd std::string objPathInst = 18f566c964SAmithash Prasasd sdbusplus::message::object_path(objPath) / BMCName; 19bdd9cb71SJosh D. King 20bdd9cb71SJosh D. King // Add sdbusplus ObjectManager. 21*2eb6029cSAmithash Prasasd sdbusplus::server::manager_t objManager(bus, objPath); 22bdd9cb71SJosh D. King 2358a18013SAndrew Geissler phosphor::state::manager::BMC manager(bus, objPathInst.c_str()); 24bdd9cb71SJosh D. King 25f566c964SAmithash Prasasd bus.request_name(BMCState::interface); 26bdd9cb71SJosh D. King 27bdd9cb71SJosh D. King while (true) 28bdd9cb71SJosh D. King { 29bdd9cb71SJosh D. King bus.process_discard(); 30bdd9cb71SJosh D. King bus.wait(); 31bdd9cb71SJosh D. King } 32bdd9cb71SJosh D. King 33bdd9cb71SJosh D. King exit(EXIT_SUCCESS); 34bdd9cb71SJosh D. King } 35