• John Harrison's avatar
    drm/xe/guc: Port over the slow GuC loading support from i915 · b0ac1b42
    John Harrison authored
    GuC loading can take longer than it is supposed to for various
    reasons. So add in the code to cope with that and to report it when it
    happens. There are also many different reasons why GuC loading can
    fail, so add in the code for checking for those and for reporting
    issues in a meaningful manner rather than just hitting a timeout and
    saying 'fail: status = %x'.
    
    Also, remove the 'FIXME' comment about an i915 bug that has never been
    applicable to Xe!
    
    v2: Actually report the requested and granted frequencies rather than
    showing granted twice (review feedback from Badal).
    v3: Locally code all the timeout and end condition handling because a
    helper function is not allowed (review feedback from Lucas/Rodrigo).
    v4: Add more documentation comments and rename a define to add units
    (review feedback from Lucas).
    v5: Fix copy/paste error in xe_mmio_wait32_not (review feedback from
    Lucas) and rebase (no more return value from guc_wait_ucode).
    Signed-off-by: default avatarJohn Harrison <John.C.Harrison@Intel.com>
    Reviewed-by: default avatarLucas De Marchi <lucas.demarchi@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20240518043700.3264362-3-John.C.Harrison@Intel.com
    b0ac1b42
xe_mmio.c 18.9 KB