net: wireless: bcmdhd: Update to version 1.88.21

- Remove DHCP_SCAN_SUPPRESS option
- Tune P2P parameters
- Add bcm4339 support

Change-Id: Ifc2906b3df6c17a7a8ea8e27f5f001fe3d9acd01
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
net: ipv6: Add IPv6 support to the ping socket.

[backport of net-next 6d0bfe22611602f36617bc7aa2ffa1bbb2f54c67]

This adds the ability to send ICMPv6 echo requests without a
raw socket. The equivalent ability for ICMPv4 was added in
2011.

Instead of having separate code paths for IPv4 and IPv6, make
most of the code in net/ipv4/ping.c dual-stack and only add a
few IPv6-specific bits (like the protocol definition) to a new
net/ipv6/ping.c. Hopefully this will reduce divergence and/or
duplication of bugs in the future.

Caveats:

- Setting options via ancillary data (e.g., using IPV6_PKTINFO
  to specify the outgoing interface) is not yet supported.
- There are no separate security settings for IPv4 and IPv6;
  everything is controlled by /proc/net/ipv4/ping_group_range.
- The proc interface does not yet display IPv6 ping sockets
  properly.

Tested with a patched copy of ping6 and using raw socket calls.
Compiles and works with all of CONFIG_IPV6={n,m,y}.

Change-Id: I0081b4654dd54b12c8f233e00e18943582aa2142
Signed-off-by: Lorenzo Colitti <lorenzo@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
[lorenzo@google.com: backported to 3.4]
Signed-off-by: Lorenzo Colitti <lorenzo@google.com>
net: wireless: bcmdhd: Fix tdls processing from cfg80211

Change-Id: Ie59e3b2e22e0542c5336183d591c1fca4eb490ae
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
net: wireless: bcmdhd: Update to version 1.88.27

- Check FW capabilities
- Add NS offload
- Sync with bcm4339 version

Change-Id: I95053eb417a147236dab43e5aabef5108d786b7c
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
net: wireless: bcmdhd: Fix NDO functionality

Change-Id: I297e5b1124a515a7f829a5d7e736454ec9c8732a
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
net: wireless: bcmdhd: Enable p2p support bits for p2p device

Change-Id: I62102ead0e72be41d591f9562f3ac27c41b9e395
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
net: wireless: bcmdhd: Remove PASS_ARP_PACKET define

Change-Id: Ic5787ffb40840def3cb676ce0030c0923b0738c4
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
net: wireless: bcmdhd: Remove chatty message from wl_cfgp2p_act_frm_search

Change-Id: I06ffddddf239443f3684f97a5c31b6872c89d769
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
net: ipv6: add missing lock in ping_v6_sendmsg

Bug: 9469865
Change-Id: I5e9db559d22e35d27fa1df948b70c70ed8b42115
Signed-off-by: Lorenzo Colitti <lorenzo@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net: ipv6: fix wrong ping_v6_sendmsg return value

ping_v6_sendmsg currently returns 0 on success. It should return
the number of bytes written instead.

Bug: 9469865
Change-Id: I14aad6018f0c3fd92dad315bc3ade04c0b3982e0
Signed-off-by: Lorenzo Colitti <lorenzo@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net: wireless: bcmdhd: Update to version 1.88.41

- Fix sched scan processing
- Fix NDO processing
- Do not wake dhd_dpc process if not necessary
- Remove unnecessary defines and ifdefs
- Fix SDIO bus wakeup code when idletime was zero case
- Fix OOB interrupt handler was not registered when WLAN on failed case
- Clean up ARP Packet filter code
- Clean up P2P ESCAN source code
- Clean up TDLS code

Change-Id: I6b9a15f0d49c80d72183fd6e9f4b6bb01e450cd4
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
net: wireless: bcmdhd: Update to version 1.88.42

- Add batched scan implementation

Change-Id: I48a36f753597734b2a8865a53f15df30c5ae0d36
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
net: wireless: bcmdhd: Update to version 1.88.45

	1. Remove WL_SUPPORT_AUTO_CHANNEL codes
	2. add codes for WL_IFACE_COMB_NUM_CHANNELS and
	   WL_CFG80211_P2P_DEV_IF to support concurent mode.
	   (Google Bug : [9892309] support Wifi direct 5GHZ channels)
	   but, remove the WL_IFACE_COM_NUM_CHANELS in Makefile
	3. refactoring the codes for hidden ap roaming
Signed-off-by: Ecco Park <eccopark@broadcom.com>

Conflicts:
	drivers/net/wireless/bcmdhd/Makefile
	drivers/net/wireless/bcmdhd/wl_android.c
	drivers/net/wireless/bcmdhd/wl_cfg80211.c
	drivers/net/wireless/bcmdhd/wl_cfgp2p.c
	drivers/net/wireless/bcmdhd/wl_cfgp2p.h

Change-Id: If8283f26714196aa971c186c57758c0e64ce87df
net: wireless: bcmdhd: enable WL_IFACE_COMB_NUM_CHANNELS

Signed-off-by: Ecco Park <eccopark@broadcom.com>
net: wireless: bcmdhd: Update Location Service code

	updated the dhd_pno.c based on new firmware which will be
	released today.
	updated the wl_anroid.c based on Robert's requirement

Signed-off-by: Ecco Park <eccopark@broadcom.com>

Conflicts:
	drivers/net/wireless/bcmdhd/common/include/proto/bcmevent.h

Change-Id: I270755fe4c041ea1282afaed9d120c9b83c2bc0c
net: wireless: bcmdhd: Fix of Wireless Location Service

	Fixed [10378803] [BATCHED-SCAN] WLS_BATCHING commands often
	return their command back rather than expected outputs
Signed-off-by: Ecco Park <eccopark@broadcom.com>
net: wireless: bcmdhd: Fix of Wireless Location Service

	Fixed memory Leak in case of rmmod DHD without batching stop.
Signed-off-by: Ecco Park <eccopark@broadcom.com>
net: wireless: bcmdhd: new feature for Roaming.

	1) The functionality help to prevent the device from doing roam
	scan forever in the environment which has just one AP nearbyt,
	but the RSSI of the AP is -75dbm ~ 78dbm
	2) The feature will set the roam trigger from -75dbm to -85dbm
	in case that there are only one AP.
	3) The value will be reset to -75dbm after disconnecting from
	current AP.
	4) This patch will Fixed Google issue: [10718651]
	   WiFi draining battery life even while phone connected to charge
	5) Enable flow control in DHD driver to fix
	   10430352 UDP speed is less than 40% of TCP speed with LInksys
	   WRT110
Signed-off-by: Ecco Park <eccopark@broadcom.com>
net: wireless: bcmdhd: Fixed Coverity issue.

Signed-off-by: Ecco Park <eccopark@broadcom.com>
net: wireless: bcmdhd: fix for negative padding

Signed-off-by: Iliyan Malchev <malchev@google.com>