1. 31 Dec, 2015 3 commits
    • Uri Mashiach's avatar
      wlcore/wl12xx: spi: fix NULL pointer dereference (Oops) · e47301b0
      Uri Mashiach authored
      Fix the below Oops when trying to modprobe wlcore_spi.
      The oops occurs because the wl1271_power_{off,on}()
      function doesn't check the power() function pointer.
      
      [   23.401447] Unable to handle kernel NULL pointer dereference at
      virtual address 00000000
      [   23.409954] pgd = c0004000
      [   23.412922] [00000000] *pgd=00000000
      [   23.416693] Internal error: Oops: 80000007 [#1] SMP ARM
      [   23.422168] Modules linked in: wl12xx wlcore mac80211 cfg80211
      musb_dsps musb_hdrc usbcore usb_common snd_soc_simple_card evdev joydev
      omap_rng wlcore_spi snd_soc_tlv320aic23_i2c rng_core snd_soc_tlv320aic23
      c_can_platform c_can can_dev snd_soc_davinci_mcasp snd_soc_edma
      snd_soc_omap omap_wdt musb_am335x cpufreq_dt thermal_sys hwmon
      [   23.453253] CPU: 0 PID: 36 Comm: kworker/0:2 Not tainted
      4.2.0-00002-g951efee-dirty #233
      [   23.461720] Hardware name: Generic AM33XX (Flattened Device Tree)
      [   23.468123] Workqueue: events request_firmware_work_func
      [   23.473690] task: de32efc0 ti: de4ee000 task.ti: de4ee000
      [   23.479341] PC is at 0x0
      [   23.482112] LR is at wl12xx_set_power_on+0x28/0x124 [wlcore]
      [   23.488074] pc : [<00000000>]    lr : [<bf2581f0>]    psr: 60000013
      [   23.488074] sp : de4efe50  ip : 00000002  fp : 00000000
      [   23.500162] r10: de7cdd00  r9 : dc848800  r8 : bf27af00
      [   23.505663] r7 : bf27a1a8  r6 : dcbd8a80  r5 : dce0e2e0  r4 :
      dce0d2e0
      [   23.512536] r3 : 00000000  r2 : 00000000  r1 : 00000001  r0 :
      dc848810
      [   23.519412] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM
      Segment kernel
      [   23.527109] Control: 10c5387d  Table: 9cb78019  DAC: 00000015
      [   23.533160] Process kworker/0:2 (pid: 36, stack limit = 0xde4ee218)
      [   23.539760] Stack: (0xde4efe50 to 0xde4f0000)
      
      [...]
      
      [   23.665030] [<bf2581f0>] (wl12xx_set_power_on [wlcore]) from
      [<bf25f7ac>] (wlcore_nvs_cb+0x118/0xa4c [wlcore])
      [   23.675604] [<bf25f7ac>] (wlcore_nvs_cb [wlcore]) from [<c04387ec>]
      (request_firmware_work_func+0x30/0x58)
      [   23.685784] [<c04387ec>] (request_firmware_work_func) from
      [<c0058e2c>] (process_one_work+0x1b4/0x4b4)
      [   23.695591] [<c0058e2c>] (process_one_work) from [<c0059168>]
      (worker_thread+0x3c/0x4a4)
      [   23.704124] [<c0059168>] (worker_thread) from [<c005ee68>]
      (kthread+0xd4/0xf0)
      [   23.711747] [<c005ee68>] (kthread) from [<c000f598>]
      (ret_from_fork+0x14/0x3c)
      [   23.719357] Code: bad PC value
      [   23.722760] ---[ end trace 981be8510db9b3a9 ]---
      
      Prevent oops by validationg power() pointer value before
      calling the function.
      Signed-off-by: default avatarUri Mashiach <uri.mashiach@compulab.co.il>
      Cc: stable@vger.kernel.org
      Acked-by: default avatarIgor Grinberg <grinberg@compulab.co.il>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      e47301b0
    • Shahar Patury's avatar
      wlcore/wl18xx: fw logger over sdio · 3719c17e
      Shahar Patury authored
      Enable the FW Logger to work over the SDIO interface in addition to over UART
      interface. In the new design we use fw internal memory instead of packet ram
      that was used in older (wl12xx) design. This change reduces the impact on TP
      and stability.
      
      A new event was added to notify fw logger is ready for reading. Dynamic
      configuration to debugfs was added as well.
      Signed-off-by: default avatarShahar Patury <shaharp@ti.com>
      Signed-off-by: default avatarGuy Mishol <guym@ti.com>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      3719c17e
    • Rafał Miłecki's avatar
      bcma: use module_init for the main part of bus initialization · 0510931e
      Rafał Miłecki authored
      So far we were using fs_initcall. It was (and still is) needed because
      struct bus_type has to be registered early. However main bus
      initialization has to happen later as it requires SPROM which depends on
      NVRAM which depends on mtd.
      Solve it by using fs_initcall only for bus_register call and module_init
      for the rest. It affects bcma only when built-in obviously.
      
      This was tested with BCM4706 and BCM5357C0 (BCM47XX), BCM4708A0
      (ARCH_BCM_5301X) and BCM43225 (PCIe card with bcma as module).
      Signed-off-by: default avatarRafał Miłecki <zajec5@gmail.com>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      0510931e
  2. 30 Dec, 2015 29 commits
  3. 29 Dec, 2015 1 commit
    • Kalle Valo's avatar
      Merge tag 'iwlwifi-next-for-kalle-2015-12-21' of... · 5a1f052d
      Kalle Valo authored
      Merge tag 'iwlwifi-next-for-kalle-2015-12-21' of https://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next
      
      * Make scan parameters low latency aware (Avi Stern)
      * Fix in the NL80211_FEATURE_FULL_AP_CLIENT_STATE state case (Ayala)
      * Fix enable injection mode (Chaya Rachel)
      * Various cleanups (Dan / Julia / myself)
      * Allow to stay more time on popular channels (David Spinadel)
      * Bug fixes for D0i3 (Eliad / Luca)
      * Fixes for GO uAPSD (myself)
      * Start of TSO support (myself)
      * Rate control bug fixes (Eyal / Gregory)
      * Start the work on 9000 devices (Johannes / Sara / Oren)
      * Start the work on a new Tx queue allocation model (Liad)
      * Debug infrastructure enhancements (Golan)
      5a1f052d
  4. 21 Dec, 2015 3 commits
  5. 20 Dec, 2015 4 commits