When there is Modem WDOG bite, Q6 will not get chance to reset
the hardware and if shutdown is called as part of PD down
notification then freeing buffers already submitted to hardware
may cause exceptions as hardware may try to access DDR location
which is already freed.
Fix the issue by delaying the shutdown till FW ready happens and
hardware is reset to clean state this way buffers are freed after
hardware is in reset state.
CRs-fixed: 2000709
Change-Id: Iacea5e8b712dd4ca310e5b502e43f4beb99f6981
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
Add more refined states with service notifier notification for clients
to be able to distinguish between different error scenarios.
CRs-Fixed: 2004229
Change-Id: Ibae1f2b0ba03f8cdcb14398d7d35b007fac1a150
Signed-off-by: Puja Gupta <pujag@codeaurora.org>
The unmap operation of a dma bounce buffer is performed using an incorrect
device compared to the map operation. This leads to a leaked bounce buffer
dma map.
Fix the device usage during the unmap operation.
CRs-Fixed: 1104864
Change-Id: I7da2484ce1f070a4545b9110e3602b4f39d7afdc
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
With the conversion of the master device to use the arm iommu
ops we lose the benefit of a cache flush using the dma_map_sg
trick. Plus we end up mapping all the GPU buffers into the master
DMA device which is admittedly sub optimal.
However it did end up mapping all the display buffers which
unintentionally worked. Put the map_sg() functions back into msm_gem.c
to make it intentionally work from now on.
Change-Id: Ic0dedbada1a8723fb47311189a6b7e11969427ee
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
Enable BALANCE_ANON_FILE_RECLAIM for msmcortex debug
config as it is already enabled for msmcortex perf
config.
Change-Id: Ic77e297ecea2e7dda14c0b24b6e7a1856726843d
Signed-off-by: Liam Mark <lmark@codeaurora.org>
Define an interface to help user-space to pass the HDR stream
information to the driver which will be used in configuring HDMI
and DP interfaces.
Use the new interface in HDMI and make necessary changes while
reading the info.
CRs-Fixed: 2004813
Change-Id: I3447c7b2ad5c4ca072becbeb2201e27c4f57c1dd
Signed-off-by: Arun Kumar K.R <akumarkr@codeaurora.org>
Expose mixer control to dynamically set performance
mode for NOIRQ FE instance.
CRs-Fixed: 2002360
Change-Id: I1a20325882ba45b24633920de1a45b75d315fb72
Signed-off-by: Haynes Mathew George <hgeorge@codeaurora.org>
Since max_interrupters flag includes primary interrupter as well,
update the bound check when this flag is being used for
secondary event ring clean-up/allocation.
Change-Id: I044c5a89fe17779eb847981cbf27e99b97e37d80
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
The bitmap size can be on the order of several pages.
In a fragmented system it may not be possible to allocate the
memory as contiguous.
Handle fragmentation by falling back to vzalloc.
Change-Id: Ie93c92705eed1bbe966d5f121b3393d8909982a6
Signed-off-by: Liam Mark <lmark@codeaurora.org>
The size of the array which holds the page tables can be on the
order of several pages.
In a fragmented system it may not be possible to allocate the
memory as contiguous.
Handle fragmentation by falling back to vmalloc.
Change-Id: Icc29849bd1c8c589da24e2a73988e3247f7bcb64
Signed-off-by: Liam Mark <lmark@codeaurora.org>
Add alias name for the secondary GPU temperature sensor in MSM8998. This
alias information will be used by thermal-engine.
Change-Id: I4d3400efef8886153018435468526f88418ee0a0
Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org>
Add a spinlock to protect the state transitions in rndis ipa
driver.
Change-Id: Ia5eab252d9a53e6a2f4db07912967a5f466982a6
Acked-by: Chaitanya Pratapa <cpratapa@qti.qualcomm.com>
Acked-by: Javid Mohammed <mjavid@qti.qualcomm.com>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
Signed-off-by: Sridhar Ancha <sancha@codeaurora.org>
Do not consider debug file system init failure as
functional failure.
Modify the code to proceed further
driver initialization.
Change-Id: I821af8970b6c2ced55d6464b8a7b56a458fa7d79
Acked-by: Javid Mohammed <mjavid@qti.qualcomm.com>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
While initializing the SMMU with DOMAIN_ATTR_ATOMIC attribute
iommu driver always vote for aggre2_noc_clk during suspend mode
which result into power penalty. To resolve this issue avoid
configuring DOMAIN_ATTR_ATOMIC attribute in S1_BYPASS mode.
CRs-fixed: 2004562
Change-Id: Ic5d4b2864f58098fd29da48e5f977434e356b1e0
Signed-off-by: Hardik Kantilal Patel <hkpatel@codeaurora.org>
Add smmu-s1-bypass flag to the icnss node. so based on target
requirement the user can configure different SMMU configuration.
CRs-fixed: 2004562
Change-Id: I04297b5dbc013a8df4603887794f98a8f8ea2bcc
Signed-off-by: Hardik Kantilal Patel <hkpatel@codeaurora.org>
Add smmu-s1-bypass flag to the icnss node. so based on target
requirement the user can configure different SMMU configuration.
CRs-fixed: 2004562
Change-Id: If44232baaeab27a1abc93126f65fe5ee6fca6cd4
Signed-off-by: Hardik Kantilal Patel <hkpatel@codeaurora.org>
Driver may be used in platforms where some use sparrow cards while
other use sparrow-plus cards, where different FW image is needed.
Add the capability to load dedicated FW image in case sparrow-plus
card is detected and fallback to default image if such does not exist.
Change-Id: I7bfa75d2bb135fd856adc37abf449220f6bcd139
Signed-off-by: Lazar Alexei <qca_ailizaro@qca.qualcomm.com>
Signed-off-by: Maya Erez <qca_merez@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Git-commit: a351f2f537b711bed3d0f6a75d7e9fddcbe51ffe
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git
[merez@codeaurora.org: trivial rebase]
Signed-off-by: Maya Erez <merez@codeaurora.org>
Currently driver does read max Transfer size from RNDIS_MSG_INIT
control message, when received from Host, but it is wrongly being
decoded due to wrong offset used. This leads dl_aggregation size set to
0 instead of required rndis_dl_aggr_size. Hence fix this by incrementing
tmp pointer for requestID to use correct offset to read max Transfer
size and set DL aggregation size correctly.
Also pass maxpkt_per_xfer as zero to rndis_qc_bind_config_vendor() so that
UL aggregation buffer size will be set to aggregation of 15 packets. This
helps in improving througput numbers.
Change-Id: Icc7506b57d26f82e6bf81f9d7dc1515cfbae6c82
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
MMCC and GPU clocks needs the post div bits to be cleared, so that the
clock measure does not account for any previously set div values in the
debug mux.
Change-Id: I1123e566740518e287692797fa3ab6b316da3bf1
Signed-off-by: Taniya Das <tdas@codeaurora.org>
There could be cases where the post div in different debug muxes could be
set previously and not cleared, so add support to clear and set it, in case
required.
Change-Id: I15fedb4672179cb604804e7cbb0d6afc68bc473b
Signed-off-by: Taniya Das <tdas@codeaurora.org>
CXIP LM feature is not needed for sdm630. So disable CXIP LM hardware
feature in KTM for sdm630. It disables hardware throttling for
predefined client of CX rail even if all participating clients set
their vote.
Change-Id: Ic1fff109ba05b4d8fdcf9b1795266fd26e9971d5
Signed-off-by: Manaf Meethalavalappu Pallikunhi <manafm@codeaurora.org>
Update tsens mapping for cluster0 mitigation profile based on
latest recommendation for sdm630. With new recommendation, tsens7 is
used for cluster0 mitigation profile.
Change-Id: Ia60fb7ff72504a9429fe0c75d0d8252fceeeb696
Signed-off-by: Manaf Meethalavalappu Pallikunhi <manafm@codeaurora.org>