Home
last modified time | relevance | path

Searched full:occ (Results 1 – 25 of 176) sorted by relevance

12345678

/openbmc/openbmc-test-automation/openpower/
H A Dtest_occ_power.robot2 Documentation Suite to test OCC power module.
18 Verify OCC Object Count
19 [Documentation] Verify that OCC and inventory entries match.
42 ... msg=OCC and inventory entry counts are mismatched.
45 Verify OCC State When Host Is Booted
46 [Documentation] Verify OCC state when host is booted.
49 Verify OCC State ${1}
52 Verify OCC State After Host Reboot
53 [Documentation] Verify OCC state and count after host reboot.
56 ${occ_count_before}= Count OCC Object Entry
[all …]
/openbmc/openpower-debug-collector/dump/tools/bmcdump/plugins/
H A Docc4 # @brief: Get the occ information.
10 if [ ! -e "/usr/bin/openpower-occ-control" ]; then
14 #fetch occ control data
15 file_name="occ.log"
17 desc="occ control"
19 org.open_power.OCC.Control \
26 #fetch occ control host data
27 desc="occ control host"
29 org.open_power.OCC.Control \
35 #fetch occ sensors data
[all …]
/openbmc/openpower-occ-control/
H A Docc_pass_through.hpp7 #include <org/open_power/OCC/PassThrough/server.hpp>
17 namespace occ namespace
21 sdbusplus::org::open_power::OCC::server::PassThrough>;
27 * @brief Implements org.open_power.OCC.PassThrough
44 std::unique_ptr<open_power::occ::powermode::PowerMode>& powerModeRef);
46 /** @brief Pass through command to OCC from dbus
48 * @returns OCC response as an array
52 /** @brief Pass through command to OCC from openpower-occ-control
54 * @returns OCC response as an array
68 /** @brief Pass-through occ path on the bus */
[all …]
H A Docc_status.hpp12 #include <org/open_power/OCC/Status/server.hpp>
23 namespace occ namespace
27 namespace Base = sdbusplus::org::open_power::OCC::server;
39 // OCC status instance. Ex. for "occ0", the instance is 0
42 // IPMI sensor ID for a given OCC instance
48 // OCC sensors definitions in the map
51 // OCC sysfs name prefix
52 const std::string sysfsName = "occ-hwmon";
61 * @brief Implementation of OCC Active Status
78 * @param[in] manager - OCC manager instance
[all …]
H A DREADME.md1 # OpenPOWER OCC Control Service
3 This service will handle communications to the On-Chip Controller (OCC) on Power
4 processors. The OCC provides processor and memory temperatures, power readings,
5 power cap support, system power mode support, and idle power saver support. OCC
6 Control will be interfacing with the OCC to collect the temperatures and power
21 Server status: `systemctl status org.open_power.OCC.Control.service`
23 To restart the service: `systemctl restart org.open_power.OCC.Control.service`
36 OCC Firmware Interface Spec for Power10:
37 <https://github.com/open-power/docs/blob/P10/occ/OCC_P10_FW_Interfaces_v1_17.pdf>
39 OCC Firmware: <https://github.com/open-power/occ/tree/master-p10>
[all …]
H A Docc_manager.hpp27 namespace occ namespace
42 /** @brief Default time, in seconds, between OCC poll commands */
57 * @brief Builds and manages OCC objects
69 /** @brief Adds OCC pass-through and status objects on the bus
117 * @param[in] instance - the OCC instance id
134 * @brief Set all sensor values of this OCC to NaN.
135 * @param[in] id - Id of the OCC.
139 /** @brief Set all sensor values of this OCC to NaN and non functional.
141 * @param[in] id - Id of the OCC.
155 /** @brief Name of file to put the occ-control dump data */
[all …]
H A Dpldm.hpp29 using namespace open_power::occ;
36 using InstanceToEffecter = std::map<open_power::occ::instanceID, EffecterID>;
40 using SensorToInstance = std::map<SensorID, open_power::occ::instanceID>;
43 /** @brief OCC instance starts with 0 for example "occ0" */
44 constexpr open_power::occ::instanceID start = 0;
54 * @brief Abstracts the PLDM details related to the OCC
66 /** @brief Constructs the PLDM Interface object for OCC functions
68 * @param[in] occActiveCallBack - callBack handler to invoke when the OCC
78 std::function<bool(open_power::occ::instanceID, bool)> in Interface()
80 std::function<void(open_power::occ::instanceID, bool)> sbeCallBack, in Interface()
[all …]
H A Docc-active.sh2 # set and unset occ active for all occ's in system
9 echo "Usage: occ-active.sh [argument]"
10 echo " enable - set occ's to active state"
11 echo " disable - set occ's to inactive state"
15 OCC_CONTROL_SERVICE="org.open_power.OCC.Control"
17 busctl tree $OCC_CONTROL_SERVICE --list | grep -i occ | xargs -r -n1 -I{} \
18 busctl set-property $OCC_CONTROL_SERVICE {} org.open_power.OCC.Status \
H A Docc_command.hpp6 #include <org/open_power/OCC/PassThrough/server.hpp>
16 namespace occ namespace
93 * @brief Send commands and process respsonses from the OCC
104 /** @brief Ctor to set up which OCC the command will go to
106 * @param[in] instance - OCC instance
117 /** @brief Send the command to the OCC and collect the response.
128 /** @brief Instance number of the target OCC */
131 /** @brief OCC path on the bus */
134 /** @brief OCC device path
143 /** @brief Indicates whether or not the OCC is currently active */
[all …]
H A Docc_status.cpp14 namespace occ namespace
27 lg2::info("Status::occActive OCC{INST} changed to {STATE}", "INST", in occActive()
31 // OCC is active in occActive()
38 // Reset last OCC state in occActive()
51 "Status::occActive: Unable to add error watch(s) for OCC{INST} watch: {ERROR}", in occActive()
57 // Update the OCC active sensor in occActive()
62 // Update powercap bounds from OCC in occActive()
74 // OCC is no longer active in occActive()
105 // Clear throttles (OCC not active after disabling device) in occActive()
115 * In it's constructor, Status checks Device::bound() to see if OCC is in occActive()
[all …]
H A Docc_presence.cpp10 #include <org/open_power/OCC/Device/error.hpp>
18 namespace occ namespace
25 using namespace sdbusplus::org::open_power::OCC::Device::Error; in analyzeEvent()
33 phosphor::logging::org::open_power::OCC::Device::ConfigFailure:: in analyzeEvent()
35 phosphor::logging::org::open_power::OCC::Device::ConfigFailure:: in analyzeEvent()
49 lg2::error("OCC presence mismatch - BMC: {BNUM}, OCC: {ONUM}", "BNUM", in analyzeEvent()
58 } // namespace occ
H A Dpowercap.hpp16 namespace occ namespace
43 * @brief Provides persistent container to store data for OCC
116 * @brief Monitors for changes to the power cap and notifies occ
118 * The customer power cap is provided to the OCC by host TMGT when the occ
120 * the power cap to the OCC if the cap is changed while the occ is active.
126 /** @brief PowerCap object to inform occ of changes to cap
129 * power cap enable properties. If a change is detected, and the occ
130 * is active, then this object will notify the OCC of the change.
132 * @param[in] occStatus - The occ status object
157 /** @brief Return the appropriate value to write to the OCC (output/DC
[all …]
H A Dmeson.build2 'openpower-occ-control',
17 conf_data.set_quoted('OCC_CONTROL_BUSNAME', 'org.open_power.OCC.Control')
21 conf_data.set_quoted('OCC_NAME', 'occ')
22 conf_data.set_quoted('OCC_MASTER_NAME', 'occ-hwmon.1')
23 conf_data.set_quoted('OCC_DEV_PATH', '/dev/occ')
30 '/var/lib/openpower-occ-control',
39 conf_data.set_quoted('OCC_HWMON_PATH', '/sys/bus/platform/drivers/occ-hwmon/')
57 'occ-active.sh',
134 # Generate occ-sensor.hpp.
136 'occ-sensor.hpp',
[all …]
H A Docc_manager.cpp22 namespace occ namespace
77 // - create the PowerMode object to control OCC modes
78 // - create statusObjects for each OCC device found
79 // - waits for OCC Active sensors PDRs to become available
120 "Manager::findAndCreateObjects(): Creating {QTY} OCC Status Objects", in findAndCreateObjects()
129 // Find/update the processor path associated with each OCC in findAndCreateObjects()
187 if (open_power::occ::utils::isHostRunning()) in checkAllActiveSensors()
208 "checkAllActiveSensors(): OCC{INST} is ACTIVE (queued)", in checkAllActiveSensors()
218 "checkAllActiveSensors(): Waiting on OCC{INST} Active sensor", in checkAllActiveSensors()
271 "checkAllActiveSensors(): OCC Active sensors are available"); in checkAllActiveSensors()
[all …]
H A Docc_sensor.mako.hpp14 namespace occ namespace
23 % for occ in occDict:
25 instance = occ.get("Instance")
26 id = occ.get("SensorID")
27 name = occ.get("SensorName")
35 } // namespace occ
H A Docc_errors.cpp8 #include <org/open_power/OCC/Device/error.hpp>
17 namespace occ namespace
21 using namespace sdbusplus::org::open_power::OCC::Device::Error;
36 elog<OpenFailure>(phosphor::logging::org::open_power::OCC::Device:: in openFile()
38 phosphor::logging::org::open_power::OCC::Device:: in openFile()
118 phosphor::logging::org::open_power::OCC::Device::ConfigFailure:: in analyzeEvent()
120 phosphor::logging::org::open_power::OCC::Device::ConfigFailure:: in analyzeEvent()
143 // OCC / FSI have intermittent issues so retry all reads in readFile()
157 phosphor::logging::org::open_power::OCC::Device:: in readFile()
159 phosphor::logging::org::open_power::OCC::Device:: in readFile()
[all …]
/openbmc/qemu/hw/ppc/
H A Dpnv_occ.c2 * QEMU PowerPC PowerNV Emulation of a few OCC related registers
40 /* OCC sensors */
57 static void pnv_occ_set_misc(PnvOCC *occ, uint64_t val) in pnv_occ_set_misc() argument
61 occ->occmisc = val; in pnv_occ_set_misc()
68 qemu_set_irq(occ->psi_irq, !!(val & OCCMISC_PSI_IRQ)); in pnv_occ_set_misc()
71 static void pnv_occ_raise_msg_irq(PnvOCC *occ) in pnv_occ_raise_msg_irq() argument
73 pnv_occ_set_misc(occ, occ->occmisc | OCCMISC_PSI_IRQ | OCCMISC_IRQ_SHMEM); in pnv_occ_raise_msg_irq()
79 PnvOCC *occ = PNV_OCC(opaque); in pnv_occ_power8_xscom_read() local
85 val = occ->occmisc; in pnv_occ_power8_xscom_read()
88 qemu_log_mask(LOG_UNIMP, "OCC Unimplemented register: Ox%" in pnv_occ_power8_xscom_read()
[all …]
/openbmc/docs/designs/oem/ibm/
H A Dsystem-power-mode.md19 to as the On Chip Controller or OCC. The OCC provides real time power and
21 an Active state. Anytime the OCC state changes to active, the BMC will need to
22 send a mode change and idle power saver (IPS) settings to the OCC. It will also
28 When a system is booted, the OCC will move to an ACTIVE state. In the ACTIVE
29 state, the OCC is managing the processor frequency, power consumption, and
31 necessary to reset the OCC. When this happens, the OCC will move out of ACTIVE
32 state. After recovery, the OCC will be put back into the ACTIVE state. Anytime
33 the OCC state changes to ACTIVE or the customer updates these new parameters at
35 the OCC.
61 The new code would be part of the openpower-occ-control repository. New code
[all …]
/openbmc/openbmc-test-automation/lib/
H A Dopen_power_utils.robot17 Get OCC Objects
18 [Documentation] Get the OCC objects and return as a list.
29 ${occ_list}= Get Endpoint Paths ${OPENPOWER_CONTROL} occ*
34 Get OCC Active State
35 [Documentation] Get the OCC "OccActive" and return the attribute value.
41 ${cmd}= Catenate busctl get-property org.open_power.OCC.Control
42 ... /org/open_power/control/occ${value} org.open_power.OCC.Status OccActive
60 # object_name Object name (e.g. "occ", "cpu" etc).
98 Get Active OCC State Count
99 [Documentation] Get active OCC state count.
[all …]
/openbmc/phosphor-dbus-interfaces/yaml/org/open_power/OCC/
H A DDevice.errors.yaml1 # org.open_power.OCC.Device.OpenFailure
3 description: Opening OCC device failed.
5 # org.open_power.OCC.Device.ReadFailure
7 description: Reading from OCC failed.
9 # org.open_power.OCC.Device.WriteFailure
11 description: Writing to OCC failed.
13 # org.open_power.OCC.Device.ConfigFailure
/openbmc/phosphor-dbus-interfaces/gen/org/open_power/OCC/
H A Dmeson.build6 sdbusplus_current_path = 'org/open_power/OCC'
9 'org/open_power/OCC/Device__markdown'.underscorify(),
10 input: ['../../../../yaml/org/open_power/OCC/Device.errors.yaml'],
23 'org/open_power/OCC/Device',
31 'org/open_power/OCC/PassThrough__markdown'.underscorify(),
32 input: ['../../../../yaml/org/open_power/OCC/PassThrough.interface.yaml'],
45 'org/open_power/OCC/PassThrough',
53 'org/open_power/OCC/Status__markdown'.underscorify(),
54 input: ['../../../../yaml/org/open_power/OCC/Status.interface.yaml'],
67 'org/open_power/OCC/Status',
/openbmc/openbmc/meta-openpower/recipes-phosphor/occ/
H A Dopenpower-occ-control_git.bb1 SUMMARY = "OpenPOWER OCC controller"
3 HOMEPAGE = "https://github.com/openbmc/openpower-occ-control"
15 DBUS_SERVICE:${PN} += "org.open_power.OCC.Control.service"
16 SYSTEMD_SERVICE:${PN} += "op-occ-enable@.service"
17 SYSTEMD_SERVICE:${PN} += "op-occ-disable@.service"
47 # Ensure host-stop and host-startmin targets wants needed occ states
48 OCC_TMPL = "op-occ-{0}@.service"
50 OCC_INSTFMT = "op-occ-{0}@{2}.service"
55 # Set the occ disable service to be executed on host error
58 OCC_DISABLE_TMPL = "op-occ-disable@.service"
[all …]
H A Dopenpower-occ-control-config-example-native_git.bb1 SUMMARY = "OpenPower OCC Control with example occ sensor IDs"
5 require openpower-occ-control.inc
6 inherit openpower-occ-control
9 PROVIDES += "virtual/openpower-occ-control-config-native"
13 # Copies example occ sensor ID yaml file
/openbmc/phosphor-fan-presence/control/config_files/p10bmc/com.ibm.Hardware.Chassis.Model.Balcones/
H A Dgroups.json24 "name": "occ objects",
25 "service": "org.open_power.OCC.Control",
33 "service": "org.open_power.OCC.Control",
71 "service": "org.open_power.OCC.Control",
78 "service": "org.open_power.OCC.Control",
88 "service": "org.open_power.OCC.Control",
95 "service": "org.open_power.OCC.Control",
105 "service": "org.open_power.OCC.Control",
112 "service": "org.open_power.OCC.Control",
122 "service": "org.open_power.OCC.Control",
[all …]
/openbmc/openpower-occ-control/service_files/
H A Dop-occ-enable@.service2 Description=OpenPOWER OCC Active Enable for host %I
4 Conflicts=op-occ-disable@%i.service
5 Wants=org.open_power.OCC.Control.service
6 After=org.open_power.OCC.Control.service
12 ExecStart=/usr/bin/occ-active.sh enable

12345678