summaryrefslogtreecommitdiff
path: root/components/drivers
diff options
context:
space:
mode:
authorBernard Xiong <[email protected]>2021-05-05 21:38:54 +0800
committerGitHub <[email protected]>2021-05-05 21:38:54 +0800
commited900427cd901214526f44bc0fde5dfa9e3dca4f (patch)
tree0046365e70ac9a566c54400a85329145076d525c /components/drivers
parent00524ccc66bbd93de1a20ca5b8fd10e6d0a4008e (diff)
parent4ed550a96cb42c9bd70c254858dd92f0aa9c9bb9 (diff)
Merge pull request #4657 from OpenNuvoton/touch_class
[components/drivers/touch] Bypass controlling commands in touch class to device driver.
Diffstat (limited to 'components/drivers')
-rw-r--r--components/drivers/touch/touch.c31
1 files changed, 8 insertions, 23 deletions
diff --git a/components/drivers/touch/touch.c b/components/drivers/touch/touch.c
index abe2c0fe24..1a747d8669 100644
--- a/components/drivers/touch/touch.c
+++ b/components/drivers/touch/touch.c
@@ -77,6 +77,8 @@ static void rt_touch_irq_enable(rt_touch_t touch)
{
rt_pin_irq_enable(touch->config.irq_pin.pin, RT_TRUE);
}
+#else
+ touch->ops->touch_control(touch, RT_TOUCH_CTRL_ENABLE_INT, RT_NULL);
#endif
}
@@ -88,6 +90,8 @@ static void rt_touch_irq_disable(rt_touch_t touch)
{
rt_pin_irq_enable(touch->config.irq_pin.pin, RT_FALSE);
}
+#else
+ touch->ops->touch_control(touch, RT_TOUCH_CTRL_DISABLE_INT, RT_NULL);
#endif
}
@@ -144,28 +148,6 @@ static rt_err_t rt_touch_control(rt_device_t dev, int cmd, void *args)
switch (cmd)
{
- case RT_TOUCH_CTRL_GET_ID:
- if (args)
- {
- result = touch->ops->touch_control(touch, RT_TOUCH_CTRL_GET_ID, args);
- }
- else
- {
- result = -RT_ERROR;
- }
-
- break;
- case RT_TOUCH_CTRL_GET_INFO:
- if (args)
- {
- result = touch->ops->touch_control(touch, RT_TOUCH_CTRL_GET_INFO, args);
- }
- else
- {
- result = -RT_ERROR;
- }
-
- break;
case RT_TOUCH_CTRL_SET_MODE:
result = touch->ops->touch_control(touch, RT_TOUCH_CTRL_SET_MODE, args);
@@ -206,8 +188,11 @@ static rt_err_t rt_touch_control(rt_device_t dev, int cmd, void *args)
case RT_TOUCH_CTRL_ENABLE_INT:
rt_touch_irq_enable(touch);
break;
+
+ case RT_TOUCH_CTRL_GET_ID:
+ case RT_TOUCH_CTRL_GET_INFO:
default:
- return -RT_ERROR;
+ return touch->ops->touch_control(touch, cmd, args);
}
return result;