| 31 | } |
| 32 | |
| 33 | static rt_err_t _open(rt_device_t dev, rt_uint16_t oflag) |
| 34 | { |
| 35 | int chnr; |
| 36 | struct rt_vbus_dev *vdev = dev->user_data; |
| 37 | |
| 38 | if (vdev->chnr) |
| 39 | return RT_EOK; |
| 40 | |
| 41 | /* FIXME: request the same name for twice will crash */ |
| 42 | chnr = rt_vbus_request_chn(&vdev->req, RT_WAITING_FOREVER); |
| 43 | if (chnr < 0) |
| 44 | return chnr; |
| 45 | |
| 46 | vdev->chnr = chnr; |
| 47 | rt_vbus_register_listener(chnr, RT_VBUS_EVENT_ID_RX, _rx_indicate, dev); |
| 48 | rt_vbus_register_listener(chnr, RT_VBUS_EVENT_ID_TX, _tx_complete, dev); |
| 49 | |
| 50 | return RT_EOK; |
| 51 | } |
| 52 | |
| 53 | static rt_err_t _close(rt_device_t dev) |
| 54 | { |
nothing calls this directly
no test coverage detected