]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/amdgpu: update the handle ptr in late_init
authorSunil Khatri <sunil.khatri@amd.com>
Thu, 26 Sep 2024 07:59:24 +0000 (13:29 +0530)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 1 Oct 2024 21:40:31 +0000 (17:40 -0400)
Update the ptr handle to amdgpu_ip_block ptr in all
the functions of late_init function ptr.

Signed-off-by: Sunil Khatri <sunil.khatri@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
34 files changed:
drivers/gpu/drm/amd/amdgpu/aldebaran.c
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
drivers/gpu/drm/amd/amdgpu/amdgpu_umsch_mm.c
drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c
drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c
drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3.c
drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c
drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c
drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c
drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c
drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c
drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c
drivers/gpu/drm/amd/amdgpu/mes_v11_0.c
drivers/gpu/drm/amd/amdgpu/mes_v12_0.c
drivers/gpu/drm/amd/amdgpu/nv.c
drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.c
drivers/gpu/drm/amd/amdgpu/sienna_cichlid.c
drivers/gpu/drm/amd/amdgpu/smu_v13_0_10.c
drivers/gpu/drm/amd/amdgpu/soc15.c
drivers/gpu/drm/amd/amdgpu/soc21.c
drivers/gpu/drm/amd/amdgpu/soc24.c
drivers/gpu/drm/amd/amdgpu/vi.c
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
drivers/gpu/drm/amd/include/amd_shared.h
drivers/gpu/drm/amd/pm/legacy-dpm/kv_dpm.c
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
drivers/gpu/drm/amd/pm/powerplay/amd_powerplay.c
drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c

index 98fb0ba4f9cb839797f395ae9ea825835afd46ea..574aeca993e885887548c16222810f47d8e7a0d6 100644 (file)
@@ -304,7 +304,7 @@ static int aldebaran_mode2_restore_ip(struct amdgpu_device *adev)
 
                if (adev->ip_blocks[i].version->funcs->late_init) {
                        r = adev->ip_blocks[i].version->funcs->late_init(
-                               (void *)adev);
+                               &adev->ip_blocks[i]);
                        if (r) {
                                dev_err(adev->dev,
                                        "late_init of IP block <%s> failed %d after reset\n",
index 4dccadea220a223af539c56e0814ea962529dff7..6677c82b902b0984747724d94728d26854a87d11 100644 (file)
@@ -3196,7 +3196,7 @@ static int amdgpu_device_ip_late_init(struct amdgpu_device *adev)
                if (!adev->ip_blocks[i].status.hw)
                        continue;
                if (adev->ip_blocks[i].version->funcs->late_init) {
-                       r = adev->ip_blocks[i].version->funcs->late_init((void *)adev);
+                       r = adev->ip_blocks[i].version->funcs->late_init(&adev->ip_blocks[i]);
                        if (r) {
                                DRM_ERROR("late_init of IP block <%s> failed %d\n",
                                          adev->ip_blocks[i].version->funcs->name, r);
index d7e3773413676af44a643ed1bc4f74e24ca2a0be..74b1ec10be2c1afde26fdf673aae373ae988687f 100644 (file)
@@ -784,9 +784,9 @@ static int umsch_mm_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int umsch_mm_late_init(void *handle)
+static int umsch_mm_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        if (amdgpu_in_reset(adev) || adev->in_s0ix || adev->in_suspend)
                return 0;
index 3d0969a7ba69d60439a5da763d63557001832701..8008dbd24967b0230e4686269883677114d2db80 100644 (file)
@@ -7722,9 +7722,9 @@ static int gfx_v10_0_early_init(struct amdgpu_ip_block *ip_block)
        return gfx_v10_0_init_microcode(adev);
 }
 
-static int gfx_v10_0_late_init(void *handle)
+static int gfx_v10_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
        int r;
 
        r = amdgpu_irq_get(adev, &adev->gfx.priv_reg_irq, 0);
index 690cd7b173f7200dce8b687e69f4d784fd1cff85..a1718c52ed1877218487983c7a79d567e711b58b 100644 (file)
@@ -5020,9 +5020,9 @@ static int gfx_v11_0_early_init(struct amdgpu_ip_block *ip_block)
        return gfx_v11_0_init_microcode(adev);
 }
 
-static int gfx_v11_0_late_init(void *handle)
+static int gfx_v11_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
        int r;
 
        r = amdgpu_irq_get(adev, &adev->gfx.priv_reg_irq, 0);
index 6423b20e9156c7c037b08aa6404dd5466b76731d..e3951a5487264c25041515cdd4bdb4c61e452400 100644 (file)
@@ -3717,9 +3717,9 @@ static int gfx_v12_0_early_init(struct amdgpu_ip_block *ip_block)
        return gfx_v12_0_init_microcode(adev);
 }
 
-static int gfx_v12_0_late_init(void *handle)
+static int gfx_v12_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
        int r;
 
        r = amdgpu_irq_get(adev, &adev->gfx.priv_reg_irq, 0);
index 3babf5b5a9dd23899b01b986f0f5282faf18fa5e..73404f24667f2ef0a70981dbe72904f619ea2567 100644 (file)
@@ -4151,9 +4151,9 @@ static int gfx_v7_0_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int gfx_v7_0_late_init(void *handle)
+static int gfx_v7_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
        int r;
 
        r = amdgpu_irq_get(adev, &adev->gfx.priv_reg_irq, 0);
index e80e071f193ce6449da235f2f9b9a6e80c119e9e..9778b89c7125ef9cc70226ef38c7d399cd8d0d2c 100644 (file)
@@ -5271,9 +5271,9 @@ static int gfx_v8_0_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int gfx_v8_0_late_init(void *handle)
+static int gfx_v8_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
        int r;
 
        r = amdgpu_irq_get(adev, &adev->gfx.priv_reg_irq, 0);
index 8c98511144b2f0ac614e74f116698bc988c34139..5ae2b63c375cd90525f066fbef5cb1d97ccee2e5 100644 (file)
@@ -4792,9 +4792,9 @@ static int gfx_v9_0_early_init(struct amdgpu_ip_block *ip_block)
        return gfx_v9_0_init_microcode(adev);
 }
 
-static int gfx_v9_0_ecc_late_init(void *handle)
+static int gfx_v9_0_ecc_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
        int r;
 
        /*
@@ -4826,9 +4826,9 @@ static int gfx_v9_0_ecc_late_init(void *handle)
        return 0;
 }
 
-static int gfx_v9_0_late_init(void *handle)
+static int gfx_v9_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
        int r;
 
        r = amdgpu_irq_get(adev, &adev->gfx.priv_reg_irq, 0);
@@ -4843,7 +4843,7 @@ static int gfx_v9_0_late_init(void *handle)
        if (r)
                return r;
 
-       r = gfx_v9_0_ecc_late_init(handle);
+       r = gfx_v9_0_ecc_late_init(ip_block);
        if (r)
                return r;
 
index 0dee2102d75983c9597fe090301a84d7324631fd..511bfa7a8babf5750f4f7e8c7ba5218e67c9f6e7 100644 (file)
@@ -2529,9 +2529,9 @@ static int gfx_v9_4_3_early_init(struct amdgpu_ip_block *ip_block)
        return gfx_v9_4_3_init_microcode(adev);
 }
 
-static int gfx_v9_4_3_late_init(void *handle)
+static int gfx_v9_4_3_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
        int r;
 
        r = amdgpu_irq_get(adev, &adev->gfx.priv_reg_irq, 0);
index f54f9bb89bcac7f7119040d915ac2deeed47bf0e..ceb870d2ef13779e4a465a3f3a85e01fb382ed0e 100644 (file)
@@ -651,9 +651,9 @@ static int gmc_v10_0_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int gmc_v10_0_late_init(void *handle)
+static int gmc_v10_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
        int r;
 
        r = amdgpu_gmc_allocate_vm_inv_eng(adev);
index 32dec30722ac4a39b2b2de0eb012381d581d182e..653b2e70b98367512356b38d4bf9aa60a29ff506 100644 (file)
@@ -622,9 +622,9 @@ static int gmc_v11_0_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int gmc_v11_0_late_init(void *handle)
+static int gmc_v11_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
        int r;
 
        r = amdgpu_gmc_allocate_vm_inv_eng(adev);
index e0d3d865a59aa2336461f7d9435037a266d21d86..3e126ebe7a8dec46620b72b7459be1c164ab71fa 100644 (file)
@@ -624,9 +624,9 @@ static int gmc_v12_0_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int gmc_v12_0_late_init(void *handle)
+static int gmc_v12_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
        int r;
 
        r = amdgpu_gmc_allocate_vm_inv_eng(adev);
index 3a524319f31e133bd4382b024293c59da91de2d6..321d3828cb11d7f632f640ed6b4db74ddb7fbb36 100644 (file)
@@ -772,9 +772,9 @@ static int gmc_v6_0_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int gmc_v6_0_late_init(void *handle)
+static int gmc_v6_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        if (amdgpu_vm_fault_stop != AMDGPU_VM_FAULT_STOP_ALWAYS)
                return amdgpu_irq_get(adev, &adev->gmc.vm_fault, 0);
index 489b3c2ab6608bc8ff1b1f814eccd516c7b5eb4d..993e2db4eb131b0f54230d3e45a4a2088ff01344 100644 (file)
@@ -940,9 +940,9 @@ static int gmc_v7_0_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int gmc_v7_0_late_init(void *handle)
+static int gmc_v7_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        if (amdgpu_vm_fault_stop != AMDGPU_VM_FAULT_STOP_ALWAYS)
                return amdgpu_irq_get(adev, &adev->gmc.vm_fault, 0);
index d564b1d8c828b2d2518a18096e755c7d3103016f..784289ca27e0e5988cfe27a1d28e223984243250 100644 (file)
@@ -1046,9 +1046,9 @@ static int gmc_v8_0_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int gmc_v8_0_late_init(void *handle)
+static int gmc_v8_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        if (amdgpu_vm_fault_stop != AMDGPU_VM_FAULT_STOP_ALWAYS)
                return amdgpu_irq_get(adev, &adev->gmc.vm_fault, 0);
index f274acdc49bc2407f344911ec5d020a548290219..73b6bf1b143284d2cac3451003fff25c374e95f9 100644 (file)
@@ -1601,9 +1601,9 @@ static int gmc_v9_0_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int gmc_v9_0_late_init(void *handle)
+static int gmc_v9_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
        int r;
 
        r = amdgpu_gmc_allocate_vm_inv_eng(adev);
index d476cf771bbe6b3d680500650f1e51fa60af2190..62da96fd7e8aa0c39d04f948e0726592df0a15be 100644 (file)
@@ -1669,9 +1669,9 @@ static int mes_v11_0_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int mes_v11_0_late_init(void *handle)
+static int mes_v11_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        /* it's only intended for use in mes_self_test case, not for s0ix and reset */
        if (!amdgpu_in_reset(adev) && !adev->in_s0ix && !adev->in_suspend &&
index a490d0e2c2cb41c5498930396fbe8d5762e39ef0..ae6afe3cfc9f40e943aeb64eb45ed29678b1cf3d 100644 (file)
@@ -1631,9 +1631,9 @@ static int mes_v12_0_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int mes_v12_0_late_init(void *handle)
+static int mes_v12_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        /* it's only intended for use in mes_self_test case, not for s0ix and reset */
        if (!amdgpu_in_reset(adev) && !adev->in_s0ix && !adev->in_suspend)
index 63a3c725ceb95475924f29a0c20c920446af6f0a..f102063dc83c0ee3f8ef6993512ec9b4a11f9349 100644 (file)
@@ -944,9 +944,9 @@ static int nv_common_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int nv_common_late_init(void *handle)
+static int nv_common_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        if (amdgpu_sriov_vf(adev)) {
                xgpu_nv_mailbox_get_irq(adev);
index cb5f841047173ba5008cfc7b96c23b3c76074fec..acf00311547df89f7c808af953a642c931019959 100644 (file)
@@ -1780,9 +1780,9 @@ static int sdma_v4_0_process_ras_data_cb(struct amdgpu_device *adev,
                void *err_data,
                struct amdgpu_iv_entry *entry);
 
-static int sdma_v4_0_late_init(void *handle)
+static int sdma_v4_0_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        sdma_v4_0_setup_ulv(adev);
 
index c7c4456586cc96df88813e7d8ac3da6eec87911e..45a1fa0c2c946d8532ca426071154f74295c6139 100644 (file)
@@ -1318,9 +1318,9 @@ static int sdma_v4_4_2_process_ras_data_cb(struct amdgpu_device *adev,
                struct amdgpu_iv_entry *entry);
 #endif
 
-static int sdma_v4_4_2_late_init(void *handle)
+static int sdma_v4_4_2_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 #if 0
        struct ras_ih_if ih_info = {
                .cb = sdma_v4_4_2_process_ras_data_cb,
index 481217c32d85315ea9288d44defc6a6079b471a1..bda786d6caca24ad3ea3eaa6f1b3f536fab59113 100644 (file)
@@ -213,7 +213,7 @@ static int sienna_cichlid_mode2_restore_ip(struct amdgpu_device *adev)
 
                if (adev->ip_blocks[i].version->funcs->late_init) {
                        r = adev->ip_blocks[i].version->funcs->late_init(
-                               (void *)adev);
+                               &adev->ip_blocks[i]);
                        if (r) {
                                dev_err(adev->dev,
                                        "late_init of IP block <%s> failed %d after reset\n",
index 0af648931df580c8c0ad17adb06a7f684d5dc6b3..e0c051818b5b27b05f94b9c1e125484a470feb0b 100644 (file)
@@ -208,7 +208,7 @@ static int smu_v13_0_10_mode2_restore_ip(struct amdgpu_device *adev)
 
                if (adev->ip_blocks[i].version->funcs->late_init) {
                        r = adev->ip_blocks[i].version->funcs->late_init(
-                               (void *)adev);
+                               &adev->ip_blocks[i]);
                        if (r) {
                                dev_err(adev->dev,
                                        "late_init of IP block <%s> failed %d after reset\n",
index e1161027ec3b7dc8cf86acc202bae3b40efda0a0..1a24634a100c1efc031752b9e1fe5cca7239e749 100644 (file)
@@ -1202,9 +1202,9 @@ static int soc15_common_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int soc15_common_late_init(void *handle)
+static int soc15_common_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        if (amdgpu_sriov_vf(adev))
                xgpu_ai_mailbox_get_irq(adev);
index c9e88cd4349ae38b2b76c3a21248dc1a59990a29..bc420ff8517430da8db44c38c9c999d23f8b178b 100644 (file)
@@ -794,9 +794,9 @@ static int soc21_common_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int soc21_common_late_init(void *handle)
+static int soc21_common_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        if (amdgpu_sriov_vf(adev)) {
                xgpu_nv_mailbox_get_irq(adev);
index 3dcb3d953509d039ad4e6b50a34c817cd95312b8..12ed243a2df8905bc14cbd079109c9f91216d180 100644 (file)
@@ -440,9 +440,9 @@ static int soc24_common_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int soc24_common_late_init(void *handle)
+static int soc24_common_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        if (amdgpu_sriov_vf(adev))
                xgpu_nv_mailbox_get_irq(adev);
index c9ee4491ba64c5c2a1d0eaf9791010933c1d9ac1..ababcb7bc834e8a218705381686b1534a8235cae 100644 (file)
@@ -1679,9 +1679,9 @@ static int vi_common_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int vi_common_late_init(void *handle)
+static int vi_common_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        if (amdgpu_sriov_vf(adev))
                xgpu_vi_mailbox_get_irq(adev);
index f597a25b7646e81aa8d882320459a63c6b09ca10..1a1b35fe1fc4dae22355e04585707e18a483248d 100644 (file)
@@ -2598,9 +2598,9 @@ static int detect_mst_link_for_all_connectors(struct drm_device *dev)
        return ret;
 }
 
-static int dm_late_init(void *handle)
+static int dm_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        struct dmcu_iram_parameters params;
        unsigned int linear_lut[16];
index 67d75ac339bf11e603e70af23b7d2af681136a06..8d486b0184410eb05fa6ebc02e4c9feb59bdbcc7 100644 (file)
@@ -380,7 +380,7 @@ struct amdgpu_ip_block;
 struct amd_ip_funcs {
        char *name;
        int (*early_init)(struct amdgpu_ip_block *ip_block);
-       int (*late_init)(void *handle);
+       int (*late_init)(struct amdgpu_ip_block *ip_block);
        int (*sw_init)(void *handle);
        int (*sw_fini)(void *handle);
        int (*early_fini)(void *handle);
index ff71af96eb1a98f0e41e2b6ad545c72c85f1830e..adb44b5a9e4221ed00f7697d9af8fbfda04620fa 100644 (file)
@@ -2965,10 +2965,10 @@ static int kv_dpm_early_init(struct amdgpu_ip_block *ip_block)
        return 0;
 }
 
-static int kv_dpm_late_init(void *handle)
+static int kv_dpm_late_init(struct amdgpu_ip_block *ip_block)
 {
        /* powerdown unused blocks for now */
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        if (!adev->pm.dpm_enabled)
                return 0;
index 5aa4eca21708ca4cff2e19294467b8168ba3dd18..51cdaf040020e24c036583ff88b305392046d78d 100644 (file)
@@ -7621,10 +7621,10 @@ static int si_dpm_process_interrupt(struct amdgpu_device *adev,
        return 0;
 }
 
-static int si_dpm_late_init(void *handle)
+static int si_dpm_late_init(struct amdgpu_ip_block *ip_block)
 {
        int ret;
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
 
        if (!adev->pm.dpm_enabled)
                return 0;
index 2af325b9fc197ea0b7b106a17739efef5200ca0a..903c19b4af203638b720745b072ff15d27eadf15 100644 (file)
@@ -216,9 +216,9 @@ static void pp_reserve_vram_for_smu(struct amdgpu_device *adev)
        }
 }
 
-static int pp_late_init(void *handle)
+static int pp_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = handle;
+       struct amdgpu_device *adev = ip_block->adev;
        struct pp_hwmgr *hwmgr = adev->powerplay.pp_handle;
 
        if (hwmgr && hwmgr->pm_en)
index 59ca1f3b10f130ee2d8ace695369d52031320f08..c613632549304cadeaeaca824777ce68586a34aa 100644 (file)
@@ -826,9 +826,9 @@ static int smu_apply_default_config_table_settings(struct smu_context *smu)
        return smu_set_config_table(smu, &adev->pm.config_table);
 }
 
-static int smu_late_init(void *handle)
+static int smu_late_init(struct amdgpu_ip_block *ip_block)
 {
-       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
+       struct amdgpu_device *adev = ip_block->adev;
        struct smu_context *smu = adev->powerplay.pp_handle;
        int ret = 0;
 
@@ -2063,7 +2063,7 @@ static int smu_reset(struct smu_context *smu)
        if (ret)
                return ret;
 
-       ret = smu_late_init(adev);
+       ret = smu_late_init(&adev->ip_blocks[AMD_IP_BLOCK_TYPE_SMC]);
        if (ret)
                return ret;