Jump to content
XPEnology Community

Adding NEC USB 3.0 Driver Support


Recommended Posts

I am working on trying to add support for my NEC D720202 (USB 3.0 Controller) and I think that I need to build (or possibly rebuild) a kernel module in order to add the support to XPEnology. My plan is to try to compile the NEC D720202 driver as a kernel module on a VM and use 'insmod' to install it on my NAS. I found this tutorial which talks about a similar process: http://hallard.me/how-to-install-kernel-modules-on-synology-ds1010-dsm-4-1/ but I don't see the source code for DSM 5.0 build 4582, which is what I am running and would like to use to compile the module. Does anyone know where I can get the 4582 source code, or whether the 4458 build is good enough for this?

Edited by Guest
Link to comment
Share on other sites

So I don't think I'm going to make a guide for this. I'm not sure what exactly I've done to my XPEnology Installation, but I can't seem to undo the support I've added. Weird thing is that I've completely formatted and re-installed XPEnology without replacing the default xhci-hdc.ko file and my NEC USB 3.0 Controller is still recognized. I even tried re-compiling the DSM Kernel without the process below and re-installed the module, but I can still access my USB 3.0 ports. Very strange, but I'm not arguing since it all seems to be working smoothly.


For the compiled modules: https://www.dropbox.com/sh/0dfjxv51vdzhvw9/AAADGtUS6Jl9RsbVUOGlm-Apa?dl=0

The module I installed is xhci-hcd.ko.xpen. You can rename this file to xhci-hcd.ko and replace the module on your XPEnology machine (see below). I've also attached the module I compiled from the unmodified DSM 5.0 code (xhci-hcd.ko.syno) just for comparison sake. I'm not sure if the two modules are different at all. Maybe since I compiled on Ubuntu 14.04 the support is automatically added.


A quick overview of the process:

  • 1. Create Ubuntu VM (I used Azure)
    2. Install necessary packages: apt-get install build-essential ncurses-dev libc6-i386
    3. Download necessary toolchain & DMS source code and extract
    4. Add xhci-hcd.c to source/linux-3.x/drivers/usb/host/
    5. Modify Makefile to include the xhci-hcd.c file in the xhci-hcd module
    6. Compile the DSM Kernel
    7. Replace the /lib/modules/xhci-hcd.ko file on the XPEnology with the source/linux-3.x/drivers/usb/host/xhci-hcd.ko file from the VM
    8. Reboot the XPEnology


Resource Links:





Link to comment
Share on other sites

  • 8 months later...

Yes, you are right - it should include it, but wont :sad:

Somehow original image for 5.2-5565.2 didnt work, and new one also dont recognize it.

About a month ago ive searched google and downloaded "XPEnoboot_DS3615xs_5.2-5565.3-006342a.img" which works very well.

Ive searched history by time of creating the file (iso) and ive came exactly to this thread, so i thought it would be it.


Link to comment
Share on other sites

I just verified that the USB 3.0 ports on my live server (which is running on hardware) are functioning. Not sure what problem you are experiencing, but I am not going to go through the process of re-compiling another driver. All the articles and info that I used are in the links I provided above.

Link to comment
Share on other sites

  • Create New...