--- firmware/drivers/audio/cs42l55.c +++ firmware/drivers/audio/cs42l55.c @@ -30,9 +30,9 @@ #include "cs42l55.h" const struct sound_settings_info audiohw_settings[] = { - [SOUND_VOLUME] = {"dB", 0, 1, -60, 12, -25}, - [SOUND_BASS] = {"dB", 1, 15,-105, 120, 0}, - [SOUND_TREBLE] = {"dB", 1, 15,-105, 120, 0}, + [SOUND_VOLUME] = {"dB", 0, 1, -60, 6, -25}, + [SOUND_BASS] = {"dB", 1, 15,-105, 60, 0}, + [SOUND_TREBLE] = {"dB", 1, 15,-105, 60, 0}, [SOUND_BALANCE] = {"%", 0, 1,-100, 100, 0}, [SOUND_CHANNELS] = {"", 0, 1, 0, 5, 0}, [SOUND_STEREO_WIDTH] = {"%", 0, 5, 0, 250, 100}, @@ -42,11 +42,11 @@ static int bass, treble; -/* convert tenth of dB volume (-600..120) to master volume register value */ +/* convert tenth of dB volume (-600..60) to master volume register value */ int tenthdb2master(int db) { - /* -60dB to +12dB in 1dB steps */ - /* 0001100 == +12dB (0xc) */ + /* -60dB to +6dB in 1dB steps */ + /* 0000110 == +6dB (0x06) */ /* 0000000 == 0dB (0x0) */ /* 1000100 == -60dB (0x44, this is actually -58dB) */ @@ -125,8 +125,8 @@ void audiohw_set_master_vol(int vol_l, int vol_r) { - /* -60dB to +12dB in 1dB steps */ - /* 0001100 == +12dB (0xc) */ + /* -60dB to +6dB in 1dB steps */ + /* 0000110 == +6dB (0x6) */ /* 0000000 == 0dB (0x0) */ /* 1000100 == -60dB (0x44, this is actually -58dB) */ @@ -138,8 +138,8 @@ void audiohw_set_lineout_vol(int vol_l, int vol_r) { - /* -60dB to +12dB in 1dB steps */ - /* 0001100 == +12dB (0xc) */ + /* -60dB to +6dB in 1dB steps */ + /* 0000110 == +6dB (0x6) */ /* 0000000 == 0dB (0x0) */ /* 1000100 == -60dB (0x44, this is actually -58dB) */ --- firmware/export/cs42l55.h +++ firmware/export/cs42l55.h @@ -24,7 +24,7 @@ /* volume/balance/treble/bass interdependency */ #define VOLUME_MIN -580 -#define VOLUME_MAX 120 +#define VOLUME_MAX 060 #define AUDIOHW_CAPS (BASS_CAP | TREBLE_CAP | BASS_CUTOFF_CAP \ | TREBLE_CUTOFF_CAP | PRESCALER_CAP)