mes_add_queue_pkt.trap_handler_addr = input->tba_addr;
        mes_add_queue_pkt.tma_addr = input->tma_addr;
        mes_add_queue_pkt.is_kfd_process = input->is_kfd_process;
 +      mes_add_queue_pkt.trap_en = 1;
 +
 +      /* For KFD, gds_size is re-used for queue size (needed in MES for AQL queues) */
 +      mes_add_queue_pkt.is_aql_queue = input->is_aql_queue;
 +      mes_add_queue_pkt.gds_size = input->queue_size;
  
+       if (!(((adev->mes.sched_version & AMDGPU_MES_VERSION_MASK) >= 4) &&
+                 (adev->ip_versions[GC_HWIP][0] >= IP_VERSION(11, 0, 0)) &&
+                 (adev->ip_versions[GC_HWIP][0] <= IP_VERSION(11, 0, 3))))
+               mes_add_queue_pkt.trap_en = 1;
+ 
+       /* For KFD, gds_size is re-used for queue size (needed in MES for AQL queues) */
+       mes_add_queue_pkt.is_aql_queue = input->is_aql_queue;
+       mes_add_queue_pkt.gds_size = input->queue_size;
+ 
        return mes_v11_0_submit_pkt_and_poll_completion(mes,
                        &mes_add_queue_pkt, sizeof(mes_add_queue_pkt),
                        offsetof(union MESAPI__ADD_QUEUE, api_status));
 
   *             EDID's detailed monitor range
   */
  struct drm_monitor_range_info {
 -      u8 min_vfreq;
 -      u8 max_vfreq;
 +      u16 min_vfreq;
 +      u16 max_vfreq;
  };
  
+ /**
+  * struct drm_luminance_range_info - Panel's luminance range for
+  * &drm_display_info. Calculated using data in EDID
+  *
+  * This struct is used to store a luminance range supported by panel
+  * as calculated using data from EDID's static hdr metadata.
+  *
+  * @min_luminance: This is the min supported luminance value
+  *
+  * @max_luminance: This is the max supported luminance value
+  */
+ struct drm_luminance_range_info {
+       u32 min_luminance;
+       u32 max_luminance;
+ };
+ 
  /**
   * enum drm_privacy_screen_status - privacy screen status
   *