Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d19d133e authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull sound fixes from Takashi Iwai:
 "Here are a few fixes that have been pending since the previous pull
  request: a regression fix for HD-audio multiple SPDIF / HDMI devices,
  several ALC256 codec fixes, a couple of i915 HDMI audio fixes, and
  various small fixes.

  Nothing exciting, just boring, but things good to have"

* tag 'sound-fix-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
  ALSA: hda - fix headset mic detection problem for one more machine
  ALSA: hda/realtek - Fix Headphone Mic doesn't recording for ALC256
  ALSA: hda - fix "num_steps = 0" error on ALC256
  ALSA: usb-audio: Fix audio output on Roland SC-D70 sound module
  ALSA: hda - add AZX_DCAPS_I915_POWERWELL to Baytrail
  ALSA: hda - only sync BCLK to the display clock for Haswell & Broadwell
  ALSA: hda - Mute headphone pin on suspend on XPS13 9333
  sound/oss: fix deadlock in sequencer_ioctl(SNDCTL_SEQ_OUTOFBAND)
  ALSA: asound.h - use SNDRV_CTL_ELEM_ID_NAME_MAXLEN
  ALSA: hda - potential (but unlikely) uninitialized variable
  ALSA: hda - Fix regression for slave SPDIF setups
  ALSA: intel8x0: Check pci_iomap() success for DEVICE_ALI
  ALSA: hda - simplify azx_has_pm_runtime
parents c6668726 e8191a8e
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -864,7 +864,7 @@ struct snd_ctl_elem_id {
	snd_ctl_elem_iface_t iface;	/* interface identifier */
	unsigned int device;		/* device/client number */
	unsigned int subdevice;		/* subdevice (substream) number */
	unsigned char name[44];		/* ASCII name of item */
	unsigned char name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN];		/* ASCII name of item */
	unsigned int index;		/* index of item */
};

+2 −10
Original line number Diff line number Diff line
@@ -681,13 +681,8 @@ static int seq_timing_event(unsigned char *event_rec)
			break;

		case TMR_ECHO:
			if (seq_mode == SEQ_2)
				seq_copy_to_input(event_rec, 8);
			else
			{
			parm = (parm << 8 | SEQ_ECHO);
			seq_copy_to_input((unsigned char *) &parm, 4);
			}
			break;

		default:;
@@ -1324,7 +1319,6 @@ int sequencer_ioctl(int dev, struct file *file, unsigned int cmd, void __user *a
	int mode = translate_mode(file);
	struct synth_info inf;
	struct seq_event_rec event_rec;
	unsigned long flags;
	int __user *p = arg;

	orig_dev = dev = dev >> 4;
@@ -1479,9 +1473,7 @@ int sequencer_ioctl(int dev, struct file *file, unsigned int cmd, void __user *a
		case SNDCTL_SEQ_OUTOFBAND:
			if (copy_from_user(&event_rec, arg, sizeof(event_rec)))
				return -EFAULT;
			spin_lock_irqsave(&lock,flags);
			play_event(event_rec.arr);
			spin_unlock_irqrestore(&lock,flags);
			return 0;

		case SNDCTL_MIDI_INFO:
+1 −1
Original line number Diff line number Diff line
@@ -2529,7 +2529,7 @@ static void set_dig_out(struct hda_codec *codec, hda_nid_t nid,
	if (!d)
		return;
	for (; *d; d++)
		snd_hdac_regmap_update(&codec->core, nid,
		snd_hdac_regmap_update(&codec->core, *d,
				       AC_VERB_SET_DIGI_CONVERT_1, mask, val);
}

+1 −1
Original line number Diff line number Diff line
@@ -404,7 +404,7 @@ struct azx {
	((chip)->ops->reg_readb((dev)->sd_addr + AZX_REG_##reg))

#define azx_has_pm_runtime(chip) \
	(!AZX_DCAPS_PM_RUNTIME || ((chip)->driver_caps & AZX_DCAPS_PM_RUNTIME))
	((chip)->driver_caps & AZX_DCAPS_PM_RUNTIME)

/* PCM setup */
static inline struct azx_dev *get_azx_dev(struct snd_pcm_substream *substream)
+6 −0
Original line number Diff line number Diff line
@@ -55,6 +55,12 @@ void haswell_set_bclk(struct hda_intel *hda)
	int cdclk_freq;
	unsigned int bclk_m, bclk_n;
	struct i915_audio_component *acomp = &hda->audio_component;
	struct pci_dev *pci = hda->chip.pci;

	/* Only Haswell/Broadwell need set BCLK */
	if (pci->device != 0x0a0c && pci->device != 0x0c0c
	   && pci->device != 0x0d0c && pci->device != 0x160c)
		return;

	if (!acomp->ops)
		return;
Loading