In un post sui kernel 2.6.12-rcx avevo descritto un problema riguardante la compilazione del driver per i dispositivi wireless ipw2100 a partire dal kernel 2.6.12-rc6, e perciò è compresa anche la versione stabile, cioè il 2.6.12.
Ne ho accennato anche nel thread specifico sull'uscita di quest'ultimo.
Comunque, nel thread sugli rc avevo postato una patch da applicare al driver che avevo fatto io, però vi posto di seguito una patch simile, presa dalla mailing list degli sviluppatori dei driver ipw2100 e ipw2200, quest'ultima è più efficace in quanto il codice sarà compilato in un modo o in quell'altro a seconda se si tratti di un kernel 2.6.12 o no.
codice:
diff -urp ipw2200-1.0.4/net/ieee80211.h ipw2200-1.0.4-is_multicast_ether_addr/net/ieee80211.h
--- ipw2200-1.0.4/net/ieee80211.h 2005-05-17 22:11:08.000000000 +0200
+++ ipw2200-1.0.4-is_multicast_ether_addr/net/ieee80211.h 2005-06-16 12:32:42.000000000 +0200
@@ -718,10 +718,12 @@ enum ieee80211_state {
#define MAC_ARG(x) ((u8*)(x))[0],((u8*)(x))[1],((u8*)(x))[2],((u8*)(x))[3],((u8*)(x))[4],((u8*)(x))[5]
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,12)
extern inline int is_multicast_ether_addr(const u8 *addr)
{
return ((addr[0] != 0xff) && (0x01 & addr[0]));
}
+#endif
extern inline int is_broadcast_ether_addr(const u8 *addr)
{