File tree Expand file tree Collapse file tree 1 file changed +15
-1
lines changed Expand file tree Collapse file tree 1 file changed +15
-1
lines changed Original file line number Diff line number Diff line change @@ -592,7 +592,21 @@ static int data_ep_set_params(struct snd_usb_endpoint *ep,
592
592
593
593
ep -> datainterval = fmt -> datainterval ;
594
594
ep -> stride = frame_bits >> 3 ;
595
- ep -> silence_value = pcm_format == SNDRV_PCM_FORMAT_U8 ? 0x80 : 0 ;
595
+
596
+ switch (pcm_format ) {
597
+ case SNDRV_PCM_FORMAT_U8 :
598
+ ep -> silence_value = 0x80 ;
599
+ break ;
600
+ case SNDRV_PCM_FORMAT_DSD_U8 :
601
+ case SNDRV_PCM_FORMAT_DSD_U16_LE :
602
+ case SNDRV_PCM_FORMAT_DSD_U32_LE :
603
+ case SNDRV_PCM_FORMAT_DSD_U16_BE :
604
+ case SNDRV_PCM_FORMAT_DSD_U32_BE :
605
+ ep -> silence_value = 0x69 ;
606
+ break ;
607
+ default :
608
+ ep -> silence_value = 0 ;
609
+ }
596
610
597
611
/* assume max. frequency is 25% higher than nominal */
598
612
ep -> freqmax = ep -> freqn + (ep -> freqn >> 2 );
You can’t perform that action at this time.
0 commit comments