aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/wl12xx
Commit message (Collapse)AuthorAge
...
* | wl12xx: add set_rate_mgmt_params acxEliad Peller2011-08-22
| | | | | | | | | | | | | | Configure rate management parameters on hw init Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: use wl1271_acx_beacon_filter_opt for both sta and apEliad Peller2011-08-22
| | | | | | | | | | | | | | | | | | Use ACX_BEACON_FILTER_OPT for both station and ap roles (use the generic wl1271_acx_beacon_filter_opt() instead of wl1271_acx_set_ap_beacon_filter() ). Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: change max/default template sizeEliad Peller2011-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The max template size was increased in the new fw. However, we should use the max size only when needed, as it consumes some of the chip's memory. Thus, by default initialize the templates to the default size. Initialize to the maximum size only when required. Use WL1271_CMD_TEMPL_DFLT_SIZE instead of some of the predefined structs, as some of them didn't account for additional IEs that might be added to the template. Delete structs defintions not used after these changes. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: update rx/txEliad Peller2011-08-22
| | | | | | | | | | | | | | | | Update the rx/tx descriptors according to the new fw api (fw >= 6/7.3.0.0.75) Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: update scan cmd apiEliad Peller2011-08-22
| | | | | | | | | | | | | | | | Update the scan command to use the new fw api (fw 6/7.3.0.0.75). Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: add device role commandsEliad Peller2011-08-22
| | | | | | | | | | | | | | | | | | | | | | | | The device role is a special role used for rx and tx frames prior to association (as the STA role can get packets only from its associated bssid) Since this role is required for the sta association process, we enable it when a new sta interface is created. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: enable/disable role on interface add/removeEliad Peller2011-08-22
| | | | | | | | | | | | | | | | | | According to the new multi-role flow, we have to enable the role before using (starting) it, and disable it on cleanup (after it's no longer needed). Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: update commands & eventsEliad Peller2011-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change the commands and events according to the new fw api (fw >= 6/7.3.0.0.75). The main change is the replacement of JOIN/DISCONNECT commands, with ROLE_START/ROLE_STOP commands. The use of these commands should be preceded by the ROLE_ENABLE command (allocating role resources), and followed by the ROLE_DISABLE command (freeing role resources). Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: update acx commandsEliad Peller2011-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the acx commands according to the new fw api (fw >= 6/7.3.0.0.75). The main change in most of the ACXs is the addition of a new role_id/link_id field, which is required for multi-role operation. Currently, we don't really support multi-role, as most of our data (inside wl) is global. As the current fw doesn't support concurrent roles yet, keep it this way and add wl->role_id and wl->sta_hlid to save the active role/link. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: update fw status structEliad Peller2011-08-22
| | | | | | | | | | | | | | | | | | | | | | | | Update the fw status struct according to the new fw api (fw >= 6/7.0.0.35). All the roles use the same struct now. The memory accounting was changed a bit according to the struct changes. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: remove rx filtering stuffEliad Peller2011-08-22
| | | | | | | | | | | | | | | | | | The new fw doesn't support rx_filtering configuration (as a stand-alone command. the rx filtering is done automatically according to the active role). Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: temporarily disable advanced ap functionsEliad Peller2011-08-22
| | | | | | | | | | | | | | | | | | | | | | | | In order to keep to driver compiling during the patchset, while avoiding one-huge-patch, temporarily disable some advanced ap functions. These changes will be reverted later in the patchset, as part of the patches for advanced ap functions support. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: use 1 spare block in all casesArik Nemtsov2011-08-22
| | | | | | | | | | | | | | | | | | Remove support for firmwares that require 2 spare blocks for packet TX (and delete the WL12XX_QUIRK_USE_2_SPARE_BLOCKS quirk definition) Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: Use a single fw for both STA and AP rolesArik Nemtsov2011-08-22
| | | | | | | | | | | | | | | | | | Firmware >= 6/7.3.0.0.75 (wl127x/wl128x) supports both STA and AP roles. Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: Revert "wl12xx: schedule TX packets according to FW occupancy"Arik Nemtsov2011-08-22
| | | | | | | | | | | | | | | | | | | | | | This does not make sense in fw >= 6/7.3.0.0.75 (wl127x/wl128x) - we don't use Tx blocks to measure FW occupancy anymore. This reverts commit 9e374a37b6fa2310b71d3c5657cd0c1e693120c6. Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: fixes for hw_pg_ver and chip id reportingGery Kahn2011-08-12
| | | | | | | | | | | | | | | | | | | | | | | | Fix the value of PG version for 128x at sysfs, remove write permissions from PG version (hw_pg_ver) in sysfs and add remove files (hw_pg_ver,bt_coex_state) from sysfs while freeing hardware. New macro names for register Fuse_data_2_1 depend on architecture. Propagate chip id through wiphy in PLT mode which still not work of a bug in ethtool. Signed-off-by: Gery Kahn <geryk@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: Add support to RX packets payload alignmentShahar Levi2011-08-12
| | | | | | | | | | | | | | | | | | | | | | | | | | In case of QoS packets the packet payload isn't aligned to 4 bytes. In that case the mac80211 layer take care of that via memmove() in ieee80211_deliver_skb(). Add support of copy packets from aggregation buffer to the skbs with packet payload aligned care. In case of QoS packets copy the packets in offset of 2 bytes guarantee payload aligned to 4 bytes. Signed-off-by: Shahar Levi <shahar_levi@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | wl12xx: remove wext dependenciesJohannes Berg2011-08-08
|/ | | | | | | | | This driver uses IW_ESSID_MAX_SIZE when it should be using IEEE80211_MAX_SSID_LEN instead. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Acked-by: Luciano Coelho <coelho@ti.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
* Merge branch 'master' of ↵John W. Linville2011-07-15
|\ | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem Conflicts: net/bluetooth/l2cap_core.c
| * Merge branch 'for-linville' of ↵John W. Linville2011-07-08
| |\ | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/luca/wl12xx
| | * wl12xx: start/stop queues according to global per-AC countersArik Nemtsov2011-07-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Split tx_queue_count to count per-AC skb's queued, instead of relying on the skb-queue len. The skb queues used were only valid in STA-mode, as AP-mode uses per-link queues. This fixes a major regression in AP-mode, caused by the patch "wl12xx: implement Tx watermarks per AC". With that patch applied, we effectively had no regulation of Tx queues in AP-mode. Therefore a sustained high rate of Tx could cause exhaustion of the skb memory pool. Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: always initialize AP-mode max power levelArik Nemtsov2011-07-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes we only get the Tx power level via op->config when the FW is off. Record the received power level when this happens and use it to initialize the firmware during boot. Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: initialize max_power levels for 11a channelsArik Nemtsov2011-07-05
| | | | | | | | | | | | | | | | | | | | | Set the maximum FW supported power levels for 11a channels. Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: implement cancel_hw_scan() callbackEliad Peller2011-07-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After implementing cancel_hw_scan(), there is no more need to flush scan_complete_work on suspend. scan_complete_work enqueues a new scan_work, that might lead to the following warning (if the device was already suspended): WARNING: at drivers/mmc/core/core.c:169 mmc_wait_for_req+0x1ac/0x2c8() Backtrace: [<c004b50c>] (dump_backtrace+0x0/0x110) [<c04fda50>] (dump_stack+0x0/0x1c) [<c008f700>] (warn_slowpath_common+0x0/0x6c) [<c008f76c>] (warn_slowpath_null+0x0/0x2c) [<c034b058>] (mmc_wait_for_req+0x0/0x2c8) [<c034f804>] (mmc_io_rw_extended+0x0/0x1e4) [<c0350b5c>] (sdio_io_rw_ext_helper+0x0/0x1ac) [<c0350e00>] (sdio_memcpy_fromio+0x0/0x2c) [<bf194464>] (wl1271_sdio_raw_read+0x0/0x1bc [wl12xx_sdio]) [<bf15ac14>] (wl1271_cmd_wait_for_event_or_timeout+0x0/0x19c [wl12xx]) [<bf15adb0>] (wl1271_cmd_wait_for_event+0x0/0x30 [wl12xx]) [<bf15b7dc>] (wl1271_cmd_disconnect+0x0/0x14c [wl12xx]) [<bf158fd0>] (wl1271_unjoin+0x0/0x48 [wl12xx]) [<bf159070>] (wl1271_op_config+0x0/0x490 [wl12xx]) [<bf105084>] (ieee80211_hw_config+0x0/0x14c [mac80211]) [<bf113120>] (ieee80211_recalc_idle+0x0/0x4c [mac80211]) [<bf109a70>] (__ieee80211_scan_completed+0x0/0x1ac [mac80211]) [<bf109fd4>] (ieee80211_scan_work+0x0/0x484 [mac80211]) [<c00a197c>] (worker_thread+0x0/0x1e8) [<c00a5874>] (kthread+0x0/0x90) Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: add stop_scan commandEliad Peller2011-07-05
| | | | | | | | | | | | | | | | | | | | | define wl1271_scan_stop() to cancel an ongoing hw scan. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: configure suspend/resume only if associated/startedEliad Peller2011-07-05
| | | | | | | | | | | | | | | | | | | | | | | | Configure the device (to wowlan) only if the sta/ap is associated/started. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: one SDIO initialization is enoughOhad Ben-Cohen2011-07-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Skip manual device power on in case runtime PM is enabled for our device. This eliminates a secondary & redundant SDIO init sequence. Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: implement Tx watermarks per ACArik Nemtsov2011-07-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | Each AC is stopped when its queue is filled up to the high watermark, and restarted when its queue it lower than the low watermark. This ensures congested ACs are not able to starve other ACs. Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: Increase low & high TX watermarksIdo Yariv2011-07-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current TX watermark settings cause the driver to stop queues too frequently. Among other things, this can have a negative impact on WMM prioritization, since mac80211 sorts pending packets by their ACs. Fix this by increasing the high watermark to 256 packets. Increase the low watermark to 32 to minimize periods with queues being stopped. Signed-off-by: Ido Yariv <ido@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: schedule TX packets according to FW occupancyArik Nemtsov2011-07-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When selecting packets for transmission, prefer the ACs that are least occupied in the FW. When packets for multiple ACs are present in the FW, it decides which to transmit according to WMM QoS parameters. With these changes, lower priority ACs should not be starved when higher priority traffic is present. Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: use 802.11 header location after relocation to frame startArik Nemtsov2011-07-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When operating with TKIP encryption, the function wl1271_tx_fill_hdr() relocates the 802.11 header to the start of the frame, and leaves room for the security header. Some functions in the Tx path rely on the location of the header, namely, for purposes of roaming in STA mode and connecting new stations in AP mode. Call these functions only after the header is relocated. Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: AP mode - support FW TX inactivity triggersArik Nemtsov2011-07-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | In AP mode we register for the MAX_TX_RETRY and INACTIVE_STA events. Both are reported to the upper layers as a TX failure in the offending stations. Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: fix Tx security sequence number handlingOz Krakowski2011-07-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not reset the security sequence number when issuing a join command or interface is removed. Instead, reset the counter only during the unjoin command. Added the notion of counter wrap-around to the LSB number in wl1271_tx_complete_packet. Added post recovery padding to adjust for potential security number progress during the recovery process by the firmware and avoid potential interop issues in encrypted networks. Signed-off-by: Oz Krakowski <ozk@ti.com> Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
* | | Merge branch 'master' of ↵John W. Linville2011-07-08
|\| | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem
| * | Merge branch 'for-linville' of ↵John W. Linville2011-07-06
| |\| | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/luca/wl12xx
| | * wl12xx: Support routing FW logs to the hostIdo Yariv2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A recently added feature to the firmware enables the driver to retrieve firmware logs via the host bus (SDIO or SPI). There are two modes of operation: 1. On-demand: The FW collects its log in an internal ring buffer. This buffer can later be read, for example, upon recovery. 2. Continuous: The FW pushes the FW logs as special packets in the RX path. Reading the internal ring buffer does not involve the FW. Thus, as long as the HW is not in ELP, it should be possible to read the logs, even if the FW crashes. A sysfs binary file named "fwlog" was added to support this feature, letting a monitor process read the FW messages. The log is transferred from the FW only when available, so the reading process might block. Signed-off-by: Ido Yariv <ido@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: Avoid recovery while one is already in progressIdo Yariv2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During recovery work commands sent to the FW could fail and schedule additional recovery work. Since the chip is going to be powered off, avoid recursive recoveries. Signed-off-by: Ido Yariv <ido@wizery.com> Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: Check for FW quirks as soon as the FW bootsIdo Yariv2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | The FW initialization might depend on the FW revision, so check for any FW quirks right after booting it. Signed-off-by: Ido Yariv <ido@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: use freezable workqueue for netstack_workEliad Peller2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When resuming (after wowlan), we want the rx packets (which is usually the wake-up packet itself) to be passed to mac80211 only after the resume notifier was completed, and mac80211 is up and running (otherwise, the packets will be dropped). By enqueueing the netstack_work to a freezable workqueue, we can guarantee the rx processing to occur only after mac80211 was resumed. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Ido Yariv <ido@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: use _ni version of ieee80211_tx_statusEliad Peller2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | wl1271_flush_deferred_work(), which calls ieee80211_rx() and ieee80211_tx_status(), is called from a process context. hence, use ieee80211_tx_status_ni() instead of ieee80211_tx_status(). Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: check the vif's operstate after joinEliad Peller2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When resuming while connected (without wowlan), the interface is already IF_OPER_UP, so we won't get the notifier callback, and hence never complete the association (from wl12xx perspective) This situation, among other potential problems, prevents the station from entering psm. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx_sdio: enable wowlan only if enable_irq_wake() succeededEliad Peller2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | Some platforms don't support the wake_irq, so disable wowlan in this case, and avoid the "Unbalanced IRQ wake disable" warning on disable_irq_wake(). Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: enable/disable beacon filtering on ap suspend/resumeEliad Peller2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | Beacon filtering needs to be enabled so AP won't wake up by by every received beacon. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: clear wl->wow_enabled on resumeEliad Peller2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We set wl->wow_enabled on every suspend(), so we need to clear it on every resume(). (we can't rely on setting wl->wow_enabled=false in suspend(), as it being called only when wowlan triggers are configured) Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: don't check wow param on suspend/resumeEliad Peller2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since mac80211 calls suspend/resume only when wowlan triggers exist, there is no need to check for triggers existance in the callbacks as well. Add a WARN_ON() to verify it. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: Add Support for Low Power DRPw (LPD) ModeShahar Levi2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Low Power DRPw (LPD) mode contains several optimizations that designed to reduce power consumption. The purpose is to save current consumption in RX and Listen mode. LPD setting apply only for wl127x AP mode (not wl128x) Signed-off-by: Shahar Levi <shahar_levi@ti.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: don't bail if mmc isn't MMC_CAP_POWER_OFF_CARDOhad Ben-Cohen2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If our SDIO function has its runtime PM disabled, don't try to manipulate its runtime PM status at all. This way we can still power on cards plugged to mmc hosts that are not MMC_CAP_POWER_OFF_CARD. Reported-and-tested-by: Tim Yamin <tim@kangatronix.co.uk> Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: split channel array per band in sched_scanLuciano Coelho2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | The firmware, in practice, treats the channels in three separate blocks, one for each band (bg, a and j). Instead of using a single array and doing some magic with indices, split the array in 3 to make it more readable. Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: fix erroneous commit (cb5ae0)Eliad Peller2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | Due to rebase error, the patch for commit cb5ae0 ("wl12xx: configure rates when working in ibss mode") was wrong - a blob was added into the wrong function. fix it. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
| | * wl12xx: remove unused crc7 referencesEliad Peller2011-06-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | crc7 is used only in wl12xx_spi. Remove redundant crc7.h includes, and update Kconfig to select CRC7 only if WL12XX_SPI is being selected. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>