1. 07 Jul, 2014 20 commits
  2. 06 Jul, 2014 11 commits
  3. 03 Jul, 2014 2 commits
  4. 01 Jul, 2014 7 commits
    • Rafał Miłecki's avatar
      b43: add more bcma cores · 15be8e89
      Rafał Miłecki authored
      This adds some cores with 0x2057 radio which will be supported soon as
      well as core 40 that I missed in the earlier firmware patch.
      Signed-off-by: default avatarRafał Miłecki <zajec5@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      15be8e89
    • Rafał Miłecki's avatar
      b43: N-PHY: complete generic support for 0x2057 radio · fe255b40
      Rafał Miłecki authored
      It doesn't include any device (radio revision) specific code yet, so it
      isn't really usable. As the commit says, it's just some generic code.
      Signed-off-by: default avatarRafał Miłecki <zajec5@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      fe255b40
    • Rafał Miłecki's avatar
      b43: N-PHY: fixes for radio 0x2057 · e90cf1c7
      Rafał Miłecki authored
      Enable initialization and update calibration code to fix:
      b43-phy0 ERROR: Radio 0x2057 rcal timeout
      b43-phy0 debug: Radio 0x2057 rccal timeout
      b43-phy0 debug: Radio 0x2057 rccal timeout
      b43-phy0 ERROR: Radio 0x2057 rcal timeout
      Signed-off-by: default avatarRafał Miłecki <zajec5@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      e90cf1c7
    • Andrea Merello's avatar
      rtl818x_pci: fix pci probe returns success when it fails · c1084e02
      Andrea Merello authored
      There are several exit path from the PCI probe function.
      Some of them, that are taken in case of errors, forget to set the "err"
      variable, that is returned by the probe function.
      This can lead to the kernel thinking the probe function succeeds while it
      didn't, and this in turn causes extra calls to the "remove" function.
      
      This patch fix this problem by ensuring "err" variable is assigned to a proper
      non-zero value in each exit path.
      Signed-off-by: default avatarAndrea Merello <andrea.merello@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      c1084e02
    • Andrea Merello's avatar
      rtl818x_pci: handle broken PIO mapping · f4cf6287
      Andrea Merello authored
      All boards supported by this driver could work using PIO or MMIO for accessing
      registers.
      This driver tries to access HW by using MMIO, and, if this fails for somewhat
      reason, the driver tries to fall back to PIO mode.
      
      MMIO-mode is straightforward on all boards.
      PIO-mode is straightforward on rtl8180 only.
      
      On rtl8185 and rtl8187se boards not all registers are directly available in PIO
      mode (they are paged).
      
      On rtl8185 there are two pages and it is known how to switch page.
      PIO mode works, except for only one access to a register out of default page,
      recently added by me in the initialization code with patch:
      rtl818x_pci: Fix rtl8185 excessive IFS after CTS-to-self
      This can be easily fixed to work in both cases (MMIO and PIO).
      
      On rtl8187se, for a number of reasons, there is much more work to do to fix PIO
      access.
      PIO access is currently broken on rtl8187se, and it never worked.
      
      This patch fixes the said register write for rtl8185 and makes the driver to
      fail cleanly if PIO mode is attempted with rtl8187se boards.
      
      While doing this, I converted also a couple of printk(KERN_ERR) to dev_err(), in
      order to make checkpatch happy.
      Signed-off-by: default avatarAndrea Merello <andrea.merello@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      f4cf6287
    • Andrea Merello's avatar
      rtl8180: disable buggy rate fallback mechanism · fe67bcd4
      Andrea Merello authored
      Currently the driver configures mac80211 to provide two rates for each TX frame:
      One initial rate and one alternate fallback rate, each one with its retry count.
      
      HW does not support fully this: rtl8180 doesn't have support for rate scaling at
      all, and rtl8185/rtl8187SE supports it in a way that does not fit with mac80211:
      The HW does automatically fall back to the next lower rate, and only a lower
      limit can be specified, so the HW may TX also on rates in between the two rates
      specified by mac80211.  Furthermore only the total TX retry count can be
      specified for each packet, while the number of TX attempts before scaling rate
      can be configured only globally (not per each packet).
      
      Currently the driver sets the HW auto rate fallback mechanism to quickly scale
      rate after a couple of retries, and it uses the alternate rate requested by
      mac80211 as fallback limit rate (and it does this even wrongly).
      
      The HW indeed will behave differently than what mac80211 mandates, that is
      probably undesirable, and the reported TX retry count may not refer to what
      mac80211 thinks, and this could fool mac80211.
      
      This patch makes the driver to declare to mac80211 to support only one rate
      configuration for each packet, and it does disable the HW auto rate fallback
      mechanism, relying only on SW and letting mac80211 to do all by itself.
      
      This should ensure correct operation and fairness respect to mac80211.
      Indeed here tests with iperf do not show significant performance differences.
      Signed-off-by: default avatarAndrea Merello <andrea.merello@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      fe67bcd4
    • Andrea Merello's avatar
      rtl8180: fix incorrect TX retry. · 81129fce
      Andrea Merello authored
      HW is programmed with wrong retry count value for TX:
      
      Mac80211 passes to driver the number of times the TX should be attempted.
      The HW, instead, wants the number of time the TX should be retried if it fails
      the first time (assuming we have to TX it at least one time).
      
      This patch correct this.
      Signed-off-by: default avatarAndrea Merello <andrea.merello@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      81129fce