Lines Matching defs:gdte
25 static int validate_gdte_nested(struct iommu_hwpt_amd_guest *gdte)
27 u32 gpt_level = FIELD_GET(DTE_GPT_LEVEL_MASK, gdte->dte[2]);
30 if (FIELD_GET(DTE_MODE_MASK, gdte->dte[0]) != 0 ||
31 FIELD_GET(DTE_HOST_TRP, gdte->dte[0]) != 0)
35 if (FIELD_GET(DTE_FLAG_V, gdte->dte[0]) == 1 &&
36 FIELD_GET(DTE_FLAG_GV, gdte->dte[0]) == 1 &&
37 FIELD_GET(DTE_GCR3_14_12, gdte->dte[0]) == 0 &&
38 FIELD_GET(DTE_GCR3_30_15, gdte->dte[1]) == 0 &&
39 FIELD_GET(DTE_GCR3_51_31, gdte->dte[1]) == 0)
48 if (FIELD_GET(DTE_GLX, gdte->dte[0]) == 3)
112 ret = iommu_copy_struct_from_user(&ndom->gdte, user_data,
118 ret = validate_gdte_nested(&ndom->gdte);
122 ndom->gdom_id = FIELD_GET(DTE_DOMID_MASK, ndom->gdte.dte[1]);
196 struct iommu_hwpt_amd_guest *gdte = &ndom->gdte;
224 new->data[0] |= gdte->dte[0] & DTE_FLAG_PPR;
227 new->data[0] |= gdte->dte[0] & (DTE_GLX | DTE_FLAG_GIOV);
230 new->data[0] |= gdte->dte[0] & DTE_GCR3_14_12;
231 new->data[1] |= gdte->dte[1] & (DTE_GCR3_30_15 | DTE_GCR3_51_31);
234 new->data[2] |= gdte->dte[2] & DTE_GPT_LEVEL_MASK;