summary refs log tree commit diff stats
path: root/hw/audio/sb16.c
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2018-08-01 17:14:09 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2018-08-23 13:32:50 +0200
commitedd7541b8ce25c1180eb5435ff3350a76d0f0b95 (patch)
tree162e0c56178fb135a6ff94be70180f249fd2a458 /hw/audio/sb16.c
parent154c1d1f960c5147a3f8ef00907504112f271cd8 (diff)
downloadfocaccia-qemu-edd7541b8ce25c1180eb5435ff3350a76d0f0b95.tar.gz
focaccia-qemu-edd7541b8ce25c1180eb5435ff3350a76d0f0b95.zip
fix "Missing break in switch" coverity reports
Many of these are marked as "intentional/fix required" because they
just need adding a fall through comment.  This is exactly what this
patch does, except for target/mips/translate.c where it is easier to
duplicate the code, and hw/audio/sb16.c where I consulted the DOSBox
sources and decide to just remove the LOG_UNIMP before the fallthrough.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'hw/audio/sb16.c')
-rw-r--r--hw/audio/sb16.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/hw/audio/sb16.c b/hw/audio/sb16.c
index 5a4d32364e..c5b9bf79e8 100644
--- a/hw/audio/sb16.c
+++ b/hw/audio/sb16.c
@@ -741,10 +741,15 @@ static void complete (SB16State *s)
             ldebug ("set time const %d\n", s->time_const);
             break;
 
-        case 0x42:              /* FT2 sets output freq with this, go figure */
-            qemu_log_mask(LOG_UNIMP, "cmd 0x42 might not do what it think it"
-                          " should\n");
         case 0x41:
+        case 0x42:
+            /*
+             * 0x41 is documented as setting the output sample rate,
+             * and 0x42 the input sample rate, but in fact SB16 hardware
+             * seems to have only a single sample rate under the hood,
+             * and FT2 sets output freq with this (go figure).  Compare:
+             * http://homepages.cae.wisc.edu/~brodskye/sb16doc/sb16doc.html#SamplingRate
+             */
             s->freq = dsp_get_hilo (s);
             ldebug ("set freq %d\n", s->freq);
             break;