• Konrad Dybcio's avatar
    drm/msm/a6xx: Add skeleton A7xx support · af66706a
    Konrad Dybcio authored
    A7xx GPUs are - from kernel's POV anyway - basically another generation
    of A6xx. They build upon the A650/A660_family advancements, skipping some
    writes (presumably more values are preset correctly on reset), adding
    some new ones and changing others.
    
    One notable difference is the introduction of a second shadow, called BV.
    To handle this with the current code, allocate it right after the current
    RPTR shadow.
    
    BV handling and .submit are mostly based on Jonathan Marek's work.
    
    All A7xx GPUs are assumed to have a GMU.
    A702 is not an A7xx-class GPU, it's a weird forked A610.
    
    Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on SM8550-QRD
    Tested-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> # sm8450
    Signed-off-by: default avatarKonrad Dybcio <konrad.dybcio@linaro.org>
    Patchwork: https://patchwork.freedesktop.org/patch/559285/Signed-off-by: default avatarRob Clark <robdclark@chromium.org>
    af66706a
a6xx_gmu.c 45.8 KB