[PATCH] drm/amdgpu: Add NAVI12 support from kfd side

Kuehling, Felix Felix.Kuehling at amd.com
Wed Sep 25 20:57:42 UTC 2019


Agreed. KFD is part of amdgpu. We shouldn't use the CHIP_ IDs 
differently in KFD. The code duplication is minimal and we've done it 
for all chips so far. E.g. Fiji and all the Polaris versions are treated 
the same in KFD. Similarly Vega10, Vega20 and Arcturus are the same for 
most purposes.

Regards,
   Felix

On 2019-09-25 4:12 p.m., Alex Deucher wrote:
> I think it would be cleaner to add navi12 to all of the relevant
> cases.  We should double check what we did for navi14 as well.
>
> Alex
>
> On Wed, Sep 25, 2019 at 4:09 PM Liu, Shaoyun <Shaoyun.Liu at amd.com> wrote:
>> I sent out another change that set the  asic_family as CHIP_NAVI10 since from KFD side there is no difference for navi10 and  navi12.
>>
>> Regards
>> Shaoyun.liu
>>
>> -----Original Message-----
>> From: Kuehling, Felix <Felix.Kuehling at amd.com>
>> Sent: Wednesday, September 25, 2019 11:23 AM
>> To: Liu, Shaoyun <Shaoyun.Liu at amd.com>; amd-gfx at lists.freedesktop.org
>> Subject: Re: [PATCH] drm/amdgpu: Add NAVI12 support from kfd side
>>
>> You'll also need to add "case CHIP_NAVI12:" in a bunch of places. Grep for "CHIP_NAVI10" and you'll find them all pretty quickly.
>>
>> Regards,
>>     Felix
>>
>> On 2019-09-24 6:13 p.m., Liu, Shaoyun wrote:
>>> Add device info for both navi12 PF and VF
>>>
>>> Change-Id: Ifb4035e65c12d153fc30e593fe109f9c7e0541f4
>>> Signed-off-by: shaoyunl <shaoyun.liu at amd.com>
>>> ---
>>>    drivers/gpu/drm/amd/amdkfd/kfd_device.c | 19 +++++++++++++++++++
>>>    1 file changed, 19 insertions(+)
>>>
>>> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device.c
>>> b/drivers/gpu/drm/amd/amdkfd/kfd_device.c
>>> index f329b82..edfbae5c 100644
>>> --- a/drivers/gpu/drm/amd/amdkfd/kfd_device.c
>>> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_device.c
>>> @@ -387,6 +387,24 @@ static const struct kfd_device_info navi10_device_info = {
>>>        .num_sdma_queues_per_engine = 8,
>>>    };
>>>
>>> +static const struct kfd_device_info navi12_device_info = {
>>> +     .asic_family = CHIP_NAVI12,
>>> +     .asic_name = "navi12",
>>> +     .max_pasid_bits = 16,
>>> +     .max_no_of_hqd  = 24,
>>> +     .doorbell_size  = 8,
>>> +     .ih_ring_entry_size = 8 * sizeof(uint32_t),
>>> +     .event_interrupt_class = &event_interrupt_class_v9,
>>> +     .num_of_watch_points = 4,
>>> +     .mqd_size_aligned = MQD_SIZE_ALIGNED,
>>> +     .needs_iommu_device = false,
>>> +     .supports_cwsr = true,
>>> +     .needs_pci_atomics = false,
>>> +     .num_sdma_engines = 2,
>>> +     .num_xgmi_sdma_engines = 0,
>>> +     .num_sdma_queues_per_engine = 8,
>>> +};
>>> +
>>>    static const struct kfd_device_info navi14_device_info = {
>>>        .asic_family = CHIP_NAVI14,
>>>        .asic_name = "navi14",
>>> @@ -425,6 +443,7 @@ static const struct kfd_device_info *kfd_supported_devices[][2] = {
>>>        [CHIP_RENOIR] = {&renoir_device_info, NULL},
>>>        [CHIP_ARCTURUS] = {&arcturus_device_info, &arcturus_device_info},
>>>        [CHIP_NAVI10] = {&navi10_device_info, NULL},
>>> +     [CHIP_NAVI12] = {&navi12_device_info, &navi12_device_info},
>>>        [CHIP_NAVI14] = {&navi14_device_info, NULL},
>>>    };
>>>
>> _______________________________________________
>> amd-gfx mailing list
>> amd-gfx at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/amd-gfx


More information about the amd-gfx mailing list