summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/b43/phy_n.c
Commit message (Collapse)AuthorAgeFilesLines
* b43: N-PHY: fix "Data bus error" while working in 5 GHzRafał Miłecki2014-07-311-0/+3
| | | | | | | | | | | | When switching from one 5 GHz channel to another 5 GHz channel we need to make sure BPHY is still in a reset. However to access BPHY register we have to switch to 2 GHz mode for a moment. Otherwise this may result in "Data bus error" (noticed by Hauke with BCM43224 connected to the SoC). Reported-by: Hauke Mehrtens <hauke@hauke-m.de> Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: add support for BCM43131 chipset with N-PHY rev 17Rafał Miłecki2014-07-291-1/+2
| | | | | | | | It contains radio 0x2057 rev 14 just like a BCM43217, so it doesn't require any magic. The main difference is that BCM4313 is 1x1:1. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: don't calculate values for TSSI if we can't transmitRafał Miłecki2014-07-231-1/+2
| | | | | | | | This process requires sending some sample tone, so make sure we're allowed to transmit first. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: fix rev7+ typos at random placesRafał Miłecki2014-07-231-9/+10
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: final fixes to rev7+ workaroundsRafał Miłecki2014-07-221-13/+16
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: add rev7+ workarounds for radio revs 9 and 14Rafał Miłecki2014-07-221-2/+77
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: allow applying separated workarounds per coreRafał Miłecki2014-07-221-54/+71
| | | | | | | Newer devices need different workarounds for cores 0 and 1. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: update generic rev7+ workaroundsRafał Miłecki2014-07-221-41/+79
| | | | | | | | | | Add some missing ops and prepare for new devices support. This patch is a great stability improvement for BCM43217. Earlier Tenda W322E used to disconnect every 2 minutes (16 times over 30 minutes). With this fix I got it running for 4 hours (with iperf) without any disconnection. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: update digital filters setupRafał Miłecki2014-07-221-7/+22
| | | | | | | This fixes handling channel 14 and adds code for BCM43217. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: add helper for setting digital filtersRafał Miłecki2014-07-221-17/+22
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: update spur avoidance to support newer devicesRafał Miłecki2014-07-181-12/+31
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: use one shared function for setting MAC frequencyRafał Miłecki2014-07-181-6/+1
| | | | | | | By the way add few chipsets that were tracked with "wl" dumps. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: set band on every channel switchRafał Miłecki2014-07-181-8/+8
| | | | | | | Seems to be required by some hardware, wl does it every time. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: complete 0x2057 radio init calibrationRafał Miłecki2014-07-181-9/+77
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: add tables for radio 0x2057 rev 14Rafał Miłecki2014-07-181-2/+10
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: init and channel switching of radio 0x2057 rev 9Rafał Miłecki2014-07-151-1/+46
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43; N-PHY: write most of the missing code for revs 7+Rafał Miłecki2014-07-151-38/+268
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: add placeholders for new devices supportRafał Miłecki2014-07-151-54/+231
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: drop reg 0x1 access restriction on new PHY revsRafał Miłecki2014-07-151-2/+2
| | | | | | | Initialization of N-PHY radio revs 5 and 7 requires writing to 0x1. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: rework names & picking of TX gain tablesRafał Miłecki2014-07-071-1/+11
| | | | | | | | This allows adding more revisions support, spotting lacking tables and unifies naming schema. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: complete generic support for 0x2057 radioRafał Miłecki2014-07-011-8/+124
| | | | | | | | 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: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: fixes for radio 0x2057Rafał Miłecki2014-07-011-11/+52
| | | | | | | | | | | 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: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: update low-pass filter setupRafał Miłecki2014-06-251-12/+19
| | | | | | | Add support for external PA and clean code a bit. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: update code for sending sample toneRafał Miłecki2014-06-251-19/+17
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: PHY: drop channel_type (we can get this info from chandef)Rafał Miłecki2014-06-191-4/+7
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: PHY: drop is_40mhz (get width info from chandef)Rafał Miłecki2014-06-191-27/+26
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: PHY: drop own channel_freq (get it from chandef when needed)Rafał Miłecki2014-06-191-10/+14
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: optimize radio switching on/offRafał Miłecki2014-05-291-2/+4
| | | | | | | Broadcom's wl 6.30.223.141 has some optimizations for radios 0x205[67]. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: optimize init by doing some ops just onceRafał Miłecki2014-05-291-9/+2
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: complete radio 0x2056 setupRafał Miłecki2014-04-301-5/+27
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: enable forgotten write of hw power adjust tableRafał Miłecki2014-04-221-2/+14
| | | | | | | | | We've implemented table calculation, but forgot to enable writing it in power setup function. By the way document table layout. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: prepare for rev 7+ RSSI calibrationRafał Miłecki2014-04-221-18/+54
| | | | | | | Mostly just add place for future code Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: implement RF control INTC for revs 7+Rafał Miłecki2014-04-221-0/+72
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: implement reading support for radio 0x2057Rafał Miłecki2014-04-221-2/+5
| | | | | | | | | Bit 0x200 has been noticed in the following log: radio_read(0x02ca) -> 0x0000 radio_write(0x00ca) <- 0x0080 Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: random updates and typo fixes all aroundRafał Miłecki2014-04-221-9/+9
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: N-PHY: rev3+: complete workaroundsRafał Miłecki2014-04-221-3/+84
| | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* b43: Fix machine check error due to improper access of B43_MMIO_PSM_PHY_HDRRafał Miłecki2014-04-091-7/+7
| | | | | | | | | | | | | | | | | | | Register B43_MMIO_PSM_PHY_HDR is 16 bit one, so accessing it with 32b functions isn't safe. On my machine it causes delayed (!) CPU exception: Disabling lock debugging due to kernel taint mce: [Hardware Error]: CPU 0: Machine Check Exception: 4 Bank 4: b200000000070f0f mce: [Hardware Error]: TSC 164083803dc mce: [Hardware Error]: PROCESSOR 2:20fc2 TIME 1396650505 SOCKET 0 APIC 0 microcode 0 mce: [Hardware Error]: Run the above through 'mcelog --ascii' mce: [Hardware Error]: Machine check: Processor context corrupt Kernel panic - not syncing: Fatal machine check on current CPU Kernel Offset: 0x0 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffff9fffffff) Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Acked-by: Larry Finger <Larry.Finger@lwfinger.net> Cc: Stable <stable@vger.kernel.org> [2.6.35+] Signed-off-by: John W. Linville <linville@tuxdriver.com>
* drivers: net: wireless: b43: Fix possible NULL ptr dereferenceFelipe Pena2013-10-181-1/+2
| | | | | | | | On the ternary expression the 'e' variable could be NULL dereferenced, when b43_nphy_get_rf_ctl_over_rev7 function returns NULL. Signed-off-by: Felipe Pena <felipensp@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* Merge branch 'master' of git://git.infradead.org/users/rafal/b43-nextJohn W. Linville2013-04-231-300/+349
|\
| * b43: N-PHY: don't use deprecated b43_radio_foo16Rafał Miłecki2013-04-231-59/+59
| | | | | | | | | | | | | | All radio ops are 16b (there is only 1 exception for reg 0x1), so we deprecated b43_radio_read16 and b43_radio_write16 long time ago. Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
| * b43: N-PHY: move tables init function to tables fileRafał Miłecki2013-04-231-12/+0
| | | | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
| * b43: N-PHY: use defines for (re)storing VCM configRafał Miłecki2013-04-231-5/+14
| | | | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
| * b43: N-PHY: use shortcut "ctl" in functions namesRafał Miłecki2013-04-231-22/+22
| | | | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
| * b43: N-PHY: use enum for INTC override function argumentRafał Miłecki2013-04-231-18/+28
| | | | | | | | | | | | Also make a function name shorter so we can easily fit 80 chars. Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
| * b43: N-PHY: define missing registersRafał Miłecki2013-04-231-38/+36
| | | | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
| * b43: use defines for board_typeRafał Miłecki2013-04-231-3/+3
| | | | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
| * b43: N-PHY: fix "NB" RSSI calibration on PHYs rev2-Rafał Miłecki2013-04-231-1/+1
| | | | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
| * b43: N-PHY: use enum for RSSI type everywhere we use itRafał Miłecki2013-04-231-43/+61
| | | | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
| * b43: N-PHY: rename RSSI types to be shorter and more accurateRafał Miłecki2013-04-231-19/+19
| | | | | | | | | | | | Thanks to Broadcom releasing some code we can use better names. Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
| * b43: N-PHY: use more friendly variables names in RSSI codeRafał Miłecki2013-04-231-28/+36
| | | | | | | | Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
OpenPOWER on IntegriCloud