summaryrefslogtreecommitdiffstats
path: root/src/usr/ipmibase/ipmirp.C
Commit message (Collapse)AuthorAgeFilesLines
* Add sequence id to IPMI timeout tracesDan Crowell2019-04-091-1/+2
| | | | | | | | | | | | | | | Adding the very important IPMI sequence id to the trace that we push out when we get a timeout on a IPMI message. Change-Id: Ia89332defba1fd2901a17fb3cefeeb7d69e9737a Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/75017 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Matt Derksen <mderkse1@us.ibm.com> Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com>
* Modify IPMI Timeout ValueBill Hoffa2019-04-081-5/+7
| | | | | | | | | | | | | | | | | | | | | | | -- Currently the Timeout value for an IPMI message is assigned when the message is placed in the queue. The timeout value is the same whether we have 0 or 100 messages in the queue which leads to the occasional IPMI timeout when the BMC is sent a lot of messages in a short period of time. -- This fix is to implement the timeout as a per message timeout. I.E. if the message being put on the queue is the 3rd message on the queue it would get a timeout of 3x the timeout value. Change-Id: Ieb328d96144f2b1fe9dc39f57191e86cf4821c2c CQ: SW461931 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/75538 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Ilya Smirnov <ismirno@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Move watchdog timer to prevent timeoutMatthew Raybuck2019-02-261-1/+31
| | | | | | | | | | | | | | | | | | | | The watchdog used to be set in istepdispatcher.C but due to various changes to PNOR that would cause a watchdog timeout. This commit moves the watchdog out of impiext code and into impibase which allows the watchdog to be setup as soon as the ipmi resource provider comes up. Then once the code reaches istepdispatcher the watchdog is adjusted as needed. Change-Id: Ia5f13800db22cd17b0feabc5257f8f6409f54376 CQ:SW453071 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/72269 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Reviewed-by: Ilya Smirnov <ismirno@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Reduce ipmi trace spam for pnor hiomap messagesDan Crowell2018-11-271-6/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the PNOR accesses now going over IPMI, the IPMI traces are now completely overwhelmed by those messages. This change will skip tracing out the messages if they are the hiomap requests. Example of trace spam: 3.34945|IPMI|rp: queuing sync e8:5a 3.34946|IPMI|rp: W>Got message (0xe8:0x5a): l_is_pnor: 1 3.34952|IPMI|dd: I>write ok e8:5a seq 26 len 6 3.35837|IPMI|dd: I>read b2h ok ec:5a seq 26 len 8 cc 0 3.35947|IPMI|rp: queuing sync e8:5a 3.35948|IPMI|rp: W>Got message (0xe8:0x5a): l_is_pnor: 1 3.35953|IPMI|dd: I>write ok e8:5a seq 27 len 6 3.36837|IPMI|dd: I>read b2h ok ec:5a seq 27 len 8 cc 0 3.36947|IPMI|rp: queuing sync e8:5a 3.36948|IPMI|rp: W>Got message (0xe8:0x5a): l_is_pnor: 1 3.36953|IPMI|dd: I>write ok e8:5a seq 28 len 6 3.43855|IPMI|dd: I>read b2h ok ec:5a seq 28 len 8 cc 0 3.43926|IPMI|rp: queuing sync e8:5a 3.43927|IPMI|rp: W>Got message (0xe8:0x5a): l_is_pnor: 1 3.43933|IPMI|dd: I>write ok e8:5a seq 29 len 6 3.50860|IPMI|dd: I>read b2h ok ec:5a seq 29 len 8 cc 0 3.50902|IPMI|rp: queuing sync e8:5a 3.50902|IPMI|rp: W>Got message (0xe8:0x5a): l_is_pnor: 1 In a single boot on a system there were close to 4000 of these traces. Change-Id: Ia8944ca7f281986ec0bca7328fa56a7c0d521339 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/68605 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* Enable IPMI errl after targeting is initializedCorey Swenson2018-11-051-3/+0
| | | | | | | | | | | | | | | | | A recent change split IPMI into base and extended. Move the enable of IPMI errl from base to extended to avoid targeting errors. Change-Id: Ia833dd8178ff407dff1fa514b32468c5fc70e945 CQ:SW450286 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/68265 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: ANDREW R. JEFFERY <andrewrj@au1.ibm.com> Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* pnor: Introduce an IPMI-based PNOR driver implementationAndrew Jeffery2018-10-101-4/+12
| | | | | | | | | | | | | | | | | | Similar to the AST MBOX implementation, the IPMI PNOR implementation negotiates the layout of the LPC FW space with the BMC, but using IPMI rather than the AST mailbox as a protocol transport. The same protocol is still used and has simply been adapted to the new interface. Note that currently the change of transport has had a 2-3x impact on boot performance. Optimisation is an ongoing effort. Change-Id: I7f838f5b5e88ac877a725386a33df58ee5e7213c Signed-off-by: Andrew Jeffery <andrewrj@au1.ibm.com> Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/65942 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* ipmi: Remove IpmiRP dependency on targetingAndrew Jeffery2018-10-101-12/+0
| | | | | | | | | | | | | | | | | | | | Shortly, a PNOR implementation will be introduced that is dependent on IPMI for managing the layout of the LPC FW space. To facilitate this, remove IpmiRP's dependency on Targeting so that the ipmibase module can be moved into the base image (to be initialised before the PNOR implementation). Break the dependency by having the Targeting service initialisation fetch the maximum IPMI buffer size from the IPMI interface and populate the necessary attribute for HBRT. Change-Id: Ie51244435b0e14c9a5f0838283021b08858035f6 Signed-off-by: Andrew Jeffery <andrewrj@au1.ibm.com> Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/65937 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
* ipmi: Split into ipmibase and ipmiext modulesAndrew Jeffery2018-10-101-0/+1140
Split the IPMI module into base and ext portions, with the BT interface, device driver and resource provider in the base portion, and all remaining IPMI functionality in the ext portion. The split is in preparation for moving the base functionality in the hostboot base image. Change-Id: Iec864f96240d79f4fadd5519d2ef46437d07c1fd Signed-off-by: Andrew Jeffery <andrewrj@au1.ibm.com> Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/66792 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Corey V. Swenson <cswenson@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
OpenPOWER on IntegriCloud