Skip to content

Commit

Permalink
Added missing TDA8425 tests
Browse files Browse the repository at this point in the history
Signed-off-by: Andrea Zoppi <texzk@email.it>
  • Loading branch information
TexZK committed Apr 5, 2024
1 parent 1df77e4 commit d5dbe70
Show file tree
Hide file tree
Showing 3 changed files with 47 additions and 41 deletions.
2 changes: 1 addition & 1 deletion src/aymo_tda8425_x86_avx2.c
Original file line number Diff line number Diff line change
Expand Up @@ -339,7 +339,7 @@ static void aymo_(apply_tfilter)(struct aymo_(chip)* chip)
double b2 = (((m_k2w2 - abs2_sqrt_log10_g) - (h_sqrt_5_kw_abs_sqrt_log10_g * cosp)));

double ra0 = (1. / a0);
chip->kb0 = _mm256_blend_ps(chip->kb0, _mm256_set1_ps((float)(b0 * ra0)), 0x08);
chip->kb0 = _mm256_blend_ps(chip->kb0, _mm256_set1_ps((float)(b0 * ra0)), 0x88);
chip->kb1 = _mm256_blend_ps(chip->kb1, _mm256_set1_ps((float)(b1 * ra0)), 0x88);
chip->kb2 = _mm256_blend_ps(chip->kb2, _mm256_set1_ps((float)(b2 * ra0)), 0x88);
ra0 = -ra0;
Expand Down
85 changes: 45 additions & 40 deletions tests/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -177,46 +177,51 @@ endforeach
seconds = '8'
samplerate = '48000'
aymo_tda8425_sweep_suite = {
'stereo_ab_1_384000': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCE', '384000', seconds],
'stereo_ab_1_96000': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCE', '96000', seconds],
'stereo_ab_1_48000': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCE', '48000', seconds],
'stereo_ab_1_44100': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCE', '44100', seconds],

'volume_lr_max_min': ['0xFF', '0xF0', '0xF6', '0xF6', '0xFF', '0xCE', samplerate, seconds],
'volume_lr_min_max': ['0xF0', '0xFF', '0xF6', '0xF6', '0xFF', '0xCE', samplerate, seconds],

'bass_min': ['0xFC', '0xFC', '0xF0', '0xF6', '0xFF', '0xCE', samplerate, seconds],
'bass_max': ['0xFC', '0xFC', '0xFF', '0xF6', '0xFF', '0xCE', samplerate, seconds],

'treble_min': ['0xFC', '0xFC', '0xF6', '0xF0', '0xFF', '0xCE', samplerate, seconds],
'treble_max': ['0xFC', '0xFC', '0xF6', '0xFF', '0xFF', '0xCE', samplerate, seconds],

'stereo_none_1': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xC8', samplerate, seconds],
'stereo_none_2': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xC9', samplerate, seconds],
'stereo_1_a': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCA', samplerate, seconds],
'stereo_1_b': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCC', samplerate, seconds],
'stereo_1_ab': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCE', samplerate, seconds],
'stereo_2_a': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCB', samplerate, seconds],
'stereo_2_b': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCD', samplerate, seconds],
'stereo_2_ab': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCF', samplerate, seconds],

'mono_1_a': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xC2', samplerate, seconds],
'mono_1_b': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xC4', samplerate, seconds],
'mono_1_ab': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xC6', samplerate, seconds],

'pseudo_1_a': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xD2', samplerate, seconds],
'pseudo_1_b': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xD4', samplerate, seconds],
# TODO: Preset 1
# TODO: Preset 2
# TODO: Preset 3

'spatial_1_a': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xDE', samplerate, seconds],
'spatial_1_b': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xDE', samplerate, seconds],
'spatial_1_ab': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xDE', samplerate, seconds],

'mute': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xEE', samplerate, seconds],

# TODO: T-filter extremes
'stereo_1_ab_384000': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCE', '384000', seconds],
'stereo_1_ab_96000': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCE', '96000', seconds],
'stereo_1_ab_48000': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCE', '48000', seconds],
'stereo_1_ab_44100': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCE', '44100', seconds],

'volume_lr_max_min': ['0xFF', '0xF0', '0xF6', '0xF6', '0xFF', '0xCE', samplerate, seconds],
'volume_lr_min_max': ['0xF0', '0xFF', '0xF6', '0xF6', '0xFF', '0xCE', samplerate, seconds],

'bass_min': ['0xFC', '0xFC', '0xF0', '0xF6', '0xFF', '0xCE', samplerate, seconds],
'bass_max': ['0xFC', '0xFC', '0xFF', '0xF6', '0xFF', '0xCE', samplerate, seconds],

'treble_min': ['0xFC', '0xFC', '0xF6', '0xF0', '0xFF', '0xCE', samplerate, seconds],
'treble_max': ['0xFC', '0xFC', '0xF6', '0xFF', '0xFF', '0xCE', samplerate, seconds],

'stereo_none_1': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xC8', samplerate, seconds],
'stereo_none_2': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xC9', samplerate, seconds],
'stereo_1_a': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCA', samplerate, seconds],
'stereo_1_b': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCC', samplerate, seconds],
'stereo_1_ab': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCE', samplerate, seconds],
'stereo_2_a': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCB', samplerate, seconds],
'stereo_2_b': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCD', samplerate, seconds],
'stereo_2_ab': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xCF', samplerate, seconds],

'mono_1_a': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xC2', samplerate, seconds],
'mono_1_b': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xC4', samplerate, seconds],
'mono_1_ab': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xC6', samplerate, seconds],

'pseudo_1_a': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFC', '0xD2', samplerate, seconds],
'pseudo_1_b': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFC', '0xD4', samplerate, seconds],
'pseudo_2_a': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFD', '0xD2', samplerate, seconds],
'pseudo_2_b': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFD', '0xD4', samplerate, seconds],
'pseudo_3_a': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFE', '0xD2', samplerate, seconds],
'pseudo_3_b': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFE', '0xD4', samplerate, seconds],

'spatial_1_a': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xDE', samplerate, seconds],
'spatial_1_b': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xDE', samplerate, seconds],
'spatial_1_ab': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xDE', samplerate, seconds],

'mute': ['0xFC', '0xFC', '0xF6', '0xF6', '0xFF', '0xEE', samplerate, seconds],

'tfilter_min': ['0xFC', '0xFC', '0xF0', '0xF6', '0xFF', '0x4E', samplerate, seconds],
'tfilter_max': ['0xFC', '0xFC', '0xFF', '0xF6', '0xFF', '0x4E', samplerate, seconds],

'dcremoval_lr_max_min': ['0xFF', '0xF0', '0xF6', '0xF6', '0xFF', '0x8E', samplerate, seconds],
'dcremoval_lr_min_max': ['0xF0', '0xFF', '0xF6', '0xF6', '0xFF', '0x8E', samplerate, seconds],
}

foreach intr_name : ['x86_sse41', 'x86_avx2', 'arm_neon']
Expand Down
1 change: 1 addition & 0 deletions tests/test_tda8425_sweep_inline.h
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,7 @@ static void app_setup(void)
TDA8425_Chip_Write(&emu, (TDA8425_Address)TDA8425_Reg_VR, app_args.reg_vr);
TDA8425_Chip_Write(&emu, (TDA8425_Address)TDA8425_Reg_BA, app_args.reg_ba);
TDA8425_Chip_Write(&emu, (TDA8425_Address)TDA8425_Reg_TR, app_args.reg_tr);
TDA8425_Chip_Write(&emu, (TDA8425_Address)TDA8425_Reg_PP, app_args.reg_pp);
TDA8425_Chip_Write(&emu, (TDA8425_Address)TDA8425_Reg_SF, app_args.reg_sf);
TDA8425_Chip_Start(&emu);

Expand Down

0 comments on commit d5dbe70

Please sign in to comment.