More progress on the m5602, protecting against sudden disconnects
I today experimented with how the driver reacts to usb disconnects.
Turns out that if no stream is active, this is no problem. If a disconnect happens during live video, the driver improperly doesn't release the /dev/video* device. Creating a new one upon usb connection.
I commit a fix today which always releases the video device but not until all clients have exited the program. I then realized that it's possible for the device to be reconnected while waiting for all clients to exit, then some kind of recovery has to happen. I haven't written the code to catch this but expect a commit soon.
Also under investigation is suspend/resume support. Currently suspend just fails when a stream is active...
Turns out that if no stream is active, this is no problem. If a disconnect happens during live video, the driver improperly doesn't release the /dev/video* device. Creating a new one upon usb connection.
I commit a fix today which always releases the video device but not until all clients have exited the program. I then realized that it's possible for the device to be reconnected while waiting for all clients to exit, then some kind of recovery has to happen. I haven't written the code to catch this but expect a commit soon.
Also under investigation is suspend/resume support. Currently suspend just fails when a stream is active...
1 Comments:
Hello, I'm glad to hear there is work being done on the m5602 camera for Linux laptops.
I've had my computer for over a year now and the camera is the only thing that does have fully supported drivers.
May I ask what the current status is?
The last time I tried compiling a driver module, the camera didn't work but it got really hot. So my guess is that something was happening.
Thanks for working on it!
Post a Comment
<< Home