Index: sys/compat/linuxkpi/common/include/linux/kernel.h =================================================================== --- sys/compat/linuxkpi/common/include/linux/kernel.h +++ sys/compat/linuxkpi/common/include/linux/kernel.h @@ -597,10 +597,6 @@ #define cpu_has_clflush linux_cpu_has_clflush #endif -typedef struct pm_message { - int event; -} pm_message_t; - /* Swap values of a and b */ #define swap(a, b) do { \ typeof(a) _swap_tmp = a; \ Index: sys/compat/linuxkpi/common/include/linux/pci.h =================================================================== --- sys/compat/linuxkpi/common/include/linux/pci.h +++ sys/compat/linuxkpi/common/include/linux/pci.h @@ -59,6 +59,7 @@ #include #include #include +#include struct pci_device_id { uint32_t vendor; Index: sys/compat/linuxkpi/common/include/linux/pm.h =================================================================== --- sys/compat/linuxkpi/common/include/linux/pm.h +++ sys/compat/linuxkpi/common/include/linux/pm.h @@ -33,6 +33,10 @@ #ifndef _LINUXKPI_LINUX_PM_H #define _LINUXKPI_LINUX_PM_H +typedef struct pm_message { + int event; +} pm_message_t; + #ifdef CONFIG_PM_SLEEP #define SIMPLE_DEV_PM_OPS(_name, _suspendfunc, _resumefunc) \ const struct dev_pm_ops _name = { \ Index: sys/compat/linuxkpi/common/include/linux/usb.h =================================================================== --- sys/compat/linuxkpi/common/include/linux/usb.h +++ sys/compat/linuxkpi/common/include/linux/usb.h @@ -37,12 +37,13 @@ #include #include +#include + struct usb_device; struct usb_interface; struct usb_driver; struct urb; -typedef void *pm_message_t; typedef void (usb_complete_t)(struct urb *); #define USB_MAX_FULL_SPEED_ISOC_FRAMES (60 * 1) Index: sys/compat/linuxkpi/common/src/linux_usb.c =================================================================== --- sys/compat/linuxkpi/common/src/linux_usb.c +++ sys/compat/linuxkpi/common/src/linux_usb.c @@ -339,11 +339,14 @@ { struct usb_linux_softc *sc = device_get_softc(dev); struct usb_driver *udrv = usb_linux_get_usb_driver(sc); + pm_message_t pm_msg; int err; err = 0; - if (udrv && udrv->suspend) - err = (udrv->suspend) (sc->sc_ui, 0); + if (udrv && udrv->suspend) { + pm_msg.event = 0; /* XXX */ + err = (udrv->suspend) (sc->sc_ui, pm_msg); + } return (-err); }