.num_sdma_queues_per_engine = 8,
 };
 
+static const struct kfd_device_info navi14_device_info = {
+       .asic_family = CHIP_NAVI14,
+       .asic_name = "navi14",
+       .max_pasid_bits = 16,
+       .max_no_of_hqd  = 24,
+       .doorbell_size  = 8,
+       .ih_ring_entry_size = 8 * sizeof(uint32_t),
+       .event_interrupt_class = &event_interrupt_class_v9,
+       .num_of_watch_points = 4,
+       .mqd_size_aligned = MQD_SIZE_ALIGNED,
+       .needs_iommu_device = false,
+       .supports_cwsr = true,
+       .needs_pci_atomics = false,
+       .num_sdma_engines = 2,
+       .num_xgmi_sdma_engines = 0,
+       .num_sdma_queues_per_engine = 8,
+};
+
 /* For each entry, [0] is regular and [1] is virtualisation device. */
 static const struct kfd_device_info *kfd_supported_devices[][2] = {
 #ifdef KFD_SUPPORT_IOMMU_V2
        [CHIP_VEGA20] = {&vega20_device_info, NULL},
        [CHIP_ARCTURUS] = {&arcturus_device_info, &arcturus_device_info},
        [CHIP_NAVI10] = {&navi10_device_info, NULL},
+       [CHIP_NAVI14] = {&navi14_device_info, NULL},
 };
 
 static int kfd_gtt_sa_init(struct kfd_dev *kfd, unsigned int buf_size,