Index: uspace/drv/audio/sb16/mixer.c
===================================================================
--- uspace/drv/audio/sb16/mixer.c	(revision b3f36d21a57925b8a863d655db4f2af7081a8df7)
+++ uspace/drv/audio/sb16/mixer.c	(revision c7325dd6a52a2dff58f96559d6ad98c0f46026cc)
@@ -114,10 +114,30 @@
 void mixer_load_volume_levels(sb16_regs_t *regs, mixer_type_t type)
 {
-	/* Default values are ok for now */
+	/* Set Master to maximum */
+	if (!mixer_get_control_item_count(type))
+		return;
+	unsigned levels = 0, channels = 0, current_level;
+	const char *name = NULL;
+	mixer_get_control_item_info(type, 0, &name, &channels, &levels);
+	unsigned channel = 0;
+	for (;channel < channels; ++channel) {
+		current_level =
+		    mixer_get_volume_level(regs, type, 0, channel);
+		ddf_log_note("Setting %s channel %d to %d (%d).\n",
+		    name, channel, levels - 1, current_level);
+
+		mixer_set_volume_level(regs, type, 0, channel, levels - 1);
+
+		current_level =
+		    mixer_get_volume_level(regs, type, 0, channel);
+		ddf_log_note("%s channel %d set to %d.\n",
+		    name, channel, current_level);
+	}
+
 }
 /*----------------------------------------------------------------------------*/
 void mixer_store_volume_levels(sb16_regs_t *regs, mixer_type_t type)
 {
-	/* Default values are ok for now */
+	/* No place to store the values. */
 }
 /*----------------------------------------------------------------------------*/
Index: uspace/drv/audio/sb16/sb16.c
===================================================================
--- uspace/drv/audio/sb16/sb16.c	(revision b3f36d21a57925b8a863d655db4f2af7081a8df7)
+++ uspace/drv/audio/sb16/sb16.c	(revision c7325dd6a52a2dff58f96559d6ad98c0f46026cc)
@@ -100,4 +100,5 @@
 		return ret;
 	}
+	mixer_load_volume_levels(drv->regs, drv->mixer);
 	ddf_log_note("Initialized mixer: %s.\n", mixer_type_to_str(drv->mixer));
 
