[Skiboot] [PATCH v2] opal/hmi: Catch NPU2 HMIs for opencapi
Andrew Donnellan
andrew.donnellan at au1.ibm.com
Mon Aug 13 19:50:04 AEST 2018
On 13/08/18 19:47, Frederic Barrat wrote:
> HMIs for NPU2 are filtered with the 'compatible' string of the PHB, so
> add opencapi to the mix.
>
> Signed-off-by: Frederic Barrat <fbarrat at linux.ibm.com>
> ---
> Changelog:
>
> v2:
> use boolean instead of dummy pointer when looking for PHB (Andrew)
Thanks for fixing that.
Reviewed-by: Andrew Donnellan <andrew.donnellan at au1.ibm.com>
>
>
> core/hmi.c | 15 ++++++++++-----
> 1 file changed, 10 insertions(+), 5 deletions(-)
>
> diff --git a/core/hmi.c b/core/hmi.c
> index e6fed405..1f665a2f 100644
> --- a/core/hmi.c
> +++ b/core/hmi.c
> @@ -639,14 +639,19 @@ static void dump_scoms(int flat_chip_id, const char *unit, uint32_t *scoms,
> }
> }
>
> +static bool phb_is_npu2(struct dt_node *dn)
> +{
> + return (dt_node_is_compatible(dn, "ibm,power9-npu-pciex") ||
> + dt_node_is_compatible(dn, "ibm,power9-npu-opencapi-pciex"));
> +}
> +
> static void find_npu2_checkstop_reason(int flat_chip_id,
> struct OpalHMIEvent *hmi_evt,
> uint64_t *out_flags)
> {
> struct phb *phb;
> - struct npu *p = NULL;
> int i;
> - bool npu2_hmi_verbose = false;
> + bool npu2_hmi_verbose = false, found = false;
> uint64_t npu2_fir;
> uint64_t npu2_fir_mask;
> uint64_t npu2_fir_action0;
> @@ -662,15 +667,15 @@ static void find_npu2_checkstop_reason(int flat_chip_id,
> /* Find the NPU on the chip associated with the HMI. */
> for_each_phb(phb) {
> /* NOTE: if a chip ever has >1 NPU this will need adjusting */
> - if (dt_node_is_compatible(phb->dt_node, "ibm,power9-npu-pciex") &&
> + if (phb_is_npu2(phb->dt_node) &&
> (dt_get_chip_id(phb->dt_node) == flat_chip_id)) {
> - p = phb_to_npu(phb);
> + found = true;
> break;
> }
> }
>
> /* If we didn't find a NPU on the chip, it's not our checkstop. */
> - if (p == NULL)
> + if (!found)
> return;
>
> npu2_fir_addr = NPU2_FIR_REGISTER_0;
>
--
Andrew Donnellan OzLabs, ADL Canberra
andrew.donnellan at au1.ibm.com IBM Australia Limited
More information about the Skiboot
mailing list