cxl: Set the valid bit in PE for dedicated mode
Make sure to set the valid-bit in software-state field of the populated PE. This was earlier missing for dedicated mode AFUs, hence was causing a PSL freeze when the AFU was activated. Signed-off-by: Vaibhav Jain <vaibhav@linux.vnet.ibm.com> Acked-by: Frederic Barrat <fbarrat@linux.vnet.ibm.com> Acked-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
parent
03b8abedf4
commit
8512bffd62
|
@ -897,6 +897,14 @@ int cxl_attach_dedicated_process_psl9(struct cxl_context *ctx, u64 wed, u64 amr)
|
|||
if (ctx->afu->adapter->native->sl_ops->update_dedicated_ivtes)
|
||||
afu->adapter->native->sl_ops->update_dedicated_ivtes(ctx);
|
||||
|
||||
ctx->elem->software_state = cpu_to_be32(CXL_PE_SOFTWARE_STATE_V);
|
||||
/*
|
||||
* Ideally we should do a wmb() here to make sure the changes to the
|
||||
* PE are visible to the card before we call afu_enable.
|
||||
* On ppc64 though all mmios are preceded by a 'sync' instruction hence
|
||||
* we dont dont need one here.
|
||||
*/
|
||||
|
||||
result = cxl_ops->afu_reset(afu);
|
||||
if (result)
|
||||
return result;
|
||||
|
|
Loading…
Reference in New Issue