Good Afternoon,
I am working on getting the npm1300 up and running on my custom board. I have a 1v8 line and a 3v2 line with the load switches being used as LDOs. I am using the new ncs 3.0.0 for reference (I need the LIS2DUXS12 support in that release)
I am stuck in the building phase because after defining everything and having no problems in VSCode, I am getting this error:
In file included from /home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/sys/util_macro.h:34,
from /home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/irq_multilevel.h:16,
from /home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/devicetree.h:20,
from /home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/device.h:12,
from /home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/drivers/sensor.h:27,
from /home/lagomankor/ncs/v3.0.0/zephyr/drivers/sensor/nordic/npm1300_charger/npm1300_charger.c:9:
/home/lagomankor/workspace/Code/essence-track_db/build/essence-track_db/zephyr/include/generated/zephyr/devicetree_generated.h:12512:44: error: 'DT_N_S_soc_S_peripheral_50000000_S_i2c_8000_S_npm1300_6b_S_npm1300_charger_P_vbus_limit_microamp' undeclared here (not in a function); did you mean 'DT_N_S_soc_S_peripheral_50000000_S_i2c_8000_S_npm1300_6b_S_npm1300_charger_P_dischg_limit_microamp'?
12512 | #define DT_N_INST_0_nordic_npm1300_charger DT_N_S_soc_S_peripheral_50000000_S_i2c_8000_S_npm1300_6b_S_npm1300_charger
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/sys/util_internal.h:72:26: note: in definition of macro '__DEBRACKET'
72 | #define __DEBRACKET(...) __VA_ARGS__
| ^~~~~~~~~~~
/home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/sys/util_internal.h:64:9: note: in expansion of macro '__GET_ARG2_DEBRACKET'
64 | __GET_ARG2_DEBRACKET(one_or_two_args _if_code, _else_code)
| ^~~~~~~~~~~~~~~~~~~~
/home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/sys/util_internal.h:59:9: note: in expansion of macro '__COND_CODE'
59 | __COND_CODE(_XXXX##_flag, _if_1_code, _else_code)
| ^~~~~~~~~~~
/home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/sys/util_macro.h:196:9: note: in expansion of macro 'Z_COND_CODE_1'
196 | Z_COND_CODE_1(_flag, _if_1_code, _else_code)
| ^~~~~~~~~~~~~
/home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/devicetree.h:4946:9: note: in expansion of macro 'COND_CODE_1'
4946 | COND_CODE_1(DT_HAS_COMPAT_STATUS_OKAY(DT_DRV_COMPAT), \
| ^~~~~~~~~~~
/home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/devicetree.h:752:32: note: in expansion of macro 'DT_CAT3'
752 | #define DT_PROP(node_id, prop) DT_CAT3(node_id, _P_, prop)
| ^~~~~~~
/home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/devicetree.h:4147:34: note: in expansion of macro 'DT_PROP'
4147 | #define DT_INST_PROP(inst, prop) DT_PROP(DT_DRV_INST(inst), prop)
| ^~~~~~~
/home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/sys/util_internal.h:105:36: note: in expansion of macro 'DT_N_INST_0_nordic_npm1300_charger'
105 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__
| ^
/home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/sys/util_internal.h:104:26: note: in expansion of macro 'UTIL_PRIMITIVE_CAT'
104 | #define UTIL_CAT(a, ...) UTIL_PRIMITIVE_CAT(a, __VA_ARGS__)
| ^~~~~~~~~~~~~~~~~~
/home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/devicetree.h:339:31: note: in expansion of macro 'UTIL_CAT'
339 | #define DT_INST(inst, compat) UTIL_CAT(DT_N_INST, DT_DASH(inst, compat))
| ^~~~~~~~
/home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/devicetree.h:3869:27: note: in expansion of macro 'DT_INST'
3869 | #define DT_DRV_INST(inst) DT_INST(inst, DT_DRV_COMPAT)
| ^~~~~~~
/home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/devicetree.h:4147:42: note: in expansion of macro 'DT_DRV_INST'
4147 | #define DT_INST_PROP(inst, prop) DT_PROP(DT_DRV_INST(inst), prop)
| ^~~~~~~~~~~
/home/lagomankor/ncs/v3.0.0/zephyr/drivers/sensor/nordic/npm1300_charger/npm1300_charger.c:679:40: note: in expansion of macro 'DT_INST_PROP'
679 | .vbus_limit_microamp = DT_INST_PROP(n, vbus_limit_microamp), \
| ^~~~~~~~~~~~
/home/lagomankor/workspace/Code/essence-track_db/build/essence-track_db/zephyr/include/generated/zephyr/devicetree_generated.h:15522:57: note: in expansion of macro 'NPM1300_CHARGER_INIT'
15522 | #define DT_FOREACH_OKAY_INST_nordic_npm1300_charger(fn) fn(0)
| ^~
/home/lagomankor/ncs/v3.0.0/zephyr/include/zephyr/sys/util_internal.h:105:36: note: in expansion of macro 'DT_FOREACH_OKAY_INST_nordic_npm1300_charger'
105 | #define UTIL_PRIMITIVE_CAT(a, ...) a##__VA_ARGS__
| ^
/home/lagomankor/ncs/v3.0.0/zephyr/drivers/sensor/nordic/npm1300_charger/npm1300_charger.c:701:1: note: in expansion of macro 'DT_INST_FOREACH_STATUS_OKAY'
701 | DT_INST_FOREACH_STATUS_OKAY(NPM1300_CHARGER_INIT)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
[258/319] Building C object modules/hal_nordic/modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/home/lagomankor/ncs/v3.0.0/modules/hal/nordic/nrfx/drivers/src/nrfx_twi_twim.c.obj
[259/319] Building C object modules/libmetal/libmetal/lib/CMakeFiles/metal.dir/system/zephyr/device.c.obj
[260/319] Building C object modules/libmetal/libmetal/lib/CMakeFiles/metal.dir/system/zephyr/log.c.obj
[261/319] Building C object modules/libmetal/libmetal/lib/CMakeFiles/metal.dir/system/zephyr/shmem.c.obj
[262/319] Building C object modules/libmetal/libmetal/lib/CMakeFiles/metal.dir/system/zephyr/init.c.obj
[263/319] Building C object modules/libmetal/libmetal/lib/CMakeFiles/metal.dir/system/zephyr/time.c.obj
[264/319] Building C object modules/libmetal/libmetal/lib/CMakeFiles/metal.dir/system/zephyr/alloc.c.obj
[265/319] Building C object modules/libmetal/libmetal/lib/CMakeFiles/metal.dir/system/zephyr/irq.c.obj
[266/319] Building C object modules/libmetal/libmetal/lib/CMakeFiles/metal.dir/system/zephyr/sys.c.obj
[267/319] Building C object modules/open-amp/open-amp/lib/CMakeFiles/open_amp.dir/virtio/virtio.c.obj
[268/319] Building C object modules/open-amp/open-amp/lib/CMakeFiles/open_amp.dir/virtio/virtqueue.c.obj
[269/319] Building C object modules/hal_nordic/modules/hal_nordic/nrfx/CMakeFiles/modules__hal_nordic__nrfx.dir/home/lagomankor/ncs/v3.0.0/modules/hal/nordic/nrfx/drivers/src/nrfx_twim.c.obj
[270/319] Building C object modules/open-amp/open-amp/lib/CMakeFiles/open_amp.dir/rpmsg/rpmsg_virtio.c.obj
ninja: build stopped: subcommand failed.
FAILED: _sysbuild/sysbuild/images/essence-track_db-prefix/src/essence-track_db-stamp/essence-track_db-build /home/lagomankor/workspace/Code/essence-track_db/build/_sysbuild/sysbuild/images/essence-track_db-prefix/src/essence-track_db-stamp/essence-track_db-build
cd /home/lagomankor/workspace/Code/essence-track_db/build/essence-track_db && /home/lagomankor/ncs/toolchains/7cbc0036f4/usr/local/bin/cmake --build .
ninja: build stopped: subcommand failed.
FATAL ERROR: command exited with status 1: /home/lagomankor/ncs/toolchains/7cbc0036f4/usr/local/bin/cmake --build /home/lagomankor/workspace/Code/essence-track_db/build
This line has me puzzled:
error: 'DT_N_S_soc_S_peripheral_50000000_S_i2c_8000_S_npm1300_6b_S_npm1300_charger_P_vbus_limit_microamp' undeclared here (not in a function); did you mean 'DT_N_S_soc_S_peripheral_50000000_S_i2c_8000_S_npm1300_6b_S_npm1300_charger_P_dischg_limit_microamp'?
It is not listed as a required property and yet if it is not set, there I get an error that it is undeclared. Is this actually a required property?
Can you recreate it on your end? Thank you