<div>- все</div><div> </div><div>Hello, Khader!</div><div> </div><div>You've misunderstood the role of x86-power-control. Basically it is for power control only, it listens on DBus for commands like "Power on host", "Power off host" and controls the corresponding GPIO lines thus turning power supply for host and "pressing" reset button (reset line to CPU or PCH).</div><div>Also it monitors physical buttons like power buttons and feeds itself (and all other receivers of this status) with corresponding requests.</div><div> </div><div>The "inventory" data in Chassis branch of RedFish API is populated from different services.</div><div>First of all it's Entity manager with its' JSON configuration file - sensors data appears there from this service and from sensor polling services itself (take a look at dbus-sensors package).</div><div>Some data like CPU and memory devices (DIMM) information comes from smbios-mdrv2 that in turn reads data from SMBIOS tables (that in turn copied by BIOS during POST stage to VGA adapter memory shared between BMC and host).</div><div>Chassis serial, part numbers and so on are fetched from FRU EEPROM device that is processed by fru-device component (xyz.openbmc_project.FruDevice systemd service).</div><div> </div><div>I propose to start from filling FRU device (EEPROM device that is found automatically by fru-device) with valid data, format is described in standard, just search for this.</div><div>Then make simple JSON file for Entity manager (there is a manual here: https://github.com/openbmc/entity-manager/blob/master/docs/my_first_sensors.md),<br />Then dig into SMBIOS - it will take some efforts to implement KCS interface between BMC and host (kcsbridged is doing this job).</div><div> </div><div>Don't hesitate to ask, OpenBMC looks complex at the beginning but actually it's quite simple once you've understood the roles of different parts and their communications.</div><div> </div><div> </div><div>05.11.2020, 15:30, "khader basha shaik" <shaikkhaderbasha601@gmail.com>:</div><blockquote><div>Thanks alot Konstantin for the information.<div> </div><div><div>We wanted to verify if the Chassis info is populated properly, (redfish/v1/Chassis).We need to get the Chassis info and we are using curl command on path, /redfidh/v1/Chassis.But no information is being populated. </div><div> </div><div>Is there any way to verify chassis information ?</div></div><div> </div><div>We have used the x86-power-control to populate the /redfish/v1/chassis, but we no luck with this too. We did not see any data through this .</div><div> </div><div>Any suggestions or input on this would be appreciated.</div><div> </div><div>Thanks & Regards,</div><div>Khader B Shaik</div><div> </div><div> </div></div> <div><div>On Thu, 5 Nov 2020 at 12:14, Konstantin Klubnichkin <kitsok@yandex-team.ru> wrote:</div><blockquote><div>- все</div><div> </div><div>Hello!</div><div> </div><div>This error means GPIO library unable to find line with this name.</div><div>To check you can</div><div>cat /sys/kernel/debug/gpio | grep pwm0_gpio40</div><div>or</div><div>gpioinfo | grep pwm0_gpio40</div><div> </div><div>The most probably cause is missing line name in DTS.</div><div>There must be something like this:</div><div><div>&gpio {<!-- --></div><div>status = "okay";</div><div>pinctrl-names = "pass-through";</div><div>pinctrl-0 = <&pinctrl_gpid0_default</div><div>&pinctrl_gpid2_default>;</div><div>gpio-line-names =</div><div>/* A0-A7 */ "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7",</div><div>/* B0-B7 */ "B0", "B1", "B2", "POST_COMPLETE", "B4", "B5", "PS_PWROK", "B7",</div><div>................</div><div>};</div></div><div> </div><div>I don't have PI on hands so my example is for AST2500 SoC, but as far as I remember there are many guides how to patch DTS for Raspberry.</div><div> </div><div>05.11.2020, 09:03, "khader basha shaik" <shaikkhaderbasha601@gmail.com>:</div><blockquote><div>Hi Team,<div> </div><div><div>we are trying to control our board with RPI bmc.we are trying to control power on, off and reset </div></div><div> </div><div><div>we compiled x86-power-control with openbmc and create a patch for the sane with the GPIO name "pwm0_gpio40". and when we are try to use this.</div><div>we are facing the below error.</div><div> </div><div><div><div>root@akky:~# systemctl status xyz.openbmc_project.Chassis.Control.Power.service<br />● xyz.openbmc_project.Chassis.Control.Power.service - Power Control<br />Loaded: loaded (/lib/systemd/system/xyz.openbmc_project.Chassis.Control.Power.service; enabled; vendor preset: enabled)<br />Active: failed (Result: exit-code) since Thu 1970-01-01 00:00:13 UTC; 33s ago<br />Process: 310 ExecStart=/usr/bin/power-control (code=exited, status=255/EXCEPTION)<br />Main PID: 310 (code=exited, status=255/EXCEPTION)</div><div><div> </div><div><div>Jan 01 00:00:13 akky systemd[1]: xyz.openbmc_project.Chassis.Control.Power.service: Scheduled restart job, restart counter is at 2.<br />Jan 01 00:00:13 akky systemd[1]: Stopped Power Control.<br />Jan 01 00:00:13 akky systemd[1]: xyz.openbmc_project.Chassis.Control.Power.service: Start request repeated too quickly.<br />Jan 01 00:00:13 akky systemd[1]: xyz.openbmc_project.Chassis.Control.Power.service: Failed with result 'exit-code'.<br />Jan 01 00:00:13 akky systemd[1]: Failed to start Power Control.<br />root@akky:~# /usr/bin/power-control -h<br />Start Chassis power control service...<br />Failed to find the pwm0_gpio40 line</div></div></div><div> </div><div>Could someone help me how to fix this or some pointers regarding this error.</div><div> </div><div>Also is physcial connection between the bmc and the server is needed or we can test this through someother way.</div><div> </div><div>Thanks & Regards,</div><div>Khader B Shaik</div><div> </div></div></div></div></div></blockquote><div> </div><div> </div><div>-- </div><div>Best regards,</div><div>Konstantin Klubnichkin,</div><div>lead firmware engineer,</div><div>server hardware R&D group,</div><div>Yandex Moscow office.</div><div>tel: +7-903-510-33-33</div><div> </div></blockquote></div></blockquote><div> </div><div> </div><div><div>-- </div><div>Best regards,</div><div>Konstantin Klubnichkin,</div><div>lead firmware engineer,</div><div>server hardware R&D group,</div><div>Yandex Moscow office.</div><div>tel: +7-903-510-33-33</div></div><div> </div>