I suggest to add two more:
* HTC_FLAGS_EXCEPTION - target firmware filed and can't continue to work... with other words, we have a bug and should fix it.
-* HTC_FLAGS_DMESG - send some debug information to the host.
\ No newline at end of file
+* HTC_FLAGS_DMESG - send some debug information to the host.
+
+In case of exception best what we can do is to gather as match as possible debug information. And find some way to rest target:
+- reboot - we need running firmware. won't reinit hardware. (some times we need it)
+- cold reboot - we need running firmware. will force host to send disconnect event (driver will be automatically reloaded)
+- usb reset - not always working?