[PATCH 1/1] drm/amdgpu: skip load smu and sdma microcode on sriov for SIENNA_CICHLID

Lazar, Lijo Lijo.Lazar at amd.com
Mon Dec 14 04:00:50 UTC 2020


[AMD Public Use]

>-----Original Message-----
>From: amd-gfx <amd-gfx-bounces at lists.freedesktop.org> On Behalf Of
>Stanley.Yang
>Sent: Monday, December 14, 2020 8:41 AM
>To: amd-gfx at lists.freedesktop.org
>Cc: Yang, Stanley <Stanley.Yang at amd.com>; Jian, Jane
><Jane.Jian at amd.com>
>Subject: [PATCH 1/1] drm/amdgpu: skip load smu and sdma microcode on
>sriov for SIENNA_CICHLID
>
>[CAUTION: External Email]
>
>skip load smu and sdma fw on sriov due to smc, sos, ta and asd fw have been
>skipped for SIENNA_CICHLID.
>
>Signed-off-by: Stanley.Yang <Stanley.Yang at amd.com>
>---
> drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c    | 3 +++
> drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c | 4 +++-
> 2 files changed, 6 insertions(+), 1 deletion(-)
>
>diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c
>b/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c
>index 39e17aae655f..87566dee048d 100644
>--- a/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c
>+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c
>@@ -153,6 +153,9 @@ static int sdma_v5_2_init_microcode(struct
>amdgpu_device *adev)
>        struct amdgpu_firmware_info *info = NULL;
>        const struct common_firmware_header *header = NULL;
>
>+       if (amdgpu_sriov_vf(adev) && (adev->asic_type ==
>CHIP_SIENNA_CICHLID))
>+               return 0;
>+
>        DRM_DEBUG("\n");
>
>        switch (adev->asic_type) {
>diff --git a/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c
>b/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c
>index cf999b7a2164..31f05d96586c 100644
>--- a/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c
>+++ b/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c
>@@ -847,7 +847,9 @@ static int smu_sw_init(void *handle)
>        smu->smu_dpm.dpm_level = AMD_DPM_FORCED_LEVEL_AUTO;
>        smu->smu_dpm.requested_dpm_level =
>AMD_DPM_FORCED_LEVEL_AUTO;
>
>-       if (!amdgpu_sriov_vf(adev) || (adev->asic_type != CHIP_NAVI12)) {
>+       if (!amdgpu_sriov_vf(adev) ||
>+                       ((adev->asic_type != CHIP_NAVI12) &&
>+                       (adev->asic_type != CHIP_SIENNA_CICHLID))) {
>                ret = smu_init_microcode(smu);
>                if (ret) {
>                        dev_err(adev->dev, "Failed to load smu firmware!\n");
>--

It's not good to keep adding ASIC checks in the generic interface code. Move this check to smuv11. 

Thanks,
Lijo

>2.17.1
>
>_______________________________________________
>amd-gfx mailing list
>amd-gfx at lists.freedesktop.org
>https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.f
>reedesktop.org%2Fmailman%2Flistinfo%2Famd-
>gfx&data=04%7C01%7Clijo.lazar%40amd.com%7C0a496c71fa1d4bc6a872
>08d89fddf683%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637435
>122965129344%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQ
>IjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=i1y6snfi
>3bnQVHOuVGfMqjSG%2FsBLYtxLkrnT9PV4%2FbU%3D&reserved=0


More information about the amd-gfx mailing list