qcacld-3.0: Set power save enable directly to FW

Currently, the driver schedules the message to set
power save enable/disable to FW as part of the
set power mgmt command received from the userspace.
This command is then scheduled and is sent via
the scheduler thread.
Generally, userspace sets the power save disable
when it starts the DHCP process and enables the
power save back when the DHCP is completed.
DHCP packets are sent through the Datapath and the
PS enable/disable command would be sent via the
control path explained above.
the Race could happen that the scheduler was busy
with some other task and the PS disable command
was in the queue and the DHCP process began.
This would result in DHCP packets going to the peer
with PS enabled.

The fix is to set the power save enable/disable directly
instead of using the scheduler path.

Change-Id: I0f2aed37f875c283f318fb44bcc40d0ab401413a
CRs-Fixed: 2611480
6 files changed