• Lijo Lazar's avatar
    drm/amdgpu: Use unique doorbell range per xcc · 233bb373
    Lijo Lazar authored
    Program different ranges in each XCC with MEC_DOORBELL_RANGE_LOWER/HIGHER.
    Keeping the same range causes CPF in other XCCs also to be busy when an IB
    packet is submitted to KCQ. Only the XCC which processes the packet
    comes back to idle afterwards and this causes other CPs not be idle.
    This in turn affects clockgating behavior as RLC doesn't get idle
    interrupt.
    
    LOWER/HIGHER covers only KIQ/KCQs which are per XCC queues. Assigning
    different ranges doesn't seem to have any side effect as user queue ranges
    are outside of this range. User queue tests - PM4 through KFD and AQL
    through rocr - have the same results after this change.
    Signed-off-by: default avatarLijo Lazar <lijo.lazar@amd.com>
    Reviewed-by: default avatarHawking Zhang <Hawking.Zhang@amd.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    233bb373
gfx_v9_4_3.c 99.4 KB