Skip to content

Commit ab99a53

Browse files
nixwardfabiobaltieri
authored andcommitted
net: lwm2m: ipso: accelerometer: remove buffers for optional resources
Allows application code to control allocation of buffers of optional resources. Y value, Z value, min range value, max range value resources are optional. Signed-off-by: Nick Ward <nix.ward@gmail.com>
1 parent a5a78ee commit ab99a53

File tree

2 files changed

+12
-16
lines changed

2 files changed

+12
-16
lines changed

doc/releases/migration-guide-4.2.rst

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -502,6 +502,14 @@ Networking
502502
the previously used ``NET_REQUEST_ETHERNET_GET_QAV_PARAM`` and
503503
``NET_REQUEST_ETHERNET_GET_QAV_PARAM`` options.
504504

505+
LwM2M
506+
=====
507+
508+
* Accelerometer object: optional resources Y value, Z value, min range value,
509+
max range value can now be used optionally as per the accelerometer object's
510+
specification. Users of these resources will now need to provide a read
511+
buffer.
512+
505513
OpenThread
506514
==========
507515

subsys/net/lib/lwm2m/ipso_accelerometer.c

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,6 @@ LOG_MODULE_REGISTER(LOG_MODULE_NAME);
4343
/* resource state */
4444
struct ipso_accel_data {
4545
double x_value;
46-
double y_value;
47-
double z_value;
48-
double min_range;
49-
double max_range;
5046
};
5147

5248
static struct ipso_accel_data accel_data[MAX_INSTANCE_COUNT];
@@ -108,20 +104,12 @@ static struct lwm2m_engine_obj_inst *accel_create(uint16_t obj_inst_id)
108104
INIT_OBJ_RES_DATA(X_VALUE_RID, res[avail], i, res_inst[avail], j,
109105
&accel_data[avail].x_value,
110106
sizeof(accel_data[avail].x_value));
111-
INIT_OBJ_RES_DATA(Y_VALUE_RID, res[avail], i, res_inst[avail], j,
112-
&accel_data[avail].y_value,
113-
sizeof(accel_data[avail].y_value));
114-
INIT_OBJ_RES_DATA(Z_VALUE_RID, res[avail], i, res_inst[avail], j,
115-
&accel_data[avail].z_value,
116-
sizeof(accel_data[avail].z_value));
107+
INIT_OBJ_RES_OPTDATA(Y_VALUE_RID, res[avail], i, res_inst[avail], j);
108+
INIT_OBJ_RES_OPTDATA(Z_VALUE_RID, res[avail], i, res_inst[avail], j);
117109
INIT_OBJ_RES_OPTDATA(SENSOR_UNITS_RID, res[avail], i,
118110
res_inst[avail], j);
119-
INIT_OBJ_RES_DATA(MIN_RANGE_VALUE_RID, res[avail], i, res_inst[avail],
120-
j, &accel_data[avail].min_range,
121-
sizeof(accel_data[avail].min_range));
122-
INIT_OBJ_RES_DATA(MAX_RANGE_VALUE_RID, res[avail], i, res_inst[avail],
123-
j, &accel_data[avail].max_range,
124-
sizeof(accel_data[avail].max_range));
111+
INIT_OBJ_RES_OPTDATA(MIN_RANGE_VALUE_RID, res[avail], i, res_inst[avail], j);
112+
INIT_OBJ_RES_OPTDATA(MAX_RANGE_VALUE_RID, res[avail], i, res_inst[avail], j);
125113
#if defined(CONFIG_LWM2M_IPSO_ACCELEROMETER_VERSION_1_1)
126114
INIT_OBJ_RES_OPTDATA(APPLICATION_TYPE_RID, res[avail], i,
127115
res_inst[avail], j);

0 commit comments

Comments
 (0)