#include <linux/types.h>
 #include <linux/usb.h>
 #include <linux/wait.h>
+#include "uapi/usbip.h"
 
 #define USBIP_VERSION "1.0.0"
 
        USBIP_STUB,
 };
 
-enum usbip_status {
-       /* sdev is available. */
-       SDEV_ST_AVAILABLE = 0x01,
-       /* sdev is now used. */
-       SDEV_ST_USED,
-       /* sdev is unusable because of a fatal error. */
-       SDEV_ST_ERROR,
-
-       /* vdev does not connect a remote device. */
-       VDEV_ST_NULL,
-       /* vdev is used, but the USB address is not assigned yet */
-       VDEV_ST_NOTASSIGNED,
-       VDEV_ST_USED,
-       VDEV_ST_ERROR
-};
-
 /* event handler */
 #define USBIP_EH_SHUTDOWN      (1 << 0)
 #define USBIP_EH_BYE           (1 << 1)
 /* a common structure for stub_device and vhci_device */
 struct usbip_device {
        enum usbip_side side;
-       enum usbip_status status;
+       enum usbip_device_status status;
 
        /* lock for status */
        spinlock_t lock;