wlan: Make allocation dynamic instead of static array

Fix buffer overun issue due to static array allocation.
Dynamic allocation is done according to  IE length's to
resolve this issue.

Change-Id: I85d6cbb25c98786662874f22eee574e611e57c46
CRs-fixed: 457100
wlan: Updating dwelltime in run time.

Added Driver command to get and set dwell time.
This will call appropriate driver ioctl to get and set dwell time.

Change-Id: I6ab55d25bfba2d8c37eff88715b867f9271be0cb
CRs-Fixed: 507132.
qcwcn: Properly indicate "channel list changed" event

Code exists such that when a "COUNTRY" command is executed, a "channel
list changed" event is supposed to be sent to the supplicant.  However
due to a logic error the event is not actually sent.  Modify the code
to properly detect when a "COUNTRY" command is successfully processed
so that the event is sent.  Also do the same for "SETCOUNTRYREV" and
"SETBAND" since these also result in a change in the channel list.

Change-Id: I85283a22f106171dd30f494e40a7a4e88631bb06
CRs-fixed: 482678
wlan: Add WCNSS service daemon

The primary job of this daemon is to collect the calibrated data
recieved from WCNSS FW thru platform driver; and save it to a file.
And pass this stored calibrated data to firmware, when the device
boots next time.

WCNSS Firmware needs raw NV data (settings & some register values),
to do the power-on calibration. Once firmware does the power-on
calibration; it can then re-use the calibrated data. And it need
not do the calibration again in the next time it boots.

So WCNSS will send this calibrated data to Apps; and this service
should save this into a persistent area. And in the further bootup,
this service will send the calibrated data to WCNSS.

Change-Id: I9497595036d580f1fffc2a99d419123d542d950a
CRs-Fixed: 458741
wcnss: Ignore calibrated data during factory testing

Optional feature to force WCNSS power-on calibration. This is required
for factory testing.

Change-Id: I8d5823efb35d03a0568fe17b0bbbf5bbf6c88861
CRs-Fixed: 518702
Merge "wlan: Make allocation dynamic instead of static array"
Merge "qcwcn: Properly indicate "channel list changed" event"
Merge "wlan: Updating dwelltime in run time."
Merge "wlan: Add WCNSS service daemon"
Merge "wcnss: Ignore calibrated data during factory testing"
wcnss: Add support to copy WLAN config file

Copy WLAN config files to data partition at first bootup; this copy is
also done after a factory reset or after an OTA update.  This change also
adds support to plumb certain WCNSS module parameters.

Change-Id: I738e4adec9066b82b499885dbea1801902f78f0b
CRs-Fixed: 516009
QCOM BRINGUP hw/qcom/wlanwlan

Summary:
wlan: Make allocation dynamic instead of static array

Fix buffer overun issue due to static array allocation.
Dynamic allocation is done according to  IE length's to
resolve this issue.

Change-Id: I85d6cbb25c98786662874f22eee574e611e57c46
CRs-fixed: 457100

wlan: Updating dwelltime in run time.

Added Driver command to get and set dwell time.
This will call appropriate driver ioctl to get and set dwell time.

Change-Id: I6ab55d25bfba2d8c37eff88715b867f9271be0cb
CRs-Fixed: 507132.

qcwcn: Properly indicate "channel list changed" event

Code exists such that when a "COUNTRY" command is executed, a "channel
list changed" event is supposed to be sent to the supplicant.  However
due to a logic error the event is not actually sent.  Modify the code
to properly detect when a "COUNTRY" command is successfully processed
so that the event is sent.  Also do the same for "SETCOUNTRYREV" and
"SETBAND" since these also result in a change in the channel list.

Change-Id: I85283a22f106171dd30f494e40a7a4e88631bb06
CRs-fixed: 482678

wlan: Add WCNSS service daemon

The primary job of this daemon is to collect the calibrated data
recieved from WCNSS FW thru platform driver; and save it to a file.
And pass this stored calibrated data to firmware, when the device
boots next time.

WCNSS Firmware needs raw NV data (settings & some register values),
to do the power-on calibration. Once firmware does the power-on
calibration; it can then re-use the calibrated data. And it need
not do the calibration again in the next time it boots.

So WCNSS will send this calibrated data to Apps; and this service
should save this into a persistent area. And in the further bootup,
this service will send the calibrated data to WCNSS.

Change-Id: I9497595036d580f1fffc2a99d419123d542d950a
CRs-Fixed: 458741

wcnss: Ignore calibrated data during factory testing

Optional feature to force WCNSS power-on calibration. This is required
for factory testing.

Change-Id: I8d5823efb35d03a0568fe17b0bbbf5bbf6c88861
CRs-Fixed: 518702

Merge "wlan: Make allocation dynamic instead of static array"

Merge "qcwcn: Properly indicate "channel list changed" event"

Merge "wlan: Updating dwelltime in run time."

Merge "wlan: Add WCNSS service daemon"

Merge "wcnss: Ignore calibrated data during factory testing"

wcnss: Add support to copy WLAN config file

Copy WLAN config files to data partition at first bootup; this copy is
also done after a factory reset or after an OTA update.  This change also
adds support to plumb certain WCNSS module parameters.

Change-Id: I738e4adec9066b82b499885dbea1801902f78f0b
CRs-Fixed: 516009

Merge "wcnss: Add support to copy WLAN config file"

Test Plan: confirm no added derp on nexus devices and mergevas part of qcom bring up

Reviewers: randall.rushing, synergy, raymanfx, anders3408

Differential Revision: http://review.codefirex.com/D156