/openbmc/phosphor-power/phosphor-power-sequencer/src/ |
H A D | power_interface.hpp | 3 #include <systemd/sd-bus.h> 11 namespace phosphor::power::sequencer namespace 16 * This class provides the org.openbmc.control.Power D-Bus interface. 29 * Constructor to put object onto bus at a dbus path. 30 * @param bus D-Bus bus object 31 * @param path D-Bus object path 33 PowerInterface(sdbusplus::bus_t& bus, const char* path); 36 * Emit the power good signal 41 * Emit the power lost signal 52 * Returns the power good of the chassis [all …]
|
H A D | device_finder.hpp | 8 * http://www.apache.org/licenses/LICENSE-2.0 21 #include <sdbusplus/bus.hpp> 28 namespace phosphor::power::sequencer namespace 31 using DbusVariant = phosphor::power::util::DbusVariant; 32 using DbusPropertyMap = phosphor::power::util::DbusPropertyMap; 33 using DBusInterfacesFinder = phosphor::power::util::DBusInterfacesFinder; 36 * Power sequencer device properties. 42 uint8_t bus; member 49 * Class that finds power sequencer devices in the system. 58 // Specify which compiler-generated methods we want [all …]
|
H A D | power_control.cpp | 8 * http://www.apache.org/licenses/LICENSE-2.0 35 namespace phosphor::power::sequencer namespace 39 "xyz.openbmc_project.Power.Error.PowerOnTimeout"; 42 "xyz.openbmc_project.Power.Error.PowerOffTimeout"; 44 const std::string shutdownError = "xyz.openbmc_project.Power.Error.Shutdown"; 46 PowerControl::PowerControl(sdbusplus::bus_t& bus, in PowerControl() argument 48 PowerObject{bus, POWER_OBJ_PATH, PowerObject::action::defer_emit}, bus{bus}, in PowerControl() 49 services{bus}, 55 bus.request_name(POWER_IFACE); 58 bus, std::bind_front(&PowerControl::compatibleSystemTypesFound, this)); [all …]
|
/openbmc/phosphor-power/phosphor-power-supply/ |
H A D | psu_manager.hpp | 7 #include <phosphor-logging/log.hpp> 8 #include <sdbusplus/bus/match.hpp> 22 using namespace phosphor::power::psu; 25 namespace phosphor::power::manager namespace 33 // Validation timeout. Allow 30s to detect if new EM interfaces show up in D-Bus 46 PowerSystemInputs(sdbusplus::bus_t& bus, const std::string& path) : in PowerSystemInputs() argument 47 PowerSystemInputsObject(bus, path.c_str()) in PowerSystemInputs() 54 * This class will create an object used to manage and monitor a list of power 68 * Constructor to read configuration from D-Bus. 70 * @param[in] bus - D-Bus bus object [all …]
|
/openbmc/phosphor-power/power-supply/ |
H A D | power_supply.hpp | 10 #include <sdbusplus/bus/match.hpp> 17 namespace power namespace 21 namespace sdbusRule = sdbusplus::bus::match::rules; 27 * Represents a PMBus power supply device. 42 * @param[in] name - the device name 43 * @param[in] inst - the device instance 44 * @param[in] objpath - the path to monitor 45 * @param[in] invpath - the inventory path to use 46 * @param[in] bus - D-Bus bus object 47 * @param[in] e - event object [all …]
|
/openbmc/witherspoon-pfault-analysis/power-supply/ |
H A D | power_supply.hpp | 9 #include <sdbusplus/bus/match.hpp> 16 namespace power namespace 21 namespace sdbusRule = sdbusplus::bus::match::rules; 27 * Represents a PMBus power supply device. 42 * @param[in] name - the device name 43 * @param[in] inst - the device instance 44 * @param[in] objpath - the path to monitor 45 * @param[in] invpath - the inventory path to use 46 * @param[in] bus - D-Bus bus object 47 * @param[in] e - event object [all …]
|
/openbmc/phosphor-fan-presence/ |
H A D | power_state.hpp | 5 #include <phosphor-logging/log.hpp> 19 * This class provides an interface to check the current power state, 20 * and to register a function that gets called when there is a power 25 * power to be on, such as a pgood property on the 26 * org.openbmc.Control.Power interface, or the CurrentPowerState 44 * @param[in] bus - The D-Bus bus connection object 45 * @param[in] callback - The function that should be run when 46 * the power state changes 48 PowerState(sdbusplus::bus_t& bus, StateChangeFunc callback) : _bus(bus) in PowerState() argument 61 * @brief Adds a function to call when the power state changes [all …]
|
/openbmc/linux/Documentation/hwmon/ |
H A D | ina209.rst | 6 * Burr-Brown / Texas Instruments INA209 10 Addresses scanned: - 16 - Paul Hays <Paul.Hays@cattail.ca> 17 - Ira W. Snyder <iws@ovro.caltech.edu> 18 - Guenter Roeck <linux@roeck-us.net> 22 ----------- 24 The TI / Burr-Brown INA209 monitors voltage, current, and power on the high side 25 of a D.C. power supply. It can perform measurements and calculations in the 27 calibration multiplier to scale the displayed current and power values. 31 ------------- [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/bus/ |
H A D | simple-pm-bus.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/bus/simple-pm-bus.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Simple Power-Managed Bus 10 - Geert Uytterhoeven <geert+renesas@glider.be> 13 A Simple Power-Managed Bus is a transparent bus that doesn't need a real 16 However, its bus controller is part of a PM domain, or under the control 17 of a functional clock. Hence, the bus controller's PM domain and/or 18 clock must be enabled for child devices connected to the bus (either [all …]
|
H A D | qcom,ssc-block-bus.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/bus/qcom,ssc-block-bus.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: The AHB Bus Providing a Global View of the SSC Block on (some) qcom SoCs 10 - Michael Srba <Michael.Srba@seznam.cz> 13 This binding describes the dependencies (clocks, resets, power domains) which 14 need to be turned on in a sequence before communication over the AHB bus 27 - const: qcom,msm8998-ssc-block-bus 28 - const: qcom,ssc-block-bus [all …]
|
H A D | fsl,imx8qxp-pixel-link-msi-bus.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/bus/fsl,imx8qxp-pixel-link-msi-bus.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Freescale i.MX8qxp Pixel Link Medium Speed Interconnect (MSI) Bus 10 - Liu Ying <victor.liu@nxp.com> 13 i.MX8qxp pixel link MSI bus is used to control settings of PHYs, I/Os 14 sitting together with the PHYs. It is not the same as the MSI bus coming 15 from i.MX8 System Controller Unit (SCU) which is used to control power, 18 i.MX8qxp pixel link MSI bus is a simple memory-mapped bus. Two input clocks, [all …]
|
/openbmc/linux/drivers/base/power/ |
H A D | main.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * drivers/base/power/main.c - Where the driver meets power management. 10 * and add it to the list of power-controlled devices. sysfs entries for 11 * controlling device power management will also be added. 13 * A separate list is used for keeping track of power info, because the power 26 #include <linux/pm-trace.h> 33 #include <trace/events/power.h> 39 #include "power.h" 94 * device_pm_sleep_init - Initialize system suspend-related device fields. 99 dev->power.is_prepared = false; in device_pm_sleep_init() [all …]
|
/openbmc/witherspoon-pfault-analysis/power-sequencer/ |
H A D | runtime_monitor.hpp | 6 #include <sdbusplus/bus.hpp> 12 namespace power namespace 18 * Monitors the power sequencer for faults at runtime 20 * Triggers the power sequencer fault check 2 different ways: 24 * a power off will be issued so the sequencer will stop 25 * driving power to a faulted component. 46 * @param[in] d - the device to monitor 47 * @param[in] b - D-Bus bus object 48 * @param[in] e - event object 49 * @param[in] i - poll interval [all …]
|
H A D | pgood_monitor.hpp | 6 #include <sdbusplus/bus.hpp> 12 namespace power namespace 18 * Monitors PGOOD and checks for errors on the power sequencer 22 * power sequencer device is told to kick off a power on. 24 * Future commits will analyze the power sequencer chip for errors 40 * @param[in] d - the device to monitor 41 * @param[in] b - D-Bus bus object 42 * @param[in] e - event object 43 * @param[in] t - time to allow PGOOD to come up 45 PGOODMonitor(std::unique_ptr<witherspoon::power::Device>&& d, in PGOODMonitor() [all …]
|
/openbmc/phosphor-power/power-sequencer/ |
H A D | runtime_monitor.hpp | 6 #include <sdbusplus/bus.hpp> 12 namespace power namespace 18 * Monitors the power sequencer for faults at runtime 20 * Triggers the power sequencer fault check 2 different ways: 24 * a power off will be issued so the sequencer will stop 25 * driving power to a faulted component. 46 * @param[in] d - the device to monitor 47 * @param[in] b - D-Bus bus object 48 * @param[in] e - event object 49 * @param[in] i - poll interval [all …]
|
H A D | pgood_monitor.hpp | 6 #include <sdbusplus/bus.hpp> 12 namespace power namespace 18 * Monitors PGOOD and checks for errors on the power sequencer 22 * power sequencer device is told to kick off a power on. 24 * Future commits will analyze the power sequencer chip for errors 40 * @param[in] d - the device to monitor 41 * @param[in] b - D-Bus bus object 42 * @param[in] e - event object 43 * @param[in] t - time to allow PGOOD to come up 45 PGOODMonitor(std::unique_ptr<phosphor::power::Device>&& d, in PGOODMonitor() [all …]
|
/openbmc/linux/Documentation/ABI/testing/ |
H A D | sysfs-bus-usb | 1 What: /sys/bus/usb/devices/<INTERFACE>/authorized 9 by writing INTERFACE to /sys/bus/usb/drivers_probe 10 This allows to avoid side-effects with drivers 15 What: /sys/bus/usb/devices/usbX/interface_authorized_default 22 What: /sys/bus/usb/device/.../authorized 28 drivers, non-authorized one are not. By default, wired 31 What: /sys/bus/usb/drivers/.../new_id 33 Contact: linux-usb@vger.kernel.org 48 # echo "8086 10f5" > /sys/bus/usb/drivers/foo/new_id 53 # echo "0458 7045 0 0458 704c" > /sys/bus/usb/drivers/foo/new_id [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/interconnect/ |
H A D | samsung,exynos-bus.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/interconnect/samsung,exynos-bus.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Samsung Exynos SoC Bus and Interconnect 10 - Chanwoo Choi <cw00.choi@samsung.com> 11 - Krzysztof Kozlowski <krzk@kernel.org> 15 sub-blocks in SoC. Most Exynos SoCs share the common architecture for buses. 16 Generally, each bus of Exynos SoC includes a source clock and a power line, 17 which are able to change the clock frequency of the bus in runtime. To [all …]
|
/openbmc/phosphor-bmc-code-mgmt/bmc/side-switch/ |
H A D | side_switch.cpp | 5 #include <phosphor-logging/lg2.hpp> 15 bool sideSwitchNeeded(sdbusplus::bus_t& bus) in sideSwitchNeeded() argument 25 bus, "/xyz/openbmc_project/software/functional", in sideSwitchNeeded() 29 info("side-switch only supports BMC-purpose image systems"); in sideSwitchNeeded() 47 bus, fwRunningVersionPath, in sideSwitchNeeded() 69 auto method = bus.new_method_call( in sideSwitchNeeded() 77 auto reply = bus.call(method); in sideSwitchNeeded() 103 bus, fwPath, "xyz.openbmc_project.Software.RedundancyPriority", in sideSwitchNeeded() 126 bool powerOffSystem(sdbusplus::bus_t& bus) in powerOffSystem() argument 132 utils::setProperty(bus, "/xyz/openbmc_project/state/chassis0", in powerOffSystem() [all …]
|
/openbmc/phosphor-fan-presence/presence/ |
H A D | error_reporter.hpp | 7 #include <sdbusplus/bus.hpp> 8 #include <sdbusplus/bus/match.hpp> 21 * specified in the JSON config file while power is on. 23 * The timers to create event logs are not started when power is off. 24 * When power is turned on, the timers for any missing fans will be 25 * be started. If any timers are running when power is turned off, 41 * @param[in] bus - The sdbusplus bus object 42 * @param[in] fans - The fans for this configuration 45 sdbusplus::bus_t& bus, 54 * Will start the timer to create an event log if power is on. [all …]
|
/openbmc/phosphor-buttons/src/ |
H A D | button_handler.cpp | 7 #include <phosphor-logging/lg2.hpp> 8 #include <xyz/openbmc_project/Chassis/Buttons/Power/server.hpp> 21 namespace sdbusRule = sdbusplus::bus::match::rules; 26 {"chassis-on", Chassis::Transition::On}, 27 {"chassis-off", Chassis::Transition::Off}, 28 {"chassis-cycle", Chassis::Transition::PowerCycle}}; 32 constexpr auto powerButtonIface = "xyz.openbmc_project.Chassis.Buttons.Power"; 51 Handler::Handler(sdbusplus::bus_t& bus) : bus(bus) in Handler() argument 53 /* So far, there are two modes for multi-host power control in Handler() 54 - host select button mode, e.g.: Yosemite V2 in Handler() [all …]
|
/openbmc/phosphor-state-manager/ |
H A D | discover_system_state.cpp | 7 #include "xyz/openbmc_project/Control/Power/RestorePolicy/server.hpp" 10 #include <systemd/sd-bus.h> 12 #include <phosphor-logging/elog-errors.hpp> 13 #include <phosphor-logging/lg2.hpp> 36 using namespace sdbusplus::server::xyz::openbmc_project::control::power; 55 while ((arg = getopt_long(argc, argv, "h:", longOpts, &optIndex)) != -1) in main() 72 auto bus = sdbusplus::bus in main() local [all...] |
H A D | chassis_state_manager.hpp | 8 #include <sdbusplus/bus.hpp> 28 namespace sdbusRule = sdbusplus::bus::match::rules; 45 * @param[in] bus - The Dbus bus object 46 * @param[in] objPath - The Dbus object path 47 * @param[in] id - Chassis id 49 Chassis(sdbusplus::bus_t& bus, const char* objPath, size_t id) : in Chassis() argument 50 ChassisInherit(bus, objPath, ChassisInherit::action::defer_emit), in Chassis() 51 bus(bus), in Chassis() 53 bus, in Chassis() 63 utils::subscribeToSystemdSignals(bus); [all …]
|
/openbmc/linux/Documentation/driver-api/pm/ |
H A D | devices.rst | 1 .. SPDX-License-Identifier: GPL-2.0 7 Device Power Management Basics 10 :Copyright: |copy| 2010-2011 Rafael J. Wysocki <rjw@sisk.pl>, Novell Inc. 17 Most of the code in Linux is device drivers, so most of the Linux power 18 management (PM) code is also driver-specific. Most drivers will do very 22 This writeup gives an overview of how drivers interact with system-wide 23 power management goals, emphasizing the models and interfaces that are 25 background for the domain-specific work you'd do with any specific driver. 28 Two Models for Device Power Management 31 Drivers will use one or both of these models to put devices into low-power [all …]
|
/openbmc/phosphor-power/phosphor-power-sequencer/docs/ |
H A D | README.md | 1 # phosphor-power-sequencer 5 The phosphor-power-sequencer application powers the chassis on/off and monitors 6 the power sequencer device. 8 If the chassis power good (pgood) status changes to false unexpectedly, the 9 application uses information from the power sequencer device to determine the 14 The application is a single-threaded C++ executable. It is a 'daemon' process 18 The application is driven by an optional, system-specific JSON configuration 20 creates a collection of C++ objects. These objects represent the power sequencer 23 ## Power sequencer device 25 A power sequencer device enables (turns on) the voltage rails in the correct [all …]
|