aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/misc/cxl/fault.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/misc/cxl/fault.c')
-rw-r--r--drivers/misc/cxl/fault.c15
1 files changed, 2 insertions, 13 deletions
diff --git a/drivers/misc/cxl/fault.c b/drivers/misc/cxl/fault.c
index f17f72ea0545..70dbb6de102c 100644
--- a/drivers/misc/cxl/fault.c
+++ b/drivers/misc/cxl/fault.c
@@ -220,22 +220,11 @@ static bool cxl_is_segment_miss(struct cxl_context *ctx, u64 dsisr)
220 220
221static bool cxl_is_page_fault(struct cxl_context *ctx, u64 dsisr) 221static bool cxl_is_page_fault(struct cxl_context *ctx, u64 dsisr)
222{ 222{
223 u64 crs; /* Translation Checkout Response Status */
224
225 if ((cxl_is_power8()) && (dsisr & CXL_PSL_DSISR_An_DM)) 223 if ((cxl_is_power8()) && (dsisr & CXL_PSL_DSISR_An_DM))
226 return true; 224 return true;
227 225
228 if (cxl_is_power9()) { 226 if (cxl_is_power9())
229 crs = (dsisr & CXL_PSL9_DSISR_An_CO_MASK); 227 return true;
230 if ((crs == CXL_PSL9_DSISR_An_PF_SLR) ||
231 (crs == CXL_PSL9_DSISR_An_PF_RGC) ||
232 (crs == CXL_PSL9_DSISR_An_PF_RGP) ||
233 (crs == CXL_PSL9_DSISR_An_PF_HRH) ||
234 (crs == CXL_PSL9_DSISR_An_PF_STEG) ||
235 (crs == CXL_PSL9_DSISR_An_URTCH)) {
236 return true;
237 }
238 }
239 228
240 return false; 229 return false;
241} 230}