diff --git a/MdeModulePkg/Application/UiApp/FrontPage.c b/MdeModulePkg/Application/UiApp/FrontPage.c index f63bf426c8..67fcac3a41 100644 --- a/MdeModulePkg/Application/UiApp/FrontPage.c +++ b/MdeModulePkg/Application/UiApp/FrontPage.c @@ -841,15 +841,9 @@ VOID WebcamStatus(VOID) { DEBUG ((EFI_D_INFO, " InterfaceSubClass: %d\n", IntfDesc.InterfaceSubClass)); DEBUG ((EFI_D_INFO, " InterfaceProtocol: %d\n", IntfDesc.InterfaceProtocol)); - //TODO: make sure this picks up all of our laptop webcams and nothing else - UINT32 Id = (((UINT32)DevDesc.IdVendor) << 16) | ((UINT32)DevDesc.IdProduct); - switch (Id) { - case 0x04f2b5a7: // Chicony Camera (bonw13, serw10, oryp4) - case 0x04f2b649: // Chicony Camera (galp4) - case 0x04f2b685: // Chicony Camera (bonw14, darp5, darp6, gaze14, gaze15, lemp9, serw12) - case 0x59869102: // Acer BisonCam (addw1, addw2, oryp6) - Webcams++; - break; + if (IntfDesc.InterfaceClass == 14 && IntfDesc.InterfaceSubClass == 1) { + DEBUG ((EFI_D_INFO, " Detected Video Control interface\n")); + Webcams++; } }