error: '__device_dts_ord_26' undeclared

Hi,

I am just starting to develop a nRF5340 based prototype. I am using the openthread CLI example as the first step. I have configured the device tree to suit our board in a new overlay file. I dont see any issues from device tree visualizer. But when I try to build the example, I get 'error: '__device_dts_ord_26' undeclared' from /zephyr/modules/hal_nordic/nrf_802154/serialization/platform/nrf_802154_spinel_backend_ipc.c: In function 'nrf_802154_backend_init': I am using SDK 2.6.0.

What is going wrong here?

Cheers,

Kaushalya

  • Hi Kaushalya,

    It looks only device used in nrf_802154_backend_init is nordic_802154_spinel_ipc.

    const struct device *const ipc_instance =
            DEVICE_DT_GET(DT_CHOSEN(nordic_802154_spinel_ipc));
        int err;
    The nRF5340 Interprocessor Communication (IPC) is a peripheral used to send and receive events between Microcontrollers (MCUs) in the system. Each MCU has a dedicated IPC peripheral that can be used to send and receive events to and from other IPC peripherals.
    Do you build the original OpenThread CLI example? Could you compared the both nrf\samples\openthread\cli\build\zephyr\.config and zephyr\samples\hello_world\build_nrf52840\zephyr\zephyr.dts to find the difference?
    Best regards,
    Charlie
  • Thanks Charlie.

    When I try to build the original cli example, I picked up the board as 'nRF5340dk_nRF5340_cpuapp_ns. Then the original project build without errors. Then I changed the board to same in my project and add a blank overlay. I added just the minimum nodes I need and it build successfully. 

    Now I am trying to flash the binary. But it fails saying the following.

    -- west flash: using runner nrfjprog
    -- runners.nrfjprog: reset after flashing requested
    -- runners.nrfjprog: Flashing file: d:\Projects\nrf\nrf5340_cli\build\zephyr\merged_domains.hex
    -- runners.nrfjprog: d:\Projects\nrf\nrf5340_cli\build\zephyr\merged_domains.hex targets both nRF53 coprocessors; splitting it into: d:\Projects\nrf\nrf5340_cli\build\zephyr\GENERATED_CP_NETWORK_merged_domains.hex and d:\Projects\nrf\nrf5340_cli\build\zephyr\GENERATED_CP_APPLICATION_merged_domains.hex
    [error] [ Client] - Encountered error -102: Command enable_coprocessor executed for 149 milliseconds with result -102
    Failed to enable coprocessor with unknown error.
    [error] [ Worker] - An unknown error.
    ERROR: JLinkARM DLL reported an error. Try again. If error condition
    ERROR: persists, run the same command again with argument --log, contact Nordic
    ERROR: Semiconductor and provide the generated log.log file to them.
    NOTE: For additional output, try running again with logging enabled (--log).
    NOTE: Any generated log error messages will be displayed.
    FATAL ERROR: command exited with status 33: nrfjprog --program 'd:\Projects\nrf\nrf5340_cli\build\zephyr\GENERATED_CP_NETWORK_merged_domains.hex' --sectorerase --verify -f NRF53 --coprocessor CP_NETWORK --snr 1050260599

    I am using my nRF52840DK to program. I am using SWD interface and a reset from DK. The same interface I was using to program my nRF52840 boards.

  • You should use nRF5340DK or nRF91xxDK which has newer version of J-Link OB that support Cortext-M33 chips. 

Related