Loading sound/core/pcm_lib.c +2 −0 Original line number Diff line number Diff line Loading @@ -67,6 +67,8 @@ void snd_pcm_playback_silence(struct snd_pcm_substream *substream, snd_pcm_ufram } else { if (new_hw_ptr == ULONG_MAX) { /* initialization */ snd_pcm_sframes_t avail = snd_pcm_playback_hw_avail(runtime); if (avail > runtime->buffer_size) avail = runtime->buffer_size; runtime->silence_filled = avail > 0 ? avail : 0; runtime->silence_start = (runtime->status->hw_ptr + runtime->silence_filled) % Loading sound/pci/hda/hda_codec.c +5 −3 Original line number Diff line number Diff line Loading @@ -730,15 +730,17 @@ static void /*__devinit*/ setup_fg_nodes(struct hda_codec *codec) total_nodes = snd_hda_get_sub_nodes(codec, AC_NODE_ROOT, &nid); for (i = 0; i < total_nodes; i++, nid++) { function_id = snd_hda_param_read(codec, nid, AC_PAR_FUNCTION_TYPE) & 0xff; AC_PAR_FUNCTION_TYPE); switch (function_id) { case AC_GRP_AUDIO_FUNCTION: codec->afg = nid; codec->function_id = function_id; codec->afg_function_id = function_id & 0xff; codec->afg_unsol = (function_id >> 8) & 1; break; case AC_GRP_MODEM_FUNCTION: codec->mfg = nid; codec->function_id = function_id; codec->mfg_function_id = function_id & 0xff; codec->mfg_unsol = (function_id >> 8) & 1; break; default: break; Loading sound/pci/hda/hda_codec.h +4 −1 Original line number Diff line number Diff line Loading @@ -760,7 +760,10 @@ struct hda_codec { hda_nid_t mfg; /* MFG node id */ /* ids */ u32 function_id; u8 afg_function_id; u8 mfg_function_id; u8 afg_unsol; u8 mfg_unsol; u32 vendor_id; u32 subsystem_id; u32 revision_id; Loading sound/pci/hda/hda_proc.c +6 −1 Original line number Diff line number Diff line Loading @@ -557,7 +557,12 @@ static void print_codec_info(struct snd_info_entry *entry, else snd_iprintf(buffer, "Not Set\n"); snd_iprintf(buffer, "Address: %d\n", codec->addr); snd_iprintf(buffer, "Function Id: 0x%x\n", codec->function_id); if (codec->afg) snd_iprintf(buffer, "AFG Function Id: 0x%x (unsol %u)\n", codec->afg_function_id, codec->afg_unsol); if (codec->mfg) snd_iprintf(buffer, "MFG Function Id: 0x%x (unsol %u)\n", codec->mfg_function_id, codec->mfg_unsol); snd_iprintf(buffer, "Vendor Id: 0x%08x\n", codec->vendor_id); snd_iprintf(buffer, "Subsystem Id: 0x%08x\n", codec->subsystem_id); snd_iprintf(buffer, "Revision Id: 0x%x\n", codec->revision_id); Loading Loading
sound/core/pcm_lib.c +2 −0 Original line number Diff line number Diff line Loading @@ -67,6 +67,8 @@ void snd_pcm_playback_silence(struct snd_pcm_substream *substream, snd_pcm_ufram } else { if (new_hw_ptr == ULONG_MAX) { /* initialization */ snd_pcm_sframes_t avail = snd_pcm_playback_hw_avail(runtime); if (avail > runtime->buffer_size) avail = runtime->buffer_size; runtime->silence_filled = avail > 0 ? avail : 0; runtime->silence_start = (runtime->status->hw_ptr + runtime->silence_filled) % Loading
sound/pci/hda/hda_codec.c +5 −3 Original line number Diff line number Diff line Loading @@ -730,15 +730,17 @@ static void /*__devinit*/ setup_fg_nodes(struct hda_codec *codec) total_nodes = snd_hda_get_sub_nodes(codec, AC_NODE_ROOT, &nid); for (i = 0; i < total_nodes; i++, nid++) { function_id = snd_hda_param_read(codec, nid, AC_PAR_FUNCTION_TYPE) & 0xff; AC_PAR_FUNCTION_TYPE); switch (function_id) { case AC_GRP_AUDIO_FUNCTION: codec->afg = nid; codec->function_id = function_id; codec->afg_function_id = function_id & 0xff; codec->afg_unsol = (function_id >> 8) & 1; break; case AC_GRP_MODEM_FUNCTION: codec->mfg = nid; codec->function_id = function_id; codec->mfg_function_id = function_id & 0xff; codec->mfg_unsol = (function_id >> 8) & 1; break; default: break; Loading
sound/pci/hda/hda_codec.h +4 −1 Original line number Diff line number Diff line Loading @@ -760,7 +760,10 @@ struct hda_codec { hda_nid_t mfg; /* MFG node id */ /* ids */ u32 function_id; u8 afg_function_id; u8 mfg_function_id; u8 afg_unsol; u8 mfg_unsol; u32 vendor_id; u32 subsystem_id; u32 revision_id; Loading
sound/pci/hda/hda_proc.c +6 −1 Original line number Diff line number Diff line Loading @@ -557,7 +557,12 @@ static void print_codec_info(struct snd_info_entry *entry, else snd_iprintf(buffer, "Not Set\n"); snd_iprintf(buffer, "Address: %d\n", codec->addr); snd_iprintf(buffer, "Function Id: 0x%x\n", codec->function_id); if (codec->afg) snd_iprintf(buffer, "AFG Function Id: 0x%x (unsol %u)\n", codec->afg_function_id, codec->afg_unsol); if (codec->mfg) snd_iprintf(buffer, "MFG Function Id: 0x%x (unsol %u)\n", codec->mfg_function_id, codec->mfg_unsol); snd_iprintf(buffer, "Vendor Id: 0x%08x\n", codec->vendor_id); snd_iprintf(buffer, "Subsystem Id: 0x%08x\n", codec->subsystem_id); snd_iprintf(buffer, "Revision Id: 0x%x\n", codec->revision_id); Loading