Aggregate sysfs ini/fini calls into separate functions. No functional
change.

Signed-off-by: Lijo Lazar <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 88 +++++++++++++---------
 1 file changed, 51 insertions(+), 37 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index 7a899fb4de29..7e428e7bffd6 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
@@ -4384,6 +4384,55 @@ static void amdgpu_device_set_mcbp(struct amdgpu_device 
*adev)
                dev_info(adev->dev, "MCBP is enabled\n");
 }
 
+static int amdgpu_device_sys_interface_init(struct amdgpu_device *adev)
+{
+       int r;
+
+       r = amdgpu_atombios_sysfs_init(adev);
+       if (r)
+               drm_err(&adev->ddev,
+                       "registering atombios sysfs failed (%d).\n", r);
+
+       r = amdgpu_pm_sysfs_init(adev);
+       if (r)
+               dev_err(adev->dev, "registering pm sysfs failed (%d).\n", r);
+
+       r = amdgpu_ucode_sysfs_init(adev);
+       if (r) {
+               adev->ucode_sysfs_en = false;
+               dev_err(adev->dev, "Creating firmware sysfs failed (%d).\n", r);
+       } else
+               adev->ucode_sysfs_en = true;
+
+       r = amdgpu_device_attr_sysfs_init(adev);
+       if (r)
+               dev_err(adev->dev, "Could not create amdgpu device attr\n");
+
+       r = devm_device_add_group(adev->dev, &amdgpu_board_attrs_group);
+       if (r)
+               dev_err(adev->dev,
+                       "Could not create amdgpu board attributes\n");
+
+       amdgpu_fru_sysfs_init(adev);
+       amdgpu_reg_state_sysfs_init(adev);
+       amdgpu_xcp_sysfs_init(adev);
+
+       return r;
+}
+
+static void amdgpu_device_sys_interface_fini(struct amdgpu_device *adev)
+{
+       if (adev->pm.sysfs_initialized)
+               amdgpu_pm_sysfs_fini(adev);
+       if (adev->ucode_sysfs_en)
+               amdgpu_ucode_sysfs_fini(adev);
+       amdgpu_device_attr_sysfs_fini(adev);
+       amdgpu_fru_sysfs_fini(adev);
+
+       amdgpu_reg_state_sysfs_fini(adev);
+       amdgpu_xcp_sysfs_fini(adev);
+}
+
 /**
  * amdgpu_device_init - initialize the driver
  *
@@ -4812,34 +4861,7 @@ int amdgpu_device_init(struct amdgpu_device *adev,
         * operations performed in `late_init` might affect the sysfs
         * interfaces creating.
         */
-       r = amdgpu_atombios_sysfs_init(adev);
-       if (r)
-               drm_err(&adev->ddev,
-                       "registering atombios sysfs failed (%d).\n", r);
-
-       r = amdgpu_pm_sysfs_init(adev);
-       if (r)
-               dev_err(adev->dev, "registering pm sysfs failed (%d).\n", r);
-
-       r = amdgpu_ucode_sysfs_init(adev);
-       if (r) {
-               adev->ucode_sysfs_en = false;
-               dev_err(adev->dev, "Creating firmware sysfs failed (%d).\n", r);
-       } else
-               adev->ucode_sysfs_en = true;
-
-       r = amdgpu_device_attr_sysfs_init(adev);
-       if (r)
-               dev_err(adev->dev, "Could not create amdgpu device attr\n");
-
-       r = devm_device_add_group(adev->dev, &amdgpu_board_attrs_group);
-       if (r)
-               dev_err(adev->dev,
-                       "Could not create amdgpu board attributes\n");
-
-       amdgpu_fru_sysfs_init(adev);
-       amdgpu_reg_state_sysfs_init(adev);
-       amdgpu_xcp_sysfs_init(adev);
+       r = amdgpu_device_sys_interface_init(adev);
 
        if (IS_ENABLED(CONFIG_PERF_EVENTS))
                r = amdgpu_pmu_init(adev);
@@ -4961,15 +4983,7 @@ void amdgpu_device_fini_hw(struct amdgpu_device *adev)
        }
        amdgpu_fence_driver_hw_fini(adev);
 
-       if (adev->pm.sysfs_initialized)
-               amdgpu_pm_sysfs_fini(adev);
-       if (adev->ucode_sysfs_en)
-               amdgpu_ucode_sysfs_fini(adev);
-       amdgpu_device_attr_sysfs_fini(adev);
-       amdgpu_fru_sysfs_fini(adev);
-
-       amdgpu_reg_state_sysfs_fini(adev);
-       amdgpu_xcp_sysfs_fini(adev);
+       amdgpu_device_sys_interface_fini(adev);
 
        /* disable ras feature must before hw fini */
        amdgpu_ras_pre_fini(adev);
-- 
2.49.0

Reply via email to