GEM_BUG_ON(guc->ads_golden_ctxt_size != total_size);
 }
 
-static void guc_capture_list_init(struct intel_guc *guc, struct __guc_ads_blob *blob)
+static void guc_capture_list_init(struct intel_guc *guc)
 {
        int i, j;
        u32 addr_ggtt, offset;
 
        for (i = 0; i < GUC_CAPTURE_LIST_INDEX_MAX; i++) {
                for (j = 0; j < GUC_MAX_ENGINE_CLASSES; j++) {
-                       blob->ads.capture_instance[i][j] = addr_ggtt;
-                       blob->ads.capture_class[i][j] = addr_ggtt;
+                       ads_blob_write(guc, ads.capture_instance[i][j], addr_ggtt);
+                       ads_blob_write(guc, ads.capture_class[i][j], addr_ggtt);
                }
 
-               blob->ads.capture_global[i] = addr_ggtt;
+               ads_blob_write(guc, ads.capture_global[i], addr_ggtt);
        }
 }
 
        base = intel_guc_ggtt_offset(guc, guc->ads_vma);
 
        /* Capture list for hang debug */
-       guc_capture_list_init(guc, blob);
+       guc_capture_list_init(guc);
 
        /* ADS */
        blob->ads.scheduler_policies = base + ptr_offset(blob, policies);