break;
        case IP_VERSION(14, 0, 2):
        case IP_VERSION(14, 0, 3):
+       case IP_VERSION(14, 0, 5):
                amdgpu_device_ip_block_add(adev, &psp_v14_0_ip_block);
                break;
        default:
 
        case IP_VERSION(14, 0, 3):
                psp_v14_0_set_psp_funcs(psp);
                break;
+       case IP_VERSION(14, 0, 5):
+               psp_v14_0_set_psp_funcs(psp);
+               psp->boot_time_tmr = false;
+               break;
        default:
                return -EINVAL;
        }
 
 MODULE_FIRMWARE("amdgpu/psp_14_0_2_ta.bin");
 MODULE_FIRMWARE("amdgpu/psp_14_0_3_sos.bin");
 MODULE_FIRMWARE("amdgpu/psp_14_0_3_ta.bin");
+MODULE_FIRMWARE("amdgpu/psp_14_0_5_toc.bin");
+MODULE_FIRMWARE("amdgpu/psp_14_0_5_ta.bin");
 
 /* For large FW files the time to complete can be very long */
 #define USBC_PD_POLLING_LIMIT_S 240
                if (err)
                        return err;
                break;
+       case IP_VERSION(14, 0, 5):
+               err = psp_init_toc_microcode(psp, ucode_prefix);
+               if (err)
+                       return err;
+               err = psp_init_ta_microcode(psp, ucode_prefix);
+               if (err)
+                       return err;
+               break;
        default:
                BUG();
        }