> -----Original Message----- > From: Vishwakarma, Pratik > Sent: Friday, September 21, 2018 12:34 PM > To: Zhu, Rex <Rex.Zhu at amd.com>; amd-gfx at lists.freedesktop.org; Zhou, > Hang <Hang.Zhou at amd.com> > Subject: Re: [PATCH 4/4] drm/amdgpu: Change the gfx/sdma init/fini > sequence > > On 9/20/2018 3:37 PM, Rex Zhu wrote: > > initialize gfx/sdma before dpm features enabled. > > and disable dpm features before gfx/sdma fini. > > > > Signed-off-by: Rex Zhu <Rex.Zhu at amd.com> > > --- > > drivers/gpu/drm/amd/amdgpu/cik.c | 17 +++++++++-------- > > drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 11 +++++++++-- > > drivers/gpu/drm/amd/amdgpu/si.c | 13 +++++++------ > > drivers/gpu/drm/amd/amdgpu/soc15.c | 8 ++++---- > > drivers/gpu/drm/amd/amdgpu/vi.c | 24 ++++++++++++------------ > > drivers/gpu/drm/amd/powerplay/amd_powerplay.c | 16 +++++++++++++- > -- > > drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c | 18 ------------------ > > 7 files changed, 54 insertions(+), 53 deletions(-) > > > > diff --git a/drivers/gpu/drm/amd/amdgpu/cik.c > > b/drivers/gpu/drm/amd/amdgpu/cik.c > > index 78ab939..f41f5f5 100644 > > --- a/drivers/gpu/drm/amd/amdgpu/cik.c > > +++ b/drivers/gpu/drm/amd/amdgpu/cik.c > > @@ -2002,6 +2002,8 @@ int cik_set_ip_blocks(struct amdgpu_device > *adev) > > amdgpu_device_ip_block_add(adev, > &cik_common_ip_block); > > amdgpu_device_ip_block_add(adev, &gmc_v7_0_ip_block); > > amdgpu_device_ip_block_add(adev, &cik_ih_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v7_2_ip_block); > > + amdgpu_device_ip_block_add(adev, &cik_sdma_ip_block); > > if (amdgpu_dpm == -1) > > amdgpu_device_ip_block_add(adev, > &pp_smu_ip_block); > > else > > @@ -2014,8 +2016,6 @@ int cik_set_ip_blocks(struct amdgpu_device > *adev) > > #endif > > else > > amdgpu_device_ip_block_add(adev, > &dce_v8_2_ip_block); > > - amdgpu_device_ip_block_add(adev, &gfx_v7_2_ip_block); > > - amdgpu_device_ip_block_add(adev, &cik_sdma_ip_block); > > amdgpu_device_ip_block_add(adev, &uvd_v4_2_ip_block); > > amdgpu_device_ip_block_add(adev, &vce_v2_0_ip_block); > > break; > > @@ -2023,6 +2023,8 @@ int cik_set_ip_blocks(struct amdgpu_device > *adev) > > amdgpu_device_ip_block_add(adev, > &cik_common_ip_block); > > amdgpu_device_ip_block_add(adev, &gmc_v7_0_ip_block); > > amdgpu_device_ip_block_add(adev, &cik_ih_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v7_3_ip_block); > > + amdgpu_device_ip_block_add(adev, &cik_sdma_ip_block); > > if (amdgpu_dpm == -1) > > amdgpu_device_ip_block_add(adev, > &pp_smu_ip_block); > > else > > @@ -2035,8 +2037,6 @@ int cik_set_ip_blocks(struct amdgpu_device > *adev) > > #endif > > else > > amdgpu_device_ip_block_add(adev, > &dce_v8_5_ip_block); > > - amdgpu_device_ip_block_add(adev, &gfx_v7_3_ip_block); > > - amdgpu_device_ip_block_add(adev, &cik_sdma_ip_block); > > amdgpu_device_ip_block_add(adev, &uvd_v4_2_ip_block); > > amdgpu_device_ip_block_add(adev, &vce_v2_0_ip_block); > > break; > > @@ -2044,6 +2044,8 @@ int cik_set_ip_blocks(struct amdgpu_device > *adev) > > amdgpu_device_ip_block_add(adev, > &cik_common_ip_block); > > amdgpu_device_ip_block_add(adev, &gmc_v7_0_ip_block); > > amdgpu_device_ip_block_add(adev, &cik_ih_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v7_1_ip_block); > > + amdgpu_device_ip_block_add(adev, &cik_sdma_ip_block); > > amdgpu_device_ip_block_add(adev, &kv_smu_ip_block); > > if (adev->enable_virtual_display) > > amdgpu_device_ip_block_add(adev, > &dce_virtual_ip_block); @@ > > -2053,8 +2055,7 @@ int cik_set_ip_blocks(struct amdgpu_device *adev) > > #endif > > else > > amdgpu_device_ip_block_add(adev, > &dce_v8_1_ip_block); > > - amdgpu_device_ip_block_add(adev, &gfx_v7_1_ip_block); > > - amdgpu_device_ip_block_add(adev, &cik_sdma_ip_block); > > + > > amdgpu_device_ip_block_add(adev, &uvd_v4_2_ip_block); > > amdgpu_device_ip_block_add(adev, &vce_v2_0_ip_block); > > break; > > @@ -2063,6 +2064,8 @@ int cik_set_ip_blocks(struct amdgpu_device > *adev) > > amdgpu_device_ip_block_add(adev, > &cik_common_ip_block); > > amdgpu_device_ip_block_add(adev, &gmc_v7_0_ip_block); > > amdgpu_device_ip_block_add(adev, &cik_ih_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v7_2_ip_block); > > + amdgpu_device_ip_block_add(adev, &cik_sdma_ip_block); > > amdgpu_device_ip_block_add(adev, &kv_smu_ip_block); > > if (adev->enable_virtual_display) > > amdgpu_device_ip_block_add(adev, > &dce_virtual_ip_block); @@ > > -2072,8 +2075,6 @@ int cik_set_ip_blocks(struct amdgpu_device *adev) > > #endif > > else > > amdgpu_device_ip_block_add(adev, > &dce_v8_3_ip_block); > > - amdgpu_device_ip_block_add(adev, &gfx_v7_2_ip_block); > > - amdgpu_device_ip_block_add(adev, &cik_sdma_ip_block); > > amdgpu_device_ip_block_add(adev, &uvd_v4_2_ip_block); > > amdgpu_device_ip_block_add(adev, &vce_v2_0_ip_block); > > break; > > diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c > > b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c > > index 3670f76..8690e04 100644 > > --- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c > > +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c > > @@ -4217,10 +4217,17 @@ static int gfx_v8_0_rlc_resume(struct > amdgpu_device *adev) > > if (adev->firmware.load_type == AMDGPU_FW_LOAD_DIRECT) { > > /* legacy rlc firmware loading */ > > r = gfx_v8_0_rlc_load_microcode(adev); > > - if (r) > > - return r; > > + } else if (adev->firmware.load_type == AMDGPU_FW_LOAD_SMU && > adev->powerplay.pp_funcs->load_firmware) { > > + amdgpu_ucode_init_bo(adev); > > + r = adev->powerplay.pp_funcs->load_firmware(adev- > >powerplay.pp_handle); > > + } else { > > + r = -EINVAL; > > } > > > Can you please explain above change? It seems unrelated to commit > message. On VI, rlc/me/mec/sdma firmware can be loaded via smu, so if fw_load_smu type is enabled, We need to call smu to load firmware first. Thanks Rex > > + if (r) { > > + pr_err("firmware loading failed\n"); > > + return r; > > + } > > gfx_v8_0_rlc_start(adev); > > > > return 0; > > diff --git a/drivers/gpu/drm/amd/amdgpu/si.c > > b/drivers/gpu/drm/amd/amdgpu/si.c index c364ef9..f8408f8 100644 > > --- a/drivers/gpu/drm/amd/amdgpu/si.c > > +++ b/drivers/gpu/drm/amd/amdgpu/si.c > > @@ -2057,13 +2057,13 @@ int si_set_ip_blocks(struct amdgpu_device > *adev) > > amdgpu_device_ip_block_add(adev, &si_common_ip_block); > > amdgpu_device_ip_block_add(adev, &gmc_v6_0_ip_block); > > amdgpu_device_ip_block_add(adev, &si_ih_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v6_0_ip_block); > > + amdgpu_device_ip_block_add(adev, &si_dma_ip_block); > > amdgpu_device_ip_block_add(adev, &si_smu_ip_block); > > if (adev->enable_virtual_display) > > amdgpu_device_ip_block_add(adev, > &dce_virtual_ip_block); > > else > > amdgpu_device_ip_block_add(adev, > &dce_v6_0_ip_block); > > - amdgpu_device_ip_block_add(adev, &gfx_v6_0_ip_block); > > - amdgpu_device_ip_block_add(adev, &si_dma_ip_block); > > /* amdgpu_device_ip_block_add(adev, &uvd_v3_1_ip_block); > */ > > /* amdgpu_device_ip_block_add(adev, &vce_v1_0_ip_block); > */ > > break; > > @@ -2071,13 +2071,14 @@ int si_set_ip_blocks(struct amdgpu_device > *adev) > > amdgpu_device_ip_block_add(adev, &si_common_ip_block); > > amdgpu_device_ip_block_add(adev, &gmc_v6_0_ip_block); > > amdgpu_device_ip_block_add(adev, &si_ih_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v6_0_ip_block); > > + amdgpu_device_ip_block_add(adev, &si_dma_ip_block); > > amdgpu_device_ip_block_add(adev, &si_smu_ip_block); > > if (adev->enable_virtual_display) > > amdgpu_device_ip_block_add(adev, > &dce_virtual_ip_block); > > else > > amdgpu_device_ip_block_add(adev, > &dce_v6_4_ip_block); > > - amdgpu_device_ip_block_add(adev, &gfx_v6_0_ip_block); > > - amdgpu_device_ip_block_add(adev, &si_dma_ip_block); > > + > > /* amdgpu_device_ip_block_add(adev, &uvd_v3_1_ip_block); > */ > > /* amdgpu_device_ip_block_add(adev, &vce_v1_0_ip_block); > */ > > break; > > @@ -2085,11 +2086,11 @@ int si_set_ip_blocks(struct amdgpu_device > *adev) > > amdgpu_device_ip_block_add(adev, &si_common_ip_block); > > amdgpu_device_ip_block_add(adev, &gmc_v6_0_ip_block); > > amdgpu_device_ip_block_add(adev, &si_ih_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v6_0_ip_block); > > + amdgpu_device_ip_block_add(adev, &si_dma_ip_block); > > amdgpu_device_ip_block_add(adev, &si_smu_ip_block); > > if (adev->enable_virtual_display) > > amdgpu_device_ip_block_add(adev, > &dce_virtual_ip_block); > > - amdgpu_device_ip_block_add(adev, &gfx_v6_0_ip_block); > > - amdgpu_device_ip_block_add(adev, &si_dma_ip_block); > > break; > > default: > > BUG(); > > diff --git a/drivers/gpu/drm/amd/amdgpu/soc15.c > > b/drivers/gpu/drm/amd/amdgpu/soc15.c > > index 138c481..a741913 100644 > > --- a/drivers/gpu/drm/amd/amdgpu/soc15.c > > +++ b/drivers/gpu/drm/amd/amdgpu/soc15.c > > @@ -529,6 +529,8 @@ int soc15_set_ip_blocks(struct amdgpu_device > *adev) > > amdgpu_device_ip_block_add(adev, > &psp_v11_0_ip_block); > > else > > amdgpu_device_ip_block_add(adev, > &psp_v3_1_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v9_0_ip_block); > > + amdgpu_device_ip_block_add(adev, &sdma_v4_0_ip_block); > > if (!amdgpu_sriov_vf(adev)) > > amdgpu_device_ip_block_add(adev, > &pp_smu_ip_block); > > if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) > @@ > > -539,8 +541,6 @@ int soc15_set_ip_blocks(struct amdgpu_device *adev) > > #else > > # warning "Enable CONFIG_DRM_AMD_DC for display support on > SOC15." > > #endif > > - amdgpu_device_ip_block_add(adev, &gfx_v9_0_ip_block); > > - amdgpu_device_ip_block_add(adev, &sdma_v4_0_ip_block); > > if (!(adev->asic_type == CHIP_VEGA20 && > amdgpu_sriov_vf(adev))) { > > amdgpu_device_ip_block_add(adev, > &uvd_v7_0_ip_block); > > amdgpu_device_ip_block_add(adev, > &vce_v4_0_ip_block); @@ -551,6 > > +551,8 @@ int soc15_set_ip_blocks(struct amdgpu_device *adev) > > amdgpu_device_ip_block_add(adev, &gmc_v9_0_ip_block); > > amdgpu_device_ip_block_add(adev, &vega10_ih_ip_block); > > amdgpu_device_ip_block_add(adev, &psp_v10_0_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v9_0_ip_block); > > + amdgpu_device_ip_block_add(adev, &sdma_v4_0_ip_block); > > amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); > > if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) > > amdgpu_device_ip_block_add(adev, > &dce_virtual_ip_block); @@ > > -560,8 +562,6 @@ int soc15_set_ip_blocks(struct amdgpu_device *adev) > > #else > > # warning "Enable CONFIG_DRM_AMD_DC for display support on > SOC15." > > #endif > > - amdgpu_device_ip_block_add(adev, &gfx_v9_0_ip_block); > > - amdgpu_device_ip_block_add(adev, &sdma_v4_0_ip_block); > > amdgpu_device_ip_block_add(adev, &vcn_v1_0_ip_block); > > break; > > default: > > diff --git a/drivers/gpu/drm/amd/amdgpu/vi.c > > b/drivers/gpu/drm/amd/amdgpu/vi.c index 88b57a5..2727119 100644 > > --- a/drivers/gpu/drm/amd/amdgpu/vi.c > > +++ b/drivers/gpu/drm/amd/amdgpu/vi.c > > @@ -1596,16 +1596,18 @@ int vi_set_ip_blocks(struct amdgpu_device > *adev) > > amdgpu_device_ip_block_add(adev, &vi_common_ip_block); > > amdgpu_device_ip_block_add(adev, &gmc_v7_4_ip_block); > > amdgpu_device_ip_block_add(adev, &iceland_ih_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v8_0_ip_block); > > + amdgpu_device_ip_block_add(adev, &sdma_v2_4_ip_block); > > amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); > > if (adev->enable_virtual_display) > > amdgpu_device_ip_block_add(adev, > &dce_virtual_ip_block); > > - amdgpu_device_ip_block_add(adev, &gfx_v8_0_ip_block); > > - amdgpu_device_ip_block_add(adev, &sdma_v2_4_ip_block); > > break; > > case CHIP_FIJI: > > amdgpu_device_ip_block_add(adev, &vi_common_ip_block); > > amdgpu_device_ip_block_add(adev, &gmc_v8_5_ip_block); > > amdgpu_device_ip_block_add(adev, &tonga_ih_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v8_0_ip_block); > > + amdgpu_device_ip_block_add(adev, &sdma_v3_0_ip_block); > > amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); > > if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) > > amdgpu_device_ip_block_add(adev, > &dce_virtual_ip_block); @@ > > -1615,8 +1617,6 @@ int vi_set_ip_blocks(struct amdgpu_device *adev) > > #endif > > else > > amdgpu_device_ip_block_add(adev, > &dce_v10_1_ip_block); > > - amdgpu_device_ip_block_add(adev, &gfx_v8_0_ip_block); > > - amdgpu_device_ip_block_add(adev, &sdma_v3_0_ip_block); > > if (!amdgpu_sriov_vf(adev)) { > > amdgpu_device_ip_block_add(adev, > &uvd_v6_0_ip_block); > > amdgpu_device_ip_block_add(adev, > &vce_v3_0_ip_block); @@ -1626,6 > > +1626,8 @@ int vi_set_ip_blocks(struct amdgpu_device *adev) > > amdgpu_device_ip_block_add(adev, &vi_common_ip_block); > > amdgpu_device_ip_block_add(adev, &gmc_v8_0_ip_block); > > amdgpu_device_ip_block_add(adev, &tonga_ih_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v8_0_ip_block); > > + amdgpu_device_ip_block_add(adev, &sdma_v3_0_ip_block); > > amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); > > if (adev->enable_virtual_display || amdgpu_sriov_vf(adev)) > > amdgpu_device_ip_block_add(adev, > &dce_virtual_ip_block); @@ > > -1635,8 +1637,6 @@ int vi_set_ip_blocks(struct amdgpu_device *adev) > > #endif > > else > > amdgpu_device_ip_block_add(adev, > &dce_v10_0_ip_block); > > - amdgpu_device_ip_block_add(adev, &gfx_v8_0_ip_block); > > - amdgpu_device_ip_block_add(adev, &sdma_v3_0_ip_block); > > if (!amdgpu_sriov_vf(adev)) { > > amdgpu_device_ip_block_add(adev, > &uvd_v5_0_ip_block); > > amdgpu_device_ip_block_add(adev, > &vce_v3_0_ip_block); @@ -1649,6 > > +1649,8 @@ int vi_set_ip_blocks(struct amdgpu_device *adev) > > amdgpu_device_ip_block_add(adev, &vi_common_ip_block); > > amdgpu_device_ip_block_add(adev, &gmc_v8_1_ip_block); > > amdgpu_device_ip_block_add(adev, &tonga_ih_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v8_0_ip_block); > > + amdgpu_device_ip_block_add(adev, &sdma_v3_1_ip_block); > > amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); > > if (adev->enable_virtual_display) > > amdgpu_device_ip_block_add(adev, > &dce_virtual_ip_block); @@ > > -1658,8 +1660,6 @@ int vi_set_ip_blocks(struct amdgpu_device *adev) > > #endif > > else > > amdgpu_device_ip_block_add(adev, > &dce_v11_2_ip_block); > > - amdgpu_device_ip_block_add(adev, &gfx_v8_0_ip_block); > > - amdgpu_device_ip_block_add(adev, &sdma_v3_1_ip_block); > > amdgpu_device_ip_block_add(adev, &uvd_v6_3_ip_block); > > amdgpu_device_ip_block_add(adev, &vce_v3_4_ip_block); > > break; > > @@ -1667,6 +1667,8 @@ int vi_set_ip_blocks(struct amdgpu_device *adev) > > amdgpu_device_ip_block_add(adev, &vi_common_ip_block); > > amdgpu_device_ip_block_add(adev, &gmc_v8_0_ip_block); > > amdgpu_device_ip_block_add(adev, &cz_ih_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v8_0_ip_block); > > + amdgpu_device_ip_block_add(adev, &sdma_v3_0_ip_block); > > amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); > > if (adev->enable_virtual_display) > > amdgpu_device_ip_block_add(adev, > &dce_virtual_ip_block); @@ > > -1676,8 +1678,6 @@ int vi_set_ip_blocks(struct amdgpu_device *adev) > > #endif > > else > > amdgpu_device_ip_block_add(adev, > &dce_v11_0_ip_block); > > - amdgpu_device_ip_block_add(adev, &gfx_v8_0_ip_block); > > - amdgpu_device_ip_block_add(adev, &sdma_v3_0_ip_block); > > amdgpu_device_ip_block_add(adev, &uvd_v6_0_ip_block); > > amdgpu_device_ip_block_add(adev, &vce_v3_1_ip_block); > > #if defined(CONFIG_DRM_AMD_ACP) > > @@ -1688,6 +1688,8 @@ int vi_set_ip_blocks(struct amdgpu_device *adev) > > amdgpu_device_ip_block_add(adev, &vi_common_ip_block); > > amdgpu_device_ip_block_add(adev, &gmc_v8_0_ip_block); > > amdgpu_device_ip_block_add(adev, &cz_ih_ip_block); > > + amdgpu_device_ip_block_add(adev, &sdma_v3_0_ip_block); > > + amdgpu_device_ip_block_add(adev, &gfx_v8_1_ip_block); > > amdgpu_device_ip_block_add(adev, &pp_smu_ip_block); > > if (adev->enable_virtual_display) > > amdgpu_device_ip_block_add(adev, > &dce_virtual_ip_block); @@ > > -1697,8 +1699,6 @@ int vi_set_ip_blocks(struct amdgpu_device *adev) > > #endif > > else > > amdgpu_device_ip_block_add(adev, > &dce_v11_0_ip_block); > > - amdgpu_device_ip_block_add(adev, &gfx_v8_1_ip_block); > > - amdgpu_device_ip_block_add(adev, &sdma_v3_0_ip_block); > > amdgpu_device_ip_block_add(adev, &uvd_v6_2_ip_block); > > amdgpu_device_ip_block_add(adev, &vce_v3_4_ip_block); > > #if defined(CONFIG_DRM_AMD_ACP) > > diff --git a/drivers/gpu/drm/amd/powerplay/amd_powerplay.c > > b/drivers/gpu/drm/amd/powerplay/amd_powerplay.c > > index da4ebff..f486d50 100644 > > --- a/drivers/gpu/drm/amd/powerplay/amd_powerplay.c > > +++ b/drivers/gpu/drm/amd/powerplay/amd_powerplay.c > > @@ -124,9 +124,6 @@ static int pp_hw_init(void *handle) > > struct amdgpu_device *adev = handle; > > struct pp_hwmgr *hwmgr = adev->powerplay.pp_handle; > > > > - if (adev->firmware.load_type == AMDGPU_FW_LOAD_SMU) > > - amdgpu_ucode_init_bo(adev); > > - > > ret = hwmgr_hw_init(hwmgr); > > > > if (ret) > > @@ -275,6 +272,19 @@ static int pp_set_clockgating_state(void *handle, > > > > static int pp_dpm_load_fw(void *handle) > > { > > + struct pp_hwmgr *hwmgr = handle; > > + int ret = 0; > > + > > + if (!hwmgr || !hwmgr->smumgr_funcs) > > + return -EINVAL; > > + > > + if (hwmgr->smumgr_funcs->start_smu) { > > + ret = hwmgr->smumgr_funcs->start_smu(hwmgr); > > + if (ret) { > > + pr_err("smc start failed\n"); > > + return ret; > > + } > > + } > > return 0; > > } > > > > diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c > > b/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c > > index 7500a3e..deb0e47 100644 > > --- a/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c > > +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c > > @@ -209,17 +209,6 @@ int hwmgr_hw_init(struct pp_hwmgr *hwmgr) > > { > > int ret = 0; > > > > - if (!hwmgr || !hwmgr->smumgr_funcs) > > - return -EINVAL; > > - > > - if (hwmgr->smumgr_funcs->start_smu) { > > - ret = hwmgr->smumgr_funcs->start_smu(hwmgr); > > - if (ret) { > > - pr_err("smc start failed\n"); > > - return -EINVAL; > > - } > > - } > > - > > if (!hwmgr->pm_en) > > return 0; > > > > @@ -320,13 +309,6 @@ int hwmgr_resume(struct pp_hwmgr *hwmgr) > > if (!hwmgr) > > return -EINVAL; > > > > - if (hwmgr->smumgr_funcs && hwmgr->smumgr_funcs->start_smu) { > > - if (hwmgr->smumgr_funcs->start_smu(hwmgr)) { > > - pr_err("smc start failed\n"); > > - return -EINVAL; > > - } > > - } > > - > > if (!hwmgr->pm_en) > > return 0; > >