Lines Matching full:node

78 	sys_snode_t snode;             /**< Node in the singly-linked list of connections. */
121 * This macro generates a name for a sensor info structure based on a node and an index.
123 * @param node The devicetree node identifier.
126 #define SENSING_SENSOR_INFO_NAME(node, idx) \ argument
127 _CONCAT(_CONCAT(__sensing_sensor_info_, idx), DEVICE_DT_NAME_GET(node))
132 * This macro defines a sensor info structure based on a node and an index.
136 * @param node The devicetree node identifier.
139 #define SENSING_SENSOR_INFO_DEFINE(node, idx) \ argument
141 SENSING_SENSOR_INFO_NAME(node, idx)) = { \
142 .type = DT_PROP_BY_IDX(node, sensor_types, idx), \
143 .name = DT_NODE_FULL_NAME(node), \
144 .friendly_name = DT_PROP(node, friendly_name), \
145 .vendor = DT_NODE_VENDOR_OR(node, NULL), \
146 .model = DT_NODE_MODEL_OR(node, NULL), \
147 .minimal_interval = DT_PROP(node, minimal_interval), \
153 * This macro generates a name for a connections array based on a node.
155 * @param node The devicetree node identifier.
157 #define SENSING_CONNECTIONS_NAME(node) \ argument
158 _CONCAT(__sensing_connections_, DEVICE_DT_NAME_GET(node))
163 * This macro generates a name for a sensor source based on an index and a node.
166 * @param node The devicetree node identifier.
168 #define SENSING_SENSOR_SOURCE_NAME(idx, node) \ argument
169 SENSING_SENSOR_NAME(DT_PHANDLE_BY_IDX(node, reporters, idx), \
170 DT_PROP_BY_IDX(node, reporters_index, idx))
175 * This macro declares an external sensor source based on an index and a node.
178 * @param node The devicetree node identifier.
180 #define SENSING_SENSOR_SOURCE_EXTERN(idx, node) \ argument
181 extern struct sensing_sensor SENSING_SENSOR_SOURCE_NAME(idx, node);
200 * This macro defines a connection based on an index, a node, and a callback list pointer.
203 * @param node The devicetree node identifier.
206 #define SENSING_CONNECTION_DEFINE(idx, node, cb_list_ptr) \ argument
207 SENSING_CONNECTION_INITIALIZER(SENSING_SENSOR_SOURCE_NAME(idx, node), \
213 * This macro defines an array of connections based on a node, a number, and a callback list
216 * @param node The devicetree node identifier.
220 #define SENSING_CONNECTIONS_DEFINE(node, num, cb_list_ptr) \ argument
222 (), node) \
224 SENSING_CONNECTIONS_NAME(node)[(num)] = { \
226 (,), node, cb_list_ptr) \
251 * This macro generates a name for a submit configuration based on a node and an index.
253 * @param node The devicetree node identifier.
256 #define SENSING_SUBMIT_CFG_NAME(node, idx) \ argument
257 _CONCAT(_CONCAT(__sensing_submit_cfg_, idx), DEVICE_DT_NAME_GET(node))
262 * This macro generates a name for a sensor I/O device based on a node and an index.
264 * @param node The devicetree node identifier.
267 #define SENSING_SENSOR_IODEV_NAME(node, idx) \ argument
268 _CONCAT(_CONCAT(__sensing_iodev_, idx), DEVICE_DT_NAME_GET(node))
273 * This macro defines a sensor I/O device based on a node and an index.
276 * @param node The devicetree node identifier.
279 #define SENSING_SENSOR_IODEV_DEFINE(node, idx) \ argument
280 static struct sensing_submit_config SENSING_SUBMIT_CFG_NAME(node, idx) = { \
281 .is_streaming = DT_PROP(node, stream_mode), \
284 RTIO_IODEV_DEFINE(SENSING_SENSOR_IODEV_NAME(node, idx), \
286 &SENSING_SUBMIT_CFG_NAME(node, idx));
291 * This macro generates a name for a sensor based on a node and an index.
293 * @param node The devicetree node identifier.
296 #define SENSING_SENSOR_NAME(node, idx) \ argument
297 _CONCAT(_CONCAT(__sensing_sensor_, idx), DEVICE_DT_NAME_GET(node))
302 * This macro defines a sensor based on a node, a property, an index, a register info pointer, and a
306 * @param node The devicetree node identifier.
312 #define SENSING_SENSOR_DEFINE(node, prop, idx, reg_ptr, cb_list_ptr) \ argument
313 SENSING_SENSOR_INFO_DEFINE(node, idx) \
314 SENSING_SENSOR_IODEV_DEFINE(node, idx) \
316 SENSING_SENSOR_NAME(node, idx)) = { \
317 .dev = DEVICE_DT_GET(node), \
318 .info = &SENSING_SENSOR_INFO_NAME(node, idx), \
320 .reporter_num = DT_PROP_LEN_OR(node, reporters, 0), \
321 .conns = SENSING_CONNECTIONS_NAME(node), \
322 .iodev = &SENSING_SENSOR_IODEV_NAME(node, idx), \
328 * This macro defines sensors based on a node, a register info pointer, and a callback list pointer.
331 * @param node The devicetree node identifier.
335 #define SENSING_SENSORS_DEFINE(node, reg_ptr, cb_list_ptr) \ argument
336 DT_FOREACH_PROP_ELEM_VARGS(node, sensor_types, \
348 * @param node The devicetree node identifier.
363 #define SENSING_SENSORS_DT_DEFINE(node, reg_ptr, cb_list_ptr, \ argument
367 SENSOR_DEVICE_DT_DEFINE(node, init_fn, pm_device, \
370 SENSING_CONNECTIONS_DEFINE(node, \
371 DT_PROP_LEN_OR(node, reporters, 0), \
373 SENSING_SENSORS_DEFINE(node, reg_ptr, cb_list_ptr);