Because of the holidays, TI E2E™ design support forum responses will be delayed from Dec. 25 through Jan. 2. Thank you for your patience.

TAS2563: Factory calibration (ftctool) failing with "Re is too low"

Part Number: TAS2563

Tool/software:

Hi,

I'm trying to get the factory calibration work but it always gives me a zero result:

InitFTCC: dev name: tas2563
smartamp_calib_start, enter
GET_RE:0.000000
tas2563 calibration values:
Dev[0] Re = 0.00 Ohm
Dev[0] rms_pow = 0x00000000
Dev[0] t_limit = 0x00000000
SPK[0] Calibration fail : Re is too low (limit: 6.53).
smartamp_calib_stop: Finish FTC
RE:
0.000000

Setup

Configuration

/lib/firmware/tas2563-a.ftcfg

; TAS2563QFN Factory Test and Calibration Configuration File
; -----------------------------------------------------------------------------
; PPC3 File: Match EQ hybrid.ppc3
; TAS2563QFN_Mono version: 3.0.0
; DDC Name: 12-12 MatchEQhybrid
; Comments: [Write Comments Here]

; FTC Settings
FTC_BYPASS                = 0                     ; Refer to documentation
TEST_DELTA_T              = 80                    ; Delta Temperature Limit during verification phase
CALIBRATION_TIME          = 2000                  ; Duration (in ms) of calibration phase
VERIFICATION_TIME         = 4000                  ; Duration (in ms) of the verification phase
CONFIGURATION             = 0                     ; Refer to documentation
CONFIGURATION_CALIBRATION = 1                     ; Refer to documentation
DEV_ADDR                  = 4f                    ; I2C slave write addr (in hex) for device A

; Pass/Fail Limits
RE_HI                     = 7.975
RE_LO                     = 6.525
F0_HI                     = 924
F0_LO                     = 616
Q_HI                      = 1.704
Q_LO                      = 1.136
T_HI                      = 40
T_LO                      = 0

; Obtained from Speaker Manufacturer
SPK_T_MAX                 = 100                   ; Speaker Maximum Temperature (C)
SPK_RE_TOL_PER            = 10                    ; Re +/- tolerance (%)

; Obtained from PurePath Console 3 (PPC3)
PPC3_RE0                  = 3.71                  ; Re0 (ohm)
PPC3_FWARP                = 135                   ; CMWF (Hz)
PPC3_BL                   = 2.075                 ; Bl (Tm)
PPC3_MMS                  = 1.5105                ; Mms (g)
PPC3_RTV                  = 18.3                  ; Rtv (K/W)
PPC3_RTM                  = 5                     ; Rtm  (K/W)
PPC3_RTVA                 = 12                    ; Rtva  (K/W)
PPC3_SYSGAIN              = 8.92                  ; System Gain (V/FS)
PPC3_DEV_NONLIN_PER       = 1.5                   ; Device Non-linearity (%)
PPC3_DELTA_T_LIMIT        = 80                    ; Delta Thermal Limit (C)
PPC3_PIG                  = 2                     ; Refer to documentation
PPC3_RE_ALPHA             = 0.0033                ; Temperature coefficient alpha (1/K)
FS_RATE                   = 48000                 ; TAS2563QFN Sample Rate

; Calibration parameters locations (Book,Page,Offset,CoeffLength)
umg_SsmKEGCye             =  0x00,0x0d,0x3c,0x01
iks_E0                    =  0x00,0x0f,0x34,0x01
yep_LsqM0                 =  0x00,0x0f,0x40,0x01
mcb_ZwiNgmaj              =  0x00,0x0f,0x44,0x01
oyz_U0_ujx                =  0x00,0x0f,0x48,0x01
kgd_OEldlc                =  0x00,0x10,0x14,0x01

Schematics

Regbin

4174.tas2563-1amp-reg.zip

amixer contents

numid=25,iface=MIXER,name='Configuration'
  ; type=INTEGER,access=rw------,values=1,min=0,max=2,step=0
  : values=1
numid=2,iface=MIXER,name='DMIC High Pass Filter1 Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=on
numid=3,iface=MIXER,name='DMIC High Pass Filter2 Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=on
numid=4,iface=MIXER,name='DMIC Low Pass Filter Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=on
numid=5,iface=MIXER,name='DMIC SW_LR Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=1,iface=MIXER,name='DMIC Volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=31,step=0
  : values=15
  | dBscale-min=0.00dB,step=3.00dB,mute=0
numid=9,iface=MIXER,name='LO0_MUX'
  ; type=ENUMERATED,access=rw------,values=1,items=17
  ; Item #0 'UNUSED'
  ; Item #1 'LI0'
  ; Item #2 'LI1'
  ; Item #3 'LI2'
  ; Item #4 'LI3'
  ; Item #5 'LI4'
  ; Item #6 'LI5'
  ; Item #7 'LI6'
  ; Item #8 'LI7'
  ; Item #9 'LI8'
  ; Item #10 'LI9'
  ; Item #11 'LI10'
  ; Item #12 'LI11'
  ; Item #13 'LI12'
  ; Item #14 'LI13'
  ; Item #15 'LI14'
  ; Item #16 'LI15'
  : values=9
numid=19,iface=MIXER,name='LO10_MUX'
  ; type=ENUMERATED,access=rw------,values=1,items=17
  ; Item #0 'UNUSED'
  ; Item #1 'LI0'
  ; Item #2 'LI1'
  ; Item #3 'LI2'
  ; Item #4 'LI3'
  ; Item #5 'LI4'
  ; Item #6 'LI5'
  ; Item #7 'LI6'
  ; Item #8 'LI7'
  ; Item #9 'LI8'
  ; Item #10 'LI9'
  ; Item #11 'LI10'
  ; Item #12 'LI11'
  ; Item #13 'LI12'
  ; Item #14 'LI13'
  ; Item #15 'LI14'
  ; Item #16 'LI15'
  : values=0
numid=20,iface=MIXER,name='LO11_MUX'
  ; type=ENUMERATED,access=rw------,values=1,items=17
  ; Item #0 'UNUSED'
  ; Item #1 'LI0'
  ; Item #2 'LI1'
  ; Item #3 'LI2'
  ; Item #4 'LI3'
  ; Item #5 'LI4'
  ; Item #6 'LI5'
  ; Item #7 'LI6'
  ; Item #8 'LI7'
  ; Item #9 'LI8'
  ; Item #10 'LI9'
  ; Item #11 'LI10'
  ; Item #12 'LI11'
  ; Item #13 'LI12'
  ; Item #14 'LI13'
  ; Item #15 'LI14'
  ; Item #16 'LI15'
  : values=0
numid=10,iface=MIXER,name='LO1_MUX'
  ; type=ENUMERATED,access=rw------,values=1,items=17
  ; Item #0 'UNUSED'
  ; Item #1 'LI0'
  ; Item #2 'LI1'
  ; Item #3 'LI2'
  ; Item #4 'LI3'
  ; Item #5 'LI4'
  ; Item #6 'LI5'
  ; Item #7 'LI6'
  ; Item #8 'LI7'
  ; Item #9 'LI8'
  ; Item #10 'LI9'
  ; Item #11 'LI10'
  ; Item #12 'LI11'
  ; Item #13 'LI12'
  ; Item #14 'LI13'
  ; Item #15 'LI14'
  ; Item #16 'LI15'
  : values=10
numid=11,iface=MIXER,name='LO2_MUX'
  ; type=ENUMERATED,access=rw------,values=1,items=17
  ; Item #0 'UNUSED'
  ; Item #1 'LI0'
  ; Item #2 'LI1'
  ; Item #3 'LI2'
  ; Item #4 'LI3'
  ; Item #5 'LI4'
  ; Item #6 'LI5'
  ; Item #7 'LI6'
  ; Item #8 'LI7'
  ; Item #9 'LI8'
  ; Item #10 'LI9'
  ; Item #11 'LI10'
  ; Item #12 'LI11'
  ; Item #13 'LI12'
  ; Item #14 'LI13'
  ; Item #15 'LI14'
  ; Item #16 'LI15'
  : values=0
numid=12,iface=MIXER,name='LO3_MUX'
  ; type=ENUMERATED,access=rw------,values=1,items=17
  ; Item #0 'UNUSED'
  ; Item #1 'LI0'
  ; Item #2 'LI1'
  ; Item #3 'LI2'
  ; Item #4 'LI3'
  ; Item #5 'LI4'
  ; Item #6 'LI5'
  ; Item #7 'LI6'
  ; Item #8 'LI7'
  ; Item #9 'LI8'
  ; Item #10 'LI9'
  ; Item #11 'LI10'
  ; Item #12 'LI11'
  ; Item #13 'LI12'
  ; Item #14 'LI13'
  ; Item #15 'LI14'
  ; Item #16 'LI15'
  : values=0
numid=13,iface=MIXER,name='LO4_MUX'
  ; type=ENUMERATED,access=rw------,values=1,items=17
  ; Item #0 'UNUSED'
  ; Item #1 'LI0'
  ; Item #2 'LI1'
  ; Item #3 'LI2'
  ; Item #4 'LI3'
  ; Item #5 'LI4'
  ; Item #6 'LI5'
  ; Item #7 'LI6'
  ; Item #8 'LI7'
  ; Item #9 'LI8'
  ; Item #10 'LI9'
  ; Item #11 'LI10'
  ; Item #12 'LI11'
  ; Item #13 'LI12'
  ; Item #14 'LI13'
  ; Item #15 'LI14'
  ; Item #16 'LI15'
  : values=0
numid=14,iface=MIXER,name='LO5_MUX'
  ; type=ENUMERATED,access=rw------,values=1,items=17
  ; Item #0 'UNUSED'
  ; Item #1 'LI0'
  ; Item #2 'LI1'
  ; Item #3 'LI2'
  ; Item #4 'LI3'
  ; Item #5 'LI4'
  ; Item #6 'LI5'
  ; Item #7 'LI6'
  ; Item #8 'LI7'
  ; Item #9 'LI8'
  ; Item #10 'LI9'
  ; Item #11 'LI10'
  ; Item #12 'LI11'
  ; Item #13 'LI12'
  ; Item #14 'LI13'
  ; Item #15 'LI14'
  ; Item #16 'LI15'
  : values=1
numid=15,iface=MIXER,name='LO6_MUX'
  ; type=ENUMERATED,access=rw------,values=1,items=17
  ; Item #0 'UNUSED'
  ; Item #1 'LI0'
  ; Item #2 'LI1'
  ; Item #3 'LI2'
  ; Item #4 'LI3'
  ; Item #5 'LI4'
  ; Item #6 'LI5'
  ; Item #7 'LI6'
  ; Item #8 'LI7'
  ; Item #9 'LI8'
  ; Item #10 'LI9'
  ; Item #11 'LI10'
  ; Item #12 'LI11'
  ; Item #13 'LI12'
  ; Item #14 'LI13'
  ; Item #15 'LI14'
  ; Item #16 'LI15'
  : values=0
numid=16,iface=MIXER,name='LO7_MUX'
  ; type=ENUMERATED,access=rw------,values=1,items=17
  ; Item #0 'UNUSED'
  ; Item #1 'LI0'
  ; Item #2 'LI1'
  ; Item #3 'LI2'
  ; Item #4 'LI3'
  ; Item #5 'LI4'
  ; Item #6 'LI5'
  ; Item #7 'LI6'
  ; Item #8 'LI7'
  ; Item #9 'LI8'
  ; Item #10 'LI9'
  ; Item #11 'LI10'
  ; Item #12 'LI11'
  ; Item #13 'LI12'
  ; Item #14 'LI13'
  ; Item #15 'LI14'
  ; Item #16 'LI15'
  : values=0
numid=17,iface=MIXER,name='LO8_MUX'
  ; type=ENUMERATED,access=rw------,values=1,items=17
  ; Item #0 'UNUSED'
  ; Item #1 'LI0'
  ; Item #2 'LI1'
  ; Item #3 'LI2'
  ; Item #4 'LI3'
  ; Item #5 'LI4'
  ; Item #6 'LI5'
  ; Item #7 'LI6'
  ; Item #8 'LI7'
  ; Item #9 'LI8'
  ; Item #10 'LI9'
  ; Item #11 'LI10'
  ; Item #12 'LI11'
  ; Item #13 'LI12'
  ; Item #14 'LI13'
  ; Item #15 'LI14'
  ; Item #16 'LI15'
  : values=0
numid=18,iface=MIXER,name='LO9_MUX'
  ; type=ENUMERATED,access=rw------,values=1,items=17
  ; Item #0 'UNUSED'
  ; Item #1 'LI0'
  ; Item #2 'LI1'
  ; Item #3 'LI2'
  ; Item #4 'LI3'
  ; Item #5 'LI4'
  ; Item #6 'LI5'
  ; Item #7 'LI6'
  ; Item #8 'LI7'
  ; Item #9 'LI8'
  ; Item #10 'LI9'
  ; Item #11 'LI10'
  ; Item #12 'LI11'
  ; Item #13 'LI12'
  ; Item #14 'LI13'
  ; Item #15 'LI14'
  ; Item #16 'LI15'
  : values=0
numid=6,iface=MIXER,name='Mixer0 LR_MIX Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=7,iface=MIXER,name='Mixer0 MIX_MODE Option'
  ; type=ENUMERATED,access=rw------,values=1,items=4
  ; Item #0 'Linear weighted plus'
  ; Item #1 'Average'
  ; Item #2 'Clamping'
  ; Item #3 'Nonlinear Distort'
  : values=1
numid=24,iface=MIXER,name='Program'
  ; type=INTEGER,access=rw------,values=1,min=0,max=2,step=0
  : values=0
numid=21,iface=MIXER,name='TASDEVICE Profile id'
  ; type=INTEGER,access=rw------,values=1,min=0,max=7,step=0
  : values=1
numid=8,iface=MIXER,name='baic1_fmt'
  ; type=ENUMERATED,access=rw------,values=1,items=11
  ; Item #0 'PCMA'
  ; Item #1 'PCMB'
  ; Item #2 'DSPA'
  ; Item #3 'DSPB'
  ; Item #4 'TDM1A'
  ; Item #5 'TDM1B'
  ; Item #6 'TDM2A'
  ; Item #7 'TDM2B'
  ; Item #8 'I2S'
  ; Item #9 'LEFT'
  ; Item #10 'RIGHT'
  : values=8
numid=22,iface=MIXER,name='tas2563-amp-gain-volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=28,step=0
  : values=9
  | dBscale-min=8.00dB,step=0.50dB,mute=0
numid=23,iface=MIXER,name='tas2563-digital-volume'
  ; type=INTEGER,access=rw---R--,values=1,min=0,max=65535,step=0
  : values=16384
  | dBscale-min=-96.33dB,step=0.01dB,mute=1

Calibration script

amixer cset numid=24,iface=MIXER,name="Program" 0
amixer cset numid=25,iface=MIXER,name="Configuration" 1
amixer cset numid=21,iface=MIXER,name="TASDEVICE Profile id" 1
aplay --device="hw:0,0" /data/silence.wav &
sleep 15
tasdevice_ftc 1
killall aplay

# file /data/silence.wav
/data/silence.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 48000 Hz

DSP config

/sys/devices/platform/apb/10052000.i2c/i2c-2/2-004f # cat dspfwinfo_list
tas2563-1amp-dsp.bin
Kernel format
Generated by PPC3V0xC000

ndev: 1
mnPrograms: 2
ProgramName: Tuning Mode
ProgramName: ROM Mode
mnConfigurations: 3
nConfig:0
ConfigName:configuration_Tuning Mode_48 KHz_s1_0 Program:0x00

nConfig:1
ConfigName:calibration_Tuning Mode_48 KHz_s1_0 Program:0x00

nConfig:2
ConfigName:configuration_ROM Mode_48 KHz_s0_1 Program:0x01

Any suggestions?

Thanks and best regards,

  Stephan

  • Hi Stephan,

    Please help check the question below.

    1. Could you playback normally with this setup?
    2. What's your data format of I2S?
    3. Could provide the tas2563-1amp-dsp.bin you used?
  • Hi Ken,

    1. playback works but the sound is not good, it seems the DSP parameters are not taken

    2. what do you mean? 48kHz, 16bit?

    3. DSP-bin here:  tas2563-1amp-dsp.zip

    Boot logs from driver:

    [    0.627895] tasdevice-codec 2-004f: tasdevice_i2c_parse_dt, chip_id:0
    [    0.634414] tasdevice-codec 2-004f: irq-gpio = 15
    [    0.639149] tasdevice-codec 2-004f: irq = 74
    [    0.643744] tasdevice-codec 2-004f: i2c register success
    [    0.725852] tasdevice-codec 2-004f: tasdevice_codec_probe, enter
    [    0.731931] tasdevice-codec 2-004f: tasdevice_codec_probe, codec probe success
    [    0.739203] tasdevice-codec 2-004f: tasdev: regbin_ready start
    [    0.746320] tasdevice-codec 2-004f: nconfig = 8
    [    0.751145] tasdevice-codec 2-004f: img_sz = 1560 total_config_sz = 1268 offset = 292
    [    0.764548] tasdevice-codec 2-004f: tas2781_load_calibration: enter
    [    0.770924] tasdevice-codec 2-004f: Direct firmware load for tas2563-0x4f-cal.bin failed with error -2
    [    0.780339] tasdevice-codec 2-004f: tas2781_load_calibration: Request firmware failed
    [    0.788263] tasdevice-codec 2-004f: tasdevice_regbin_ready: load tas2563-0x4f-cal.bin error, no-side effect for playback
    [    0.807421] tasdevice-codec 2-004f: tasdevice_select_tuningprm_cfg: regbin_profile_conf_id = 0
    [    0.816348] tasdevice-codec 2-004f: tasdevice_load_data: TAS2781 load data: , Blocks = 1
    [    1.141244] tasdevice-codec 2-004f: tasdevice_select_tuningprm_cfg,dsp-conf:-1, active-dev:1, loaderr:0
    [    1.150726] tasdevice-codec 2-004f: tasdevice_load_data: TAS2781 load data: , Blocks = 2
    [    1.158917] tasdevice-codec 2-004f: tasdevice_select_tuningprm_cfg: DSP mode: load status is 00000000
    [    1.168291] tasdevice-codec 2-004f: Firmware init complete
    

    When playing:

    [  101.771704] tasdevice-codec 2-004f: tasdevice_hw_params: Playback
    [  101.778065] tasdevice-codec 2-004f: tasdevice_hw_params: BCLK rate = 1411200 Channel = 2Sample rate = 44100 slot width = 16
    [  101.790697] tasdevice-codec 2-004f: SND_SOC_DAPM_POST_PMU
    [  101.820070] tasdevice-codec 2-004f: powercontrol_routine: enter
    [  101.826779] tasdevice-codec 2-004f: powercontrol_routine: configuration_Tuning Mode_48 KHz_s1_0
    [  101.841995] tasdevice-codec 2-004f: tasdevice_select_tuningprm_cfg: regbin_profile_conf_id = 0
    [  101.852464] tasdevice-codec 2-004f: tasdevice_select_tuningprm_cfg,dsp-conf:0, active-dev:1, loaderr:0
    [  101.864221] tasdevice-codec 2-004f: tasdevice_select_tuningprm_cfg: No device is in active in conf 0
    [  101.875801] tasdevice-codec 2-004f: tasdevice_select_tuningprm_cfg: DSP mode: load status is 00000000
    [  101.888770] tasdevice-codec 2-004f: tasdevice_select_cfg_blk, enter
    [  101.896583] tasdevice-codec 2-004f: select_cfg_blk: profile_conf_id = 0
    [  101.905520] tasdevice-codec 2-004f: select_cfg_blk: conf 0, block type:PRE_POWER_UP	 device idx = 0x01
    [  101.923582] tasdevice-codec 2-004f: powercontrol_routine: leave
    [  110.875072] tasdevice-codec 2-004f: tasdevice_select_cfg_blk, enter
    [  110.881603] tasdevice-codec 2-004f: select_cfg_blk: profile_conf_id = 0
    [  110.888524] tasdevice-codec 2-004f: select_cfg_blk: conf 0, block type:PRE_SHUTDOWN	 device idx = 0x00
    [  110.898658] tasdevice-codec 2-004f: SND_SOC_DAPM_PRE_PMD
    

  • Update: I think the DSP parameters are taken, I can hear a difference when switching between "conf 03: 03-bypass-auto-rate-16bit-L+R" and "conf 00: 04-Music-16bit-auto-rate-i2s".

    But the calibration is still failing and it seems the speaker protection parameters are not respected.

  • Hi Stephan,

    Could you try to use this Profile Id 0 "conf 00: 04-Music-16bit-auto-rate-i2s" to do the calibration test and make sure the dsp bin load correctly as you provided?

    Btw, it's better to set "conf 00: 04-Music-16bit-auto-rate-i2s" as default setting when you power on the device.

    About the sound not good, could you provide the scope with BCLK and LRCLK?

  • Hi Ken,

    I'm getting the same result with that profile ID:

    # calibrate_impedance.sh 
    numid=24,iface=MIXER,name='Program'
      ; type=INTEGER,access=rw------,values=1,min=0,max=2,step=0
      : values=0
    numid=25,iface=MIXER,name='Configuration'
      ; type=INTEGER,access=rw------,values=1,min=0,max=2,step=0
      : values=0
    numid=21,iface=MIXER,name='TASDEVICE Profile id'
      ; type=INTEGER,access=rw------,values=1,min=0,max=7,step=0
      : values=1
    Playing WAVE '/data/silence.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Mono
    InitFTCC: dev name: tas2563
    smartamp_calib_start, enter
    GET_RE:0.000000 
    tas2563 calibration values:
    	Dev[0] Re		= 0.00 Ohm
    	Dev[0] rms_pow	= 0x00000000
    	Dev[0] t_limit	= 0x00000000
    SPK[0] Calibration fail : Re is too low (limit: 6.53).
    smartamp_calib_stop: Finish FTC
    RE:
    0.000000
    

    Driver logs during the calibration:

    [ 1441.634054] tasdevice-codec 2-004f: tasdevice_hw_params: Playback
    [ 1441.641333] tasdevice-codec 2-004f: tasdevice_hw_params: BCLK rate = 768000 Channel = 1Sample rate = 48000 slot width = 16
    [ 1441.653829] tasdevice-codec 2-004f: SND_SOC_DAPM_POST_PMU
    [ 1441.682357] tasdevice-codec 2-004f: powercontrol_routine: enter
    [ 1441.688607] tasdevice-codec 2-004f: powercontrol_routine: configuration_Tuning Mode_48 KHz_s1_0
    [ 1441.699386] tasdevice-codec 2-004f: tasdevice_select_tuningprm_cfg: regbin_profile_conf_id = 1
    [ 1441.709932] tasdevice-codec 2-004f: tasdevice_load_data: TAS2781 load data: , Blocks = 1
    [ 1442.005452] tasdevice-codec 2-004f: tasdevice_select_tuningprm_cfg,dsp-conf:-1, active-dev:1, loaderr:0
    [ 1442.015438] tasdevice-codec 2-004f: tasdevice_load_data: TAS2781 load data: , Blocks = 2
    [ 1442.025269] tasdevice-codec 2-004f: tasdevice_select_tuningprm_cfg: DSP mode: load status is 00000000
    [ 1442.034983] tasdevice-codec 2-004f: tasdevice_select_cfg_blk, enter
    [ 1442.041791] tasdevice-codec 2-004f: select_cfg_blk: profile_conf_id = 1
    [ 1442.048717] tasdevice-codec 2-004f: select_cfg_blk: conf 1, block type:PRE_POWER_UP	 device idx = 0x01
    [ 1442.062115] tasdevice-codec 2-004f: powercontrol_routine: leave
    [ 1456.627215] tasdevice-codec 2-004f: tasdevice_ioctl: cmd = 0x402be022
    [ 1456.635300] tasdevice-codec 2-004f: tasdevice_ioctl: cmd = 0xc00ce010
    [ 1456.642340] tasdevice-codec 2-004f: tasdevice_ioctl:577: pstream is 1
    [ 1456.649678] tasdevice-codec 2-004f: tasdevice_ioctl, TILOAD_IOC_MAGIC_POWERON=0xc00ce010:mProg = 0, config = 1, regscene = 1
    [ 1456.661769] tasdevice-codec 2-004f: tasdevice_ioctl: cmd = 0x402be022
    [ 1456.691556] tasdevice-codec 2-004f: powercontrol_routine: enter
    [ 1456.697721] tasdevice-codec 2-004f: powercontrol_routine: calibration_Tuning Mode_48 KHz_s1_0
    [ 1456.717198] tasdevice-codec 2-004f: tasdevice_select_tuningprm_cfg: regbin_profile_conf_id = 1
    [ 1456.726463] tasdevice-codec 2-004f: tasdevice_select_tuningprm_cfg,dsp-conf:0, active-dev:1, loaderr:0
    [ 1456.736154] tasdevice-codec 2-004f: tasdevice_load_data: TAS2781 load data: , Blocks = 2
    [ 1456.755578] tasdevice-codec 2-004f: tasdevice_select_tuningprm_cfg: DSP mode: load status is 00000000
    [ 1456.765183] tasdevice-codec 2-004f: tasdevice_select_cfg_blk, enter
    [ 1456.771736] tasdevice-codec 2-004f: select_cfg_blk: profile_conf_id = 1
    [ 1456.789287] tasdevice-codec 2-004f: select_cfg_blk: conf 1, block type:PRE_POWER_UP	 device idx = 0x01
    [ 1456.802046] tasdevice-codec 2-004f: powercontrol_routine: leave
    [ 1459.669315] tasdevice-codec 2-004f: tasdevice_ioctl: cmd = 0x8004e005
    [ 1459.676063] tasdevice-codec 2-004f: tasdevice_ioctl, cmd=TILOAD_IOCTL_SET_CHL
    [ 1459.683543] tasdevice-codec 2-004f: TILOAD_IOCTL_SET_CHL(0) = 0x4f
    [ 1459.690774] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.696940] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.705186] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.713192] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.719494] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.727029] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.734983] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.741581] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.747672] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.754264] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.761313] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.769357] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.777180] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.784328] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.791192] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.798811] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.804994] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.811040] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.817967] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.824309] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.830417] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.837680] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.844169] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.850211] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.857268] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.863760] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.869868] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.876709] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.883046] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.889085] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.896120] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.902594] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.908686] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.915170] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1459.921867] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.927917] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.934544] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.940606] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1459.947396] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.953714] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.959792] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.966342] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1459.973288] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.979330] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.985997] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1459.992326] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1459.998835] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.005639] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.012086] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.018125] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1460.024847] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.030956] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.038191] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.044667] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1460.051139] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.057520] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.064033] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.070123] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1460.076937] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.083248] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.089331] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.095890] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1460.102823] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.109155] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.115721] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.122041] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1460.128460] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.135017] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.141119] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1460.147638] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1464.154229] tasdevice-codec 2-004f: tasdevice_ioctl: cmd = 0x8004e005
    [ 1464.160994] tasdevice-codec 2-004f: tasdevice_ioctl, cmd=TILOAD_IOCTL_SET_CHL
    [ 1464.169016] tasdevice-codec 2-004f: TILOAD_IOCTL_SET_CHL(0) = 0x4f
    [ 1464.175786] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.182339] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.188519] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.195830] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.202335] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.208452] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.215681] tasdevice-codec 2-004f: tasdevice_ioctl: cmd = 0x8004e005
    [ 1464.222872] tasdevice-codec 2-004f: tasdevice_ioctl, cmd=TILOAD_IOCTL_SET_CHL
    [ 1464.230505] tasdevice-codec 2-004f: TILOAD_IOCTL_SET_CHL(0) = 0x4f
    [ 1464.237429] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.244062] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.250169] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.257521] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1464.264687] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.270779] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.277167] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.283662] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1464.290117] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.296641] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.302940] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.309003] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1464.315893] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.322401] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.328497] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.334953] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1464.341569] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.347626] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.353732] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.360394] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1464.366939] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.373077] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.379132] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.385263] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1464.392537] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.398589] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.404687] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.410997] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1464.417423] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.423861] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.429913] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.435989] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1464.442744] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.448795] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.454901] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.461172] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1464.467516] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.473583] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.479749] tasdevice-codec 2-004f: tasdevice_write: count = 2
    [ 1464.485838] tasdevice-codec 2-004f: tasdevice_write: count = 5
    [ 1464.493816] tasdevice-codec 2-004f: tasdevice_ioctl: cmd = 0xc00ce017
    [ 1464.500544] tasdevice-codec 2-004f: tasdevice_select_cfg_blk, enter
    [ 1464.507163] tasdevice-codec 2-004f: select_cfg_blk: profile_conf_id = 1
    [ 1464.514171] tasdevice-codec 2-004f: select_cfg_blk: conf 1, block type:PRE_SHUTDOWN	 device idx = 0x00
    [ 1464.526679] tasdevice-codec 2-004f: tasdevice_ioctl: cmd=TILOAD_IOC_MAGIC_POWER_OFF=0xc00ce017: regscene = 1
    [ 1464.994291] tasdevice-codec 2-004f: tasdevice_select_cfg_blk, enter
    [ 1465.000838] tasdevice-codec 2-004f: select_cfg_blk: profile_conf_id = 1
    [ 1465.008000] tasdevice-codec 2-004f: select_cfg_blk: conf 1, block type:PRE_SHUTDOWN	 device idx = 0x00
    [ 1465.019532] tasdevice-codec 2-004f: SND_SOC_DAPM_PRE_PMD
    

    Unfortunately I can't hook up a scope at the moment. What are you looking for in the scope shot?

    Could this problem be caused by the boost config that I'm choosing?

    I had added R0x33 -> 0xC4 in all configs:

    Chn0B0x00P0x00R0x33:0xc4
    Chn0B0x00P0x00R0x34:0x4b
    Chn0B0x00P0x00R0x35:0xa4

    Thanks,

    Stephan

  • Hi Stephan,

    Our team has received your question. Responses may be a little slow due to the holiday season.

    Thanks for your patience,

    Ramsey