Lines Matching full:major

79 				    u32 *branch, u32 *major, u32 *minor, u32 *patch)  in guc_action_match_version()  argument
103 *major = FIELD_GET(VF2GUC_MATCH_VERSION_RESPONSE_MSG_1_MAJOR, response[1]); in guc_action_match_version()
110 static void vf_minimum_guc_version(struct xe_gt *gt, u32 *branch, u32 *major, u32 *minor) in vf_minimum_guc_version() argument
118 *major = 1; in vf_minimum_guc_version()
124 *major = 1; in vf_minimum_guc_version()
130 static void vf_wanted_guc_version(struct xe_gt *gt, u32 *branch, u32 *major, u32 *minor) in vf_wanted_guc_version() argument
133 return vf_minimum_guc_version(gt, branch, major, minor); in vf_wanted_guc_version()
141 u32 branch, major, minor, patch; in vf_handshake_with_guc() local
147 if (guc_version->major || guc_version->minor) { in vf_handshake_with_guc()
149 wanted_major = guc_version->major; in vf_handshake_with_guc()
157 &branch, &major, &minor, &patch); in vf_handshake_with_guc()
162 if ((guc_version->major || guc_version->minor) && in vf_handshake_with_guc()
163 (guc_version->branch != branch || guc_version->major != major || in vf_handshake_with_guc()
166 branch, major, minor, patch); in vf_handshake_with_guc()
168 guc_version->branch, guc_version->major, in vf_handshake_with_guc()
175 if (major > wanted_major) { in vf_handshake_with_guc()
180 /* there's no fallback on major version. */ in vf_handshake_with_guc()
181 if (major != wanted_major) { in vf_handshake_with_guc()
188 xe_gt_assert(gt, major != GUC_VERSION_MAJOR_ANY); in vf_handshake_with_guc()
189 if (major < wanted_major || (major == wanted_major && minor < wanted_minor)) { in vf_handshake_with_guc()
195 branch, major, minor, patch); in vf_handshake_with_guc()
198 guc_version->major = major; in vf_handshake_with_guc()
205 branch, major, minor, patch, ERR_PTR(err)); in vf_handshake_with_guc()
213 &branch, &major, &minor, &patch)) in vf_handshake_with_guc()
215 branch, major, minor, patch); in vf_handshake_with_guc()
369 xe_gt_assert(gt, gt->sriov.vf.guc_version.major > 1 || gt->sriov.vf.guc_version.minor >= 2); in xe_gt_sriov_vf_gmdid()
530 xe_gt_assert(gt, gt->sriov.vf.guc_version.major); in xe_gt_sriov_vf_guc_ids()
547 xe_gt_assert(gt, gt->sriov.vf.guc_version.major); in xe_gt_sriov_vf_lmem()
655 static int relay_action_handshake(struct xe_gt *gt, u32 *major, u32 *minor) in relay_action_handshake() argument
661 FIELD_PREP(VF2PF_HANDSHAKE_REQUEST_MSG_1_MAJOR, *major) | in relay_action_handshake()
681 *major = FIELD_GET(VF2PF_HANDSHAKE_RESPONSE_MSG_1_MAJOR, response[1]); in relay_action_handshake()
687 static void vf_connect_pf(struct xe_gt *gt, u16 major, u16 minor) in vf_connect_pf() argument
691 gt->sriov.vf.pf_version.major = major; in vf_connect_pf()
704 u32 major = major_wanted, minor = minor_wanted; in vf_handshake_with_pf() local
707 err = relay_action_handshake(gt, &major, &minor); in vf_handshake_with_pf()
711 if (!major && !minor) { in vf_handshake_with_pf()
716 xe_gt_sriov_dbg(gt, "using VF/PF ABI %u.%u\n", major, minor); in vf_handshake_with_pf()
717 vf_connect_pf(gt, major, minor); in vf_handshake_with_pf()
722 major, minor, ERR_PTR(err)); in vf_handshake_with_pf()
774 static bool vf_is_negotiated(struct xe_gt *gt, u16 major, u16 minor) in vf_is_negotiated() argument
778 return major == gt->sriov.vf.pf_version.major && in vf_is_negotiated()
967 xe_gt_assert(gt, gt->sriov.vf.pf_version.major); in xe_gt_sriov_vf_read32()
1074 u32 branch, major, minor; in xe_gt_sriov_vf_print_version() local
1080 vf_minimum_guc_version(gt, &branch, &major, &minor); in xe_gt_sriov_vf_print_version()
1081 drm_printf(p, "\tbase:\t%u.%u.%u.*\n", branch, major, minor); in xe_gt_sriov_vf_print_version()
1083 vf_wanted_guc_version(gt, &branch, &major, &minor); in xe_gt_sriov_vf_print_version()
1084 drm_printf(p, "\twanted:\t%u.%u.%u.*\n", branch, major, minor); in xe_gt_sriov_vf_print_version()
1087 guc_version->branch, guc_version->major, in xe_gt_sriov_vf_print_version()
1097 pf_version->major, pf_version->minor); in xe_gt_sriov_vf_print_version()