* fix get_mix()

* style improvements


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29237 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Jérôme Duval
2009-02-16 19:09:34 +00:00
parent 65cae88fb5
commit 79d4b99e40
@@ -461,16 +461,13 @@ hda_create_controls_list(hda_multi *multi)
static status_t
list_mix_controls(hda_audio_group* audioGroup, multi_mix_control_info* MMCI)
{
multi_mix_control *MMC;
uint32 i;
MMC = MMCI->controls;
multi_mix_control *MMC = MMCI->controls;
if (MMCI->control_count < 24)
return B_ERROR;
if (hda_create_controls_list(audioGroup->multi) < B_OK)
return B_ERROR;
for (i=0; i<audioGroup->multi->control_count; i++) {
for (uint32 i = 0; i<audioGroup->multi->control_count; i++) {
MMC[i] = audioGroup->multi->controls[i].mix_control;
}
@@ -516,10 +513,9 @@ get_control_gain_mute(hda_audio_group* audioGroup, hda_multi_mixer_control *cont
static status_t
get_mix(hda_audio_group* audioGroup, multi_mix_value_info * MMVI)
{
int32 i;
uint32 id;
hda_multi_mixer_control *control = NULL;
for (i=0; i < MMVI->item_count; i++) {
for (int32 i = 0; i < MMVI->item_count; i++) {
id = MMVI->values[i].id - MULTI_CONTROL_FIRSTID;
if (id < 0 || id >= audioGroup->multi->control_count) {
dprintf("hda: get_mix : invalid control id requested : %li\n", id);
@@ -539,7 +535,7 @@ get_mix(hda_audio_group* audioGroup, multi_mix_value_info * MMVI)
value = resp[0] & AMP_GAIN_MASK;
else
value = resp[1] & AMP_GAIN_MASK;
MMVI->values[i].gain = (value - AMP_CAP_OFFSET(control->capabilities))
MMVI->values[i].gain = (0.0 + value - AMP_CAP_OFFSET(control->capabilities))
* AMP_CAP_STEP_SIZE(control->capabilities);
TRACE("get_mix: %ld gain: %f (%ld)\n", control->nid, MMVI->values[i].gain, value);
}
@@ -560,10 +556,9 @@ get_mix(hda_audio_group* audioGroup, multi_mix_value_info * MMVI)
static status_t
set_mix(hda_audio_group* audioGroup, multi_mix_value_info * MMVI)
{
int32 i;
uint32 id;
hda_multi_mixer_control *control = NULL;
for (i=0; i < MMVI->item_count; i++) {
for (int32 i = 0; i < MMVI->item_count; i++) {
id = MMVI->values[i].id - MULTI_CONTROL_FIRSTID;
if (id < 0 || id >= audioGroup->multi->control_count) {
dprintf("set_mix : invalid control id requested : %li\n", id);
@@ -619,7 +614,7 @@ set_mix(hda_audio_group* audioGroup, multi_mix_value_info * MMVI)
if (control->mix_control.master == MULTI_CONTROL_MASTERID)
control->gain = (uint32)(MMVI->values[i].gain / AMP_CAP_STEP_SIZE(control->capabilities)
+ AMP_CAP_OFFSET(control->capabilities));
+ AMP_CAP_OFFSET(control->capabilities));
if (control2 && control2->mix_control.master != MULTI_CONTROL_MASTERID)
control2->gain = (uint32)(MMVI->values[i+1].gain / AMP_CAP_STEP_SIZE(control2->capabilities)
@@ -663,7 +658,7 @@ set_mix(hda_audio_group* audioGroup, multi_mix_value_info * MMVI)
hda_send_verbs(audioGroup->codec, verb, NULL, control2 ? 2 : 1);
if (control2)
i++;
i++;
}
/*if (control->mix_control.flags & B_MULTI_MIX_MUX && control->set) {