We've been using Fastboot from Windows 10 to do development of an Android device. Our normal update and development procedure is this.
One of our developers got his development host machine updated to the 20H2 version of Windows 10, and after that happened the developer was no longer able to get step 4 above to work. Windows wasn't loading the Google USB driver when u-boot enumerated the USB gadget associated with Fastboot anymore. The obvious symptom was that Windows never "discovered" the new device when it was connected to the system.
It seems like that problem traces to the USB VID and PID that the u-boot USB gadget reports. We hadn't changed the default defconfig settings for "CONFIG_USB_GADGET_VENDOR_NUM" and "CONFIG_USB_GADGET_PRODUCT_NUM" from what they were in the distribution, and that seems to trace to a commit dating back to 2015. That commit sets the u-boot gadget VID to 0x0f25 which seems to be registered to "Netchip Technology, Inc", and PID to 0xA4A5 which would be a "Pocketbook Pro903" device.
I guess in retrospect the process outlined above did require us to manually install/update the Google USB driver the first time the Android device attached to a host. That manual installation of the driver associates the VID/PID u-boot enumerates with the Google USB driver. The problem seems to be that the new version of Windows 10 seems to no longer allow that kind of "Make this driver work with this device" kind of behavior to manually add VID/PIDs to the list that a device driver is known to support.
Our fix was to change the VID/PID to be something that is recognized by the Google USB driver. The reasoning was that once Android gets going, that USB port enumerates as a Google ADB device that is identified by Windows. So we should be OK to change u-boot so that when fastboot enumerates a device on that USB port it is the "bootloader" version of the same Google device.
I guess I'm left wondering...
Should the default NXP distribution for u-boot use a USB VID other than what's assigned to NXP or Freescale?
The procedure described in the post mentioned below "MX8MM won't enter fastboot mode" was the way we got Fastboot to work originally, and it worked for months. Then the IT department pushed the Windows 10 20H2 update to some of our development computers. After that update on those computers, the solution described in that link doesn't work anymore. Also, we got a new guy who got a new computer with that version of Windows 10 installed on it and he couldn't follow the procedure either. So It seems like manually installing the driver doesn't work like it used to in earlier versions of Windows 10.
I'm guessing Microsoft decided that manually allowing a user to associate a driver with a device that the vendor didn't explicitly specify in the .inf file that's distributed with the driver was deemed a security issue.
I suppose one could try adding the VID/PID mentioned above to the .inf file that google distributes with the Google USB driver, to see if that allows the driver to work with a Netchips Technology Inc. (VID) Pocketbook Pro903 (PID) on Windows 10 20H2.
Otherwise, maybe it makes more sense to have u-boot enumerate the bootloader with the same device VID/PID that Android uses when it enumerates the port for ADB.
As a follow up to my suggestion to editing the .inf file that gets distributed with Google's Windows USB driver I'd like to say. That solution no longer works. I'm not sure how long ago I tried that trick with windows, but it must have been before Windows required all drivers be signed.
Now if you modify the .inf file, windows complains that the driver has been tampered with and doesn't load the driver.
So if one wanted to use this approach, the resulting driver would need to be properly signed after adding the VID/PID to the inf file.
The fastboot issue has solution before
https://community.nxp.com/t5/i-MX-Processors/MX8MM-won-t-enter-fastboot-mode/m-p/937720#M140466
It is a known fact that updating FW using Fastboot fails in WIN10. We expect the NXP R&D team to solve this problem and provide a suitable fastboot USB driver for win10. After all, factories and ordinary people install Windows 10.
https://community.nxp.com/t5/i-MX-Processors/MX8MM-won-t-enter-fastboot-mode/m-p/937720#M140466 <- NO NO NO WORK!!!