Add video mode dcs command list support. This patch
make sure dcs commands committed while dsi video engine
is busy so that dcs command will be transmitted at beginning
of next BLLP.
Change-Id: I11b0214ee10f3b1ef33b1da4c8e577800068cb06
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
(cherry picked from commit 7b0e0a45216714d76bf717a928a0db77bfa2868a)
Both vsync enabled and disabled are controlled by framework
through ioctl. Driver reports vsync event to framework via
sysfs. Meanwhile, mdp related clocks are enabled by frame
work at vsync enabled request and disabled by driver if there
is no any display update within specifid vsync period.
Change-Id: Ice5be3a6db5930b95bdd2f718d9256bf73936e23
Signed-off-by: Kuogee Hsieh <khsieh@codeaurora.org>
(cherry picked from commit 3c406e4eec79b710b7f5b5b67c23db7af871be40)
The DSPS watchdog timer continues counting even after
the DSPS is shutdown. This may cause a spurious watchdog
interrupt after the DSPS is powered up, before the software
running on the processor can re-init the watchdog. Disable
the watchdog before shutting down the watchdog.
Change-Id: I169e690b82ae05617e096ac832d757a110f673a4
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
(cherry picked from commit c84f66e2f518dcb9f0931a5a1b65bc770ee23d13)
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit c9b48441a43985671779dc247356cb1313573722)
Remove cross-calling limitations imposed by cpufreq. Clock drivers
and SPM driver now allow changing of frequencies from any core. Using
cpus_allowed mask to check for core affinity works well with workqueues
but do not port so well when the core requesting frequency change is a
kthread with the flag PF_TASK_BOUND not set.
Change-Id: Iab664ce8657780814440a11dff77cc925df597f8
Signed-off-by: Praveen Chidambaram <pchidamb@codeaurora.org>
(cherry picked from commit be01a17afb6b6e85456217caa1ac11eb0b6674e1)
(cherry picked from commit bd97cdfeb87eda0373721baaea744b02a27822f5)
SPM block is responsible for power collapsing the core, but also
interacts with the PMIC through hardware to change core voltage. It
would be beneficial to frequency algorithms to change frequencies and
thereby voltages of all cores running from a single core. In some
targets, the SPM is configured to set voltage only for that core. Ensure
that the core voltage is set only from that core.
Change-Id: I656e20a49d9784f08e9ce4d4e8f6c15760ba015b
Signed-off-by: Praveen Chidambaram <pchidamb@codeaurora.org>
(cherry picked from commit bcd483b93abd434d0207211c8bab7d0f7d653c27)
(cherry picked from commit 740945d7d0d4bab1d3d7674e7061fbe0acfe0d19)
Hotplug times are tracked elsewhere, and excessive logging
(especially in SCHED_FIFO context) can cause problems for
system responsiveness.
Change-Id: I82ba0cdff71e04af8c7ab4ef2a1cfe9306075ee3
Signed-off-by: Steve Muckle <smuckle@codeaurora.org>
(cherry picked from commit c430681cc22d5d0d7229dc69ea8f5302b4c57059)
(cherry picked from commit 2db00aa4e7f1feb5c40330a4df22afe16b4dca8e)
TSENS is not supported on the MSM8960 1.0 because of a
HW bug. The driver used a platform detection mechanism
through a flag. With the 8960PRO the CPU MAJOR
version resets back to major version 1. The driver
does not distinguish the PRO parts differently and
disables the driver. Change the method to detect
the CPU using the platform detection api instead
of relying on the platform data.
Change-Id: I446eb196cf81e6a29760530dfbce6910652e867c
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
(cherry picked from commit 30447fec965309e30f1eb33c0d318ee4a5365026)
(cherry picked from commit 25bb62fbbc050147ae298179d7abe4ad08f78371)
When A2 turns on, queue_rx() is first run from the SMSM thread, and
attempts to allocate 32 2kB-buffers with GFP_KERNEL for DMA transactions.
If the system is low on memory, the allocation could put the thread to
sleep while the memory allocator scavenges for enough memory to satisfy
the request. This is not desired as it stalls a critical system thread
that is communicating with a real-time system.
Instead, use GFP_NOWAIT which will return immediately if no memory is
available for the allocation request so that bam_dmux may handle the
situation gracefully and possibly reschedule the allocations for a later
time.
CRs-Fixed: 406946
Change-Id: I645acd29f7e0fa27883a27c043fc951cbdd91b84
Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
(cherry picked from commit ad75d8d57e70aab72d1c0c1411f58d1d3028da40)
(cherry picked from commit bcbb7dda88b66d69c2ebb6c31b5a6083f4df6518)
The LTE Coexistence bit has been renamed to just SMSM_PROC_AWAKE since
it is now being used for more general is-processor-awake signaling.
Change-Id: I9007c6c91ce3338c790864bf09318edbcb6d50c0
Signed-off-by: Eric Holmberg <eholmber@codeaurora.org>
(cherry picked from commit 8cb30f55fe05f9e59824941bb9ffe8f904b5f3ce)
(cherry picked from commit 18f84bf8c7c86bd5305aad31eee27e8294434c92)
Export a function from sch_api.c that will look up
desired qdisc and call it's registered change function
to enable/disable flow.
Change-Id: I5b6dc7a6fd2b09b796c92b3770ba83423d19c864
CRs-Fixed: 355156
Acked-by: Jimi Shah <jimis@qualcomm.com>
Signed-off-by: Tianyi Gou <tgou@codeaurora.org>
(cherry picked from commit b8419fe690053b76658d49565c57ac654faf2eaa)
(cherry picked from commit 3a30e7aa4487f56a74f12c12f11cece6ce1f2100)
This ioctl provides a shorter route to enable/disable flow
on a given qdisc when compared to the traditional NETLINK
based communication. It is known to improve throughput when
data flow is throttled at a higher rate.
Change-Id: I8533887c8a7caffe3b17320dc044f28388ba8b83
CRs-Fixed: 355156
Acked-by: Jimi Shah <jimis@qualcomm.com>
Signed-off-by: Tianyi Gou <tgou@codeaurora.org>
(cherry picked from commit 747a936d6fd1d49331b0891df6797144eec56e23)
(cherry picked from commit cfa440e0faf9b6cd8bc313c750fd0713490f3d94)
Several of the iommu virtual address space functions may
need to be accessed by modules. Export the symbol.
Change-Id: Ief99cbb63f729943b6d8b45ce9aed071d84decd1
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
(cherry picked from commit 33b30bee472264ecf5b7d06d842349bbe593d0fc)
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit 67c19b8a6c2a8a4e27df324516ecddbf758c379c)
Rather than forcing authors of reverts to truncate the summary line
because the "Revert" prefix added pushes it over the character limit,
excuse reverts from this rule.
Change-Id: I395dfff3327e360ef935d4a685c38df6577e3867
Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
(cherry picked from commit 3c09aeb415d542b08257021992aadd965fcb3902)
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit 952824addcec8487b8c800b0ef18ede547711381)
CPR (Core Power Reduction) helps save CPU power by
reducing the chip voltage whenever possible
Change-Id: Ifa32967046b4bb7f5b4f756feb9cefabe8f5bea4
Signed-off-by: Kaushal Kumar <kaushalk@codeaurora.org>
(cherry picked from commit c0e5d6768038efbe5fb98fcd935f01c8ce611e08)
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit 7c8192db2ee5a7edbf8ac9707e3d044efd213da3)
cpu_idle() disables irqs before calling down into the cpuidle
driver via cpuidle_idle_call(). Disabling irqs again in
msm_cpuidle_enter() is wasteful and unnecessary. It also inhibits
our ability to determine the largest irq latency when the cpu
idles for extended periods of time because the irqsoff trace is
reenabled when the irqs are disabled in msm_cpuidle_enter().
Note that we still reenable irqs before returning, as is required
by the ARM idle loop.
Change-Id: I925478d8fef88ab490959622bc68303f59cc6e79
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
(cherry picked from commit 27361508474098444013f96acb95f0e3f1ed55c4)
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit 1c3d38b5c85412f89e2973896cfc5d1e793e1828)
The irq framework already supports wakeup interrupts. We just
need to provide a dummy irq_set_wake so the framework does not
return an error. Also specify the MASK_ON_SUSPEND flag so that
non-wake interrupts are masked on suspend.
Change-Id: I7fa5717d79467e22647606c3ee93373a2bffc547
Signed-off-by: Michael Bohan <mbohan@codeaurora.org>
(cherry picked from commit c86e2b7849eaf8d498cb2dabb59a33dab7e6dca5)
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit ed6e1f1345445c399f89245a2b576b1b16395890)
Some platforms (e.g. 8974) have interface clock that is not ON by
default. Turn it ON during probe, and control it like core clock
if it needs to be controlled.
Change-Id: Ifffb4b7ea9afb5f3f1208b4b2b6638594ffca541
Signed-off-by: Sagar Dharia <sdharia@codeaurora.org>
(cherry picked from commit debc8b75c650751d6e2cd4e5565faed384758446)
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit 89d628644c5241a5ec37b6d7cceda3ae0ec978e5)
The local_clock_reg_lock is used to protect registers accesses. Move
the acquiring and releasing of this lock from rcg_clk_set_rate to
set_rate_mnd and set_rate_hid to allow overriding of the RCG set rate
op with ops that dont require the lock.
Signed-off-by: Vikram Mulukutla <markivx@codeaurora.org>
(cherry picked from commit 8c26055e822312da17d93e2a252bf522e08c3965)
Conflicts:
arch/arm/mach-msm/clock-local2.c
Change-Id: Ibb67a921f6b1c53573b864ce1bd05b13492b92f5
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit 33ce43fe3edf79bbc8ab6948d96c463696237d3d)
Introduce a new low power state for Krait, retention.
This state will lower the voltage to the Krait core to
retention voltage in addition to clock gating. This state
will be in between WFI and Standalone power collapse in
terms of time overhead and power savings.
Change-Id: I6b1f0a0d2e4954a705a047fd4a07f4dd1fb3518a
Signed-off-by: Girish Mahadevan <girishm@codeaurora.org>
(cherry picked from commit d27ca4a7526a890f9d2979acefda3561e49d2e66)
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit 3af7249c36ab53923fdf216df3b3ba2c7f847851)
If any of the clocks bam_dmux normally uses is unsupported on a target,
bam_dmux should ignore that clock and proceed.
Change-Id: I6124059b23a3f6a4a6f3c3a7eeaaa1f9436de1b4
Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
(cherry picked from commit 0c9371ab794830add3a0149c4f499a603507b435)
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit e1f715f90c5dd5976270d654807946716129bff9)
Parse the device tree elements and fill platform
data structure.
Signed-off-by: Mohan Pallaka <mpallaka@codeaurora.org>
(cherry picked from commit d96f5032cd8b73450886262fe193d1531038c0f0)
Conflicts:
drivers/input/touchscreen/atmel_mxt_ts.c
Change-Id: I551dadffaa84c991abbe964bfb9f72b7fd11dfee
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit 368b8d73bbda62f6ab217ef06019b685636fc3ba)
It is sometimes useful to profile how long CPU frequency switches
take, since they often involve variable overhead (PLL lock times,
voltage increase time, etc.). Add additional traces to to make this
possible.
Since the overhead involved may differ based on the frequencies
being switched between, record both the start and the end frequencies
as part of the trace.
Change-Id: I2de743fc357dad3590fd4980f65f38f6073d426e
Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
(cherry picked from commit 0fe22de09613ce497561f51151b2c50b6c4a1c3e)
(cherry picked from commit 9ab0adbcac4df4d681617a8368329d2f4cad4171)
Utilize the cpu_frequency traces to profile CPU frequency switching.
Change-Id: I5f7b5ea9ab0bd70deb3d64c9361c4b56ab63466d
Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
(cherry picked from commit 7c57b5dfc88a77a7d0c1d7820cf0baa3c37210fc)
(cherry picked from commit e759493b08da1c1d39e68849b6092b3dac3928aa)
dml busy status is supposed to be checked for during bam-to-bam mode
and not in bam-to-system mode. So removing the check for dml busy status
since the driver does not support bam-to-bam mode.
Change-Id: I1496ac441d70dd5efc831768f5ed3bfa11a3f94c
Signed-off-by: Krishna Konda <kkonda@codeaurora.org>
(cherry picked from commit 7a05d53e4aec382db2ce646805f6a69756337fdc)
(cherry picked from commit d1a6364ccb9523aca0e5dd6359437bfc3dda51b2)
Early samples of 8974 v1.0 hardware misconfigure the MPLL1 in
the Modem's primary bootloader. Since this ROM code cannot be
changed, work around the issue by setting a corrected configuration
register value before bringing the modem out of reset.
This change will be reverted when modem support on v1.0 hardware is
dropped, which is expected in the very near future.
Change-Id: Ia422e97730c48b5fd6a6fae084eafd9aa0ee34de
Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
(cherry picked from commit ed97e33f4b886f1b5db122a04d6a2ea0238a208c)
(cherry picked from commit 700c500d9e2e1d067c31aa0f2446aea4ffd0c88d)
Some commercial SIMS require a longer stop bit. This change
makes the driver confirm to the standard.
Change-Id: I270a101213d7dd31acf2608786541e3f11e2f2b8
Acked-by: Kaushik Sikdar <ksikdar@qualcomm.com>
Signed-off-by: Rohit Vaswani <rvaswani@codeaurora.org>
(cherry picked from commit 5fca38fe5fc4068842e854fd0111c898e6ec7cd5)
(cherry picked from commit 9747c0d823d5fd6681769febeccf7819c6382d11)
This change raises the PMIC voltage to 3V to support
a wider range of UIMs.
Change-Id: I6119b565cac7b5f9a08369c78cdb367242dc70be
Acked-by: Kaushik Sikdar <ksikdar@qualcomm.com>
Signed-off-by: Rohit Vaswani <rvaswani@codeaurora.org>
(cherry picked from commit e414d60951e77ccc7dd741bcbf4e270cd14f7cc0)
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit 0acaa5d4f662fbd395e47848382aa1dc3a4ad1ea)
Currently we output virtual address of BAM when it is enabled,
which is not very helpful for debugging. Output BAM's physical
address instead as well as its version and pipe amount.
Change-Id: I1956a1c65bb047b9ff39f1cb04c04e8c08d7a890
Signed-off-by: Yan He <yanhe@codeaurora.org>
(cherry picked from commit c23ab8f614349eade2169402e529abfa1e8cfc24)
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit d9533ab3e1bb136d8f61bf9acc4f04ca56e7eab7)
When setting the NSCFG field, the S2CR register being
written needs to be indexed by the stream matching group,
not by the value of the SID being configured. Additionally,
there is no need to set CBACR for every SMR that is
programmed.
Change-Id: Ib79771a3bd87e4bd3b353bd5c6de9247138ca43e
Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org>
(cherry picked from commit c51f77cf28c2deba250444b51e88d87339890915)
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit b8cda0f34f2fc7369dddd833e41edcdbe75642c2)
In msm8974 bringup we've noted that regulator calls are timing
out. Once RPM communication has been optimized, we should revert
this change so it's clear in the future if a performance
regression has been introduced.
Change-Id: I4a13ef49998f9ed2a71dd9718981fb6ba5816296
Signed-off-by: Michael Bohan <mbohan@codeaurora.org>
(cherry picked from commit 5eb008172190c464ba6e578e6c8ce9e56af09851)
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit aa4b7db6cdc53f6008efcc5db4e2a2a56fb925a4)
The video core master IDs on 8064 Pro are higher than
the ID values for 8960. This patch changes the max
allowed ID value to the correct number.
Signed-off-by: Gagan Mac <gmac@codeaurora.org>
(cherry picked from commit 42bb27f6410ca2ca066d0396a3d8ac4277978162)
Change-Id: I314e1d8ca1a12f01aa124de302d9c3b9a2de3308
Signed-off-by: Sudhir Sharma <sudsha@codeaurora.org>
(cherry picked from commit 78e6ce2d5e884acad9c60eb2c8123fd7825fb3c0)
Currently the default ON state for the OCMEM memory macros is to force
the core and peripheral logic to remain ON. Change this to Normal
Pass-through mode which allows the upstream sleep controller to decide
the actual power state of the macros.
Change-Id: I70464e8fcf699794b403091d2721c3fbed048dc4
Signed-off-by: Naveen Ramaraj <nramaraj@codeaurora.org>
(cherry picked from commit 87e6a9dfab1711e4175819c9a9109a5e85a8bff5)
(cherry picked from commit 4a4bed5c3c4af2566c07ffe7c5db45406d5d1833)
OCMEM has 1K interleaving enabled by default when initialized.
Update the memory macro size in the driver to account for this
behavior.
Change-Id: I16821067ff30268e074ead3ec986fb0952f464f5
Signed-off-by: Naveen Ramaraj <nramaraj@codeaurora.org>
(cherry picked from commit 956732ba26cdbe821d0b191eb7d6acc7b9118edc)
(cherry picked from commit 50b1a0ecd05481f8fad9a983e7297c877ceaefda)
For debug purposes add a Kconfig that allows accesses
from all masters to OCMEM when its not locked down
by the secure processor (TZ).
Change-Id: I75271b656c8b0378791af1d240e8dcd609f69a1e
Signed-off-by: Naveen Ramaraj <nramaraj@codeaurora.org>
(cherry picked from commit c71b2de58746b432d7d20c6868969020cb41e3f8)
(cherry picked from commit d3c37eb52ceee7634e408cfc48398296c02e673f)
If a channel is logical channel open or close ack is pending in the
transmit queue when a logical channel is closed, then they are currently
purged and the remote and local channel states are mismatched and the
port cannot be re-opened. Note that this issue only occurs during rapid
open/close/open sequences that are typically only seen in remote
loopback stress testing.
Add code to not purge ACK commands from a logical channel unless the
logical channel purge is due to a subsystem restart (at which point the
remote state is known to be power-on default).
Change-Id: I52763323642bb7c505630bb994ecc1e021270d17
Signed-off-by: Eric Holmberg <eholmber@codeaurora.org>
(cherry picked from commit 0e91408cb6343d5ac18206ff3d6639ccec5464fd)
(cherry picked from commit ef0445e15b20369c7189a61d63fb284c5a51c3fb)
If newline isn't present, add it to log string to properly display lines
through the debugfs.
Change-Id: I8f35826f1f9a634ba7b1f7d01d0ac136baf3fdc4
Signed-off-by: Eric Holmberg <eholmber@codeaurora.org>
(cherry picked from commit 06ed50a8a125683782cb7a67fa0eded85e05ad59)
(cherry picked from commit 95d17d02cad1670377df6990b3243028e1ce83be)
When lpm_resources receives a sleep data notification, the kvp data has
to be buffered into the existing buffer. If not updated, lpm_resources
chooses a mode where its local copy of the vote hasn't changed but the
vote from the originating driver has been updated.
Change-Id: Ie7dd734ede19463ae0be256ae78360705ca2c944
Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>
(cherry picked from commit f999d2e6dc2c24507b146a6275174728bd19d087)
(cherry picked from commit a1d747fd9c7dd5af42d10b11279f919eec27289b)
An optimization in bus driver prevents checking of slave clocks if
the clock of the NoC on which the slave is connected is not
touched.
Since ocmem slave is represented on a virtual NoC, the ocmem core
clock was not being scaled. Fix this by checking for status of
slave clocks.
Change-Id: I42af40b9f414a62c3712850340eef203ad6ad33d
Signed-off-by: Gagan Mac <gmac@codeaurora.org>
(cherry picked from commit b0295975eb22ef7872680f5da16cea1a3a39795d)
(cherry picked from commit 8d2d912f05b83d5713e3de7bda9472a10f144eee)
Add support to create connection to LE devices using
whitelist. With this, the Controller can try to connect
to multiple devices at the same time. The following
interfaces are added.
1. Add/Remove device from whitelist
2. Clear all the devices from whitelist
3. Create Connection to devices from whitelist
4. Cancel create connection to whitelist devices
CRs-fixed: 388980
Change-Id: I3900c71255e754f80bb2873ae19a41b94cca76c3
Signed-off-by: Sunny Kapdi <sunnyk@codeaurora.org>
(cherry picked from commit 93bef895b01b79f49af60ba1394c9c3f6e563212)
(cherry picked from commit 377ee2bf1fc37bcbeae872661646bdd6a5f8da31)
Configuration of GPIOs should not be part of module init process
as gpios can be shared with other module.
Moved the configuration of gpios as part of driver open and releasing
them as part of driver close, so that there will not be any conflict
between different modules.
Change-Id: Iac507dd1e07e2cd4adb4c28058800fa4f51c9b52
Signed-off-by: Ram Mohan Korukonda <rkorukon@codeaurora.org>
(cherry picked from commit e359d865fd343481f86abeff5120d573493a72cc)
(cherry picked from commit bf464eecc2fb9e220992ed87cca549fd4e8753f2)
This reverts commit def5e24abe4787b22b22138623eeb495ef8fec0d.
Reverted commit was added 3 years back due to this reason:
Some eMMC cards (SanDisk iNand eMMC cards to be specific) needed
this additional delay of 1 ms after sending the switch command to
card. This is a result of some issue with the SanDisk cards itself
and apparently they were going to fix this in their ASIC within
year or so. And Since Sandisk is one of the big players in the
eMMC space, it was important that our software works fine with their
cards.
But now we don't see any need of this additional delay on any of the
latest eMMC chipsets. Even open source version of this file doesn't
have this delay.
Change-Id: Iad5baa897f8fc0a360a17944fb87eb8e21e9bc53
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
(cherry picked from commit 581dd72b2e965e88f8ad93531c03a0c799e6384a)
Found there are some IOT issues when this command is sent from
DUT. This command is only a dummy implementation. As this doesn't
have any impact on functionality, disabled the feature.
Change-Id: Ib435ac17df9d0377bd0b41fdc33b68c738eeaccc
CRs-Fixed: 390090
Signed-off-by: Srinivas Krovvidi <skrovvid@codeaurora.org>
(cherry picked from commit ed37c51ddc9b1514f5e5bfec1ae4763a85e2faad)
For convenient debugging of PBL and MBA code, allow the authentication
timeouts to be overridden with a module parameter. With this, the
timeouts can be extended or disabled entirely (by setting them to 0).
Change-Id: I2329a6ee10503b8b7f7d1d0c2fd52fe1aee42e5a
Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
(cherry picked from commit d251d8ec509cf22740c55bf98ac4edced1ad4a4d)
For debugging purposes, it's sometimes useful to disable or adjust
proxy vote timeouts. Add a module parameter for this purpose.
If proxy_timeout is set to 0, proxy votes will remain asserted until
the peripheral is shutdown. If it's set to a positive value, the value
will be interpreted as override (in ms) for all proxy timeouts. The
default value (-1) will cause the timeout specified in the individual
PIL drivers to be used.
Change-Id: I74a111b8e4e62a15e01c4e2480b7127e84b9f467
Signed-off-by: Matt Wagantall <mattw@codeaurora.org>
(cherry picked from commit 0aafa35e3ee6c37c41d67d9e9e2b1eda69a17333)
SDCC4 controller has IO_PAD_PWR_SWITCH control bit in MCI_CLK register.
Driver should set this bit to 1 if the IO voltage level is within
low voltage range (1.7v - 1.9v) else clear it.
But driver sets this bit to 1 only if the MMC core layer initiates
the voltage switch sequence. So if voltage switch sequence is not
initiated (which is the case with non UHS-I cards) then even if
the IO voltage level is within low voltage range, IO_PAD_PWR_SWITCH
bit remains cleared.
This change checks the IO voltage level and based on that sets the
IO_PAD_PWR_SWITCH bit.
CRs-Fixed: 386445
Change-Id: Id0648b0f87ea9bcc942e855e30da810e0fe5ebf5
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
(cherry picked from commit 341b9e7dbaf0a3caf6e41d37486e3bccc9795feb)
The current APR driver initializes subsystem state from late_init so
slimbus driver reads ADSP's state too late.
Move initialization code to apr_init so that slimbus driver can be
probe sooner.
Change-Id: I14d1bf294b40dd7ea184923ba023646e05912fff
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
(cherry picked from commit ddc46df62d97108de1e45f57b29bc44a4ead0787)
External bluetooth chip needs a lower frame rate
for high audio quality.
Change-Id: Ic3092c8adaf7097f257149e507f7c66f159eedb7
Signed-off-by: Damir Didjusto <damird@codeaurora.org>
(cherry picked from commit 08d2aa588087db0d3a6a7d7670b2ef945012caae)