← Back to team overview

kernel-packages team mailing list archive

[Bug 867869] Re: brcmsmac wireless driver does not have power management enabled and is eating batteries

 

[Expired for linux (Ubuntu) because there has been no activity for 60
days.]

** Changed in: linux (Ubuntu)
       Status: Incomplete => Expired

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/867869

Title:
  brcmsmac wireless driver does not have power management enabled and is
  eating batteries

Status in “linux” package in Ubuntu:
  Expired

Bug description:
  A lot of people have been reporting that the oneiric kernels have been
  sucking up power (which they were, early on), but a closer look shows
  that the kernel regressions are mainly all fixed - however, the
  brcmsmac wireless driver appears to be a main culprit left, sucking up
  to ~3W of power.

  As far as I can tell, the use of the brcmsmac wireless driver co-
  incided with the use of the introduction of the kernel bug that was
  making battery life poor for many oneiric users, and I suspect that
  this is one of the major contributors to that problem.  Perhaps the
  brcmsmac should be rolled back until power management is available, or
  a push on this driver could possibly enable this feature.  Either one
  would be a good way to extend battery life for laptop users.

  I am using: Ubuntu 3.0.0-12.19-generic 3.0.4  (Oneiric, with up to
  date packages)

  The important line from lspci is:
  03:00.0 Network controller [0280]: Broadcom Corporation BCM43224 802.11a/b/g/n [14e4:4353] (rev 01)
          Subsystem: Apple Computer Inc. Device [106b:0093]
          Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
          Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
          Latency: 0, Cache Line Size: 256 bytes
          Interrupt: pin A routed to IRQ 17
          Region 0: Memory at c1b00000 (64-bit, non-prefetchable) [size=16K]
          Capabilities: [40] Power Management version 3
                  Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
                  Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=2 PME-
          Capabilities: [58] Vendor Specific Information: Len=78 <?>
          Capabilities: [48] MSI: Enable- Count=1/1 Maskable- 64bit+
                  Address: 0000000000000000  Data: 0000
          Capabilities: [d0] Express (v1) Endpoint, MSI 00
                  DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <4us, L1 unlimited
                          ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
                  DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
                          RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
                          MaxPayload 128 bytes, MaxReadReq 128 bytes
                  DevSta: CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr+ TransPend-
                  LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Latency L0 <4us, L1 <64us
                          ClockPM+ Surprise- LLActRep+ BwNot-
                  LnkCtl: ASPM L1 Enabled; RCB 64 bytes Disabled- Retrain- CommClk+
                          ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-
                  LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive+ BWMgmt- ABWMgmt-
          Capabilities: [100 v1] Advanced Error Reporting
                  UESta:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
                  UEMsk:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
                  UESvrt: DLP+ SDES- TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
                  CESta:  RxErr+ BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
                  CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
                  AERCap: First Error Pointer: 14, GenCap+ CGenEn- ChkCap+ ChkEn-
          Capabilities: [13c v1] Virtual Channel
                  Caps:   LPEVC=0 RefClk=100ns PATEntryBits=1
                  Arb:    Fixed- WRR32- WRR64- WRR128-
                  Ctrl:   ArbSelect=Fixed
                  Status: InProgress-
                  VC0:    Caps:   PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
                          Arb:    Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
                          Ctrl:   Enable+ ID=0 ArbSelect=Fixed TC/VC=ff
                          Status: NegoPending- InProgress-
          Capabilities: [160 v1] Device Serial Number 83-c3-dd-ff-ff-b5-10-9a
          Capabilities: [16c v1] Power Budgeting <?>
          Kernel driver in use: brcmsmac
          Kernel modules: wl, bcma, brcmsmac

  From powertop:

  The battery reports a discharge rate of 16.6 W

  Summary: 0.0 wakeups/second,  0.0 GPU ops/second and 0.0 VFS ops/sec

  Power est.      Usage       Events/s    Category       Description
    2.61 W    100.0%                      Device         Radio device: brcmsmac
    2.35 W     60.0%                      Device         Display backlight
    759 mW     29.5 ms/s       0.0        Process        /usr/sbin/macfanctld
    727 mW     20.5%                      Device         Audio codec alsa:hwC0D0: mbp55 (Cirrus Logic)
    564 mW     40.7 pkts/s                Device         Network interface: wlan0 (brcmsmac)
    469 mW     18.3 ms/s       0.0        Process        /usr/bin/knotify4
    279 mW     10.9 ms/s       0.0        Process        /usr/lib/firefox-7.0.1/firefox
    260 mW     10.1 ms/s       0.0        Process        powertop

  and, of course some output from iwconfig:

  wlan0     IEEE 802.11abgn  ESSID:"XXXXXXXXXX"  
            Mode:Managed  Frequency:2.462 GHz  Access Point: 00:22:B0:B2:6A:80   
            Bit Rate=54 Mb/s   Tx-Power=19 dBm   
            Retry  long limit:7   RTS thr:off   Fragment thr:off
            Power Management:off
            Link Quality=47/70  Signal level=-63 dBm  
            Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
            Tx excessive retries:15  Invalid misc:2221   Missed beacon:0

  And finally:

  "sudo iwconfig wlan0 power on" gives:

  Error for wireless request "Set Power Management" (8B2C) :
      SET failed on device wlan0 ; Operation not supported.

  What I expected:
  Ubuntu would not use a wireless driver on laptops that eats 3W of power and can't be set to use less power.

  What happened: 
  My batteries are being drained by a wireless card that is constantly hot (I can feel it through the case) for which no option to enable power management exists.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/867869/+subscriptions