int gbVesa_CursorVisible = 0;\r
// --- 2D Video Stream Handlers ---\r
tDrvUtil_Video_BufInfo gVesa_BufInfo;\r
+// --- Settings ---\r
+// int gbVesa_DisableFBCache; // Disables the main-memory framebuffer cache\r
\r
// === CODE ===\r
int Vesa_Install(char **Arguments)\r
{\r
int rv;\r
+\r
+// for( int i = 0; Arguments[i]; i ++ )\r
+// {\r
+// if( strcmp(Aguments[i], "nocache") == 0 )\r
+// gbVesa_DisableFBCache = 1;\r
+// }\r
\r
gpVesa_BiosState = VM8086_Init();\r
\r
size_t total_length;
USB_int_ReadDescriptor(dev, 0, 2, i, sizeof(desc), &desc);
+ // TODO: Check return length? (Do we get a length?)
#if DUMP_DESCRIPTORS
LOG("Configuration Descriptor %i = {", i);
LOG(" .Length = %i", desc.Length);
}
#endif
+ if( desc.NumInterfaces == 0 ) {
+ Log_Notice("USB", "Device does not have any interfaces");
+ continue ;
+ }
+
// TODO: Split here and allow some method of selection
// Allocate device now that we have the configuration
LOG(" .InterfaceClass = 0x%x", iface->InterfaceClass);
LOG(" .InterfaceSubClass = 0x%x", iface->InterfaceSubClass);
LOG(" .InterfaceProcol = 0x%x", iface->InterfaceProtocol);
- # if DEBUG
if( iface->InterfaceStr ) {
char *tmp = USB_int_GetDeviceString(dev, 0, iface->InterfaceStr);
LOG(" .InterfaceStr = %i '%s'", iface->InterfaceStr, tmp);
free(tmp);
}
- # endif
LOG("}");
#endif
);
}
else {
+ LOG("Driver '%s' in use", dev_if->Driver->Name);
dev_if->Driver->Connected(
dev_if,
full_buf + iface_base_ofs, ptr_ofs - iface_base_ofs
);
- // dev_if->Driver->Connected( dev_if );
}
}