This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TAS2563: Integration to IMX8

Part Number: TAS2563

I am having issues getting audio output to the connected speakers. I am working on Linux Kernel version 5.4 and have built the driver found here: https://git.ti.com/cgit/tas256xsw-android/tas2563-android-driver/. I am using the PDM branch. I had patch the driver with two minor syntax fixes to get it to compile. I can talk to the TAS2563 over the I2C bus and read registers. However, once I use 'aplay' to play sound, I am not getting any output to the speakers. I do see traffic on the SDIN1 line and the FSYNC clock is on. I used the dts.readme file to set up my device tree. Here are the relevant pieces: 


sound-tas2563 {
compatible = "simple-audio-card";
simple-audio-card,name = "tas2563";
simple-audio-card,format = "i2s";
simple-audio-card,bitclock-inversion;
simple-audio-card,frame-master = <&tas2563cpu>;
simple-audio-card,bitclock-master = <&tas2563cpu>;
status = "okay";
tas2563cpu: simple-audio-card,cpu {
sound-dai = <&sai2>;
dai-tdm-slot-num = <2>;
dai-tdm-slot-width = <16>;
};

simple-audio-card,codec {
sound-dai = <&audio_amp>;
};
};

___________________

&sai2 {
#sound-dai-cells = <0>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sai2>;
assigned-clock-rates = <24576000>;
assigned-clocks = <&clk IMX8MP_CLK_SAI2>;
assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL1_OUT>;
clocks = <&audiomix_clk IMX8MP_CLK_AUDIOMIX_SAI2_IPG>,
<&clk IMX8MP_CLK_DUMMY>,
<&audiomix_clk IMX8MP_CLK_AUDIOMIX_SAI2_MCLK1>,
<&clk IMX8MP_CLK_DUMMY>,
<&clk IMX8MP_CLK_DUMMY>;
clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3";
fsl,sai-mclk-direction-output;
status = "okay";
};

__________________

audio_amp: tas2563@4c {
#sound-dai-cells = <0>;
reg = <0x4c>;
compatible = "ti,tas2563";
ti,reset-gpio = <&gpio_expander 0 0>;
ti,irq-gpio = <&gpio4 2 0>;
ti,asi-format = <1>; /* 0, i2S; 1, DSP; */
ti,left-slot = <0>; /* <left slot number> */
ti,right-slot = <1>; /* <right slot number> */
ti,imon-slot-no = <0>; /* <current sense slot number> */
ti,vmon-slot-no = <2>; /* <current voltage slot number> */
ti,i2s-bits = <16>; /* support 16, 24, 32 */
ti,bypass-tmax = <0>; /* 0, not bypass; 1, bypass */
status = "ok";
};

Any help on this would be greatly appreciated! I will also attach relevant logs.

tas2563_log.txt
[    3.985543] tas2563 0-004c: Driver ID: 1.0.0
[    3.990307] tas2563 0-004c: tas2563_i2c_probe enter
[    3.996972] tas2563 0-004c: ti,asi-format=1
[    3.996999] tas2563 0-004c: ti,reset-gpio=496
[    3.997009] tas2563 0-004c: ti,irq-gpio=98
[    3.997013] tas2563 0-004c: ti,left-slot=0
[    3.997016] tas2563 0-004c: ti,right-slot=1
[    3.997019] tas2563 0-004c: ti,imon-slot-no=0
[    3.997023] tas2563 0-004c: ti,vmon-slot-no=2
[    4.032451] tas2563 0-004c: tas2563_change_book_page, 66
[    4.036833] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x01, VAL: 0x01
[    4.048546] tas2563 0-004c: tas2563_change_book_page, 66
[    4.049761] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x7d,0x10
[    4.049769] tas2563 0-004c: PGID: 16
[    4.053419] tas2563 0-004c: irq = 167
[    4.053457] tas2563 0-004c: tas2563_register_codec, enter
[    4.059429] tas2563 0-004c: tas2563_register_misc, leave
[    4.064827] tas2563 0-004c: tiload_driver_init
[    4.069465] tas2563 0-004c: allocated Major Number: 234
[    4.074990] tas2563 0-004c: Registered TiLoad driver, Major number: 234
[    4.082702] tas2563 0-004c: tas2563_codec_probe
[    4.087357] debugfs: Directory '30c20000.sai' with parent 'tas2563' already present!
[    4.095143] tas2563 0-004c: tas2563_set_dai_fmt, format=0x4301
[    4.101000] tas2563 0-004c: tas2563_change_book_page, 66
[    4.101346] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x02,0x0e
[    4.101350] tas2563 0-004c: INV format: IBNF
[    4.105688] tas2563 0-004c: tas2563_change_book_page, 66
[    4.106241] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x07, mask: 0x01, val=0x01
[    4.106245] tas2563 0-004c: tas2563_change_book_page, 66
[    4.106539] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x07, mask: 0x3e, val=0x02
[    4.106634] asoc-simple-card sound-tas2563: tas2563.0-004c <-> 30c20000.sai mapping ok
[    4.114590] asoc-simple-card sound-tas2563: ASoC: no DMI vendor name!
[    4.132606] tas2563 0-004c: tas2563_fw_ready:
[    4.137208] tas2563 0-004c: firmware size: 17805
[    4.142155] tas2563 0-004c: FW timestamp: 1602840442
[    4.147357] tas2563 0-004c: FW Size       = 17805
[    4.152215] tas2563 0-004c: Checksum      = 0x3770EDC6
[    4.157590] tas2563 0-004c: PPC Version   = 0x4300
[    4.162444] tas2563 0-004c: FW  Version    = 0x1010000
[    4.167601] tas2563 0-004c: Driver Version= 0x0202
[    4.172445] tas2563 0-004c: Timestamp     = 1602840442
[    4.177607] tas2563 0-004c: DDC Name      = RingBin-3
[    4.182677] tas2563 0-004c: Description   = TI SmartAmp
[    4.188124] tas2563 0-004c: header size: 112, line: 1155
[    4.193503] tas2563 0-004c: FW i2sMode: 0
[    4.197544] tas2563 0-004c: fw_parse_data, 961
[    4.202036] tas2563 0-004c: fw_parse_block_data, 920
[    4.207010] tas2563 0-004c: fw_parse_block_data, 924
[    4.212001] tas2563 0-004c: fw_parse_block_data, 949
[    4.216998] tas2563 0-004c: program data number: 14840
[    4.222146] tas2563 0-004c: program size: 14931, line: 1172
[    4.227731] tas2563 0-004c: configuration, mnProgram: 0
[    4.232985] tas2563 0-004c: configuration samplerate: 48000
[    4.238566] tas2563 0-004c: Fs rate: 0
[    4.242323] tas2563 0-004c: fw_parse_data, 961
[    4.246798] tas2563 0-004c: fw_parse_block_data, 920
[    4.251770] tas2563 0-004c: fw_parse_block_data, 924
[    4.256747] tas2563 0-004c: fw_parse_block_data, 949
[    4.261743] tas2563 0-004c: fw_parse_block_data, 920
[    4.266715] tas2563 0-004c: fw_parse_block_data, 924
[    4.271688] tas2563 0-004c: fw_parse_block_data, 949
[    4.276689] tas2563 0-004c: configuration, mnProgram: 0
[    4.283016] tas2563 0-004c: configuration samplerate: 48000
[    4.288795] tas2563 0-004c: Fs rate: 0
[    4.292866] tas2563 0-004c: fw_parse_data, 961
[    4.297602] tas2563 0-004c: fw_parse_block_data, 920
[    4.302606] tas2563 0-004c: fw_parse_block_data, 924
[    4.307599] tas2563 0-004c: fw_parse_block_data, 949
[    4.312676] tas2563 0-004c: fw_parse_block_data, 920
[    4.317691] tas2563 0-004c: fw_parse_block_data, 924
[    4.322675] tas2563 0-004c: fw_parse_block_data, 949
[    4.328076] tas2563 0-004c: config size: 2762, line: 1180
[    4.333931] tas2563 0-004c: calib size: 0, line: 1189
[    4.339078] tas2563 0-004c: find default configuration 0
[    4.372369] tas2563 0-004c: tas2563_change_book_page, 66
[    4.373146] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x01, VAL: 0x01
[    4.384354] tas2563 0-004c: load program 0 (Tuning Mode)
[    4.389686] tas2563 0-004c: TAS2563 load data: TuningMode Program, Blocks = 1, Block Type = 1
[    4.398256] tas2563 0-004c: TAS2563 load block: Type = 1, commands = 3677
[    4.405056] tas2563 0-004c: tas2563_change_book_page, 66
[    4.406171] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x7e, VAL: 0x00
[    4.416355] tas2563 0-004c: tas2563_change_book_page, 66
[    4.418540] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x01:0x02, VAL: 0x20
[    4.418549] tas2563 0-004c: tas2563_change_book_page, 66
[    4.422721] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x01:0x08, len: 0x60
[    4.422732] tas2563 0-004c: tas2563_change_book_page, 66
[    4.430080] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x02:0x10, len: 0x70
[    4.430095] tas2563 0-004c: tas2563_change_book_page, 66
[    4.434991] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x03:0x08, len: 0x78
[    4.435002] tas2563 0-004c: tas2563_change_book_page, 66
[    4.441504] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x04:0x08, len: 0x78
[    4.441512] tas2563 0-004c: tas2563_change_book_page, 66
[    4.446025] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x05:0x08, len: 0x78
[    4.452012] tas2563 0-004c: tas2563_change_book_page, 66
[    4.456192] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x06:0x08, len: 0x78
[    4.456201] tas2563 0-004c: tas2563_change_book_page, 66
[    4.460418] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x07:0x08, len: 0x78
[    4.460427] tas2563 0-004c: tas2563_change_book_page, 66
[    4.464670] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x08:0x08, len: 0x78
[    4.470165] tas2563 0-004c: tas2563_change_book_page, 66
[    4.474687] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x09:0x08, len: 0x78
[    4.486805] tas2563 0-004c: tas2563_change_book_page, 66
[    4.495740] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x0a:0x08, len: 0x78
[    4.495749] tas2563 0-004c: tas2563_change_book_page, 66
[    4.500009] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x0b:0x08, len: 0x78
[    4.500017] tas2563 0-004c: tas2563_change_book_page, 66
[    4.504190] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x0c:0x08, len: 0x78
[    4.504198] tas2563 0-004c: tas2563_change_book_page, 66
[    4.508626] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x0d:0x08, len: 0x78
[    4.508634] tas2563 0-004c: tas2563_change_book_page, 66
[    4.512708] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x0e:0x08, len: 0x78
[    4.512715] tas2563 0-004c: tas2563_change_book_page, 66
[    4.516787] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x0f:0x08, len: 0x78
[    4.516794] tas2563 0-004c: tas2563_change_book_page, 66
[    4.520857] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x10:0x08, len: 0x78
[    4.520864] tas2563 0-004c: tas2563_change_book_page, 66
[    4.524902] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x11:0x08, len: 0x78
[    4.524907] tas2563 0-004c: tas2563_change_book_page, 66
[    4.528979] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x12:0x08, len: 0x78
[    4.528985] tas2563 0-004c: tas2563_change_book_page, 66
[    4.533050] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x13:0x08, len: 0x78
[    4.533056] tas2563 0-004c: tas2563_change_book_page, 66
[    4.537171] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x14:0x08, len: 0x78
[    4.537178] tas2563 0-004c: tas2563_change_book_page, 66
[    4.541287] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x15:0x08, len: 0x78
[    4.541293] tas2563 0-004c: tas2563_change_book_page, 66
[    4.545340] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x16:0x08, len: 0x78
[    4.545346] tas2563 0-004c: tas2563_change_book_page, 66
[    4.549448] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x17:0x08, len: 0x78
[    4.549459] tas2563 0-004c: tas2563_change_book_page, 66
[    4.553641] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x18:0x08, len: 0x78
[    4.553647] tas2563 0-004c: tas2563_change_book_page, 66
[    4.557809] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x19:0x08, len: 0x78
[    4.557817] tas2563 0-004c: tas2563_change_book_page, 66
[    4.561988] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x1a:0x08, len: 0x78
[    4.561995] tas2563 0-004c: tas2563_change_book_page, 66
[    4.566161] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x1b:0x08, len: 0x78
[    4.566170] tas2563 0-004c: tas2563_change_book_page, 66
[    4.570314] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x1c:0x08, len: 0x78
[    4.570322] tas2563 0-004c: tas2563_change_book_page, 66
[    4.574403] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x1d:0x08, len: 0x78
[    4.574407] tas2563 0-004c: tas2563_change_book_page, 66
[    4.578582] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x1e:0x08, len: 0x78
[    4.578592] tas2563 0-004c: tas2563_change_book_page, 66
[    4.582669] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x1f:0x08, len: 0x78
[    4.582678] tas2563 0-004c: tas2563_change_book_page, 66
[    4.586778] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x20:0x08, len: 0x78
[    4.586787] tas2563 0-004c: tas2563_change_book_page, 66
[    4.590898] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x21:0x08, len: 0x78
[    4.590906] tas2563 0-004c: tas2563_change_book_page, 66
[    4.595003] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x22:0x08, len: 0x78
[    4.595012] tas2563 0-004c: tas2563_change_book_page, 66
[    4.599103] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x23:0x08, len: 0x78
[    4.599112] tas2563 0-004c: tas2563_change_book_page, 66
[    4.603204] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x24:0x08, len: 0x78
[    4.603212] tas2563 0-004c: tas2563_change_book_page, 66
[    4.607331] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x25:0x08, len: 0x78
[    4.607339] tas2563 0-004c: tas2563_change_book_page, 66
[    4.611505] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x26:0x08, len: 0x78
[    4.611513] tas2563 0-004c: tas2563_change_book_page, 66
[    4.615805] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x27:0x08, len: 0x78
[    4.615814] tas2563 0-004c: tas2563_change_book_page, 66
[    4.621233] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x28:0x08, len: 0x78
[    4.621242] tas2563 0-004c: tas2563_change_book_page, 66
[    4.625358] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x29:0x08, len: 0x78
[    4.625366] tas2563 0-004c: tas2563_change_book_page, 66
[    4.629466] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x2a:0x08, len: 0x78
[    4.629470] tas2563 0-004c: tas2563_change_book_page, 66
[    4.633523] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x2b:0x08, len: 0x78
[    4.633527] tas2563 0-004c: tas2563_change_book_page, 66
[    4.635326] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x8c:0x2c:0x08, len: 0x2c
[    4.635330] tas2563 0-004c: tas2563_change_book_page, 66
[    4.637524] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x01:0x1c, len: 0x20
[    4.647382] tas2563 0-004c: tas2563_change_book_page, 66
[    4.650119] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x01:0x3c, len: 0x44
[    4.657202] tas2563 0-004c: tas2563_change_book_page, 66
[    4.658839] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x03:0x68, len: 0x18
[    4.658847] tas2563 0-004c: tas2563_change_book_page, 66
[    4.662909] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x04:0x08, len: 0x78
[    4.662912] tas2563 0-004c: tas2563_change_book_page, 66
[    4.663990] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x05:0x08, len: 0x14
[    4.663994] tas2563 0-004c: tas2563_change_book_page, 66
[    4.665174] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x05:0x50, len: 0x14
[    4.665178] tas2563 0-004c: tas2563_change_book_page, 66
[    4.666151] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x06:0x14, len: 0x10
[    4.666158] tas2563 0-004c: tas2563_change_book_page, 66
[    4.667024] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x06:0x54, len: 0x10
[    4.667034] tas2563 0-004c: tas2563_change_book_page, 66
[    4.670892] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x08:0x40, len: 0x40
[    4.670901] tas2563 0-004c: tas2563_change_book_page, 66
[    4.675927] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x09:0x08, len: 0x78
[    4.675936] tas2563 0-004c: tas2563_change_book_page, 66
[    4.680224] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x0a:0x08, len: 0x78
[    4.680232] tas2563 0-004c: tas2563_change_book_page, 66
[    4.684404] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x0b:0x08, len: 0x78
[    4.688901] tas2563 0-004c: tas2563_change_book_page, 66
[    4.694127] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x0c:0x08, len: 0x78
[    4.694136] tas2563 0-004c: tas2563_change_book_page, 66
[    4.699330] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x0d:0x08, len: 0x78
[    4.699339] tas2563 0-004c: tas2563_change_book_page, 66
[    4.703650] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x0e:0x08, len: 0x78
[    4.703659] tas2563 0-004c: tas2563_change_book_page, 66
[    4.708715] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x0f:0x08, len: 0x78
[    4.708724] tas2563 0-004c: tas2563_change_book_page, 66
[    4.714352] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x10:0x08, len: 0x78
[    4.714360] tas2563 0-004c: tas2563_change_book_page, 66
[    4.719873] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x11:0x08, len: 0x78
[    4.719882] tas2563 0-004c: tas2563_change_book_page, 66
[    4.725706] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x12:0x08, len: 0x78
[    4.725715] tas2563 0-004c: tas2563_change_book_page, 66
[    4.729967] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x13:0x08, len: 0x78
[    4.729977] tas2563 0-004c: tas2563_change_book_page, 66
[    4.734145] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x14:0x08, len: 0x78
[    4.734153] tas2563 0-004c: tas2563_change_book_page, 66
[    4.737127] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x15:0x08, len: 0x50
[    4.737135] tas2563 0-004c: tas2563_change_book_page, 66
[    4.740564] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x16:0x20, len: 0x60
[    4.740572] tas2563 0-004c: tas2563_change_book_page, 66
[    4.744715] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x17:0x08, len: 0x78
[    4.744723] tas2563 0-004c: tas2563_change_book_page, 66
[    4.748909] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x18:0x08, len: 0x78
[    4.748917] tas2563 0-004c: tas2563_change_book_page, 66
[    4.753044] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x19:0x08, len: 0x78
[    4.753053] tas2563 0-004c: tas2563_change_book_page, 66
[    4.757201] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x1a:0x08, len: 0x78
[    4.757208] tas2563 0-004c: tas2563_change_book_page, 66
[    4.761544] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x1b:0x08, len: 0x78
[    4.761552] tas2563 0-004c: tas2563_change_book_page, 66
[    4.765769] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x1c:0x08, len: 0x78
[    4.765779] tas2563 0-004c: tas2563_change_book_page, 66
[    4.769999] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x1d:0x08, len: 0x78
[    4.770007] tas2563 0-004c: tas2563_change_book_page, 66
[    4.774065] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x1e:0x08, len: 0x78
[    4.774072] tas2563 0-004c: tas2563_change_book_page, 66
[    4.778254] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x1f:0x08, len: 0x78
[    4.778262] tas2563 0-004c: tas2563_change_book_page, 66
[    4.782446] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x20:0x08, len: 0x78
[    4.782455] tas2563 0-004c: tas2563_change_book_page, 66
[    4.786614] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x21:0x08, len: 0x78
[    4.786623] tas2563 0-004c: tas2563_change_book_page, 66
[    4.790809] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x22:0x08, len: 0x78
[    4.790819] tas2563 0-004c: tas2563_change_book_page, 66
[    4.795089] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x23:0x08, len: 0x78
[    4.795098] tas2563 0-004c: tas2563_change_book_page, 66
[    4.799367] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x24:0x08, len: 0x78
[    4.799375] tas2563 0-004c: tas2563_change_book_page, 66
[    4.803565] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x25:0x08, len: 0x78
[    4.803575] tas2563 0-004c: tas2563_change_book_page, 66
[    4.807797] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x26:0x08, len: 0x78
[    4.807806] tas2563 0-004c: tas2563_change_book_page, 66
[    4.811981] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x27:0x08, len: 0x78
[    4.811989] tas2563 0-004c: tas2563_change_book_page, 66
[    4.816147] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x28:0x08, len: 0x78
[    4.816155] tas2563 0-004c: tas2563_change_book_page, 66
[    4.820304] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x29:0x08, len: 0x78
[    4.820312] tas2563 0-004c: tas2563_change_book_page, 66
[    4.824446] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x2a:0x08, len: 0x78
[    4.824454] tas2563 0-004c: tas2563_change_book_page, 66
[    4.828634] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x2b:0x08, len: 0x78
[    4.828642] tas2563 0-004c: tas2563_change_book_page, 66
[    4.831145] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x2c:0x08, len: 0x40
[    4.831155] tas2563 0-004c: tas2563_change_book_page, 66
[    4.832025] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x2c:0x48, len: 0x14
[    4.832033] tas2563 0-004c: tas2563_change_book_page, 66
[    4.834855] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x3c:0x34, len: 0x4c
[    4.834863] tas2563 0-004c: tas2563_change_book_page, 66
[    4.838874] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x64:0x3d:0x08, len: 0x74
[    4.838884] tas2563 0-004c: tas2563_change_book_page, 66
[    4.843380] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x0c, len: 0x74
[    4.843388] tas2563 0-004c: tas2563_change_book_page, 66
[    4.847473] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x08, len: 0x78
[    4.847481] tas2563 0-004c: tas2563_change_book_page, 66
[    4.851609] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x04:0x08, len: 0x78
[    4.851618] tas2563 0-004c: tas2563_change_book_page, 66
[    4.853326] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x05:0x08, len: 0x28
[    4.853334] tas2563 0-004c: tas2563_change_book_page, 66
[    4.854301] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x05:0x40, len: 0x18
[    4.854307] tas2563 0-004c: tas2563_change_book_page, 66
[    4.855795] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x05:0x58, len: 0x28
[    4.855804] tas2563 0-004c: tas2563_change_book_page, 66
[    4.857045] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x06:0x08, len: 0x18
[    4.857053] tas2563 0-004c: tas2563_change_book_page, 66
[    4.859923] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x06:0x28, len: 0x58
[    4.859931] tas2563 0-004c: tas2563_change_book_page, 66
[    4.861409] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x07:0x08, len: 0x20
[    4.861417] tas2563 0-004c: tas2563_change_book_page, 66
[    4.862410] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x09:0x1c, len: 0x10
[    4.862418] tas2563 0-004c: tas2563_change_book_page, 66
[    4.863147] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x09:0x30, len: 0x10
[    4.863153] tas2563 0-004c: tas2563_change_book_page, 66
[    4.866061] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0a:0x30, len: 0x50
[    4.866070] tas2563 0-004c: tas2563_change_book_page, 66
[    4.870160] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0b:0x08, len: 0x78
[    4.870168] tas2563 0-004c: tas2563_change_book_page, 66
[    4.874252] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0c:0x08, len: 0x78
[    4.874260] tas2563 0-004c: tas2563_change_book_page, 66
[    4.878360] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0d:0x08, len: 0x78
[    4.878368] tas2563 0-004c: tas2563_change_book_page, 66
[    4.882100] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0e:0x08, len: 0x6c
[    4.882108] tas2563 0-004c: tas2563_change_book_page, 66
[    4.882602] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0e:0x74, len: 0x08
[    4.882607] tas2563 0-004c: tas2563_change_book_page, 66
[    4.882964] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0e:0x7c, len: 0x04
[    4.882969] tas2563 0-004c: tas2563_change_book_page, 66
[    4.887046] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0f:0x08, len: 0x78
[    4.887054] tas2563 0-004c: tas2563_change_book_page, 66
[    4.891182] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x10:0x08, len: 0x78
[    4.891191] tas2563 0-004c: tas2563_change_book_page, 66
[    4.894306] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x11:0x08, len: 0x58
[    4.894310] tas2563 0-004c: tas2563_change_book_page, 66
[    4.895068] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x16:0x78, len: 0x08
[    4.895072] tas2563 0-004c: tas2563_change_book_page, 66
[    4.899204] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x17:0x08, len: 0x78
[    4.899212] tas2563 0-004c: tas2563_change_book_page, 66
[    4.903253] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x18:0x08, len: 0x78
[    4.903259] tas2563 0-004c: tas2563_change_book_page, 66
[    4.907299] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x19:0x08, len: 0x78
[    4.907303] tas2563 0-004c: tas2563_change_book_page, 66
[    4.911344] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x1a:0x08, len: 0x78
[    4.911348] tas2563 0-004c: tas2563_change_book_page, 66
[    4.915403] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x1b:0x08, len: 0x78
[    4.915412] tas2563 0-004c: tas2563_change_book_page, 66
[    4.919667] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x1c:0x08, len: 0x78
[    4.919675] tas2563 0-004c: tas2563_change_book_page, 66
[    4.923913] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x1d:0x08, len: 0x78
[    4.923921] tas2563 0-004c: tas2563_change_book_page, 66
[    4.928117] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x1e:0x08, len: 0x78
[    4.928125] tas2563 0-004c: tas2563_change_book_page, 66
[    4.932382] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x1f:0x08, len: 0x78
[    4.932390] tas2563 0-004c: tas2563_change_book_page, 66
[    4.936539] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x20:0x08, len: 0x78
[    4.936547] tas2563 0-004c: tas2563_change_book_page, 66
[    4.940733] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x21:0x08, len: 0x78
[    4.940742] tas2563 0-004c: tas2563_change_book_page, 66
[    4.944919] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x22:0x08, len: 0x78
[    4.944927] tas2563 0-004c: tas2563_change_book_page, 66
[    4.947292] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x23:0x08, len: 0x3c
[    4.947301] tas2563 0-004c: tas2563_change_book_page, 66
[    4.947867] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x41, VAL: 0x06
[    4.947875] tas2563 0-004c: tas2563_change_book_page, 66
[    4.948159] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x42, VAL: 0x18
[    4.948165] tas2563 0-004c: tas2563_change_book_page, 66
[    4.948701] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0xfd:0x0d, VAL: 0x0d
[    4.948708] tas2563 0-004c: tas2563_change_book_page, 66
[    4.948983] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0xfd:0x32, VAL: 0x49
[    4.948988] tas2563 0-004c: tas2563_change_book_page, 66
[    4.949248] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0xfd:0x3f, VAL: 0x21
[    4.949252] tas2563 0-004c: tas2563_change_book_page, 66
[    4.949511] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0xfd:0x19, VAL: 0x80
[    4.949515] tas2563 0-004c: tas2563_change_book_page, 66
[    4.949777] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0xfd:0x0d, VAL: 0x0d
[    4.949780] tas2563 0-004c: tas2563_change_book_page, 66
[    4.950041] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0xfd:0x5f, VAL: 0xc1
[    4.950045] tas2563 0-004c: tas2563_change_book_page, 66
[    4.950561] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x0a, VAL: 0xf3
[    4.950566] tas2563 0-004c: tas2563_change_book_page, 66
[    4.950827] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x1a, VAL: 0xfc
[    4.950830] tas2563 0-004c: tas2563_change_book_page, 66
[    4.951090] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x1b, VAL: 0xa6
[    4.951094] tas2563 0-004c: tas2563_change_book_page, 66
[    4.951354] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x1c, VAL: 0xdf
[    4.951358] tas2563 0-004c: tas2563_change_book_page, 66
[    4.951616] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x1d, VAL: 0xef
[    4.951619] tas2563 0-004c: tas2563_change_book_page, 66
[    4.951882] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x30, VAL: 0x19
[    4.951886] tas2563 0-004c: tas2563_change_book_page, 66
[    4.952147] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x32, VAL: 0x80
[    4.952150] tas2563 0-004c: tas2563_change_book_page, 66
[    4.952435] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x38, VAL: 0x00
[    4.952439] tas2563 0-004c: tas2563_change_book_page, 66
[    4.953126] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x30, VAL: 0x19
[    4.953132] tas2563 0-004c: tas2563_change_book_page, 66
[    4.953399] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x33, VAL: 0x34
[    4.953403] tas2563 0-004c: tas2563_change_book_page, 66
[    4.953664] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x34, VAL: 0x4b
[    4.953668] tas2563 0-004c: tas2563_change_book_page, 66
[    4.953927] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x35, VAL: 0x84
[    4.953931] tas2563 0-004c: tas2563_change_book_page, 66
[    4.954190] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x3c, VAL: 0x38
[    4.954194] tas2563 0-004c: tas2563_change_book_page, 66
[    4.954803] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x04:0x60, len: 0x04
[    4.954808] tas2563 0-004c: tas2563_change_book_page, 66
[    4.956730] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x04:0x14, len: 0x30
[    4.956737] tas2563 0-004c: tas2563_change_book_page, 66
[    4.957346] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x5c, len: 0x04
[    4.957349] tas2563 0-004c: tas2563_change_book_page, 66
[    4.957697] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x60, len: 0x04
[    4.957701] tas2563 0-004c: tas2563_change_book_page, 66
[    4.958049] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x64, len: 0x04
[    4.958053] tas2563 0-004c: tas2563_change_book_page, 66
[    4.958401] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x68, len: 0x04
[    4.958405] tas2563 0-004c: tas2563_change_book_page, 66
[    4.958753] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x6c, len: 0x04
[    4.958756] tas2563 0-004c: tas2563_change_book_page, 66
[    4.959104] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x70, len: 0x04
[    4.959108] tas2563 0-004c: tas2563_change_book_page, 66
[    4.959458] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x74, len: 0x04
[    4.959462] tas2563 0-004c: tas2563_change_book_page, 66
[    4.959810] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x78, len: 0x04
[    4.959814] tas2563 0-004c: tas2563_change_book_page, 66
[    4.960162] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x7c, len: 0x04
[    4.960165] tas2563 0-004c: tas2563_change_book_page, 66
[    4.960777] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x04:0x08, len: 0x04
[    4.960781] tas2563 0-004c: tas2563_change_book_page, 66
[    4.961130] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x04:0x0c, len: 0x04
[    4.961133] tas2563 0-004c: tas2563_change_book_page, 66
[    4.961482] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x04:0x10, len: 0x04
[    4.961485] tas2563 0-004c: tas2563_change_book_page, 66
[    4.961835] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x04:0x54, len: 0x04
[    4.961838] tas2563 0-004c: tas2563_change_book_page, 66
[    4.962187] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x04:0x6c, len: 0x04
[    4.962192] tas2563 0-004c: tas2563_change_book_page, 66
[    4.962704] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x04, VAL: 0xc6
[    4.962708] tas2563 0-004c: tas2563_change_book_page, 66
[    4.962966] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x0a, VAL: 0xf3
[    4.962969] tas2563 0-004c: tas2563_change_book_page, 66
[    4.963228] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x12, VAL: 0x12
[    4.963231] tas2563 0-004c: tas2563_change_book_page, 66
[    4.963490] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x13, VAL: 0x76
[    4.963493] tas2563 0-004c: tas2563_change_book_page, 66
[    4.963752] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x14, VAL: 0x01
[    4.963756] tas2563 0-004c: tas2563_change_book_page, 66
[    4.964014] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x15, VAL: 0x2e
[    4.964017] tas2563 0-004c: tas2563_change_book_page, 66
[    4.964276] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x17, VAL: 0x0e
[    4.964279] tas2563 0-004c: tas2563_change_book_page, 66
[    4.964449] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x19, VAL: 0x00
[    4.964453] tas2563 0-004c: tas2563_change_book_page, 66
[    4.964712] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x33, VAL: 0x34
[    4.964716] tas2563 0-004c: tas2563_change_book_page, 66
[    4.964974] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x34, VAL: 0x4b
[    4.964978] tas2563 0-004c: tas2563_change_book_page, 66
[    4.965239] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x3b, VAL: 0x38
[    4.965243] tas2563 0-004c: tas2563_change_book_page, 66
[    4.965502] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x3e, VAL: 0x10
[    4.965505] tas2563 0-004c: tas2563_change_book_page, 66
[    4.965764] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x40, VAL: 0xb6
[    4.965767] tas2563 0-004c: tas2563_change_book_page, 66
[    4.966026] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x41, VAL: 0x06
[    4.966029] tas2563 0-004c: tas2563_change_book_page, 66
[    4.966540] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x01:0x08, VAL: 0x40
[    4.966544] tas2563 0-004c: tas2563_change_book_page, 66
[    4.967147] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x0c, len: 0x04
[    4.967150] tas2563 0-004c: tas2563_change_book_page, 66
[    4.967499] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x10, len: 0x04
[    4.967503] tas2563 0-004c: tas2563_change_book_page, 66
[    4.968087] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x68, len: 0x0c
[    4.968091] tas2563 0-004c: tas2563_change_book_page, 66
[    4.968458] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x14, len: 0x04
[    4.968462] tas2563 0-004c: tas2563_change_book_page, 66
[    4.968812] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x18, len: 0x04
[    4.968816] tas2563 0-004c: tas2563_change_book_page, 66
[    4.969167] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x1c, len: 0x04
[    4.969171] tas2563 0-004c: tas2563_change_book_page, 66
[    4.969520] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x20, len: 0x04
[    4.969526] tas2563 0-004c: tas2563_change_book_page, 66
[    4.969875] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x24, len: 0x04
[    4.969879] tas2563 0-004c: tas2563_change_book_page, 66
[    4.970227] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x28, len: 0x04
[    4.970232] tas2563 0-004c: tas2563_change_book_page, 66
[    4.970580] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x2c, len: 0x04
[    4.970584] tas2563 0-004c: tas2563_change_book_page, 66
[    4.970931] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x5c, len: 0x04
[    4.970935] tas2563 0-004c: tas2563_change_book_page, 66
[    4.971283] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x64, len: 0x04
[    4.971287] tas2563 0-004c: tas2563_change_book_page, 66
[    4.971892] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x04:0x64, len: 0x04
[    4.971895] tas2563 0-004c: tas2563_change_book_page, 66
[    4.972243] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x04:0x40, len: 0x04
[    4.972248] tas2563 0-004c: tas2563_change_book_page, 66
[    4.972543] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x04:0x4c, len: 0x04
[    4.972546] tas2563 0-004c: tas2563_change_book_page, 66
[    4.973149] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x24, len: 0x04
[    4.973155] tas2563 0-004c: tas2563_change_book_page, 66
[    4.973503] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x18, len: 0x04
[    4.973507] tas2563 0-004c: tas2563_change_book_page, 66
[    4.973855] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x1c, len: 0x04
[    4.973858] tas2563 0-004c: tas2563_change_book_page, 66
[    4.974206] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x20, len: 0x04
[    4.974209] tas2563 0-004c: tas2563_change_book_page, 66
[    4.974557] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x03:0x28, len: 0x04
[    4.974561] tas2563 0-004c: tas2563_change_book_page, 66
[    4.975163] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x09:0x30, len: 0x04
[    4.975167] tas2563 0-004c: tas2563_change_book_page, 66
[    4.975683] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x04, VAL: 0xc6
[    4.975688] tas2563 0-004c: tas2563_change_book_page, 66
[    4.975946] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x0a, VAL: 0xf3
[    4.975950] tas2563 0-004c: tas2563_change_book_page, 66
[    4.976209] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x31, VAL: 0x40
[    4.976213] tas2563 0-004c: tas2563_change_book_page, 66
[    4.976786] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x09:0x34, len: 0x04
[    4.976790] tas2563 0-004c: tas2563_change_book_page, 66
[    4.977138] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x09:0x38, len: 0x04
[    4.977141] tas2563 0-004c: tas2563_change_book_page, 66
[    4.977489] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x09:0x3c, len: 0x04
[    4.977492] tas2563 0-004c: tas2563_change_book_page, 66
[    4.978043] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x7e,0xa2
[    4.978047] tas2563 0-004c: Block PChkSum: FW = 0xa2, Reg = 0xa2
[    4.984221] tas2563 0-004c: Block[0x1] PChkSum match
[    4.989198] tas2563 0-004c: load configuration configuration_Tuning Mode_48 KHz_s1_0 conefficient pre block
[    4.998941] tas2563 0-004c: TAS2563 load data: Snapshot 1, Blocks = 2, Block Type = 4
[    5.006774] tas2563 0-004c: TAS2563 load block: Type = 4, commands = 0
[    5.013306] tas2563 0-004c: load new configuration: configuration_Tuning Mode_48 KHz_s1_0, coeff block data
[    5.023049] tas2563 0-004c: TAS2563 load data: Snapshot 1, Blocks = 2, Block Type = 3
[    5.030892] tas2563 0-004c: TAS2563 load block: Type = 3, commands = 288
[    5.037605] tas2563 0-004c: tas2563_change_book_page, 66
[    5.037868] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x7e, VAL: 0x00
[    5.037872] tas2563 0-004c: tas2563_change_book_page, 66
[    5.038954] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x06:0x3c, len: 0x14
[    5.038957] tas2563 0-004c: tas2563_change_book_page, 66
[    5.039781] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x06:0x50, len: 0x14
[    5.039784] tas2563 0-004c: tas2563_change_book_page, 66
[    5.040608] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x06:0x64, len: 0x14
[    5.040611] tas2563 0-004c: tas2563_change_book_page, 66
[    5.041337] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x05:0x08, len: 0x08
[    5.041342] tas2563 0-004c: tas2563_change_book_page, 66
[    5.041692] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x05:0x5c, len: 0x04
[    5.041695] tas2563 0-004c: tas2563_change_book_page, 66
[    5.042419] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x06:0x78, len: 0x08
[    5.042422] tas2563 0-004c: tas2563_change_book_page, 66
[    5.043851] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x07:0x08, len: 0x20
[    5.043855] tas2563 0-004c: tas2563_change_book_page, 66
[    5.046704] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0a:0x30, len: 0x50
[    5.046708] tas2563 0-004c: tas2563_change_book_page, 66
[    5.050776] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0b:0x08, len: 0x78
[    5.050784] tas2563 0-004c: tas2563_change_book_page, 66
[    5.054152] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0c:0x08, len: 0x60
[    5.054159] tas2563 0-004c: tas2563_change_book_page, 66
[    5.054648] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0c:0x78, len: 0x08
[    5.054654] tas2563 0-004c: tas2563_change_book_page, 66
[    5.055393] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0d:0x0c, len: 0x08
[    5.055399] tas2563 0-004c: tas2563_change_book_page, 66
[    5.055868] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0d:0x18, len: 0x08
[    5.055872] tas2563 0-004c: tas2563_change_book_page, 66
[    5.058858] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0d:0x24, len: 0x5c
[    5.058863] tas2563 0-004c: tas2563_change_book_page, 66
[    5.062944] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0e:0x08, len: 0x78
[    5.062952] tas2563 0-004c: tas2563_change_book_page, 66
[    5.067066] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x0f:0x08, len: 0x78
[    5.067073] tas2563 0-004c: tas2563_change_book_page, 66
[    5.071745] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x10:0x08, len: 0x78
[    5.071753] tas2563 0-004c: tas2563_change_book_page, 66
[    5.074946] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x11:0x08, len: 0x58
[    5.074956] tas2563 0-004c: tas2563_change_book_page, 66
[    5.075597] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x06:0x1c, len: 0x04
[    5.075603] tas2563 0-004c: tas2563_change_book_page, 66
[    5.076221] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x05:0x5c, len: 0x04
[    5.076226] tas2563 0-004c: tas2563_change_book_page, 66
[    5.076846] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x06:0x1c, len: 0x04
[    5.076852] tas2563 0-004c: tas2563_change_book_page, 66
[    5.077416] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x7e,0x79
[    5.077421] tas2563 0-004c: Block PChkSum: FW = 0x79, Reg = 0x79
[    5.083449] tas2563 0-004c: Block[0x3] PChkSum match
[    5.088437] tas2563 0-004c: tas2563_load_default, 1740, ret = 0
[    5.096600] tas2563 0-004c: tas2563_set_slot, slot_width:0
[    5.104779] tas2563 0-004c: tas2563_load_default, 1745, ret = 0
[    5.113571] tas2563 0-004c: tas2563_change_book_page, 66
[    5.113863] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x0a, VAL: 0x01
[    5.113867] tas2563 0-004c: INV format: IBNF
[    5.121016] tas2563 0-004c: tas2563_change_book_page, 66
[    5.121594] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x07, mask: 0x01, val=0x01
[    5.121599] tas2563 0-004c: tas2563_change_book_page, 66
[    5.121903] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x07, mask: 0x3e, val=0x02
[    5.121908] tas2563 0-004c: tas2563_load_default, 1761, ret = 0
[    5.127889] tas2563 0-004c: tas2563_set_bitwidth 1617
[    5.132977] tas2563 0-004c: Not supported params format
[    5.138258] tas2563 0-004c: tas2563_set_slot, slot_width:0
[    5.143782] tas2563 0-004c: mnCh_size: 0
[    5.147762] tas2563 0-004c: tas2563_load_default, 1766, ret = 0
[    5.153870] tas2563 0-004c: tas2563_set_samplerate, unsupported sample rate, 0
[    5.161208] tas2563 0-004c: tas2563_change_book_page, 66
[    5.162467] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x1a, mask: 0x04, val=0x00
[    5.167634] tas2563 0-004c: tas2563_change_book_page, 66
[    5.168539] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x01:0x31, mask: 0x02, val=0x02
[    5.168546] tas2563 0-004c: tas2563_change_book_page, 66
[    5.169771] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x30, mask: 0x40, val=0x40
[    5.169777] tas2563 0-004c: tas2563_load_default, 1787, ret = 0
[    5.169781] tas2563 0-004c: tas2563_change_book_page, 66
[    5.170492] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x02, mask: 0x0c, val=0x00

After using aplay to play mp3 file.

[  142.395935] tas2563 0-004c: tas2563_hw_params, format: 2
[  142.402305] tas2563 0-004c: tas2563_change_book_page, 66
[  142.402628] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x02,0x02
[  142.402632] tas2563 0-004c: tas2563_set_bitwidth 1617
[  142.410200] tas2563 0-004c: tas2563_change_book_page, 66
[  142.410761] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x08, mask: 0x0c, val=0x00
[  142.410766] tas2563 0-004c: tas2563_set_slot, slot_width:16
[  142.416361] tas2563 0-004c: tas2563_change_book_page, 66
[  142.416921] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x08, mask: 0x03, val=0x00
[  142.416925] tas2563 0-004c: mnCh_size: 16
[  142.421006] tas2563 0-004c: blr_clk_ratio: 32
[  142.425370] tas2563 0-004c: tas2563_change_book_page, 66
[  142.425673] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x0b, mask: 0xbf, val=0x42
[  142.425677] tas2563 0-004c: tas2563_slot_config: ret = 0
[  142.430999] tas2563 0-004c: tas2563_change_book_page, 66
[  142.431559] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x0d, mask: 0xbf, val=0xc4
[  142.431563] tas2563 0-004c: tas2563_slot_config: ret = 0
[  142.436886] tas2563 0-004c: tas2563_change_book_page, 66
[  142.437456] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x0c, mask: 0xff, val=0x40
[  142.437460] tas2563 0-004c: tas2563_slot_config: ret = 0
[  142.442782] tas2563 0-004c: tas2563_change_book_page, 66
[  142.443082] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x41, mask: 0xff, val=0x06
[  142.443086] tas2563 0-004c: tas2563_slot_config: ret = 0
[  142.448405] tas2563 0-004c: tas2563_change_book_page, 66
[  142.448962] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x0a, mask: 0xff, val=0xf3
[  142.448966] tas2563 0-004c: tas2563_change_book_page, 66
[  142.449520] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x06, mask: 0x01, val=0x00
[  142.449525] tas2563 0-004c: tas2563_slot_config: ret = 0
[  142.454847] tas2563 0-004c: tas2563_hw_params, sample rate: 8000
[  142.460871] tas2563 0-004c: tas2563_set_samplerate, unsupported sample rate, 8000
[  142.469246] tas2563 0-004c: SND_SOC_DAPM_POST_PMU
[  142.474270] tas2563 0-004c: tas2563_mute
[  142.478204] tas2563 0-004c: unmute: tas2563_mute stream = 0
[  142.483782] tas2563 0-004c: set power state: 0
[  142.488235] tas2563 0-004c: tas2563_set_power_state, state: 0, mbPowerup 0
[  142.495114] tas2563 0-004c: tas2563_load_calibration:
[  142.500257] tas2563 0-004c: tas2563_load_calibration:TAS2563 calibration file = /mnt/audio/tas2563_cal.bin, file size 440
[  142.515334] tas2563 0-004c: read filed nSize = 440
[  142.520138] tas2563 0-004c: TAS2563 calibration file size = 440
[  142.526067] tas2563 0-004c: firmware size: 440
[  142.530515] tas2563 0-004c: FW timestamp: 1552463249
[  142.535500] tas2563 0-004c: FW Size       = 440
[  142.540037] tas2563 0-004c: Checksum      = 0x0000
[  142.544836] tas2563 0-004c: PPC Version   = 0x0000
[  142.549631] tas2563 0-004c: FW  Version    = 0x0000
[  142.554517] tas2563 0-004c: Driver Version= 0x0100
[  142.559314] tas2563 0-004c: Timestamp     = 1552463249
[  142.564472] tas2563 0-004c: DDC Name      = Calibration Data File
[  142.570570] tas2563 0-004c: Description   = Calibration Data File for TAS2563 Mono
[  142.578177] tas2563 0-004c: header size: 139, line: 1155
[  142.583495] tas2563 0-004c: program size: 2, line: 1172
[  142.588728] tas2563 0-004c: config size: 2, line: 1180
[  142.593877] tas2563 0-004c: fw_parse_data, 961
[  142.598328] tas2563 0-004c: fw_parse_block_data, 920
[  142.603297] tas2563 0-004c: fw_parse_block_data, 924
[  142.608271] tas2563 0-004c: fw_parse_block_data, 949
[  142.613241] tas2563 0-004c: calib size: 297, line: 1189
[  142.618473] tas2563 0-004c: TAS2563 calibration: 1 calibrations
[  142.624400] tas2563 0-004c: tas2563_change_book_page, 66
[  142.624972] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x30, mask: 0x04, val=0x04
[  142.624976] tas2563 0-004c: tas2563_change_book_page, 66
[  142.625274] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x24,0x00
[  142.625278] tas2563 0-004c: IRQ reg is: 0, 1319
[  142.732664] tas2563 0-004c: irq_work_routine
[  142.736957] tas2563 0-004c: tas2563_change_book_page, 66
[  142.737233] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x1a, VAL: 0xff
[  142.737237] tas2563 0-004c: tas2563_change_book_page, 66
[  142.737497] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x1b, VAL: 0xff
[  142.737500] tas2563 0-004c: tas2563_change_book_page, 66
[  142.737799] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x24,0x00
[  142.737802] tas2563 0-004c: tas2563_change_book_page, 66
[  142.738096] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x25,0x00
[  142.738100] tas2563 0-004c: IRQ status : 0x0, 0x0
[  142.742817] tas2563 0-004c: tas2563_change_book_page, 66
[  142.743115] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x02,0x02
[  142.743121] tas2563 0-004c: tas2563_change_book_page, 66
[  142.743418] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x24,0x00
[  142.743422] tas2563 0-004c: IRQ reg is: irq_work_routine, 0, 456
[  142.749509] tas2563 0-004c: tas2563_change_book_page, 66
[  142.749858] tas2563 0-004c: tas2563_mute
[  142.750083] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x0b, mask: 0x40, val=0x40
[  142.753806] tas2563 0-004c: tas2563_change_book_page, 66
[  142.754358] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x0d, mask: 0x40, val=0x40
[  142.754362] tas2563 0-004c: irq_work_routine 478
[  142.759000] tas2563 0-004c: tas2563_change_book_page, 66
[  142.759556] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x02, mask: 0x8f, val=0x00
[  142.759560] tas2563 0-004c: tas2563_change_book_page, 66
[  142.759855] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x24,0x00
[  142.759859] tas2563 0-004c: IRQ reg is: irq_work_routine, 0, 524
[  142.765926] tas2563 0-004c: set ICN to -90dB
[  142.770205] tas2563 0-004c: tas2563_change_book_page, 66
[  142.770819] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x5c, len: 0x04
[  142.770823] tas2563 0-004c: tas2563_change_book_page, 66
[  142.771371] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x24,0x04
[  142.771375] tas2563 0-004c: IRQ reg is: 4, 535
[  142.775839] tas2563 0-004c: set ICN delay
[  142.779855] tas2563 0-004c: tas2563_change_book_page, 66
[  142.780473] tas2563 0-004c: tas2563_dev_bulk_write: BOOK:PAGE:REG 0x00:0x02:0x64, len: 0x04
[  142.780476] tas2563 0-004c: tas2563_change_book_page, 66
[  142.781028] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x24,0x04
[  142.781032] tas2563 0-004c: IRQ reg is: 4, 544
[  142.785486] tas2563 0-004c: PowSts B: 0x2, check again after 10ms
[  142.812641] tas2563 0-004c: tas2563_change_book_page, 66
[  142.812946] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x02,0x00
[  142.812950] tas2563 0-004c: tas2563_change_book_page, 66
[  142.813252] tas2563 0-004c: tas2563_dev_read: BOOK:PAGE:REG 0x00:0x00:0x24,0x04
[  142.813256] tas2563 0-004c: IRQ reg is: irq_work_routine, 4, 456
[  142.819272] tas2563 0-004c: irq_work_routine 472
[  142.823896] tas2563 0-004c: tas2563_change_book_page, 66
[  142.824163] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x1a, VAL: 0xf8
[  142.824167] tas2563 0-004c: tas2563_change_book_page, 66
[  142.824427] tas2563 0-004c: tas2563_dev_write: BOOK:PAGE:REG 0x00:0x00:0x1b, VAL: 0xb1
[  142.824738] tas2563 0-004c: mute: tas2563_mute stream = 0
[  142.830152] tas2563 0-004c: set power state: 2
[  142.834604] tas2563 0-004c: tas2563_set_power_state, state: 2, mbPowerup 1
[  142.841487] tas2563 0-004c: tas2563_change_book_page, 66
[  142.844002] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x41, mask: 0xff, val=0x40
[  142.844006] tas2563 0-004c: tas2563_change_book_page, 66
[  142.848552] tas2563 0-004c: tas2563_dev_update_bits: BOOK:PAGE:REG 0x00:0x00:0x02, mask: 0xff, val=0x0e
[  142.848898] tas2563 0-004c: SND_SOC_DAPM_PRE_PMD
[  142.928648] tas2563 0-004c: irq_work_routine
[  142.932934] tas2563 0-004c: irq_work_routine, device not powered
[  142.952660] tas2563 0-004c: irq_work_routine
[  142.956938] tas2563 0-004c: irq_work_routine, device not powered

  • Hi Luis,

    Our driver experts will take a look at your dts and log files and we'll provide further comments as soon as possible.

    Best regards,
    -Ivan Salazar
    Applications Engineer

  • Hi Luis

    Can I collect following information?

    1. There're two types of tas2563, QFN and WCSP. Which type do you use in your project?
    2. Kindly remove tas2563_cal.bin in your system. And make a new tas2563Ring_PDM.bin with PPC3 tool for your own project, do not use the one in the bitbucket.
    3. Share the test file with me.Per the log you shared, it seemed an MP3 file. Can you use wav file with 16-bit pcm, stereo, 48kHz samplerate?
    4. Whether the audio format is i2s? Kindly capture the bck and WS clk to the tas2563 with scope during playback.
    5. Dump the register with me during playback. Commands like following:
      i2cset -y -f 0 4c 0 0
      i2cset -y -f 0 4c 7f 0
      i2cset -y -f 0 4c 0 0
      i2cdump -y -f 0 4c

      Good luck
  • Hello Shenghao,

    1. I am using the QFN package.

    2. I removed the calibration file. However, I am unable to install the TAS2563 app in PCC3. I keep getting the message below:

    Could I still use the file in the bitbucket?

    3. I am using this test file: http://mauvecloud.net/sounds/pcm1644m.wav (16 bit pcm, mono, 48KHz)

    4. Using the above file instead of mp3 gives me the following error:

    Playing WAVE 'pcm1644m.wav' : Sig[ 401.582279] tas2563 0-004c: tas2563_hw_params, format: 2
    ned 16 bit Little Endian, Rate 44[ 401.590899] tas2563 0-004c: tas2563_set_bitwidth 1617
    100 Hz, Mono
    [ 401.598745] tas2563 0-004c: mnCh_size: 16
    [ 401.603601] tas2563 0-004c: blr_clk_ratio: 32
    [ 401.609175] tas2563 0-004c: tas2563_slot_config: ret = 0
    [ 401.616229] tas2563 0-004c: tas2563_slot_config: ret = 0
    [ 401.623703] tas2563 0-004c: tas2563_slot_config: ret = 0
    [ 401.633621] tas2563 0-004c: tas2563_slot_config: ret = 0
    [ 401.642957] tas2563 0-004c: tas2563_slot_config: ret = 0
    [ 401.648285] tas2563 0-004c: tas2563_hw_params, sample rate: 44100
    [ 401.657466] fsl-sai 30c20000.sai: failed to derive required Tx rate: 1411200
    [ 401.664538] fsl-sai 30c20000.sai: ASoC: can't set 30c20000.sai hw params: -22
    [ 401.671682] tas2563 0-004c: tas2563_mute
    [ 401.675614] tas2563 0-004c: mute: tas2563_mute stream = 0
    [ 401.681016] tas2563 0-004c: set power state: 2
    [ 401.685468] tas2563 0-004c: tas2563_set_power_state, state: 2, mbPowerup 0
    aplay: set_params:1405: Unable to install hw params:
    ACCESS: RW_INTERLEAVED
    FORMAT: S16_LE
    SUBFORMAT: STD
    SAMPLE_BITS: 16
    FRAME_BITS: 16
    CHANNELS: 1
    RATE: 44100
    PERIOD_TIME: (92879 92880)
    PERIOD_SIZE: 4096
    PERIOD_BYTES: 8192
    PERIODS: 4
    BUFFER_TIME: (371519 371520)
    BUFFER_SIZE: 16384
    BUFFER_BYTES: 32768
    TICK_TIME: 0

    No output is observed on bck and WS clk

  • Does your platform support 44100Hz? 

    It seemed following log is from platform.

    [ 401.657466] fsl-sai 30c20000.sai: failed to derive required Tx rate: 1411200
    [ 401.664538] fsl-sai 30c20000.sai: ASoC: can't set 30c20000.sai hw params: -22

  • There might be a clock configuration I need to adjust. I did manage to play a wav file with a 48000Hz sampling rate. 

    Now the issue I am having is volume adjustment. I have managed to change the digital volume control register, but changing that register to anything almost fully attenuates the speaker output. Is there something I am missing?

  • Glad to hear from you can play the wav file. Which commands will you use to change the digital vol?

    In order to make things simple, you can use the digtial vol api offered by the platform. So do most of my customers.

  • I am using i2cset to change registers 0xc~0xf on page 0x2 based on the datasheet information. Are you talking about using amixer to change the volume?

  • Do you use following i2c command to switch to book0page2, then set the vol

    i2cset -y -f 0 4c 0 0
    i2cset -y -f 0 4c 7f 0
    i2cset -y -f 0 4c 0 2

    Another suggestion is that you can change the audio source vol to control digital vol,
    this will consult platform vendor how to adjust platform digital gain