1. 10 Mar, 2010 1 commit
  2. 08 Jan, 2010 1 commit
  3. 04 Dec, 2009 1 commit
  4. 23 Nov, 2009 2 commits
  5. 13 Nov, 2009 1 commit
  6. 11 Nov, 2009 1 commit
  7. 06 Nov, 2009 1 commit
    • John W. Linville's avatar
      Revert "ipw2200: fix oops on missing firmware" · 143d40f3
      John W. Linville authored
      This reverts commit e6c5fc53.
      
      Based on this regression report:
      
      Date: Thu, 05 Nov 2009 15:59:16 +0100
      From: Holger Schurig <holgerschurig@gmail.com>
      To: linux-wireless@vger.kernel.org
      Subject: BUG: oops when "rmmod ipw2200"
      
      This happened on wireless-testing v2.6.32-rc6-41575-g5e68bfb. I
      modprobed ipw2200, put it into monitor mode, used tshark a while to
      monitor, then I stopped tshark, "ifconfig eth2 down" and finally
      "rmmod ipw2200", and voila:
      
      [  917.189620] ------------[ cut here ]------------
      [  917.189717] kernel BUG at net/wireless/core.c:543!
      [  917.189805] invalid opcode: 0000 [#1] PREEMPT SMP
      [  917.190002] last sysfs file: /sys/devices/pci0000:00/0000:00:1e.0/0000:02:0d.0/firmware/0000:02:0d.0/loading
      [  917.190136] Modules linked in: lib80211_crypt_wep ipw2200(-) libipw lib80211 ath5k mac80211 ath cfg80211 psmouse uhci_hcd
      [  917.190680]
      [  917.190759] Pid: 1763, comm: rmmod Not tainted (2.6.32-rc6-wl #26) Amilo M1425
      [  917.190886] EIP: 0060:[<f8accf34>] EFLAGS: 00010202 CPU: 0
      [  917.190992] EIP is at wiphy_unregister+0xd3/0x175 [cfg80211]
      [  917.191083] EAX: f601d4c4 EBX: 00000000 ECX: 00000000 EDX: f79e8600
      [  917.191176] ESI: f601d400 EDI: f95b4350 EBP: f6009eb4 ESP: f6009e8c
      [  917.191269]  DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
      [  917.191360] Process rmmod (pid: 1763, ti=f6008000 task=f79e8130 task.ti=f6008000)
      [  917.191486] Stack:
      [  917.191562]  f601d5a0 f601d484 f6460e98 f6009ea0 c01407ee f6009eb8 00000246 f64604c0
      [  917.191916] <0> f6460e5c f95b4350 f6009ec0 f94fd030 f6460e98 f6009edc f95a9d4f f787bc00
      [  917.192100] <0> f787bc58 f787bc00 f95b4350 f95b4350 f6009ee8 c0207fca f787bc58 f6009ef8
      [  917.192100] Call Trace:
      [  917.192100]  [<c01407ee>] ? trace_hardirqs_on+0xb/0xd
      [  917.192100]  [<f94fd030>] ? unregister_ieee80211+0xe/0x27 [libipw]
      [  917.192100]  [<f95a9d4f>] ? ipw_pci_remove+0x59/0x227 [ipw2200]
      [  917.192100]  [<c0207fca>] ? pci_device_remove+0x19/0x39
      [  917.192100]  [<c02b93a4>] ? __device_release_driver+0x59/0x9d
      [  917.192100]  [<c02b944f>] ? driver_detach+0x67/0x85
      [  917.192100]  [<c02b88d6>] ? bus_remove_driver+0x69/0x85
      [  917.192100]  [<c02b9878>] ? driver_unregister+0x4d/0x54
      [  917.192100]  [<c02081c3>] ? pci_unregister_driver+0x28/0x71
      [  917.192100]  [<f95a9cf4>] ? ipw_exit+0x1c/0x1e [ipw2200]
      [  917.192100]  [<c0148e2b>] ? sys_delete_module+0x192/0x1ef
      [  917.192100]  [<c0162cdb>] ? remove_vma+0x52/0x58
      [  917.192100]  [<c01028bb>] ? sysenter_exit+0xf/0x18
      [  917.192100]  [<c0102888>] ? sysenter_do_call+0x12/0x36
      [  917.192100] Code: 74 07 e8 81 bc 8c c7 eb c8 8d 55 e0 89 f8 e8 d6 6d 66 c7 8b 45 dc 31 d2 e8 81 cc 8c c7 8d 86 c4 00 00 00 39 86 c4 00 00 00 74 04 <0f> 0b eb fe 8b 45 dc 8d 5e 0c e8 5a cc 8c c7 8b 86 94 03 00 00
      [  917.192100] EIP: [<f8accf34>] wiphy_unregister+0xd3/0x175 [cfg80211] SS:ESP 0068:f6009e8c
      [  917.203718] ---[ end trace bcaaf449945a5100 ]---
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      143d40f3
  8. 30 Oct, 2009 1 commit
  9. 11 Oct, 2009 1 commit
  10. 07 Oct, 2009 1 commit
  11. 01 Sep, 2009 1 commit
  12. 28 Aug, 2009 4 commits
  13. 20 Aug, 2009 1 commit
    • Reinette Chatre's avatar
      ipw2x00: fix sparse warnings · 21f8a73f
      Reinette Chatre authored
      This fixes:
      
        CHECK   drivers/net/wireless/ipw2x00/ipw2100.c
      drivers/net/wireless/ipw2x00/ipw2100.c:7888:22: warning: symbol 'mode' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2100.c:188:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2100.c:7952:18: warning: symbol 'mode' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2100.c:188:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2100.c:8000:18: warning: symbol 'mode' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2100.c:188:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2100.c:8268:27: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2100.c:8268:27: originally declared here
      drivers/net/wireless/ipw2x00/ipw2100.c:8268:27: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2100.c:8268:27: originally declared here
      drivers/net/wireless/ipw2x00/ipw2100.c:8268:27: warning: symbol '_min2' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2100.c:8268:27: originally declared here
        CC [M]  drivers/net/wireless/ipw2x00/ipw2100.o
        CHECK   drivers/net/wireless/ipw2x00/ipw2200.c
      drivers/net/wireless/ipw2x00/ipw2200.c:847:13: warning: symbol 'led' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:92:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:891:13: warning: symbol 'led' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:92:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:935:13: warning: symbol 'led' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:92:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:980:13: warning: symbol 'led' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:92:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:1016:13: warning: symbol 'led' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:92:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:1051:13: warning: symbol 'led' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:92:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:1823:13: warning: symbol 'channel' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:86:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min2' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min2' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min2' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min2' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min2' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min2' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min2' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min2' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min1' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min2' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min2' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: warning: symbol '_min2' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:4268:19: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:6228:28: warning: symbol 'channel' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:86:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:6369:20: warning: symbol 'channel' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:86:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:6857:12: warning: symbol 'mode' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:87:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:7964:13: warning: symbol 'channel' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:86:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:8720:12: warning: symbol 'channel' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:86:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:9662:13: warning: symbol 'mode' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:87:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:9720:13: warning: symbol 'mode' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:87:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:9826:13: warning: symbol 'mode' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:87:12: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:10318:21: warning: symbol 'remaining_bytes' shadows an earlier one
      drivers/net/wireless/ipw2x00/ipw2200.c:10184:13: originally declared here
      drivers/net/wireless/ipw2x00/ipw2200.c:8338:45: warning: cast to restricted __le16
      drivers/net/wireless/ipw2x00/ipw2200.c:4414:21: warning: incorrect type in assignment (different base types)
      drivers/net/wireless/ipw2x00/ipw2200.c:4414:21:    expected restricted __le16 [usertype] size
      drivers/net/wireless/ipw2x00/ipw2200.c:4414:21:    got unsigned short [unsigned] [usertype] <noident>
      drivers/net/wireless/ipw2x00/ipw2200.c:6105:33: warning: incorrect type in initializer (different base types)
      drivers/net/wireless/ipw2x00/ipw2200.c:6105:33:    expected restricted __le16 [usertype] tx_rates
      drivers/net/wireless/ipw2x00/ipw2200.c:6105:33:    got unsigned short [unsigned] [usertype] rates_mask
      drivers/net/wireless/ipw2x00/ipw2200.c:6124:29: warning: bad assignment (>>=) to restricted __le16
      drivers/net/wireless/ipw2x00/ipw2200.c:6130:31: warning: restricted __le16 degrades to integer
      drivers/net/wireless/ipw2x00/ipw2200.c:6140:23: warning: restricted __le16 degrades to integer
      drivers/net/wireless/ipw2x00/ipw2200.c:6149:54: warning: restricted __le16 degrades to integer
      drivers/net/wireless/ipw2x00/ipw2200.c:6151:37: warning: invalid assignment: &=
      drivers/net/wireless/ipw2x00/ipw2200.c:6151:37:    left side has type restricted __le16
      drivers/net/wireless/ipw2x00/ipw2200.c:6151:37:    right side has type int
      drivers/net/wireless/ipw2x00/ipw2200.c:6154:54: warning: restricted __le16 degrades to integer
      drivers/net/wireless/ipw2x00/ipw2200.c:6156:37: warning: invalid assignment: &=
      drivers/net/wireless/ipw2x00/ipw2200.c:6156:37:    left side has type restricted __le16
      drivers/net/wireless/ipw2x00/ipw2200.c:6156:37:    right side has type int
      drivers/net/wireless/ipw2x00/ipw2200.c:6159:55: warning: restricted __le16 degrades to integer
      drivers/net/wireless/ipw2x00/ipw2200.c:6161:37: warning: invalid assignment: &=
      drivers/net/wireless/ipw2x00/ipw2200.c:6161:37:    left side has type restricted __le16
      drivers/net/wireless/ipw2x00/ipw2200.c:6161:37:    right side has type int
      drivers/net/wireless/ipw2x00/ipw2200.c:6164:29: warning: invalid assignment: |=
      drivers/net/wireless/ipw2x00/ipw2200.c:6164:29:    left side has type restricted __le16
      drivers/net/wireless/ipw2x00/ipw2200.c:6164:29:    right side has type unsigned short
      drivers/net/wireless/ipw2x00/ipw2200.c:7853:29: warning: incorrect type in assignment (different base types)
      drivers/net/wireless/ipw2x00/ipw2200.c:7853:29:    expected signed char [signed] [usertype] [explicitly-signed] rt_dbmnoise
      drivers/net/wireless/ipw2x00/ipw2200.c:7853:29:    got restricted __le16 [usertype] noise
      drivers/net/wireless/ipw2x00/ipw2200.c:7967:25: warning: incorrect type in initializer (different base types)
      drivers/net/wireless/ipw2x00/ipw2200.c:7967:25:    expected signed char [signed] [usertype] [explicitly-signed] noise
      drivers/net/wireless/ipw2x00/ipw2200.c:7967:25:    got restricted __le16 [usertype] noise
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      Cc: Zhu Yi <yi.zhu@intel.com>
      Acked-by: default avatarZhu Yi <yi.zhu@intel.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      21f8a73f
  14. 07 Aug, 2009 1 commit
  15. 24 Jul, 2009 1 commit
  16. 10 Jul, 2009 1 commit
  17. 13 Jun, 2009 1 commit
    • Patrick McHardy's avatar
      net: fix network drivers ndo_start_xmit() return values (part 3) · 4153e775
      Patrick McHardy authored
      net: fix network drivers ndo_start_xmit() return values (part 3)
      
      Fix up wireless drivers that return an errno value to qdisc_restart(), causing
      qdisc_restart() to print a warning an requeue/retransmit the skb.
      
      - airo: transmission not implemented for chip, intention is to free and abort
      - ipw2200: transmission not implemented for promiscous mode, intention is to
                 drop
      - prism54: intention is to drop
      - wl3501_cs: intention appears to be to drop
      - zd1201: error counter indicates intention is to drop
      
      All drivers compile tested.
      Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4153e775
  18. 06 May, 2009 1 commit
  19. 13 Apr, 2009 1 commit
  20. 07 Apr, 2009 1 commit
  21. 30 Mar, 2009 1 commit
  22. 29 Mar, 2009 1 commit
  23. 22 Mar, 2009 2 commits
  24. 27 Feb, 2009 2 commits
    • Dan Williams's avatar
      ipw2x00: age scan results on resume · c3d72b96
      Dan Williams authored
      Scanned BSS entries are timestamped with jiffies, which doesn't
      increment across suspend and hibernate.  On resume, every BSS in the
      scan list looks like it was scanned within the last 10 seconds,
      irregardless of how long the machine was actually asleep.  Age scan
      results on resume with the time spent during sleep so userspace has a
      clue how old they really are.
      Signed-off-by: Dan Williams's avatarDan Williams <dcbw@redhat.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      c3d72b96
    • Jiri Slaby's avatar
      ipw2200, fix ipw io functions · 1788bcd1
      Jiri Slaby authored
      - some of them are defined as follows:
        #define ipw_write32	expr1; expr2
        and are called from loops or ifs without a compound statement, so
        they are broken. Fix it by putting them into do {} while (0) for
        writes and ({ }) for reads.
      - also unify and cleanup them while at it -- convert them from
        macros to inline functions, so that we get some basic typechecking
      Signed-off-by: Jiri Slaby's avatarJiri Slaby <jirislaby@gmail.com>
      Acked-by: default avatarZhu Yi <yi.zhu@intel.com>
      Cc: James Ketrenos <jketreno@linux.intel.com>
      Cc: Reinette Chatre <reinette.chatre@intel.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      1788bcd1
  25. 09 Feb, 2009 1 commit
  26. 12 Dec, 2008 1 commit
    • Helmut Schaa's avatar
      ipw2200: fix scanning while associated · 14a4dfe2
      Helmut Schaa authored
      This patch fixes sporadic firmware restarts when scanning while associated.
      
      The firmware will quietly cancel a scan (while associated) if the dwell time
      for a channel to be scanned is larger than the time it may stay away from the
      operating channel (because of DTIM catching). Unfortunately the driver is not
      notified about the canceled scan and therefore the scan watchdog timeout will
      be hit and the driver causes a firmware restart which results in
      disassociation. This mainly happens on passive channels which use a dwell time
      of 120 whereas a typical beacon interval is around 100.
      
      The patch changes the dwell time for passive channels to be slightly smaller
      than the actual beacon interval to work around the firmware issue. Furthermore
      the number of allowed beacon misses is increased from one to three as otherwise
      most scans (while associated) won't complete successfully.
      
      However scanning while associated will still fail in corner cases such as a
      beacon intervals below 30.
      Signed-off-by: default avatarHelmut Schaa <helmut.schaa@googlemail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      14a4dfe2
  27. 05 Dec, 2008 1 commit
  28. 21 Nov, 2008 3 commits
  29. 31 Oct, 2008 4 commits