diff --git a/sound/usb/pcm.c b/sound/usb/pcm.c
index f09c7380a923ccbc12d8e112bc7ef1a4ae2f5104..3bb095a3c9b68e70ac54def1b6a62a84654332a8 100644
--- a/sound/usb/pcm.c
+++ b/sound/usb/pcm.c
@@ -1080,6 +1080,13 @@ static int setup_hw_info(struct snd_pcm_runtime *runtime, struct snd_usb_substre
 	if (err < 0)
 		return err;
 
+	list_for_each_entry(fp, &subs->fmt_list, list) {
+		if (fp->implicit_fb) {
+			runtime->hw.info |= SNDRV_PCM_INFO_JOINT_DUPLEX;
+			break;
+		}
+	}
+
 	return 0;
 }