Failed to reset CS47L63

Hi,

Failed to reset CS47L63 when swapping the role,

if use the configuration like this:

[
{
"nrf5340_audio_dk_snr": 1050140236,
"nrf5340_audio_dk_dev": "headset",
"channel": "left"
},
{
"nrf5340_audio_dk_snr": 1050167579,
"nrf5340_audio_dk_dev": "gateway",
"channel": "NA"
},
{
"nrf5340_audio_dk_snr": 1000,
"nrf5340_audio_dk_dev": "headset",
"channel": "right"
}
]

everything is fine

if swapping the role like this:

[
{
"nrf5340_audio_dk_snr": 1050167579,
"nrf5340_audio_dk_dev": "headset",
"channel": "left"
},
{
"nrf5340_audio_dk_snr": 1050140236,
"nrf5340_audio_dk_dev": "gateway",
"channel": "NA"
},
{
"nrf5340_audio_dk_snr": 1000,
"nrf5340_audio_dk_dev": "headset",
"channel": "right"
}
]

will be failed:

$ *** Booting Zephyr OS build v3.0.99-ncs1-rc1 ***
HL [00:00:00.252,990] <dbg> nrf5340_audio_dk_nrf5340_cpuapp: core_config: Setting gpiote latency to r
HL [00:00:00.253,051] <dbg> nrf5340_audio_dk_nrf5340_cpuapp: remoteproc_mgr_boot: Network MCU releas.
HL [00:00:00.257,598] <dbg> main: main: nRF5340 APP core started
HL [00:00:00.257,995] <dbg> led: transfer_pin_to_net: Pin 28 transferred on device GPIO_0
HL [00:00:00.257,995] <dbg> led: led_device_tree_parse: APP core: LED belongs to NET core. Skipping
HL [00:00:00.258,026] <dbg> led: transfer_pin_to_net: Pin 29 transferred on device GPIO_0
HL [00:00:00.258,026] <dbg> led: led_device_tree_parse: APP core: LED belongs to NET core. Skipping
HL [00:00:00.258,056] <dbg> led: transfer_pin_to_net: Pin 30 transferred on device GPIO_0
HL [00:00:00.258,056] <dbg> led: led_device_tree_parse: APP core: LED belongs to NET core. Skipping
HL [00:00:00.258,178] <inf> fw_info:
nRF5340 Audio nRF5340 Audio DK cpuapp
FW Version: 0.5.99
Cmake run : Sat Jun 18 09:40:35 2022
HL [00:00:00.258,209] <inf> fw_info: ------- DEBUG BUILD -------
HL [00:00:00.258,209] <inf> fw_info:
HEADSET left device
HL [00:00:00.268,798] <dbg> board_version: version_search: Board ver search OK!. ADC reg val: 1749
HL [00:00:00.268,829] <inf> board_version: Compatible board/HW version found: 1.0.0
HL [00:00:00.279,418] <dbg> board_version: version_search: Board ver search OK!. ADC reg val: 1764
HL [00:00:00.282,318] <dbg> sd_card: sd_card_init: SD card init failed, please check if SD card insed
HL [00:00:00.284,912] <dbg> pwr_module: power_module_measurement_stop: Stopping measurement on: 0
HL [00:00:00.287,963] <dbg> pwr_module: power_module_measurement_stop: Stopping measurement on: 1
HL [00:00:00.291,015] <dbg> pwr_module: power_module_measurement_stop: Stopping measurement on: 2
HL [00:00:00.294,067] <dbg> pwr_module: power_module_measurement_stop: Stopping measurement on: 3
HL [00:00:00.294,555] <dbg> pwr_module: power_module_init: Power module initialized
HL [00:00:00.299,316] <inf> CS47L63: Tried to set supply, not supported
HL [00:00:00.514,190] <err> CS47L63: Failed to reset CS47L63
HL [00:00:00.514,190] <err> main: ERR_CHK Err_code: [-6] @ line: 194
HL [00:00:00.514,221] <err> os: r0/a1: 0x00000003 r1/a2: 0x00000002 r2/a3: 0x00000001
HL [00:00:00.514,221] <err> os: r3/a4: 0x20001e10 r12/ip: 0x00000004 r14/lr: 0x0001a655
HL [00:00:00.514,221] <err> os: xpsr: 0x49100000
HL [00:00:00.514,221] <err> os: s[ 0]: 0x00000000 s[ 1]: 0x00000000 s[ 2]: 0x00000000 s[ 3]: 0
HL [00:00:00.514,251] <err> os: s[ 4]: 0x00000000 s[ 5]: 0x00000000 s[ 6]: 0x00000000 s[ 7]: 0
HL [00:00:00.514,251] <err> os: s[ 8]: 0x00000000 s[ 9]: 0x00000000 s[10]: 0x00000000 s[11]: 0
HL [00:00:00.514,251] <err> os: s[12]: 0x00000000 s[13]: 0x00000000 s[14]: 0x00000000 s[15]: 0
HL [00:00:00.514,251] <err> os: fpscr: 0xaaaaaaaa
HL [00:00:00.514,282] <err> os: Faulting instruction address (r15/pc): 0x000031f4
HL [00:00:00.514,282] <err> os: >>> ZEPHYR FATAL ERROR 3: Kernel oops on CPU 0
HL [00:00:00.514,312] <err> os: Current thread: 0x20002f70 (main)
HL [00:00:00.514,312] <err> error_handler: Caught system error -- reason 3. Entering infinite loop

why? Is the DK broken?

thanks

Related