#define VENDOR_ID_MICROCHIP    0x0424
 #define VENDOR_ID_REALTEK      0x0bda
 #define VENDOR_ID_TI           0x0451
+#define VENDOR_ID_VIA          0x2109
 
 /*
  * Returns the onboard_hub platform device that is associated with the USB
        { USB_DEVICE(VENDOR_ID_REALTEK, 0x5414) }, /* RTS5414 USB 2.1 */
        { USB_DEVICE(VENDOR_ID_TI, 0x8140) }, /* TI USB8041 3.0 */
        { USB_DEVICE(VENDOR_ID_TI, 0x8142) }, /* TI USB8041 2.0 */
+       { USB_DEVICE(VENDOR_ID_VIA, 0x0817) }, /* VIA VL817 3.1 */
+       { USB_DEVICE(VENDOR_ID_VIA, 0x2817) }, /* VIA VL817 2.0 */
        {}
 };
 MODULE_DEVICE_TABLE(usb, onboard_hub_id_table);
 
        .reset_us = 50,
 };
 
+static const struct onboard_hub_pdata vialab_vl817_data = {
+       .reset_us = 10,
+};
+
 static const struct of_device_id onboard_hub_match[] = {
        { .compatible = "usb424,2514", .data = µchip_usb424_data, },
        { .compatible = "usb451,8140", .data = &ti_tusb8041_data, },
        { .compatible = "usbbda,5411", .data = &realtek_rts5411_data, },
        { .compatible = "usbbda,414", .data = &realtek_rts5411_data, },
        { .compatible = "usbbda,5414", .data = &realtek_rts5411_data, },
+       { .compatible = "usb2109,817", .data = &vialab_vl817_data, },
+       { .compatible = "usb2109,2817", .data = &vialab_vl817_data, },
        {}
 };