CPUFREQ: Fixed OLD grenpa ondemandplus, was making kernel panic!

on store_inter_hifreq and store_inter_lofreq
qcom: rpm-smd: Mask the interrupt before sending the sleep set.

Sending a sleep set would cause an SMD interrupt to fire. If the
interrupt was previously affine to a different CPU, it could cause a
premature wakeup of that CPU. Prevent this by masking the interrupt
before sending the sleep set.

Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
msm: tspp: Request IRQs on first use

Reserving the IRQs on driver initialization is redundant and should
be done only when client first uses the driver. Also, it may prevent
transition to power saving modes.
Move IRQ requests to be done when first stream is opened, and free
when last stream is closed.

Signed-off-by: Gilad Broner <gbroner@codeaurora.org>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
tspp: fix bam irq request preventing sleep

Registering and resetting BAM device upon initialization of tspp
driver requests bam irq resource, which prevents entering sleep.
Instead, BAM device is now initialized only when first needed which
is when the first channel is opened. BAM device is uninitialized
when channel is closed.

Signed-off-by: Gilad Broner <gbroner@codeaurora.org>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
msm: tspp: use an actual device structure for DMA allocation

Not supplying the device struct for arch arm64 causes some DMA
functions to issue runtime warning and fail.

Signed-off-by: Gilad Broner <gbroner@codeaurora.org>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
platform: msm: Fix compile when CONFIG_PFT is not set

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Added Synapse APP to boot install.
Fix drivers/usb/serial/usb_wwan.c driver.
Config Update! enabled USB SERIAL + WWAN + OPTION for PPP Widget

https://play.google.com/store/apps/details?id=de.draisberghof.pppwidget&hl=en
Config Update. USE USB SERIAL AS IN KERNEL CODE.
cma: assign to correct variable in __iommu_alloc_buffer

When we moved to pfns in [9740ba422e "cma: use pfn instead of pages for
argument passing"], there was one place where we should have been using
a page variable instead of a pfn. Fix this.

Signed-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Implemented config MULTI_CPU_POLICY_LIMIT to apply policy limits on all cpus
MULTI_CPU_POLICY_LIMIT: optimizations
cpufreq: better define for scaling_min_freq_all_cpus, scaling_max_freq_all_cpus.
Implemented scaling_min_freq_cpuX, scaling_max_freq_cpuX and scaling_governor_cpuX. We have async cpu we can use different governor, freq for all cpus.
MULTI_CPU_POLICY_LIMIT: fixed a bug inside store_pcpu_scaling_governor, show_pcpu_scaling_governor, store_pcpu_scaling_freq, show_pcpu_scaling_freq functions.
CPUFREQ: Cleanups after merging with Alucard MULTI_CPU_POLICY_LIMIT
Enabled Async CPU CORE. + Config Interface thanks to @Alucard24

Now we can set freq per core, min/max and each core can start with
it's own gov.
CPUFREQ: Clean some white space. there are a lot of 80+ characters

Need to find time to clean them all.
Merge remote-tracking branch 'do/LG-STOCK-KK' into LG-STOCK-KK