none
Windows Update missing identication for Fresco Logic FL-1000 USB 3.0 controller

    Question

  • FYI

    VEN_1B73&DEV_1000

    The controller has for instance been used in laptops from Asus.

    So the native USB 3.0 support in RTM has yet to offer support for that USB 3.0 serial controller?

    Right now - it's still a manual thing dropping a Win7 driver in as during the previews ...

    Thursday, August 23, 2012 6:41 AM

Answers

  • Hi.

    I tested it out again.

    First,

    1) 3.5.74.0 (assumed "Win 8" x64) (2012-07-19) (unofficial dist)

    ... in %ProgramFiles%\Fresco Logic\Fresco Logic USB3.0 Host Controller\amd64_host\FLxHCIc.inf

    ... under [FRESCO.NTAMD64] (Generic Bus) is missing the identity for the FL-1000:

    %FLxHCIc.DRVDESC1000%=      FLxHCIc,        PCI\VEN_1B73&DEV_1000

    ... except for that missing identity in FLxHCIc.inf, there seems to be no difference except for the fact that the 2 .sys files (drivers) has been patched (of course).

    ... so I don't know why %FLxHCIc.DRVDESC1000%=      FLxHCIc,        PCI\VEN_1B73&DEV_1000 is not in there ... but you could just could add that string manually to %ProgramFiles%\Fresco Logic\Fresco Logic USB3.0 Host Controller\amd64_host\FLxHCIc.inf - and then update the drivers from Device Manager.

    But I am using the 3.5.42.0 set now - also from around this summer, it seems to work.

    After that, I'll try out this set by adding the missing line to the inf or wait for a new release. 3.5.74.0 has updated FLxHCIc.sys (Fresco Logic xHCI (USB3) Controller FL1000 Series) and FLxHCIh.sys (Fresco Logic xHCI (USB3) Root Hub. So the drivers are in fact what seems to be a Win8 update - may be "beta"? - according the zip-file naming only though.

    2) 3.5.42.0 (Win 7 x64) (2012-05-28) (public dist i.e. by Asus from 2012-08-01)

    Downloaded that from ASUS. The Ultrabook UX21E also uses that chip.

    It installs, and I tried it out. So Works? I don't seem to get the yellow banks I got previously after reboot/resume on the Intel USB Host Controller (when I had these Fresco drivers installed and 1 HD USB3 device controller attached to that USB3 port - and then rebooted or resumed from sleep or whatever trigger ...).

    2.b) AsPatch10430001 (ASUS patch of the Fresco stuff removes CM_DEVCAP_REMOVABLE from device capabilities). Why? And why does Fresco Logic not do that themselves in their installer distribution?

    Additionally, After the Fresco installer you get the following:

    \HKLM\CurrentControlSet\Enum\PCI\VEN_1B73&DEV_1000&SUBSYS_10391043&REV_04\.....

    There is a key in that hierarchy that sets the device capabilities.

    Its set at (Win default?) Capabilities = 0x0000086 (134).

    ... meaning the following bits have been set: 10000110b

    (WINDDK)
    #define CM_DEVCAP_EJECTSUPPORTED    (0x00000002)
    #define CM_DEVCAP_REMOVABLE         (0x00000004)
    #define CM_DEVCAP_SURPRISEREMOVALOK (0x00000080)

     After running AsPatch10430001 ASUS creates a scheduled task which is run at every system startup. So the first reset only happens after a reboot - but their "installer" does not reboot the machine. The TS job is named: ASUS Patch 10430001.

    What task ASUS Patch 10430001 does is patch and through the TS job kind of "invariantly" maintain the Fresco controllers device capabilities set at: 10000010b (0x0000082). So ASUS removes the capability CM_DEVCAP_REMOVABLE - and maintains that resetting for whatever reason (may be if Windows should reset it to 0x0000086 on device rediscovery)?

    ... so ASUS unsets the 3rd bit ... why I don't know. The test I did above was with that bit set by Fresco. In any of their distributions Asus will unset that bit. Now I have added the patch - and will try and run with that bit not set as suggested by Asus. Let's see. But I would like to know ... what's that about? Is it a bug or not ...

    (WINDDK)
    #define CM_DEVCAP_EJECTSUPPORTED    (0x00000002)
    #define CM_DEVCAP_SURPRISEREMOVALOK (0x00000080)

     

    BTW The rest of those capabilities from WINDDK:

     (WINDDK)
    #define CM_DEVCAP_LOCKSUPPORTED     (0x00000001)
    #define CM_DEVCAP_EJECTSUPPORTED    (0x00000002)
    #define CM_DEVCAP_REMOVABLE         (0x00000004)
    #define CM_DEVCAP_DOCKDEVICE        (0x00000008)
    #define CM_DEVCAP_UNIQUEID          (0x00000010)
    #define CM_DEVCAP_SILENTINSTALL     (0x00000020)
    #define CM_DEVCAP_RAWDEVICEOK       (0x00000040)
    #define CM_DEVCAP_SURPRISEREMOVALOK (0x00000080)
    #define CM_DEVCAP_HARDWAREDISABLED  (0x00000100)
    #define CM_DEVCAP_NONDYNAMIC        (0x00000200)





    Sunday, August 26, 2012 4:55 AM
  • I have no idea why all the flags are set. I'll add the like to the inf and install the driver this evening and see if this works for me, too.

    "A programmer is just a tool which converts caffeine into code"

    Tuesday, August 28, 2012 12:34 PM

All replies

  • The driver catalog from microsoft for windows 8 is growing continuously, so if the drivers is not available through Windows Update yet it probably will be soon.
    Thursday, August 23, 2012 7:22 AM
  • I had the same issue with the CP and MSFT told me to use the Windows 7 drivers, the buildin Win8 USB 3.0 drivers WON'T work with the Fresco logic chip:

    http://social.technet.microsoft.com/Forums/en-US/W8ITProPreRel/thread/ec623ec5-2ec8-4782-af1a-9b083b6113a3


    "A programmer is just a tool which converts caffeine into code"

    Thursday, August 23, 2012 9:24 AM
  • Hi Andre.

    Thanks, Exactly what I need to know: http://social.technet.microsoft.com/Forums/en-US/W8ITProPreRel/thread/ec623ec5-2ec8-4782-af1a-9b083b6113a3

    I've tried using the Win7 drivers. Often the Intel USB Chipset controller would come up with a yellow bang (in consumer preview) when I had the Fresco Logic Win7 driver installed on that machine - in effect disabling all attached usb devices.

    But I'll have a go at it again then ... but according to the thread you referred to - it will probably be the same symptoms.

    If you have it working - please state which version of the Fresco Logic driver you're using? :o) 


    Friday, August 24, 2012 12:56 PM
  • There are Windows 8 drivers (V3.5.74.0_Win8_32_64.zip) but they don't work for me. The setup now works and install something, but i still have the unknown device in device manager :(

    "A programmer is just a tool which converts caffeine into code"

    Saturday, August 25, 2012 5:57 AM
  • Hi.

    I tested it out again.

    First,

    1) 3.5.74.0 (assumed "Win 8" x64) (2012-07-19) (unofficial dist)

    ... in %ProgramFiles%\Fresco Logic\Fresco Logic USB3.0 Host Controller\amd64_host\FLxHCIc.inf

    ... under [FRESCO.NTAMD64] (Generic Bus) is missing the identity for the FL-1000:

    %FLxHCIc.DRVDESC1000%=      FLxHCIc,        PCI\VEN_1B73&DEV_1000

    ... except for that missing identity in FLxHCIc.inf, there seems to be no difference except for the fact that the 2 .sys files (drivers) has been patched (of course).

    ... so I don't know why %FLxHCIc.DRVDESC1000%=      FLxHCIc,        PCI\VEN_1B73&DEV_1000 is not in there ... but you could just could add that string manually to %ProgramFiles%\Fresco Logic\Fresco Logic USB3.0 Host Controller\amd64_host\FLxHCIc.inf - and then update the drivers from Device Manager.

    But I am using the 3.5.42.0 set now - also from around this summer, it seems to work.

    After that, I'll try out this set by adding the missing line to the inf or wait for a new release. 3.5.74.0 has updated FLxHCIc.sys (Fresco Logic xHCI (USB3) Controller FL1000 Series) and FLxHCIh.sys (Fresco Logic xHCI (USB3) Root Hub. So the drivers are in fact what seems to be a Win8 update - may be "beta"? - according the zip-file naming only though.

    2) 3.5.42.0 (Win 7 x64) (2012-05-28) (public dist i.e. by Asus from 2012-08-01)

    Downloaded that from ASUS. The Ultrabook UX21E also uses that chip.

    It installs, and I tried it out. So Works? I don't seem to get the yellow banks I got previously after reboot/resume on the Intel USB Host Controller (when I had these Fresco drivers installed and 1 HD USB3 device controller attached to that USB3 port - and then rebooted or resumed from sleep or whatever trigger ...).

    2.b) AsPatch10430001 (ASUS patch of the Fresco stuff removes CM_DEVCAP_REMOVABLE from device capabilities). Why? And why does Fresco Logic not do that themselves in their installer distribution?

    Additionally, After the Fresco installer you get the following:

    \HKLM\CurrentControlSet\Enum\PCI\VEN_1B73&DEV_1000&SUBSYS_10391043&REV_04\.....

    There is a key in that hierarchy that sets the device capabilities.

    Its set at (Win default?) Capabilities = 0x0000086 (134).

    ... meaning the following bits have been set: 10000110b

    (WINDDK)
    #define CM_DEVCAP_EJECTSUPPORTED    (0x00000002)
    #define CM_DEVCAP_REMOVABLE         (0x00000004)
    #define CM_DEVCAP_SURPRISEREMOVALOK (0x00000080)

     After running AsPatch10430001 ASUS creates a scheduled task which is run at every system startup. So the first reset only happens after a reboot - but their "installer" does not reboot the machine. The TS job is named: ASUS Patch 10430001.

    What task ASUS Patch 10430001 does is patch and through the TS job kind of "invariantly" maintain the Fresco controllers device capabilities set at: 10000010b (0x0000082). So ASUS removes the capability CM_DEVCAP_REMOVABLE - and maintains that resetting for whatever reason (may be if Windows should reset it to 0x0000086 on device rediscovery)?

    ... so ASUS unsets the 3rd bit ... why I don't know. The test I did above was with that bit set by Fresco. In any of their distributions Asus will unset that bit. Now I have added the patch - and will try and run with that bit not set as suggested by Asus. Let's see. But I would like to know ... what's that about? Is it a bug or not ...

    (WINDDK)
    #define CM_DEVCAP_EJECTSUPPORTED    (0x00000002)
    #define CM_DEVCAP_SURPRISEREMOVALOK (0x00000080)

     

    BTW The rest of those capabilities from WINDDK:

     (WINDDK)
    #define CM_DEVCAP_LOCKSUPPORTED     (0x00000001)
    #define CM_DEVCAP_EJECTSUPPORTED    (0x00000002)
    #define CM_DEVCAP_REMOVABLE         (0x00000004)
    #define CM_DEVCAP_DOCKDEVICE        (0x00000008)
    #define CM_DEVCAP_UNIQUEID          (0x00000010)
    #define CM_DEVCAP_SILENTINSTALL     (0x00000020)
    #define CM_DEVCAP_RAWDEVICEOK       (0x00000040)
    #define CM_DEVCAP_SURPRISEREMOVALOK (0x00000080)
    #define CM_DEVCAP_HARDWAREDISABLED  (0x00000100)
    #define CM_DEVCAP_NONDYNAMIC        (0x00000200)





    Sunday, August 26, 2012 4:55 AM
  • I have no idea why all the flags are set. I'll add the like to the inf and install the driver this evening and see if this works for me, too.

    "A programmer is just a tool which converts caffeine into code"

    Tuesday, August 28, 2012 12:34 PM
  • Are you still using a PC with the Fresco Controller?

    The issue is back in Win8.1 (i.e. after reinstall)?

    This may be the issue with the configuration of Fresco Logic Controller on Asus. To make the controller Work Asus seem to have switched the flags about the controllers removable capabilities - as described previously above.

    If so, You should replace the CM_DEVCAP_REMOVABLE flag with the CM_DEVCAP_SURPRISEREMOVALOK for the device capabilities of the Fresco Logic device (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\PCI\VEN_1B73&DEV_1000&SUBSYS_10391043&REV_04\...\capabilities)

    For details on how to do that look at my post here: http://social.technet.microsoft.com/Forums/windows/en-US/a3748df9-18bf-48b7-a834-a99c9de84e3b/2-problems-after-updating-to-windows-81?forum=w8itprohardware&prof=required

    ASUS found it nessecary to do this. No more yellow bangs.

    During any of the Win8 previews this also happened to make the controller work correctly.

    If not, the Fresco Logic device will for some reason put down the Intel ... USB Enhanced Host Controller with yellow bangs.

    Tuesday, December 03, 2013 3:17 PM