mirror of
				git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
				synced 2025-09-04 20:19:47 +08:00 
			
		
		
		
	ALSA: emu10k1: Use standard printk helpers
Convert with dev_err() and co from snd_printk(), etc. Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
		
							parent
							
								
									26bc6964f9
								
							
						
					
					
						commit
						6f002b0216
					
				| @ -170,7 +170,8 @@ static int snd_card_emu10k1_probe(struct pci_dev *pci, | |||||||
| 	if (snd_seq_device_new(card, 1, SNDRV_SEQ_DEV_ID_EMU10K1_SYNTH, | 	if (snd_seq_device_new(card, 1, SNDRV_SEQ_DEV_ID_EMU10K1_SYNTH, | ||||||
| 			       sizeof(struct snd_emu10k1_synth_arg), &wave) < 0 || | 			       sizeof(struct snd_emu10k1_synth_arg), &wave) < 0 || | ||||||
| 	    wave == NULL) { | 	    wave == NULL) { | ||||||
| 		snd_printk(KERN_WARNING "can't initialize Emu10k1 wavetable synth\n"); | 		dev_warn(emu->card->dev, | ||||||
|  | 			 "can't initialize Emu10k1 wavetable synth\n"); | ||||||
| 	} else { | 	} else { | ||||||
| 		struct snd_emu10k1_synth_arg *arg; | 		struct snd_emu10k1_synth_arg *arg; | ||||||
| 		arg = SNDRV_SEQ_DEVICE_ARGPTR(wave); | 		arg = SNDRV_SEQ_DEVICE_ARGPTR(wave); | ||||||
| @ -247,8 +248,7 @@ static int snd_emu10k1_resume(struct device *dev) | |||||||
| 	pci_set_power_state(pci, PCI_D0); | 	pci_set_power_state(pci, PCI_D0); | ||||||
| 	pci_restore_state(pci); | 	pci_restore_state(pci); | ||||||
| 	if (pci_enable_device(pci) < 0) { | 	if (pci_enable_device(pci) < 0) { | ||||||
| 		printk(KERN_ERR "emu10k1: pci_enable_device failed, " | 		dev_err(dev, "pci_enable_device failed, disabling device\n"); | ||||||
| 		       "disabling device\n"); |  | ||||||
| 		snd_card_disconnect(card); | 		snd_card_disconnect(card); | ||||||
| 		return -EIO; | 		return -EIO; | ||||||
| 	} | 	} | ||||||
|  | |||||||
| @ -105,7 +105,7 @@ snd_emu10k1_synth_get_voice(struct snd_emu10k1 *hw) | |||||||
| 			vp = &emu->voices[best[i].voice]; | 			vp = &emu->voices[best[i].voice]; | ||||||
| 			if ((ch = vp->ch) < 0) { | 			if ((ch = vp->ch) < 0) { | ||||||
| 				/*
 | 				/*
 | ||||||
| 				printk(KERN_WARNING | 				dev_warn(emu->card->dev, | ||||||
| 				       "synth_get_voice: ch < 0 (%d) ??", i); | 				       "synth_get_voice: ch < 0 (%d) ??", i); | ||||||
| 				*/ | 				*/ | ||||||
| 				continue; | 				continue; | ||||||
| @ -339,7 +339,7 @@ start_voice(struct snd_emux_voice *vp) | |||||||
| 		return -EINVAL; | 		return -EINVAL; | ||||||
| 	emem->map_locked++; | 	emem->map_locked++; | ||||||
| 	if (snd_emu10k1_memblk_map(hw, emem) < 0) { | 	if (snd_emu10k1_memblk_map(hw, emem) < 0) { | ||||||
| 		/* printk(KERN_ERR "emu: cannot map!\n"); */ | 		/* dev_err(hw->card->devK, "emu: cannot map!\n"); */ | ||||||
| 		return -ENOMEM; | 		return -ENOMEM; | ||||||
| 	} | 	} | ||||||
| 	mapped_offset = snd_emu10k1_memblk_offset(emem) >> 1; | 	mapped_offset = snd_emu10k1_memblk_offset(emem) >> 1; | ||||||
|  | |||||||
| @ -217,7 +217,7 @@ static int snd_emu10k1_init(struct snd_emu10k1 *emu, int enable_ir, int resume) | |||||||
| 	} | 	} | ||||||
| 	if (emu->card_capabilities->ca0108_chip) { /* audigy2 Value */ | 	if (emu->card_capabilities->ca0108_chip) { /* audigy2 Value */ | ||||||
| 		/* Hacks for Alice3 to work independent of haP16V driver */ | 		/* Hacks for Alice3 to work independent of haP16V driver */ | ||||||
| 		snd_printk(KERN_INFO "Audigy2 value: Special config.\n"); | 		dev_info(emu->card->dev, "Audigy2 value: Special config.\n"); | ||||||
| 		/* Setup SRCMulti_I2S SamplingRate */ | 		/* Setup SRCMulti_I2S SamplingRate */ | ||||||
| 		tmp = snd_emu10k1_ptr_read(emu, A_SPDIF_SAMPLERATE, 0); | 		tmp = snd_emu10k1_ptr_read(emu, A_SPDIF_SAMPLERATE, 0); | ||||||
| 		tmp &= 0xfffff1ff; | 		tmp &= 0xfffff1ff; | ||||||
| @ -723,7 +723,8 @@ static int emu1010_firmware_thread(void *data) | |||||||
| 		if (reg & EMU_HANA_OPTION_DOCK_OFFLINE) { | 		if (reg & EMU_HANA_OPTION_DOCK_OFFLINE) { | ||||||
| 			/* Audio Dock attached */ | 			/* Audio Dock attached */ | ||||||
| 			/* Return to Audio Dock programming mode */ | 			/* Return to Audio Dock programming mode */ | ||||||
| 			snd_printk(KERN_INFO "emu1010: Loading Audio Dock Firmware\n"); | 			dev_info(emu->card->dev, | ||||||
|  | 				 "emu1010: Loading Audio Dock Firmware\n"); | ||||||
| 			snd_emu1010_fpga_write(emu, EMU_HANA_FPGA_CONFIG, EMU_HANA_FPGA_CONFIG_AUDIODOCK); | 			snd_emu1010_fpga_write(emu, EMU_HANA_FPGA_CONFIG, EMU_HANA_FPGA_CONFIG_AUDIODOCK); | ||||||
| 
 | 
 | ||||||
| 			if (!emu->dock_fw) { | 			if (!emu->dock_fw) { | ||||||
| @ -756,19 +757,25 @@ static int emu1010_firmware_thread(void *data) | |||||||
| 
 | 
 | ||||||
| 			snd_emu1010_fpga_write(emu, EMU_HANA_FPGA_CONFIG, 0); | 			snd_emu1010_fpga_write(emu, EMU_HANA_FPGA_CONFIG, 0); | ||||||
| 			snd_emu1010_fpga_read(emu, EMU_HANA_IRQ_STATUS, ®); | 			snd_emu1010_fpga_read(emu, EMU_HANA_IRQ_STATUS, ®); | ||||||
| 			snd_printk(KERN_INFO "emu1010: EMU_HANA+DOCK_IRQ_STATUS = 0x%x\n", reg); | 			dev_info(emu->card->dev, | ||||||
|  | 				 "emu1010: EMU_HANA+DOCK_IRQ_STATUS = 0x%x\n", | ||||||
|  | 				 reg); | ||||||
| 			/* ID, should read & 0x7f = 0x55 when FPGA programmed. */ | 			/* ID, should read & 0x7f = 0x55 when FPGA programmed. */ | ||||||
| 			snd_emu1010_fpga_read(emu, EMU_HANA_ID, ®); | 			snd_emu1010_fpga_read(emu, EMU_HANA_ID, ®); | ||||||
| 			snd_printk(KERN_INFO "emu1010: EMU_HANA+DOCK_ID = 0x%x\n", reg); | 			dev_info(emu->card->dev, | ||||||
|  | 				 "emu1010: EMU_HANA+DOCK_ID = 0x%x\n", reg); | ||||||
| 			if ((reg & 0x1f) != 0x15) { | 			if ((reg & 0x1f) != 0x15) { | ||||||
| 				/* FPGA failed to be programmed */ | 				/* FPGA failed to be programmed */ | ||||||
| 				snd_printk(KERN_INFO "emu1010: Loading Audio Dock Firmware file failed, reg = 0x%x\n", reg); | 				dev_info(emu->card->dev, | ||||||
|  | 					 "emu1010: Loading Audio Dock Firmware file failed, reg = 0x%x\n", | ||||||
|  | 					 reg); | ||||||
| 				continue; | 				continue; | ||||||
| 			} | 			} | ||||||
| 			snd_printk(KERN_INFO "emu1010: Audio Dock Firmware loaded\n"); | 			dev_info(emu->card->dev, | ||||||
|  | 				 "emu1010: Audio Dock Firmware loaded\n"); | ||||||
| 			snd_emu1010_fpga_read(emu, EMU_DOCK_MAJOR_REV, &tmp); | 			snd_emu1010_fpga_read(emu, EMU_DOCK_MAJOR_REV, &tmp); | ||||||
| 			snd_emu1010_fpga_read(emu, EMU_DOCK_MINOR_REV, &tmp2); | 			snd_emu1010_fpga_read(emu, EMU_DOCK_MINOR_REV, &tmp2); | ||||||
| 			snd_printk(KERN_INFO "Audio Dock ver: %u.%u\n", | 			dev_info(emu->card->dev, "Audio Dock ver: %u.%u\n", | ||||||
| 				   tmp, tmp2); | 				   tmp, tmp2); | ||||||
| 			/* Sync clocking between 1010 and Dock */ | 			/* Sync clocking between 1010 and Dock */ | ||||||
| 			/* Allow DLL to settle */ | 			/* Allow DLL to settle */ | ||||||
| @ -777,7 +784,7 @@ static int emu1010_firmware_thread(void *data) | |||||||
| 			snd_emu1010_fpga_write(emu, EMU_HANA_UNMUTE, EMU_UNMUTE); | 			snd_emu1010_fpga_write(emu, EMU_HANA_UNMUTE, EMU_UNMUTE); | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| 	snd_printk(KERN_INFO "emu1010: firmware thread stopping\n"); | 	dev_info(emu->card->dev, "emu1010: firmware thread stopping\n"); | ||||||
| 	return 0; | 	return 0; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -818,7 +825,7 @@ static int snd_emu10k1_emu1010_init(struct snd_emu10k1 *emu) | |||||||
| 	u32 tmp, tmp2, reg; | 	u32 tmp, tmp2, reg; | ||||||
| 	int err; | 	int err; | ||||||
| 
 | 
 | ||||||
| 	snd_printk(KERN_INFO "emu1010: Special config.\n"); | 	dev_info(emu->card->dev, "emu1010: Special config.\n"); | ||||||
| 	/* AC97 2.1, Any 16Meg of 4Gig address, Auto-Mute, EMU32 Slave,
 | 	/* AC97 2.1, Any 16Meg of 4Gig address, Auto-Mute, EMU32 Slave,
 | ||||||
| 	 * Lock Sound Memory Cache, Lock Tank Memory Cache, | 	 * Lock Sound Memory Cache, Lock Tank Memory Cache, | ||||||
| 	 * Mute all codecs. | 	 * Mute all codecs. | ||||||
| @ -843,7 +850,7 @@ static int snd_emu10k1_emu1010_init(struct snd_emu10k1 *emu) | |||||||
| 
 | 
 | ||||||
| 	/* ID, should read & 0x7f = 0x55. (Bit 7 is the IRQ bit) */ | 	/* ID, should read & 0x7f = 0x55. (Bit 7 is the IRQ bit) */ | ||||||
| 	snd_emu1010_fpga_read(emu, EMU_HANA_ID, ®); | 	snd_emu1010_fpga_read(emu, EMU_HANA_ID, ®); | ||||||
| 	snd_printdd("reg1 = 0x%x\n", reg); | 	dev_dbg(emu->card->dev, "reg1 = 0x%x\n", reg); | ||||||
| 	if ((reg & 0x3f) == 0x15) { | 	if ((reg & 0x3f) == 0x15) { | ||||||
| 		/* FPGA netlist already present so clear it */ | 		/* FPGA netlist already present so clear it */ | ||||||
| 		/* Return to programming mode */ | 		/* Return to programming mode */ | ||||||
| @ -851,13 +858,14 @@ static int snd_emu10k1_emu1010_init(struct snd_emu10k1 *emu) | |||||||
| 		snd_emu1010_fpga_write(emu, EMU_HANA_FPGA_CONFIG, 0x02); | 		snd_emu1010_fpga_write(emu, EMU_HANA_FPGA_CONFIG, 0x02); | ||||||
| 	} | 	} | ||||||
| 	snd_emu1010_fpga_read(emu, EMU_HANA_ID, ®); | 	snd_emu1010_fpga_read(emu, EMU_HANA_ID, ®); | ||||||
| 	snd_printdd("reg2 = 0x%x\n", reg); | 	dev_dbg(emu->card->dev, "reg2 = 0x%x\n", reg); | ||||||
| 	if ((reg & 0x3f) == 0x15) { | 	if ((reg & 0x3f) == 0x15) { | ||||||
| 		/* FPGA failed to return to programming mode */ | 		/* FPGA failed to return to programming mode */ | ||||||
| 		snd_printk(KERN_INFO "emu1010: FPGA failed to return to programming mode\n"); | 		dev_info(emu->card->dev, | ||||||
|  | 			 "emu1010: FPGA failed to return to programming mode\n"); | ||||||
| 		return -ENODEV; | 		return -ENODEV; | ||||||
| 	} | 	} | ||||||
| 	snd_printk(KERN_INFO "emu1010: EMU_HANA_ID = 0x%x\n", reg); | 	dev_info(emu->card->dev, "emu1010: EMU_HANA_ID = 0x%x\n", reg); | ||||||
| 
 | 
 | ||||||
| 	if (!emu->firmware) { | 	if (!emu->firmware) { | ||||||
| 		const char *filename; | 		const char *filename; | ||||||
| @ -880,16 +888,19 @@ static int snd_emu10k1_emu1010_init(struct snd_emu10k1 *emu) | |||||||
| 
 | 
 | ||||||
| 		err = request_firmware(&emu->firmware, filename, &emu->pci->dev); | 		err = request_firmware(&emu->firmware, filename, &emu->pci->dev); | ||||||
| 		if (err != 0) { | 		if (err != 0) { | ||||||
| 			snd_printk(KERN_ERR "emu1010: firmware: %s not found. Err = %d\n", filename, err); | 			dev_info(emu->card->dev, | ||||||
|  | 				 "emu1010: firmware: %s not found. Err = %d\n", | ||||||
|  | 				 filename, err); | ||||||
| 			return err; | 			return err; | ||||||
| 		} | 		} | ||||||
| 		snd_printk(KERN_INFO "emu1010: firmware file = %s, size = 0x%zx\n", | 		dev_info(emu->card->dev, | ||||||
|  | 			 "emu1010: firmware file = %s, size = 0x%zx\n", | ||||||
| 			   filename, emu->firmware->size); | 			   filename, emu->firmware->size); | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	err = snd_emu1010_load_firmware(emu, emu->firmware); | 	err = snd_emu1010_load_firmware(emu, emu->firmware); | ||||||
| 	if (err != 0) { | 	if (err != 0) { | ||||||
| 		snd_printk(KERN_INFO "emu1010: Loading Firmware failed\n"); | 		dev_info(emu->card->dev, "emu1010: Loading Firmware failed\n"); | ||||||
| 		return err; | 		return err; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| @ -897,21 +908,23 @@ static int snd_emu10k1_emu1010_init(struct snd_emu10k1 *emu) | |||||||
| 	snd_emu1010_fpga_read(emu, EMU_HANA_ID, ®); | 	snd_emu1010_fpga_read(emu, EMU_HANA_ID, ®); | ||||||
| 	if ((reg & 0x3f) != 0x15) { | 	if ((reg & 0x3f) != 0x15) { | ||||||
| 		/* FPGA failed to be programmed */ | 		/* FPGA failed to be programmed */ | ||||||
| 		snd_printk(KERN_INFO "emu1010: Loading Hana Firmware file failed, reg = 0x%x\n", reg); | 		dev_info(emu->card->dev, | ||||||
|  | 			 "emu1010: Loading Hana Firmware file failed, reg = 0x%x\n", | ||||||
|  | 			 reg); | ||||||
| 		return -ENODEV; | 		return -ENODEV; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	snd_printk(KERN_INFO "emu1010: Hana Firmware loaded\n"); | 	dev_info(emu->card->dev, "emu1010: Hana Firmware loaded\n"); | ||||||
| 	snd_emu1010_fpga_read(emu, EMU_HANA_MAJOR_REV, &tmp); | 	snd_emu1010_fpga_read(emu, EMU_HANA_MAJOR_REV, &tmp); | ||||||
| 	snd_emu1010_fpga_read(emu, EMU_HANA_MINOR_REV, &tmp2); | 	snd_emu1010_fpga_read(emu, EMU_HANA_MINOR_REV, &tmp2); | ||||||
| 	snd_printk(KERN_INFO "emu1010: Hana version: %u.%u\n", tmp, tmp2); | 	dev_info(emu->card->dev, "emu1010: Hana version: %u.%u\n", tmp, tmp2); | ||||||
| 	/* Enable 48Volt power to Audio Dock */ | 	/* Enable 48Volt power to Audio Dock */ | ||||||
| 	snd_emu1010_fpga_write(emu, EMU_HANA_DOCK_PWR, EMU_HANA_DOCK_PWR_ON); | 	snd_emu1010_fpga_write(emu, EMU_HANA_DOCK_PWR, EMU_HANA_DOCK_PWR_ON); | ||||||
| 
 | 
 | ||||||
| 	snd_emu1010_fpga_read(emu, EMU_HANA_OPTION_CARDS, ®); | 	snd_emu1010_fpga_read(emu, EMU_HANA_OPTION_CARDS, ®); | ||||||
| 	snd_printk(KERN_INFO "emu1010: Card options = 0x%x\n", reg); | 	dev_info(emu->card->dev, "emu1010: Card options = 0x%x\n", reg); | ||||||
| 	snd_emu1010_fpga_read(emu, EMU_HANA_OPTION_CARDS, ®); | 	snd_emu1010_fpga_read(emu, EMU_HANA_OPTION_CARDS, ®); | ||||||
| 	snd_printk(KERN_INFO "emu1010: Card options = 0x%x\n", reg); | 	dev_info(emu->card->dev, "emu1010: Card options = 0x%x\n", reg); | ||||||
| 	snd_emu1010_fpga_read(emu, EMU_HANA_OPTICAL_TYPE, &tmp); | 	snd_emu1010_fpga_read(emu, EMU_HANA_OPTICAL_TYPE, &tmp); | ||||||
| 	/* Optical -> ADAT I/O  */ | 	/* Optical -> ADAT I/O  */ | ||||||
| 	/* 0 : SPDIF
 | 	/* 0 : SPDIF
 | ||||||
| @ -950,7 +963,7 @@ static int snd_emu10k1_emu1010_init(struct snd_emu10k1 *emu) | |||||||
| 	snd_emu1010_fpga_write(emu, EMU_HANA_IRQ_ENABLE, 0x00); | 	snd_emu1010_fpga_write(emu, EMU_HANA_IRQ_ENABLE, 0x00); | ||||||
| 
 | 
 | ||||||
| 	snd_emu1010_fpga_read(emu, EMU_HANA_OPTION_CARDS, ®); | 	snd_emu1010_fpga_read(emu, EMU_HANA_OPTION_CARDS, ®); | ||||||
| 	snd_printk(KERN_INFO "emu1010: Card options3 = 0x%x\n", reg); | 	dev_info(emu->card->dev, "emu1010: Card options3 = 0x%x\n", reg); | ||||||
| 	/* Default WCLK set to 48kHz. */ | 	/* Default WCLK set to 48kHz. */ | ||||||
| 	snd_emu1010_fpga_write(emu, EMU_HANA_DEFCLOCK, 0x00); | 	snd_emu1010_fpga_write(emu, EMU_HANA_DEFCLOCK, 0x00); | ||||||
| 	/* Word Clock source, Internal 48kHz x1 */ | 	/* Word Clock source, Internal 48kHz x1 */ | ||||||
| @ -1808,7 +1821,9 @@ int snd_emu10k1_create(struct snd_card *card, | |||||||
| 	emu->revision = pci->revision; | 	emu->revision = pci->revision; | ||||||
| 	pci_read_config_dword(pci, PCI_SUBSYSTEM_VENDOR_ID, &emu->serial); | 	pci_read_config_dword(pci, PCI_SUBSYSTEM_VENDOR_ID, &emu->serial); | ||||||
| 	pci_read_config_word(pci, PCI_SUBSYSTEM_ID, &emu->model); | 	pci_read_config_word(pci, PCI_SUBSYSTEM_ID, &emu->model); | ||||||
| 	snd_printdd("vendor = 0x%x, device = 0x%x, subsystem_vendor_id = 0x%x, subsystem_id = 0x%x\n", pci->vendor, pci->device, emu->serial, emu->model); | 	dev_dbg(card->dev, | ||||||
|  | 		"vendor = 0x%x, device = 0x%x, subsystem_vendor_id = 0x%x, subsystem_id = 0x%x\n", | ||||||
|  | 		pci->vendor, pci->device, emu->serial, emu->model); | ||||||
| 
 | 
 | ||||||
| 	for (c = emu_chip_details; c->vendor; c++) { | 	for (c = emu_chip_details; c->vendor; c++) { | ||||||
| 		if (c->vendor == pci->vendor && c->device == pci->device) { | 		if (c->vendor == pci->vendor && c->device == pci->device) { | ||||||
| @ -1827,21 +1842,21 @@ int snd_emu10k1_create(struct snd_card *card, | |||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| 	if (c->vendor == 0) { | 	if (c->vendor == 0) { | ||||||
| 		snd_printk(KERN_ERR "emu10k1: Card not recognised\n"); | 		dev_err(card->dev, "emu10k1: Card not recognised\n"); | ||||||
| 		kfree(emu); | 		kfree(emu); | ||||||
| 		pci_disable_device(pci); | 		pci_disable_device(pci); | ||||||
| 		return -ENOENT; | 		return -ENOENT; | ||||||
| 	} | 	} | ||||||
| 	emu->card_capabilities = c; | 	emu->card_capabilities = c; | ||||||
| 	if (c->subsystem && !subsystem) | 	if (c->subsystem && !subsystem) | ||||||
| 		snd_printdd("Sound card name = %s\n", c->name); | 		dev_dbg(card->dev, "Sound card name = %s\n", c->name); | ||||||
| 	else if (subsystem) | 	else if (subsystem) | ||||||
| 		snd_printdd("Sound card name = %s, " | 		dev_dbg(card->dev, "Sound card name = %s, " | ||||||
| 			"vendor = 0x%x, device = 0x%x, subsystem = 0x%x. " | 			"vendor = 0x%x, device = 0x%x, subsystem = 0x%x. " | ||||||
| 			"Forced to subsystem = 0x%x\n",	c->name, | 			"Forced to subsystem = 0x%x\n",	c->name, | ||||||
| 			pci->vendor, pci->device, emu->serial, c->subsystem); | 			pci->vendor, pci->device, emu->serial, c->subsystem); | ||||||
| 	else | 	else | ||||||
| 		snd_printdd("Sound card name = %s, " | 		dev_dbg(card->dev, "Sound card name = %s, " | ||||||
| 			"vendor = 0x%x, device = 0x%x, subsystem = 0x%x.\n", | 			"vendor = 0x%x, device = 0x%x, subsystem = 0x%x.\n", | ||||||
| 			c->name, pci->vendor, pci->device, | 			c->name, pci->vendor, pci->device, | ||||||
| 			emu->serial); | 			emu->serial); | ||||||
| @ -1869,7 +1884,9 @@ int snd_emu10k1_create(struct snd_card *card, | |||||||
| 	emu->dma_mask = is_audigy ? AUDIGY_DMA_MASK : EMU10K1_DMA_MASK; | 	emu->dma_mask = is_audigy ? AUDIGY_DMA_MASK : EMU10K1_DMA_MASK; | ||||||
| 	if (pci_set_dma_mask(pci, emu->dma_mask) < 0 || | 	if (pci_set_dma_mask(pci, emu->dma_mask) < 0 || | ||||||
| 	    pci_set_consistent_dma_mask(pci, emu->dma_mask) < 0) { | 	    pci_set_consistent_dma_mask(pci, emu->dma_mask) < 0) { | ||||||
| 		snd_printk(KERN_ERR "architecture does not support PCI busmaster DMA with mask 0x%lx\n", emu->dma_mask); | 		dev_err(card->dev, | ||||||
|  | 			"architecture does not support PCI busmaster DMA with mask 0x%lx\n", | ||||||
|  | 			emu->dma_mask); | ||||||
| 		kfree(emu); | 		kfree(emu); | ||||||
| 		pci_disable_device(pci); | 		pci_disable_device(pci); | ||||||
| 		return -ENXIO; | 		return -ENXIO; | ||||||
|  | |||||||
| @ -50,7 +50,8 @@ snd_emu10k1_sample_new(struct snd_emux *rec, struct snd_sf_sample *sp, | |||||||
| 		return -EINVAL; | 		return -EINVAL; | ||||||
| 
 | 
 | ||||||
| 	if (sp->v.size == 0) { | 	if (sp->v.size == 0) { | ||||||
| 		snd_printd("emu: rom font for sample %d\n", sp->v.sample); | 		dev_dbg(emu->card->dev, | ||||||
|  | 			"emu: rom font for sample %d\n", sp->v.sample); | ||||||
| 		return 0; | 		return 0; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| @ -92,7 +93,8 @@ snd_emu10k1_sample_new(struct snd_emux *rec, struct snd_sf_sample *sp, | |||||||
| 		blocksize *= 2; | 		blocksize *= 2; | ||||||
| 	sp->block = snd_emu10k1_synth_alloc(emu, blocksize); | 	sp->block = snd_emu10k1_synth_alloc(emu, blocksize); | ||||||
| 	if (sp->block == NULL) { | 	if (sp->block == NULL) { | ||||||
| 		snd_printd("emu10k1: synth malloc failed (size=%d)\n", blocksize); | 		dev_dbg(emu->card->dev, | ||||||
|  | 			"synth malloc failed (size=%d)\n", blocksize); | ||||||
| 		/* not ENOMEM (for compatibility with OSS) */ | 		/* not ENOMEM (for compatibility with OSS) */ | ||||||
| 		return -ENOSPC; | 		return -ENOSPC; | ||||||
| 	} | 	} | ||||||
|  | |||||||
| @ -1547,7 +1547,7 @@ A_OP(icode, &ptr, iMAC0, A_GPR(var), A_GPR(var), A_GPR(vol), A_EXTIN(input)) | |||||||
| 	/* A_PUT_STEREO_OUTPUT(A_EXTOUT_FRONT_L, A_EXTOUT_FRONT_R, playback + SND_EMU10K1_PLAYBACK_CHANNELS); */ | 	/* A_PUT_STEREO_OUTPUT(A_EXTOUT_FRONT_L, A_EXTOUT_FRONT_R, playback + SND_EMU10K1_PLAYBACK_CHANNELS); */ | ||||||
| 	if (emu->card_capabilities->emu_model) { | 	if (emu->card_capabilities->emu_model) { | ||||||
| 		/* EMU1010 Outputs from PCM Front, Rear, Center, LFE, Side */ | 		/* EMU1010 Outputs from PCM Front, Rear, Center, LFE, Side */ | ||||||
| 		snd_printk(KERN_INFO "EMU outputs on\n"); | 		dev_info(emu->card->dev, "EMU outputs on\n"); | ||||||
| 		for (z = 0; z < 8; z++) { | 		for (z = 0; z < 8; z++) { | ||||||
| 			if (emu->card_capabilities->ca0108_chip) { | 			if (emu->card_capabilities->ca0108_chip) { | ||||||
| 				A_OP(icode, &ptr, iACC3, A3_EMU32OUT(z), A_GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + z), A_C_00000000, A_C_00000000); | 				A_OP(icode, &ptr, iACC3, A3_EMU32OUT(z), A_GPR(playback + SND_EMU10K1_PLAYBACK_CHANNELS + z), A_C_00000000, A_C_00000000); | ||||||
| @ -1571,7 +1571,9 @@ A_OP(icode, &ptr, iMAC0, A_GPR(var), A_GPR(var), A_GPR(vol), A_EXTIN(input)) | |||||||
| 		A_SWITCH(icode, &ptr, tmp + 1, playback + SND_EMU10K1_PLAYBACK_CHANNELS + z, tmp + 1); | 		A_SWITCH(icode, &ptr, tmp + 1, playback + SND_EMU10K1_PLAYBACK_CHANNELS + z, tmp + 1); | ||||||
| 		if ((z==1) && (emu->card_capabilities->spdif_bug)) { | 		if ((z==1) && (emu->card_capabilities->spdif_bug)) { | ||||||
| 			/* Due to a SPDIF output bug on some Audigy cards, this code delays the Right channel by 1 sample */ | 			/* Due to a SPDIF output bug on some Audigy cards, this code delays the Right channel by 1 sample */ | ||||||
| 			snd_printk(KERN_INFO "Installing spdif_bug patch: %s\n", emu->card_capabilities->name); | 			dev_info(emu->card->dev, | ||||||
|  | 				 "Installing spdif_bug patch: %s\n", | ||||||
|  | 				 emu->card_capabilities->name); | ||||||
| 			A_OP(icode, &ptr, iACC3, A_EXTOUT(A_EXTOUT_FRONT_L + z), A_GPR(gpr - 3), A_C_00000000, A_C_00000000); | 			A_OP(icode, &ptr, iACC3, A_EXTOUT(A_EXTOUT_FRONT_L + z), A_GPR(gpr - 3), A_C_00000000, A_C_00000000); | ||||||
| 			A_OP(icode, &ptr, iACC3, A_GPR(gpr - 3), A_GPR(tmp + 0), A_GPR(tmp + 1), A_C_00000000); | 			A_OP(icode, &ptr, iACC3, A_GPR(gpr - 3), A_GPR(tmp + 0), A_GPR(tmp + 1), A_C_00000000); | ||||||
| 		} else { | 		} else { | ||||||
| @ -1595,7 +1597,7 @@ A_OP(icode, &ptr, iMAC0, A_GPR(var), A_GPR(var), A_GPR(vol), A_EXTIN(input)) | |||||||
| 
 | 
 | ||||||
| 	if (emu->card_capabilities->emu_model) { | 	if (emu->card_capabilities->emu_model) { | ||||||
| 		if (emu->card_capabilities->ca0108_chip) { | 		if (emu->card_capabilities->ca0108_chip) { | ||||||
| 			snd_printk(KERN_INFO "EMU2 inputs on\n"); | 			dev_info(emu->card->dev, "EMU2 inputs on\n"); | ||||||
| 			for (z = 0; z < 0x10; z++) { | 			for (z = 0; z < 0x10; z++) { | ||||||
| 				snd_emu10k1_audigy_dsp_convert_32_to_2x16( icode, &ptr, tmp,  | 				snd_emu10k1_audigy_dsp_convert_32_to_2x16( icode, &ptr, tmp,  | ||||||
| 									bit_shifter16, | 									bit_shifter16, | ||||||
| @ -1603,11 +1605,11 @@ A_OP(icode, &ptr, iMAC0, A_GPR(var), A_GPR(var), A_GPR(vol), A_EXTIN(input)) | |||||||
| 									A_FXBUS2(z*2) ); | 									A_FXBUS2(z*2) ); | ||||||
| 			} | 			} | ||||||
| 		} else { | 		} else { | ||||||
| 			snd_printk(KERN_INFO "EMU inputs on\n"); | 			dev_info(emu->card->dev, "EMU inputs on\n"); | ||||||
| 			/* Capture 16 (originally 8) channels of S32_LE sound */ | 			/* Capture 16 (originally 8) channels of S32_LE sound */ | ||||||
| 
 | 
 | ||||||
| 			/*
 | 			/*
 | ||||||
| 			printk(KERN_DEBUG "emufx.c: gpr=0x%x, tmp=0x%x\n", | 			dev_dbg(emu->card->dev, "emufx.c: gpr=0x%x, tmp=0x%x\n", | ||||||
| 			       gpr, tmp); | 			       gpr, tmp); | ||||||
| 			*/ | 			*/ | ||||||
| 			/* For the EMU1010: How to get 32bit values from the DSP. High 16bits into L, low 16bits into R. */ | 			/* For the EMU1010: How to get 32bit values from the DSP. High 16bits into L, low 16bits into R. */ | ||||||
|  | |||||||
| @ -1853,8 +1853,10 @@ int snd_emu10k1_mixer(struct snd_emu10k1 *emu, | |||||||
| 		if ((err = snd_ac97_mixer(pbus, &ac97, &emu->ac97)) < 0) { | 		if ((err = snd_ac97_mixer(pbus, &ac97, &emu->ac97)) < 0) { | ||||||
| 			if (emu->card_capabilities->ac97_chip == 1) | 			if (emu->card_capabilities->ac97_chip == 1) | ||||||
| 				return err; | 				return err; | ||||||
| 			snd_printd(KERN_INFO "emu10k1: AC97 is optional on this board\n"); | 			dev_info(emu->card->dev, | ||||||
| 			snd_printd(KERN_INFO"          Proceeding without ac97 mixers...\n"); | 				 "AC97 is optional on this board\n"); | ||||||
|  | 			dev_info(emu->card->dev, | ||||||
|  | 				 "Proceeding without ac97 mixers...\n"); | ||||||
| 			snd_device_free(emu->card, pbus); | 			snd_device_free(emu->card, pbus); | ||||||
| 			goto no_ac97; /* FIXME: get rid of ugly gotos.. */ | 			goto no_ac97; /* FIXME: get rid of ugly gotos.. */ | ||||||
| 		} | 		} | ||||||
|  | |||||||
| @ -64,7 +64,9 @@ static void mpu401_clear_rx(struct snd_emu10k1 *emu, struct snd_emu10k1_midi *mp | |||||||
| 		mpu401_read_data(emu, mpu); | 		mpu401_read_data(emu, mpu); | ||||||
| #ifdef CONFIG_SND_DEBUG | #ifdef CONFIG_SND_DEBUG | ||||||
| 	if (timeout <= 0) | 	if (timeout <= 0) | ||||||
| 		snd_printk(KERN_ERR "cmd: clear rx timeout (status = 0x%x)\n", mpu401_read_stat(emu, mpu)); | 		dev_err(emu->card->dev, | ||||||
|  | 			"cmd: clear rx timeout (status = 0x%x)\n", | ||||||
|  | 			mpu401_read_stat(emu, mpu)); | ||||||
| #endif | #endif | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -141,7 +143,8 @@ static int snd_emu10k1_midi_cmd(struct snd_emu10k1 * emu, struct snd_emu10k1_mid | |||||||
| 	} | 	} | ||||||
| 	spin_unlock_irqrestore(&midi->input_lock, flags); | 	spin_unlock_irqrestore(&midi->input_lock, flags); | ||||||
| 	if (!ok) { | 	if (!ok) { | ||||||
| 		snd_printk(KERN_ERR "midi_cmd: 0x%x failed at 0x%lx (status = 0x%x, data = 0x%x)!!!\n", | 		dev_err(emu->card->dev, | ||||||
|  | 			"midi_cmd: 0x%x failed at 0x%lx (status = 0x%x, data = 0x%x)!!!\n", | ||||||
| 			   cmd, emu->port, | 			   cmd, emu->port, | ||||||
| 			   mpu401_read_stat(emu, midi), | 			   mpu401_read_stat(emu, midi), | ||||||
| 			   mpu401_read_data(emu, midi)); | 			   mpu401_read_data(emu, midi)); | ||||||
|  | |||||||
| @ -44,7 +44,8 @@ static void snd_emu10k1_pcm_interrupt(struct snd_emu10k1 *emu, | |||||||
| 	if (epcm->substream == NULL) | 	if (epcm->substream == NULL) | ||||||
| 		return; | 		return; | ||||||
| #if 0 | #if 0 | ||||||
| 	printk(KERN_DEBUG "IRQ: position = 0x%x, period = 0x%x, size = 0x%x\n", | 	dev_dbg(emu->card->dev, | ||||||
|  | 		"IRQ: position = 0x%x, period = 0x%x, size = 0x%x\n", | ||||||
| 			epcm->substream->runtime->hw->pointer(emu, epcm->substream), | 			epcm->substream->runtime->hw->pointer(emu, epcm->substream), | ||||||
| 			snd_pcm_lib_period_bytes(epcm->substream), | 			snd_pcm_lib_period_bytes(epcm->substream), | ||||||
| 			snd_pcm_lib_buffer_bytes(epcm->substream)); | 			snd_pcm_lib_buffer_bytes(epcm->substream)); | ||||||
| @ -147,7 +148,7 @@ static int snd_emu10k1_pcm_channel_alloc(struct snd_emu10k1_pcm * epcm, int voic | |||||||
| 					      &epcm->extra); | 					      &epcm->extra); | ||||||
| 		if (err < 0) { | 		if (err < 0) { | ||||||
| 			/*
 | 			/*
 | ||||||
| 			printk(KERN_DEBUG "pcm_channel_alloc: " | 			dev_dbg(emu->card->dev, "pcm_channel_alloc: " | ||||||
| 			       "failed extra: voices=%d, frame=%d\n", | 			       "failed extra: voices=%d, frame=%d\n", | ||||||
| 			       voices, frame); | 			       voices, frame); | ||||||
| 			*/ | 			*/ | ||||||
| @ -761,7 +762,8 @@ static int snd_emu10k1_playback_trigger(struct snd_pcm_substream *substream, | |||||||
| 	int result = 0; | 	int result = 0; | ||||||
| 
 | 
 | ||||||
| 	/*
 | 	/*
 | ||||||
| 	printk(KERN_DEBUG "trigger - emu10k1 = 0x%x, cmd = %i, pointer = %i\n", | 	dev_dbg(emu->card->dev, | ||||||
|  | 		"trigger - emu10k1 = 0x%x, cmd = %i, pointer = %i\n", | ||||||
| 	       (int)emu, cmd, substream->ops->pointer(substream)) | 	       (int)emu, cmd, substream->ops->pointer(substream)) | ||||||
| 	*/ | 	*/ | ||||||
| 	spin_lock(&emu->reg_lock); | 	spin_lock(&emu->reg_lock); | ||||||
| @ -815,7 +817,7 @@ static int snd_emu10k1_capture_trigger(struct snd_pcm_substream *substream, | |||||||
| 		outl(epcm->capture_ipr, emu->port + IPR); | 		outl(epcm->capture_ipr, emu->port + IPR); | ||||||
| 		snd_emu10k1_intr_enable(emu, epcm->capture_inte); | 		snd_emu10k1_intr_enable(emu, epcm->capture_inte); | ||||||
| 		/*
 | 		/*
 | ||||||
| 		printk(KERN_DEBUG "adccr = 0x%x, adcbs = 0x%x\n", | 		dev_dbg(emu->card->dev, "adccr = 0x%x, adcbs = 0x%x\n", | ||||||
| 		       epcm->adccr, epcm->adcbs); | 		       epcm->adccr, epcm->adcbs); | ||||||
| 		*/ | 		*/ | ||||||
| 		switch (epcm->type) { | 		switch (epcm->type) { | ||||||
| @ -826,7 +828,10 @@ static int snd_emu10k1_capture_trigger(struct snd_pcm_substream *substream, | |||||||
| 			if (emu->audigy) { | 			if (emu->audigy) { | ||||||
| 				snd_emu10k1_ptr_write(emu, A_FXWC1, 0, epcm->capture_cr_val); | 				snd_emu10k1_ptr_write(emu, A_FXWC1, 0, epcm->capture_cr_val); | ||||||
| 				snd_emu10k1_ptr_write(emu, A_FXWC2, 0, epcm->capture_cr_val2); | 				snd_emu10k1_ptr_write(emu, A_FXWC2, 0, epcm->capture_cr_val2); | ||||||
| 				snd_printdd("cr_val=0x%x, cr_val2=0x%x\n", epcm->capture_cr_val, epcm->capture_cr_val2); | 				dev_dbg(emu->card->dev, | ||||||
|  | 					"cr_val=0x%x, cr_val2=0x%x\n", | ||||||
|  | 					epcm->capture_cr_val, | ||||||
|  | 					epcm->capture_cr_val2); | ||||||
| 			} else | 			} else | ||||||
| 				snd_emu10k1_ptr_write(emu, FXWC, 0, epcm->capture_cr_val); | 				snd_emu10k1_ptr_write(emu, FXWC, 0, epcm->capture_cr_val); | ||||||
| 			break; | 			break; | ||||||
| @ -889,7 +894,7 @@ static snd_pcm_uframes_t snd_emu10k1_playback_pointer(struct snd_pcm_substream * | |||||||
| 	} | 	} | ||||||
| #endif | #endif | ||||||
| 	/*
 | 	/*
 | ||||||
| 	printk(KERN_DEBUG | 	dev_dbg(emu->card->dev, | ||||||
| 	       "ptr = 0x%lx, buffer_size = 0x%lx, period_size = 0x%lx\n", | 	       "ptr = 0x%lx, buffer_size = 0x%lx, period_size = 0x%lx\n", | ||||||
| 	       (long)ptr, (long)runtime->buffer_size, | 	       (long)ptr, (long)runtime->buffer_size, | ||||||
| 	       (long)runtime->period_size); | 	       (long)runtime->period_size); | ||||||
| @ -1594,7 +1599,8 @@ static void snd_emu10k1_fx8010_playback_tram_poke1(unsigned short *dst_left, | |||||||
| 						   unsigned int tram_shift) | 						   unsigned int tram_shift) | ||||||
| { | { | ||||||
| 	/*
 | 	/*
 | ||||||
| 	printk(KERN_DEBUG "tram_poke1: dst_left = 0x%p, dst_right = 0x%p, " | 	dev_dbg(emu->card->dev, | ||||||
|  | 		"tram_poke1: dst_left = 0x%p, dst_right = 0x%p, " | ||||||
| 	       "src = 0x%p, count = 0x%x\n", | 	       "src = 0x%p, count = 0x%x\n", | ||||||
| 	       dst_left, dst_right, src, count); | 	       dst_left, dst_right, src, count); | ||||||
| 	*/ | 	*/ | ||||||
| @ -1675,7 +1681,7 @@ static int snd_emu10k1_fx8010_playback_prepare(struct snd_pcm_substream *substre | |||||||
| 	unsigned int i; | 	unsigned int i; | ||||||
| 	 | 	 | ||||||
| 	/*
 | 	/*
 | ||||||
| 	printk(KERN_DEBUG "prepare: etram_pages = 0x%p, dma_area = 0x%x, " | 	dev_dbg(emu->card->dev, "prepare: etram_pages = 0x%p, dma_area = 0x%x, " | ||||||
| 	       "buffer_size = 0x%x (0x%x)\n", | 	       "buffer_size = 0x%x (0x%x)\n", | ||||||
| 	       emu->fx8010.etram_pages, runtime->dma_area, | 	       emu->fx8010.etram_pages, runtime->dma_area, | ||||||
| 	       runtime->buffer_size, runtime->buffer_size << 2); | 	       runtime->buffer_size, runtime->buffer_size << 2); | ||||||
|  | |||||||
| @ -72,7 +72,7 @@ void snd_emu10k1_ptr_write(struct snd_emu10k1 *emu, unsigned int reg, unsigned i | |||||||
| 	unsigned int mask; | 	unsigned int mask; | ||||||
| 
 | 
 | ||||||
| 	if (!emu) { | 	if (!emu) { | ||||||
| 		snd_printk(KERN_ERR "ptr_write: emu is null!\n"); | 		dev_err(emu->card->dev, "ptr_write: emu is null!\n"); | ||||||
| 		dump_stack(); | 		dump_stack(); | ||||||
| 		return; | 		return; | ||||||
| 	} | 	} | ||||||
| @ -199,7 +199,7 @@ int snd_emu10k1_i2c_write(struct snd_emu10k1 *emu, | |||||||
| 	int err = 0; | 	int err = 0; | ||||||
| 
 | 
 | ||||||
| 	if ((reg > 0x7f) || (value > 0x1ff)) { | 	if ((reg > 0x7f) || (value > 0x1ff)) { | ||||||
| 		snd_printk(KERN_ERR "i2c_write: invalid values.\n"); | 		dev_err(emu->card->dev, "i2c_write: invalid values.\n"); | ||||||
| 		return -EINVAL; | 		return -EINVAL; | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| @ -227,7 +227,7 @@ int snd_emu10k1_i2c_write(struct snd_emu10k1 *emu, | |||||||
| 				break; | 				break; | ||||||
| 
 | 
 | ||||||
| 			if (timeout > 1000) { | 			if (timeout > 1000) { | ||||||
|                 		snd_printk(KERN_WARNING | 				dev_warn(emu->card->dev, | ||||||
| 					   "emu10k1:I2C:timeout status=0x%x\n", | 					   "emu10k1:I2C:timeout status=0x%x\n", | ||||||
| 					   status); | 					   status); | ||||||
| 				break; | 				break; | ||||||
| @ -239,8 +239,8 @@ int snd_emu10k1_i2c_write(struct snd_emu10k1 *emu, | |||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	if (retry == 10) { | 	if (retry == 10) { | ||||||
| 		snd_printk(KERN_ERR "Writing to ADC failed!\n"); | 		dev_err(emu->card->dev, "Writing to ADC failed!\n"); | ||||||
| 		snd_printk(KERN_ERR "status=0x%x, reg=%d, value=%d\n", | 		dev_err(emu->card->dev, "status=0x%x, reg=%d, value=%d\n", | ||||||
| 			status, reg, value); | 			status, reg, value); | ||||||
| 		/* dump_stack(); */ | 		/* dump_stack(); */ | ||||||
| 		err = -EINVAL; | 		err = -EINVAL; | ||||||
|  | |||||||
| @ -41,11 +41,12 @@ irqreturn_t snd_emu10k1_interrupt(int irq, void *dev_id) | |||||||
| 		orig_status = status; | 		orig_status = status; | ||||||
| 		handled = 1; | 		handled = 1; | ||||||
| 		if ((status & 0xffffffff) == 0xffffffff) { | 		if ((status & 0xffffffff) == 0xffffffff) { | ||||||
| 			snd_printk(KERN_INFO "snd-emu10k1: Suspected sound card removal\n"); | 			dev_info(emu->card->dev, | ||||||
|  | 				 "Suspected sound card removal\n"); | ||||||
| 			break; | 			break; | ||||||
| 		} | 		} | ||||||
| 		if (status & IPR_PCIERROR) { | 		if (status & IPR_PCIERROR) { | ||||||
| 			snd_printk(KERN_ERR "interrupt: PCI error\n"); | 			dev_err(emu->card->dev, "interrupt: PCI error\n"); | ||||||
| 			snd_emu10k1_intr_disable(emu, INTE_PCIERRORENABLE); | 			snd_emu10k1_intr_disable(emu, INTE_PCIERRORENABLE); | ||||||
| 			status &= ~IPR_PCIERROR; | 			status &= ~IPR_PCIERROR; | ||||||
| 		} | 		} | ||||||
| @ -157,19 +158,22 @@ irqreturn_t snd_emu10k1_interrupt(int irq, void *dev_id) | |||||||
| 				struct snd_emu10k1_voice *pvoice = &(emu->p16v_voices[0]); | 				struct snd_emu10k1_voice *pvoice = &(emu->p16v_voices[0]); | ||||||
| 				struct snd_emu10k1_voice *cvoice = &(emu->p16v_capture_voice); | 				struct snd_emu10k1_voice *cvoice = &(emu->p16v_capture_voice); | ||||||
| 
 | 
 | ||||||
| 				//printk(KERN_INFO "status2=0x%x\n", status2);
 | 				/* dev_dbg(emu->card->dev, "status2=0x%x\n", status2); */ | ||||||
| 				orig_status2 = status2; | 				orig_status2 = status2; | ||||||
| 				if(status2 & mask) { | 				if(status2 & mask) { | ||||||
| 					if(pvoice->use) { | 					if(pvoice->use) { | ||||||
| 						snd_pcm_period_elapsed(pvoice->epcm->substream); | 						snd_pcm_period_elapsed(pvoice->epcm->substream); | ||||||
| 					} else {  | 					} else {  | ||||||
| 						snd_printk(KERN_ERR "p16v: status: 0x%08x, mask=0x%08x, pvoice=%p, use=%d\n", status2, mask, pvoice, pvoice->use); | 						dev_err(emu->card->dev, | ||||||
|  | 							"p16v: status: 0x%08x, mask=0x%08x, pvoice=%p, use=%d\n", | ||||||
|  | 							status2, mask, pvoice, | ||||||
|  | 							pvoice->use); | ||||||
| 					} | 					} | ||||||
| 				} | 				} | ||||||
| 				if(status2 & 0x110000) { | 				if(status2 & 0x110000) { | ||||||
| 					//printk(KERN_INFO "capture int found\n");
 | 					/* dev_info(emu->card->dev, "capture int found\n"); */ | ||||||
| 					if(cvoice->use) { | 					if(cvoice->use) { | ||||||
| 						//printk(KERN_INFO "capture period_elapsed\n");
 | 						/* dev_info(emu->card->dev, "capture period_elapsed\n"); */ | ||||||
| 						snd_pcm_period_elapsed(cvoice->epcm->substream); | 						snd_pcm_period_elapsed(cvoice->epcm->substream); | ||||||
| 					} | 					} | ||||||
| 				} | 				} | ||||||
| @ -180,7 +184,8 @@ irqreturn_t snd_emu10k1_interrupt(int irq, void *dev_id) | |||||||
| 
 | 
 | ||||||
| 		if (status) { | 		if (status) { | ||||||
| 			unsigned int bits; | 			unsigned int bits; | ||||||
| 			snd_printk(KERN_ERR "emu10k1: unhandled interrupt: 0x%08x\n", status); | 			dev_err(emu->card->dev, | ||||||
|  | 				"unhandled interrupt: 0x%08x\n", status); | ||||||
| 			//make sure any interrupts we don't handle are disabled:
 | 			//make sure any interrupts we don't handle are disabled:
 | ||||||
| 			bits = INTE_FXDSPENABLE | | 			bits = INTE_FXDSPENABLE | | ||||||
| 				INTE_PCIERRORENABLE | | 				INTE_PCIERRORENABLE | | ||||||
| @ -202,7 +207,7 @@ irqreturn_t snd_emu10k1_interrupt(int irq, void *dev_id) | |||||||
| 		outl(orig_status, emu->port + IPR); /* ack all */ | 		outl(orig_status, emu->port + IPR); /* ack all */ | ||||||
| 	} | 	} | ||||||
| 	if (timeout == 1000) | 	if (timeout == 1000) | ||||||
| 		snd_printk(KERN_INFO "emu10k1 irq routine failure\n"); | 		dev_info(emu->card->dev, "emu10k1 irq routine failure\n"); | ||||||
| 
 | 
 | ||||||
| 	return IRQ_RETVAL(handled); | 	return IRQ_RETVAL(handled); | ||||||
| } | } | ||||||
|  | |||||||
| @ -236,11 +236,13 @@ __found_pages: | |||||||
| static int is_valid_page(struct snd_emu10k1 *emu, dma_addr_t addr) | static int is_valid_page(struct snd_emu10k1 *emu, dma_addr_t addr) | ||||||
| { | { | ||||||
| 	if (addr & ~emu->dma_mask) { | 	if (addr & ~emu->dma_mask) { | ||||||
| 		snd_printk(KERN_ERR "max memory size is 0x%lx (addr = 0x%lx)!!\n", emu->dma_mask, (unsigned long)addr); | 		dev_err(emu->card->dev, | ||||||
|  | 			"max memory size is 0x%lx (addr = 0x%lx)!!\n", | ||||||
|  | 			emu->dma_mask, (unsigned long)addr); | ||||||
| 		return 0; | 		return 0; | ||||||
| 	} | 	} | ||||||
| 	if (addr & (EMUPAGESIZE-1)) { | 	if (addr & (EMUPAGESIZE-1)) { | ||||||
| 		snd_printk(KERN_ERR "page is not aligned\n"); | 		dev_err(emu->card->dev, "page is not aligned\n"); | ||||||
| 		return 0; | 		return 0; | ||||||
| 	} | 	} | ||||||
| 	return 1; | 	return 1; | ||||||
| @ -331,7 +333,8 @@ snd_emu10k1_alloc_pages(struct snd_emu10k1 *emu, struct snd_pcm_substream *subst | |||||||
| 		else | 		else | ||||||
| 			addr = snd_pcm_sgbuf_get_addr(substream, ofs); | 			addr = snd_pcm_sgbuf_get_addr(substream, ofs); | ||||||
| 		if (! is_valid_page(emu, addr)) { | 		if (! is_valid_page(emu, addr)) { | ||||||
| 			printk(KERN_ERR "emu: failure page = %d\n", idx); | 			dev_err(emu->card->dev, | ||||||
|  | 				"emu: failure page = %d\n", idx); | ||||||
| 			mutex_unlock(&hdr->block_mutex); | 			mutex_unlock(&hdr->block_mutex); | ||||||
| 			return NULL; | 			return NULL; | ||||||
| 		} | 		} | ||||||
| @ -507,7 +510,8 @@ static inline void *offset_ptr(struct snd_emu10k1 *emu, int page, int offset) | |||||||
| 		return NULL; | 		return NULL; | ||||||
| 	ptr = emu->page_ptr_table[page]; | 	ptr = emu->page_ptr_table[page]; | ||||||
| 	if (! ptr) { | 	if (! ptr) { | ||||||
| 		printk(KERN_ERR "emu10k1: access to NULL ptr: page = %d\n", page); | 		dev_err(emu->card->dev, | ||||||
|  | 			"access to NULL ptr: page = %d\n", page); | ||||||
| 		return NULL; | 		return NULL; | ||||||
| 	} | 	} | ||||||
| 	ptr += offset & (PAGE_SIZE - 1); | 	ptr += offset & (PAGE_SIZE - 1); | ||||||
|  | |||||||
| @ -168,7 +168,7 @@ static void snd_p16v_pcm_free_substream(struct snd_pcm_runtime *runtime) | |||||||
| 	struct snd_emu10k1_pcm *epcm = runtime->private_data; | 	struct snd_emu10k1_pcm *epcm = runtime->private_data; | ||||||
|    |    | ||||||
| 	if (epcm) { | 	if (epcm) { | ||||||
|         	/* snd_printk(KERN_DEBUG "epcm free: %p\n", epcm); */ | 		/* dev_dbg(emu->card->dev, "epcm free: %p\n", epcm); */ | ||||||
| 		kfree(epcm); | 		kfree(epcm); | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
| @ -183,14 +183,14 @@ static int snd_p16v_pcm_open_playback_channel(struct snd_pcm_substream *substrea | |||||||
| 	int err; | 	int err; | ||||||
| 
 | 
 | ||||||
| 	epcm = kzalloc(sizeof(*epcm), GFP_KERNEL); | 	epcm = kzalloc(sizeof(*epcm), GFP_KERNEL); | ||||||
|         /* snd_printk(KERN_DEBUG "epcm kcalloc: %p\n", epcm); */ | 	/* dev_dbg(emu->card->dev, "epcm kcalloc: %p\n", epcm); */ | ||||||
| 
 | 
 | ||||||
| 	if (epcm == NULL) | 	if (epcm == NULL) | ||||||
| 		return -ENOMEM; | 		return -ENOMEM; | ||||||
| 	epcm->emu = emu; | 	epcm->emu = emu; | ||||||
| 	epcm->substream = substream; | 	epcm->substream = substream; | ||||||
| 	/*
 | 	/*
 | ||||||
| 	snd_printk(KERN_DEBUG "epcm device=%d, channel_id=%d\n", | 	dev_dbg(emu->card->dev, "epcm device=%d, channel_id=%d\n", | ||||||
| 		   substream->pcm->device, channel_id); | 		   substream->pcm->device, channel_id); | ||||||
| 	*/ | 	*/ | ||||||
| 	runtime->private_data = epcm; | 	runtime->private_data = epcm; | ||||||
| @ -203,10 +203,10 @@ static int snd_p16v_pcm_open_playback_channel(struct snd_pcm_substream *substrea | |||||||
| 
 | 
 | ||||||
|         channel->use=1; |         channel->use=1; | ||||||
| #if 0 /* debug */
 | #if 0 /* debug */
 | ||||||
| 	snd_printk(KERN_DEBUG | 	dev_dbg(emu->card->dev, | ||||||
| 		   "p16v: open channel_id=%d, channel=%p, use=0x%x\n", | 		   "p16v: open channel_id=%d, channel=%p, use=0x%x\n", | ||||||
| 		   channel_id, channel, channel->use); | 		   channel_id, channel, channel->use); | ||||||
| 	printk(KERN_DEBUG "open:channel_id=%d, chip=%p, channel=%p\n", | 	dev_dbg(emu->card->dev, "open:channel_id=%d, chip=%p, channel=%p\n", | ||||||
| 	       channel_id, chip, channel); | 	       channel_id, chip, channel); | ||||||
| #endif /* debug */ | #endif /* debug */ | ||||||
| 	/* channel->interrupt = snd_p16v_pcm_channel_interrupt; */ | 	/* channel->interrupt = snd_p16v_pcm_channel_interrupt; */ | ||||||
| @ -231,14 +231,14 @@ static int snd_p16v_pcm_open_capture_channel(struct snd_pcm_substream *substream | |||||||
| 	int err; | 	int err; | ||||||
| 
 | 
 | ||||||
| 	epcm = kzalloc(sizeof(*epcm), GFP_KERNEL); | 	epcm = kzalloc(sizeof(*epcm), GFP_KERNEL); | ||||||
| 	/* snd_printk(KERN_DEBUG "epcm kcalloc: %p\n", epcm); */ | 	/* dev_dbg(emu->card->dev, "epcm kcalloc: %p\n", epcm); */ | ||||||
| 
 | 
 | ||||||
| 	if (epcm == NULL) | 	if (epcm == NULL) | ||||||
| 		return -ENOMEM; | 		return -ENOMEM; | ||||||
| 	epcm->emu = emu; | 	epcm->emu = emu; | ||||||
| 	epcm->substream = substream; | 	epcm->substream = substream; | ||||||
| 	/*
 | 	/*
 | ||||||
| 	snd_printk(KERN_DEBUG "epcm device=%d, channel_id=%d\n", | 	dev_dbg(emu->card->dev, "epcm device=%d, channel_id=%d\n", | ||||||
| 		   substream->pcm->device, channel_id); | 		   substream->pcm->device, channel_id); | ||||||
| 	*/ | 	*/ | ||||||
| 	runtime->private_data = epcm; | 	runtime->private_data = epcm; | ||||||
| @ -251,10 +251,10 @@ static int snd_p16v_pcm_open_capture_channel(struct snd_pcm_substream *substream | |||||||
| 
 | 
 | ||||||
| 	channel->use=1; | 	channel->use=1; | ||||||
| #if 0 /* debug */
 | #if 0 /* debug */
 | ||||||
| 	snd_printk(KERN_DEBUG | 	dev_dbg(emu->card->dev, | ||||||
| 		   "p16v: open channel_id=%d, channel=%p, use=0x%x\n", | 		   "p16v: open channel_id=%d, channel=%p, use=0x%x\n", | ||||||
| 		   channel_id, channel, channel->use); | 		   channel_id, channel, channel->use); | ||||||
| 	printk(KERN_DEBUG "open:channel_id=%d, chip=%p, channel=%p\n", | 	dev_dbg(emu->card->dev, "open:channel_id=%d, chip=%p, channel=%p\n", | ||||||
| 	       channel_id, chip, channel); | 	       channel_id, chip, channel); | ||||||
| #endif /* debug */ | #endif /* debug */ | ||||||
| 	/* channel->interrupt = snd_p16v_pcm_channel_interrupt; */ | 	/* channel->interrupt = snd_p16v_pcm_channel_interrupt; */ | ||||||
| @ -349,15 +349,18 @@ static int snd_p16v_pcm_prepare_playback(struct snd_pcm_substream *substream) | |||||||
| 	u32 tmp; | 	u32 tmp; | ||||||
| 	 | 	 | ||||||
| #if 0 /* debug */
 | #if 0 /* debug */
 | ||||||
| 	snd_printk(KERN_DEBUG "prepare:channel_number=%d, rate=%d, " | 	dev_dbg(emu->card->dev, | ||||||
|  | 		"prepare:channel_number=%d, rate=%d, " | ||||||
| 		   "format=0x%x, channels=%d, buffer_size=%ld, " | 		   "format=0x%x, channels=%d, buffer_size=%ld, " | ||||||
| 		   "period_size=%ld, periods=%u, frames_to_bytes=%d\n", | 		   "period_size=%ld, periods=%u, frames_to_bytes=%d\n", | ||||||
| 		   channel, runtime->rate, runtime->format, runtime->channels, | 		   channel, runtime->rate, runtime->format, runtime->channels, | ||||||
| 		   runtime->buffer_size, runtime->period_size, | 		   runtime->buffer_size, runtime->period_size, | ||||||
| 		   runtime->periods, frames_to_bytes(runtime, 1)); | 		   runtime->periods, frames_to_bytes(runtime, 1)); | ||||||
| 	snd_printk(KERN_DEBUG "dma_addr=%x, dma_area=%p, table_base=%p\n", | 	dev_dbg(emu->card->dev, | ||||||
|  | 		"dma_addr=%x, dma_area=%p, table_base=%p\n", | ||||||
| 		   runtime->dma_addr, runtime->dma_area, table_base); | 		   runtime->dma_addr, runtime->dma_area, table_base); | ||||||
| 	snd_printk(KERN_DEBUG "dma_addr=%x, dma_area=%p, dma_bytes(size)=%x\n", | 	dev_dbg(emu->card->dev, | ||||||
|  | 		"dma_addr=%x, dma_area=%p, dma_bytes(size)=%x\n", | ||||||
| 		   emu->p16v_buffer.addr, emu->p16v_buffer.area, | 		   emu->p16v_buffer.addr, emu->p16v_buffer.area, | ||||||
| 		   emu->p16v_buffer.bytes); | 		   emu->p16v_buffer.bytes); | ||||||
| #endif /* debug */ | #endif /* debug */ | ||||||
| @ -405,7 +408,7 @@ static int snd_p16v_pcm_prepare_capture(struct snd_pcm_substream *substream) | |||||||
| 	u32 tmp; | 	u32 tmp; | ||||||
| 
 | 
 | ||||||
| 	/*
 | 	/*
 | ||||||
| 	printk(KERN_DEBUG "prepare capture:channel_number=%d, rate=%d, " | 	dev_dbg(emu->card->dev, "prepare capture:channel_number=%d, rate=%d, " | ||||||
| 	       "format=0x%x, channels=%d, buffer_size=%ld, period_size=%ld, " | 	       "format=0x%x, channels=%d, buffer_size=%ld, period_size=%ld, " | ||||||
| 	       "frames_to_bytes=%d\n", | 	       "frames_to_bytes=%d\n", | ||||||
| 	       channel, runtime->rate, runtime->format, runtime->channels, | 	       channel, runtime->rate, runtime->format, runtime->channels, | ||||||
| @ -491,13 +494,13 @@ static int snd_p16v_pcm_trigger_playback(struct snd_pcm_substream *substream, | |||||||
| 		runtime = s->runtime; | 		runtime = s->runtime; | ||||||
| 		epcm = runtime->private_data; | 		epcm = runtime->private_data; | ||||||
| 		channel = substream->pcm->device-emu->p16v_device_offset; | 		channel = substream->pcm->device-emu->p16v_device_offset; | ||||||
| 		/* snd_printk(KERN_DEBUG "p16v channel=%d\n", channel); */ | 		/* dev_dbg(emu->card->dev, "p16v channel=%d\n", channel); */ | ||||||
| 		epcm->running = running; | 		epcm->running = running; | ||||||
| 		basic |= (0x1<<channel); | 		basic |= (0x1<<channel); | ||||||
| 		inte |= (INTE2_PLAYBACK_CH_0_LOOP<<channel); | 		inte |= (INTE2_PLAYBACK_CH_0_LOOP<<channel); | ||||||
|                 snd_pcm_trigger_done(s, substream); |                 snd_pcm_trigger_done(s, substream); | ||||||
|         } |         } | ||||||
| 	/* snd_printk(KERN_DEBUG "basic=0x%x, inte=0x%x\n", basic, inte); */ | 	/* dev_dbg(emu->card->dev, "basic=0x%x, inte=0x%x\n", basic, inte); */ | ||||||
| 
 | 
 | ||||||
| 	switch (cmd) { | 	switch (cmd) { | ||||||
| 	case SNDRV_PCM_TRIGGER_START: | 	case SNDRV_PCM_TRIGGER_START: | ||||||
| @ -588,10 +591,10 @@ snd_p16v_pcm_pointer_capture(struct snd_pcm_substream *substream) | |||||||
| 	ptr=ptr2; | 	ptr=ptr2; | ||||||
| 	if (ptr >= runtime->buffer_size) { | 	if (ptr >= runtime->buffer_size) { | ||||||
| 		ptr -= runtime->buffer_size; | 		ptr -= runtime->buffer_size; | ||||||
| 		printk(KERN_WARNING "buffer capture limited!\n"); | 		dev_warn(emu->card->dev, "buffer capture limited!\n"); | ||||||
| 	} | 	} | ||||||
| 	/*
 | 	/*
 | ||||||
| 	printk(KERN_DEBUG "ptr1 = 0x%lx, ptr2=0x%lx, ptr=0x%lx, " | 	dev_dbg(emu->card->dev, "ptr1 = 0x%lx, ptr2=0x%lx, ptr=0x%lx, " | ||||||
| 	       "buffer_size = 0x%x, period_size = 0x%x, bits=%d, rate=%d\n", | 	       "buffer_size = 0x%x, period_size = 0x%x, bits=%d, rate=%d\n", | ||||||
| 	       ptr1, ptr2, ptr, (int)runtime->buffer_size, | 	       ptr1, ptr2, ptr, (int)runtime->buffer_size, | ||||||
| 	       (int)runtime->period_size, (int)runtime->frame_bits, | 	       (int)runtime->period_size, (int)runtime->frame_bits, | ||||||
| @ -630,7 +633,7 @@ int snd_p16v_free(struct snd_emu10k1 *chip) | |||||||
| 	if (chip->p16v_buffer.area) { | 	if (chip->p16v_buffer.area) { | ||||||
| 		snd_dma_free_pages(&chip->p16v_buffer); | 		snd_dma_free_pages(&chip->p16v_buffer); | ||||||
| 		/*
 | 		/*
 | ||||||
| 		snd_printk(KERN_DEBUG "period lables free: %p\n", | 		dev_dbg(chip->card->dev, "period lables free: %p\n", | ||||||
| 			   &chip->p16v_buffer); | 			   &chip->p16v_buffer); | ||||||
| 		*/ | 		*/ | ||||||
| 	} | 	} | ||||||
| @ -644,7 +647,7 @@ int snd_p16v_pcm(struct snd_emu10k1 *emu, int device, struct snd_pcm **rpcm) | |||||||
| 	int err; | 	int err; | ||||||
|         int capture=1; |         int capture=1; | ||||||
|    |    | ||||||
| 	/* snd_printk(KERN_DEBUG "snd_p16v_pcm called. device=%d\n", device); */ | 	/* dev_dbg(emu->card->dev, "snd_p16v_pcm called. device=%d\n", device); */ | ||||||
| 	emu->p16v_device_offset = device; | 	emu->p16v_device_offset = device; | ||||||
| 	if (rpcm) | 	if (rpcm) | ||||||
| 		*rpcm = NULL; | 		*rpcm = NULL; | ||||||
| @ -672,7 +675,7 @@ int snd_p16v_pcm(struct snd_emu10k1 *emu, int device, struct snd_pcm **rpcm) | |||||||
| 							 ((65536 - 64) * 8), ((65536 - 64) * 8))) < 0)  | 							 ((65536 - 64) * 8), ((65536 - 64) * 8))) < 0)  | ||||||
| 			return err; | 			return err; | ||||||
| 		/*
 | 		/*
 | ||||||
| 		snd_printk(KERN_DEBUG | 		dev_dbg(emu->card->dev, | ||||||
| 			   "preallocate playback substream: err=%d\n", err); | 			   "preallocate playback substream: err=%d\n", err); | ||||||
| 		*/ | 		*/ | ||||||
| 	} | 	} | ||||||
| @ -686,7 +689,7 @@ int snd_p16v_pcm(struct snd_emu10k1 *emu, int device, struct snd_pcm **rpcm) | |||||||
| 	                                           65536 - 64, 65536 - 64)) < 0) | 	                                           65536 - 64, 65536 - 64)) < 0) | ||||||
| 			return err; | 			return err; | ||||||
| 		/*
 | 		/*
 | ||||||
| 		snd_printk(KERN_DEBUG | 		dev_dbg(emu->card->dev, | ||||||
| 			   "preallocate capture substream: err=%d\n", err); | 			   "preallocate capture substream: err=%d\n", err); | ||||||
| 		*/ | 		*/ | ||||||
| 	} | 	} | ||||||
|  | |||||||
| @ -55,7 +55,7 @@ static int voice_alloc(struct snd_emu10k1 *emu, int type, int number, | |||||||
| 	first_voice = last_voice = 0; | 	first_voice = last_voice = 0; | ||||||
| 	for (i = emu->next_free_voice, j = 0; j < NUM_G ; i += number, j += number) { | 	for (i = emu->next_free_voice, j = 0; j < NUM_G ; i += number, j += number) { | ||||||
| 		/*
 | 		/*
 | ||||||
| 		printk(KERN_DEBUG "i %d j %d next free %d!\n", | 		dev_dbg(emu->card->dev, "i %d j %d next free %d!\n", | ||||||
| 		       i, j, emu->next_free_voice); | 		       i, j, emu->next_free_voice); | ||||||
| 		*/ | 		*/ | ||||||
| 		i %= NUM_G; | 		i %= NUM_G; | ||||||
| @ -75,7 +75,7 @@ static int voice_alloc(struct snd_emu10k1 *emu, int type, int number, | |||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
| 		if (!skip) { | 		if (!skip) { | ||||||
| 			/* printk(KERN_DEBUG "allocated voice %d\n", i); */ | 			/* dev_dbg(emu->card->dev, "allocated voice %d\n", i); */ | ||||||
| 			first_voice = i; | 			first_voice = i; | ||||||
| 			last_voice = (i + number) % NUM_G; | 			last_voice = (i + number) % NUM_G; | ||||||
| 			emu->next_free_voice = last_voice; | 			emu->next_free_voice = last_voice; | ||||||
| @ -89,7 +89,7 @@ static int voice_alloc(struct snd_emu10k1 *emu, int type, int number, | |||||||
| 	for (i = 0; i < number; i++) { | 	for (i = 0; i < number; i++) { | ||||||
| 		voice = &emu->voices[(first_voice + i) % NUM_G]; | 		voice = &emu->voices[(first_voice + i) % NUM_G]; | ||||||
| 		/*
 | 		/*
 | ||||||
| 		printk(kERN_DEBUG "voice alloc - %i, %i of %i\n", | 		dev_dbg(emu->card->dev, "voice alloc - %i, %i of %i\n", | ||||||
| 		       voice->number, idx-first_voice+1, number); | 		       voice->number, idx-first_voice+1, number); | ||||||
| 		*/ | 		*/ | ||||||
| 		voice->use = 1; | 		voice->use = 1; | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Takashi Iwai
						Takashi Iwai