示例#1
0
static void logged_cpcap_write(struct cpcap_device *cpcap, unsigned int reg,
			unsigned short int value, unsigned short int mask)
{
	if (mask != 0) {
		int ret_val = 0;
#ifdef CPCAP_AUDIO_SPI_LOG
		printk(KERN_DEBUG
			"CPCAP_AUDIO_SPI_WRITE: reg %u, value 0x%x,mask 0x%x\n",
		       CPCAP_REG_FOR_POWERIC_REG(reg), value, mask);
#endif
		ret_val = cpcap_regacc_write(cpcap, reg, value, mask);
		if (ret_val != 0)
			CPCAP_AUDIO_ERROR_LOG(
				"Write to register %u failed: error %d \n",
				reg, ret_val);
#ifdef CPCAP_AUDIO_SPI_READBACK
		ret_val = cpcap_regacc_read(cpcap, reg, &value);
		if (ret_val == 0)
			printk(KERN_DEBUG
				"CPCAP_AUDIO_SPI_VERIFY reg %u: value 0x%x \n",
				CPCAP_REG_FOR_POWERIC_REG(reg), value);
		else
			printk(KERN_ERR
				"CPCAP_AUDIO_SPI_VERIFY reg %u FAILED\n",
				CPCAP_REG_FOR_POWERIC_REG(reg));
#endif
	}
}
示例#2
0
static void logged_cpcap_write(struct cpcap_device *cpcap, unsigned int reg,
			unsigned short int value, unsigned short int mask)
{
	if (mask != 0) {
		int ret_val = 0;
		pr_debug("%s: audio: reg %u, value 0x%x,mask 0x%x\n", __func__,
			CPCAP_REG_FOR_POWERIC_REG(reg), value, mask);
		ret_val = cpcap_regacc_write(cpcap, reg, value, mask);
		if (ret_val != 0)
			E("%s: w %04x m %04x -> r %u failed: %d\n", __func__,
				value, mask, reg, ret_val);
#if CPCAP_AUDIO_SPI_READBACK
		ret_val = cpcap_regacc_read(cpcap, reg, &value);
		if (ret_val == 0)
			pr_debug("%s: audio verify: reg %u: value 0x%x\n",
				__func__,
				CPCAP_REG_FOR_POWERIC_REG(reg), value);
		else
			E("%s: audio verify: reg %u FAILED\n", __func__,
				CPCAP_REG_FOR_POWERIC_REG(reg));
#endif
	}
}