Add support for global clock controller for peripheral clock
clients to be able to request for the clocks.
Change-Id: I528821a299fee139d23947bc8caa5674ddef9687
Signed-off-by: Jagadeesh Kona <jkona@codeaurora.org>
Update the clock IDs and BCRs of Global Clock Controller for SHIMA.
Change-Id: Iec2722e6edc1d454a29d084062b8356af08b17b7
Signed-off-by: Jagadeesh Kona <jkona@codeaurora.org>
Add clock id for GCC PCIE throttle core clock and remove clock ids of few
dummy clocks on SHIMA.
Change-Id: I71d41fc078c1b9d9d89dbc6b44e1296fe6b3c9ed
Signed-off-by: Jagadeesh Kona <jkona@codeaurora.org>
CDSPRM module implements a RPMSG interface to communicate with CDSP
while providing a way for CDSP to vote for CPU L3 clock, CPU QoS to
benefit CDSP applications performance.
Change-Id: I46c6407a6f4d531f3a9ec84d5ec4e506db5ca120
Acked-by: Sreekanth Gande <sgande@qti.qualcomm.com>
Signed-off-by: Bavyasritha Alahari <alahari@codeaurora.org>
Some non-blocking clients may not wait for the OUT event from select or
poll before resending to a flow controlled port. Check for exisiting
waiters before allocating a new one so these clients do not exhaust the
memory pool.
Change-Id: I5fc40d5b1d1819ea5bf94438c04ee42b42639ebc
Signed-off-by: Chris Lew <clew@codeaurora.org>
parse compatible flag from BT Device tree to get Bluetooth
chipset version and send to userspace via ioctl call.
Change-Id: Iddcae25df2e854a55a745bc127277552a799e3e4
Signed-off-by: Satish kumar sugasi <ssugas@codeaurora.org>
CDSPRM module implements a RPMSG interface to communicate with CDSP
while providing a way for CDSP to vote for CPU L3 clock, CPU QoS to
benefit CDSP applications performance. The module also implements
an interface with NPU for Cx i-peak limit management and registers
cooling devices for CDSP and HVX thermal mitigation.
Change-Id: I5aa592cb8de19367f7361e1f31d1077ceba386df
Acked-by: Sreekanth Gande <sgande@qti.qualcomm.com>
Signed-off-by: Bavyasritha Alahari <alahari@codeaurora.org>
Setting a fake battery SOC (state of charge) is useful to test
different mitigation levels. Add support for it by exposing
fake_soc under qcom-battery class which can be set only when
CONFIG_QTI_PMIC_GLINK_CLIENT_DEBUG is enabled.
To set fake_soc of 50%,
echo 50 > /sys/class/qcom-battery/fake_soc
To clear fake_soc so that actual battery SOC can be displayed,
any value other than 0-100 can be set to fake_soc.
echo -1 > /sys/class/qcom-battery/fake_soc
Change-Id: Ibff337fb4da9d4e9aadbe148f3eecca9e2d69604
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
Currently, data received from the remote subsystem is delivered
to the clients as-is if they've registered for receiving it. This
can cause unintended extraneous buffer reads if the length of the
received message is too small. Verify that the message length is
at least the PMIC Glink header size.
Change-Id: I3774d9d5331794c509bda89f40f4ead2e0ed3843
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
There are Non-VM (Virtual Machine) supported target drivers which
may refer some of the APIs defined for VMs. But those drivers are
compiled irrespective of VM or non-VM configurations. Add stubs to
support to compile drivers for non vm supported targets.
Change-Id: Ibc0c2c55b3b264c43c4793f153e723f8d344423a
Signed-off-by: Murali Nalajala <mnalajal@codeaurora.org>
Register driver should be skipped if reboot is already in progress.
Also firmware boot timer should be stopped if register driver work
has been scheduled but gets killed later to avoid timing out because
of the reboot.
Change-Id: Iae4de860329a82416bfa58967095a4de7b509813
Signed-off-by: Yue Ma <yuem@codeaurora.org>
If RM is not set up, drivers such as ion may be frequently calling
hh_rm_get_vmid and causing a console message that a VMID could not be
found. Drivers should be correctly handling the error case, so remove
the pr_err here to not fill console messages.
Change-Id: I2026d9481b6d58a89fb2f546bf76b29566e5f3d7
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
Add library for client drivers to lend interrupts to each other.
Change-Id: I4c60e0443d178e83c0bb4ec824915e4bdadb9c39
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
A VM may release a lent IRQ back to its lender. The lendee VM notifies
the resource manager that it may give the interrupt back to the lender
via its interrupt handle. The lender then must notify the lender VM that
it has released the interrupt. The lender VM must then reclaim the
interrupt via the handle.
Change-Id: Ic76f5a3692b4041bc3f260b4add06da11746f19e
Signed-off-by: Elliot Berman <eberman@codeaurora.org>
An IRQ lender driver will likely ought to need to use the IRQ handle to
reclaim the interrupt when the lendee is done with the interrupt.
Change-Id: I0b791ecfb7b169d5cf2677d324e9aceea51feb5d
Signed-off-by: Elliot Berman <eberman@codeaurora.org>