u32 reg_addr, u32 reg_data);
 void amdgpu_device_indirect_wreg64(struct amdgpu_device *adev,
                                   u32 reg_addr, u64 reg_data);
-
+u32 amdgpu_device_get_rev_id(struct amdgpu_device *adev);
 bool amdgpu_device_asic_has_dc_support(enum amd_asic_type asic_type);
 bool amdgpu_device_has_dc_support(struct amdgpu_device *adev);
 
 
        spin_unlock_irqrestore(&adev->pcie_idx_lock, flags);
 }
 
+/**
+ * amdgpu_device_get_rev_id - query device rev_id
+ *
+ * @adev: amdgpu_device pointer
+ *
+ * Return device rev_id
+ */
+u32 amdgpu_device_get_rev_id(struct amdgpu_device *adev)
+{
+       return adev->nbio.funcs->get_rev_id(adev);
+}
+
 /**
  * amdgpu_invalid_rreg - dummy reg read function
  *
 
        adev->virt.ops = &xgpu_nv_virt_ops;
 }
 
-static uint32_t nv_get_rev_id(struct amdgpu_device *adev)
-{
-       return adev->nbio.funcs->get_rev_id(adev);
-}
-
 static bool nv_need_full_reset(struct amdgpu_device *adev)
 {
        return true;
 
        adev->asic_funcs = &nv_asic_funcs;
 
-       adev->rev_id = nv_get_rev_id(adev);
+       adev->rev_id = amdgpu_device_get_rev_id(adev);
        adev->external_rev_id = 0xff;
        /* TODO: split the GC and PG flags based on the relevant IP version for which
         * they are relevant.
 
        .funcs = &soc15_common_ip_funcs,
 };
 
-static uint32_t soc15_get_rev_id(struct amdgpu_device *adev)
-{
-       return adev->nbio.funcs->get_rev_id(adev);
-}
-
 static void soc15_reg_base_init(struct amdgpu_device *adev)
 {
        /* Set IP register base before any HW register access */
        adev->se_cac_rreg = &soc15_se_cac_rreg;
        adev->se_cac_wreg = &soc15_se_cac_wreg;
 
-       adev->rev_id = soc15_get_rev_id(adev);
+       adev->rev_id = amdgpu_device_get_rev_id(adev);
        adev->external_rev_id = 0xFF;
        /* TODO: split the GC and PG flags based on the relevant IP version for which
         * they are relevant.
 
        .funcs = &soc21_common_ip_funcs,
 };
 
-static uint32_t soc21_get_rev_id(struct amdgpu_device *adev)
-{
-       return adev->nbio.funcs->get_rev_id(adev);
-}
-
 static bool soc21_need_full_reset(struct amdgpu_device *adev)
 {
        switch (adev->ip_versions[GC_HWIP][0]) {
 
        adev->asic_funcs = &soc21_asic_funcs;
 
-       adev->rev_id = soc21_get_rev_id(adev);
+       adev->rev_id = amdgpu_device_get_rev_id(adev);
        adev->external_rev_id = 0xff;
        switch (adev->ip_versions[GC_HWIP][0]) {
        case IP_VERSION(11, 0, 0):