فهرست منبع

ALSA: asihpi - Add adapter index to cache info for debug.

Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Eliot Blennerhassett 14 سال پیش
والد
کامیت
ffdb578746
4فایلهای تغییر یافته به همراه20 افزوده شده و 5 حذف شده
  1. 3 0
      sound/pci/asihpi/hpi6000.c
  2. 3 0
      sound/pci/asihpi/hpi6205.c
  3. 12 4
      sound/pci/asihpi/hpicmn.c
  4. 2 1
      sound/pci/asihpi/hpicmn.h

+ 3 - 0
sound/pci/asihpi/hpi6000.c

@@ -582,6 +582,9 @@ static short create_adapter_obj(struct hpi_adapter_obj *pao,
 		pao->adapter_type, pao->index);
 	pao->open = 0;	/* upon creation the adapter is closed */
 
+	if (phw->p_cache)
+		phw->p_cache->adap_idx = pao->index;
+
 	return hpi_add_adapter(pao);
 }
 

+ 3 - 0
sound/pci/asihpi/hpi6205.c

@@ -718,6 +718,9 @@ static u16 create_adapter_obj(struct hpi_adapter_obj *pao,
 
 	pao->open = 0;	/* upon creation the adapter is closed */
 
+	if (phw->p_cache)
+		phw->p_cache->adap_idx = pao->index;
+
 	HPI_DEBUG_LOG(INFO, "bootload DSP OK\n");
 
 	return hpi_add_adapter(pao);

+ 12 - 4
sound/pci/asihpi/hpicmn.c

@@ -197,11 +197,18 @@ static unsigned int control_cache_alloc_check(struct hpi_control_cache *pC)
 				&p_master_cache[byte_count];
 
 			if (!info->size_in32bit_words) {
+				if (i == 0) {
+					HPI_DEBUG_LOG(INFO,
+						"adap %d cache not ready?\n",
+						pC->adap_idx);
+					return 0;
+				}
 				/* ? This is a severe error, the cache is probably
 				   corrupted.  Minimum valid entry size is
 				   sizeof(struct hpi_control_cache_info) */
 				HPI_DEBUG_LOG(ERROR,
-					"zero size cache entry %d\n", i);
+					"adap %d zero size cache entry %d\n",
+					pC->adap_idx, i);
 				break;
 			}
 
@@ -231,12 +238,13 @@ static unsigned int control_cache_alloc_check(struct hpi_control_cache *pC)
 
 		if (byte_count != pC->cache_size_in_bytes)
 			HPI_DEBUG_LOG(WARNING,
-				"bytecount %d != cache size %d", byte_count,
+				"adap %d bytecount %d != cache size %d",
+				pC->adap_idx, byte_count,
 				pC->cache_size_in_bytes);
 		else
 			HPI_DEBUG_LOG(DEBUG,
-				"cache good. bytecount == cache size = %d",
-				byte_count);
+				"adap %d cache good, bytecount == cache size = %d",
+				pC->adap_idx, byte_count);
 
 		pC->init = cached;
 	}

+ 2 - 1
sound/pci/asihpi/hpicmn.h

@@ -33,8 +33,9 @@ struct hpi_adapter_obj {
 };
 
 struct hpi_control_cache {
-	u32 init;	     /**< indicates whether the
+	u16 init;	     /**< indicates whether the
 				structures are initialized */
+	u16 adap_idx;
 	u32 control_count;
 	u32 cache_size_in_bytes;
 	struct hpi_control_cache_info