--- a/drivers/net/wireless/ipw2x00/ipw2100.c
+++ b/drivers/net/wireless/ipw2x00/ipw2100.c
@@ -6109,7 +6109,11 @@ static struct net_device *ipw2100_alloc_
 	netdev_attach_ops(dev, &ipw2100_netdev_ops);
 	dev->ethtool_ops = &ipw2100_ethtool_ops;
 	dev->wireless_handlers = &ipw2100_wx_handler_def;
+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,31))
 	priv->wireless_data.libipw = priv->ieee;
+#else
+	priv->wireless_data.ieee80211 = (struct ieee80211_device *) priv->ieee;
+#endif
 	dev->wireless_data = &priv->wireless_data;
 	dev->watchdog_timeo = 3 * HZ;
 	dev->irq = 0;
