Massive Google Update

net: wireless: bcmdhd: Add SET_RANDOM_MAC_SOFTAP option

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
ARM: OMAP4: cpuidle: prevent CPU1 from locking CPU0 in idle entry

We can have a lockup scenario when two cpu are spin waiting for each other:

CPU0:
	omap4_enter_idle()
		|---omap4_enter_idle_primary()
			|---------while (omap4_idle_requested_cx[1])
					cpu_relax();

CPU1:
	omap4_enter_idle()
		|----
		while ((omap4_idle_ready_count == 0) && omap4_all_cpus_idle()) {
			spin_unlock(&omap4_idle_lock);
			cpu_relax();
			spin_lock(&omap4_idle_lock);
		}

Depend on idle ready count to let CPU0 to progress forward.

Change-Id: Ida6b60f618e8078701fcad8d976c3f1620cc71e6
Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Yuan Jiangli <jlyuan@motorola.com>
cfg80211: fix a crash in nl80211_send_station

mac80211 leaves sinfo->assoc_req_ies uninitialized, causing a random
pointer memory access in nl80211_send_station.
Instead of checking if the pointer is null, use sinfo->filled, like
the rest of the fields.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
[MMC] Patch the firmware of certain Samsung emmc parts to fix a bug

Patch the firmware in certain Samsung emmc chips after every power-on
to workaround a bug in the wear leveling code.  Patch provided by Samsung
Semiconductor, and the code to apply the patch was originally written
by Jeonghwan Min of Samsung.

Change-Id: Id40cfb8f68842fc4a47f60ae032f1b49c0fcb65e
Signed-off-by: Ken Sumrall <ksumrall@android.com>
gpu: pvr: Update to DDK 1.8@813213

 - Add PVRSRV_MMU_MAKE_READWRITE_ON_DEMAND feature for Crespo MapPage()
   crash bug investigation. This will write-protect the MMU pagetables
   when the SGX driver is not modifying them.

Change-Id: If2b488128ddf28536d6e706dc977f719c0193f61
OMAP4: trim_quirks: Fix wrong implementation of erratum i684

OMAP4430 erratum i684:
Due to trimming program issue and a related architectural issue,
the LPDDR I/O and Smart I/O was not trimmed correctly on certain
OMAP4430 revisions. The default value in CONTROL_EFUSE_2 is not
correct and requires to be over-ridden by software.
Units with ProdID[51:50]=11 are not impacted by this issue.

Workaround:
For all affected OMAP4430 units, the value of CONTROL_EFUSE_2 must
be overwritten with 0x004E4000.

Current implementation impacts all OMAP4, hence the fix
restricts to implement the WA only for OMAP4430 affected units. The
wrong value overriden to SoCs not impacted such as OMAP4460 can
cause memory instability in samples as the override
trim value was purposed purely for erratum impacted samples.

Change-Id: I747181ce25eb2574e2b91b5a0a102c538f43b632
Signed-off-by: Konstantin Shlyakhovoy <x0155534@ti.com>
nl80211/cfg80211: add max_sched_scan_ssids in the hw description

Some chips can scan more SSIDs with a single scheduled scan command
than with a single normal scan command (eg. wl12xx chips).

To support this, this patch creates a separate hardware description
element that describes the amount of SSIDs supported in scheduled
scans.

Signed-off-by: Luciano Coelho <coelho@ti.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>

Conflicts:

	include/linux/nl80211.h
nl80211/cfg80211: add max_sched_scan_ie_len in the hw description

Some chips may support different lengths of user-supplied IEs with a
single scheduled scan command than with a single normal scan command.

To support this, this patch creates a separate hardware description
element that describes the maximum size of user-supplied information
element data supported in scheduled scans.

Signed-off-by: Luciano Coelho <coelho@ti.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
nl80211/cfg80211: add match filtering for sched_scan

Introduce filtering for scheduled scans to reduce the number of
unnecessary results (which cause useless wake-ups).

Add a new nested attribute where sets of parameters to be matched can
be passed when starting a scheduled scan.  Only scan results that
match any of the sets will be returned.

At this point, the set consists of a single parameter, an SSID.  This
can be easily extended in the future to support more complex matches.

Signed-off-by: Luciano Coelho <coelho@ti.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>

Conflicts:

	include/linux/nl80211.h
	net/wireless/nl80211.c
net: wireless: bcmdhd: Fix mac setting from platform hook

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
net: wireless: bcmdhd: Always turn Off wlan power on interface down

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
net: wireless: bcmdhd: Allow Improved suspend/resume processing on 2.6.39

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
net: wireless: bcmdhd: Update to Version 5.90.195.35

- Add SoftAP auto-channel support
- P2P fixes

Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
ARM: 7296/1: proc-v7.S: remove HARVARD_CACHE preprocessor guards

commit 612539e81f655f6ac73c7af1da8701c1ee618aee upstream.

On v7, we use the same cache maintenance instructions for data lines
as for unified lines. This was not the case for v6, where HARVARD_CACHE
was defined to indicate the L1 cache topology.

This patch removes the erroneous compile-time check for HARVARD_CACHE in
proc-v7.S, ensuring that we perform I-side invalidation at boot.

Reported-and-Acked-by: Shawn Guo <shawn.guo@linaro.org>

Acked-by: Catalin Marinas <Catalin.Marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>