--- a/driver/wl_linux.c +++ b/driver/wl_linux.c @@ -463,6 +463,16 @@ wl_schedule_fn(wl_info_t *wl, void (*fn) } #endif /* DSLCPE_DELAY */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0) +#define WL_DEFAULT_OPS \ + .ndo_open = wl_open, \ + .ndo_stop = wl_close, \ + .ndo_start_xmit = wl_start, \ + .ndo_get_stats = wl_get_stats, \ + .ndo_set_mac_address = wl_set_mac_address, \ + .ndo_set_rx_mode = wl_set_multicast_list, \ + .ndo_do_ioctl = wl_ioctl +#else #define WL_DEFAULT_OPS \ .ndo_open = wl_open, \ .ndo_stop = wl_close, \ @@ -471,6 +481,7 @@ wl_schedule_fn(wl_info_t *wl, void (*fn) .ndo_set_mac_address = wl_set_mac_address, \ .ndo_set_multicast_list = wl_set_multicast_list, \ .ndo_do_ioctl = wl_ioctl +#endif static const struct net_device_ops wl_ops = { WL_DEFAULT_OPS,