Skip to content

Commit 7c4e70b

Browse files
committed
[Sensor] Add user-commands range limitation
1 parent 815d231 commit 7c4e70b

File tree

2 files changed

+11
-2
lines changed

2 files changed

+11
-2
lines changed

components/drivers/sensors/sensor.c

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -354,8 +354,15 @@ static rt_err_t rt_sensor_control(rt_device_t dev, int cmd, void *args)
354354
break;
355355
default:
356356

357-
/* Custom commands */
358-
result = sensor->ops->control(sensor, cmd, args);
357+
if (cmd > RT_SENSOR_CTRL_USER_CMD_START)
358+
{
359+
/* Custom commands */
360+
result = sensor->ops->control(sensor, cmd, args);
361+
}
362+
else
363+
{
364+
result = -RT_ERROR;
365+
}
359366
break;
360367
}
361368

components/drivers/sensors/sensor.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,8 @@ extern "C" {
111111
#define RT_SENSOR_CTRL_SET_POWER (5) /* Set power mode. args type of sensor power mode. ex. RT_SENSOR_POWER_DOWN,RT_SENSOR_POWER_NORMAL */
112112
#define RT_SENSOR_CTRL_SELF_TEST (6) /* Take a self test */
113113

114+
#define RT_SENSOR_CTRL_USER_CMD_START 0x100 /* User commands should be greater than 0x100 */
115+
114116
struct rt_sensor_info
115117
{
116118
rt_uint8_t type; /* The sensor type */

0 commit comments

Comments
 (0)