diff options
author | Jens Arnold <amiconn@rockbox.org> | 2005-06-19 23:33:23 +0000 |
---|---|---|
committer | Jens Arnold <amiconn@rockbox.org> | 2005-06-19 23:33:23 +0000 |
commit | 12a0e221de7ae39b221f38fe5cd8165440a79d2e (patch) | |
tree | 1bf2f60f5c212c30d28778887ff4294d8d51ce61 /firmware/drivers/uda1380.c | |
parent | 2c28390972fd55e61e34055e2c412c03ea981371 (diff) | |
download | rockbox-12a0e221de7ae39b221f38fe5cd8165440a79d2e.tar.gz rockbox-12a0e221de7ae39b221f38fe5cd8165440a79d2e.zip |
iriver: Prescale the digital volume when boosting treble/bass by decreasing the mixer volume.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6770 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/drivers/uda1380.c')
-rw-r--r-- | firmware/drivers/uda1380.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/firmware/drivers/uda1380.c b/firmware/drivers/uda1380.c index bba7d19d04..7fd65a75e2 100644 --- a/firmware/drivers/uda1380.c +++ b/firmware/drivers/uda1380.c | |||
@@ -54,7 +54,7 @@ unsigned short uda1380_defaults[2*NUM_DEFAULT_REGS] = | |||
54 | REG_MIX_VOL, MIX_VOL_CH_1(0) | MIX_VOL_CH_2(0xff), /* 00=max, ff=mute */ | 54 | REG_MIX_VOL, MIX_VOL_CH_1(0) | MIX_VOL_CH_2(0xff), /* 00=max, ff=mute */ |
55 | REG_EQ, EQ_MODE_MAX, /* Bass and tremble = 0 dB */ | 55 | REG_EQ, EQ_MODE_MAX, /* Bass and tremble = 0 dB */ |
56 | REG_MUTE, MUTE_MASTER, /* Mute everything to start with */ | 56 | REG_MUTE, MUTE_MASTER, /* Mute everything to start with */ |
57 | REG_MIX_CTL, 0, | 57 | REG_MIX_CTL, MIX_CTL_MIX, /* Enable mixer */ |
58 | REG_DEC_VOL, 0, | 58 | REG_DEC_VOL, 0, |
59 | REG_PGA, MUTE_ADC, | 59 | REG_PGA, MUTE_ADC, |
60 | REG_ADC, SKIP_DCFIL, | 60 | REG_ADC, SKIP_DCFIL, |
@@ -87,14 +87,23 @@ int uda1380_write_reg(unsigned char reg, unsigned short value) | |||
87 | /** | 87 | /** |
88 | * Sets left and right master volume (0(max) to 252(muted)) | 88 | * Sets left and right master volume (0(max) to 252(muted)) |
89 | */ | 89 | */ |
90 | int uda1380_setvol(int vol_l, int vol_r) | 90 | int uda1380_set_master_vol(int vol_l, int vol_r) |
91 | { | 91 | { |
92 | return uda1380_write_reg(REG_MASTER_VOL, | 92 | return uda1380_write_reg(REG_MASTER_VOL, |
93 | MASTER_VOL_LEFT(vol_l) | MASTER_VOL_RIGHT(vol_r)); | 93 | MASTER_VOL_LEFT(vol_l) | MASTER_VOL_RIGHT(vol_r)); |
94 | } | 94 | } |
95 | 95 | ||
96 | /** | 96 | /** |
97 | * Sets the bass value (0-15) | 97 | * Sets mixer volume for both channels (0(max) to 228(muted)) |
98 | */ | ||
99 | int uda1380_set_mixer_vol(int channel1, int channel2) | ||
100 | { | ||
101 | return uda1380_write_reg(REG_MIX_VOL, | ||
102 | MIX_VOL_CH_1(channel1) | MIX_VOL_CH_2(channel2)); | ||
103 | } | ||
104 | |||
105 | /** | ||
106 | * Sets the bass value (0-12) | ||
98 | */ | 107 | */ |
99 | void uda1380_set_bass(int value) | 108 | void uda1380_set_bass(int value) |
100 | { | 109 | { |