This fix checks the validity of memory device session's
process descriptor before issuing a signal to it while
subsystem restart is performed. This fix avoids accessing
of cleaned-up process descriptor's fields.
CRs-Fixed: 2034816
Change-Id: I2725d3348fbeb8290c887cccea4bca6d41c5b184
Signed-off-by: Gopikrishna Mogasati <gmogas@codeaurora.org>
Register a notifier callback for LAB_VREG_NOT_OK, which is triggered
by the LABIBB driver when short circuit(SC) is detected on the LAB
rail. Disable the OLEDB module upon receiving the LAB_VREG_NOT_OK
notification.
Change-Id: Ia3cc19d9a3c2f32acc413677a9ea4b3100464cd2
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
On certain PMICs, there is no short circuit (SC) detection available
in LAB module. Add support to detect it manually and disable LAB/IBB
module upon SC detection. In addition, notify it to OLEDB driver to
disable OLEDB module.
Change-Id: I2a9dc5b1ae8ece45c85b3992026c7f389fd4d135
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
Restore default android binder domains. As 'binder,hwbinder,vndbinder'
is the default, this change enables vndbinder.
Change-Id: I48ce75fc6090ad3d9a5b66ca437acbde5a913751
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
Memory dump table doesn't support de registration, but
when ssr ramdump device creation failed, it frees
the buffer registered with Memory dump table also.
So re-order ramdump device creation to avoid freeing
memory dump table buffer.
Change-Id: I0ac595259159f3d3fe2e5c864dae8a6a1d6b4078
Signed-off-by: Lingutla Chandrasekhar <clingutla@codeaurora.org>
Add support to dump dsi debug bus registers to memory
or print in xlog. This will be helpful in analyzing HW
behavior more precisely while debugging DSI stability
issues.
Change-Id: I7735897d9f24ca06e15015cf0d277bfe800b35bf
Signed-off-by: Sandeep Panda <spanda@codeaurora.org>
Invalid typecast in MAC address store sysfs entry method
causing device crash due to the buffer overflow.
To fix the above issue check the length of the userspace MAC
address before write. Update the datatype and parsing method
to store the userspace MAC address.
CRs-Fixed: 2034549
Change-Id: I0d4709c5b623c8333a99991c042552df1e7da923
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
IPAv2 hardware works with 32 bit addressing,
so allocate a kernel memory using GFP_DMA flag
which is processed by IPA hardware.
Add a error check for return of dma_map_single
using dma_mapping_error API.
Change-Id: I08e3eec8e9b2d81f945283a72338c0a8f23e2ac9
Acked-by: Mohammed Javid <mjavid@qti.qualcomm.com>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
In the current implementation DBA driver always assumes
the TV connected is supporting audio. However if the TV
connected is in DVI mode or it's EDID does not contain
any audio block then it will not support audio data.
Hence after parsing EDID, check if the connected TV has
support for audio and accordingly configure and send HPD
events to audio framework.
Change-Id: Id1d175b9c0c1c07bcb4447eeaa907a17c15df098
Signed-off-by: Sandeep Panda <spanda@codeaurora.org>
Signed-off-by: Vishnuvardhan Prodduturi <vproddut@codeaurora.org>
Allow clients to specify the IOVA range for fastmap clients
via the DOMAIN_ATTR_GEOMETRY domain attribute.
Presently fastmap only allocates page tables for the IOVA
range specified during the create mapping call. However
clients may want to use IOVA addresses outside this range,
such as for their calls to iommu_map.
So allow clients to extend the available IOVA space by setting
the DOMAIN_ATTR_GEOMETRY domain attribute's
iommu_domain_geometry.aperture_start to
the new start address of the IOVA space and by setting
iommu_domain_geometry.aperture_end to the new end address of the
IOVA space.
The new IOVA space created by iommu_domain_geometry.aperture_start
and iommu_domain_geometry.aperture_end will be a superset of the
IOVA range which was created through the create mapping call.
The DOMAIN_ATTR_GEOMETRY domain attribute can only be set before
attaching.
Calls to set the DOMAIN_ATTR_GEOMETRY domain attribute can only
be used to extend the IOVA space, it cannot shrink the range.
Note that extending the IOVA range will not change the range of
IOVA addresses which will be available to the DMA APIs.
Change-Id: Ib389e019a022d98417884002de08115fb0fc9384
Signed-off-by: Liam Mark <lmark@codeaurora.org>
On some conditions, such as reboot, the allocation context
for DMA task might be a user space processes with SIGKILL.
Pre allocate this buffer to avoid DMA allocation failure.
Change-Id: Ie0c5ecbb7aebbf03c42c2f8976aad40e9987fd4a
CRs-Fixed: 2032907
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
This reverts 'commit 9730348075 ("arm64: Increase the max
granular size") and also sets ARM_DMA_MINALIGN to 128.
ARCH_DMA_MINALIGN is dependent on L1_CACHE_SHIFT but it should
be set to maximum *known* cache line size on ARMv8 systems to
avoid DMA coherecy issues. So setting ARM_DMA_MINALIGN to 128.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Change-Id: Ie771d1b693789fce8793538a6efddfe68e2a0043
Patch-mainline: linux-kernel @ 21/03/16, 17:14:03
Signed-off-by: Imran Khan <kimran@codeaurora.org>
The pointer req_frm comes from userspace,
req_frm->stream_handle is passed as an argument to
the function msm_isp_get_stream_common_data,
stream_idx can overflow common_data->streams[] and
the code ends up copying an out of bound
kernel address into stream_info. Adding bound check to
handle the same.
CRs-fixed: 2008683
Change-Id: Ib4a059bfd573cdc4e18ce630b4091576ff8edc7e
Signed-off-by: Senthil Kumar Rajagopal <skrajago@codeaurora.org>
Add PMIC revid support to identify the PMIC subtype for OLEDB driver.
This is useful to enable the functionalities/features that are specific to
certain PMICs like PM660A.
Change-Id: I4539955abb29fe37256e21ac507db646953e0abf
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
Channel 511 is used for debug port on MSM8998/SDM660/SDM630
targets. Reserve the same to avoid the access from other
peripherals.
Change-Id: I928916b7d61793a07e9a3b2e1c2127a247c71730
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
8021Q enables kernel to handle VLAN packets, which is necessary
for the VLAN feature of alx.
Change-Id: I57c4bf7a40c5ad06b3c7414ae51691f006841ab9
Signed-off-by: Luo Jie <luoj@codeaurora.org>
When the charger mitigation is configured based on SW,
enable it locally when the total brightness (or current
level) of all torch/flash LED devices is greater than 1 A.
CRs-Fixed: 2011199
Change-Id: I8336b3201f0780855c3dc3633179c398b9f62162
Signed-off-by: Ankit Sharma <ansharma@codeaurora.org>
Do not keep the channel reserved for debug port in the
ppid to apid mapping table. This is to avoid accessing
that particular channel during the read/write/irq operations.
Change-Id: I8f49d1d87978a5b68ea711d3e30606d72fd09f73
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
The GPLL0 source to the CPU subsystem requires 300MHz for OSM to use the
clock source. OSM internally cannot set the RCGR divider, so set the RCG to
300MHz at GCC.
Change-Id: I7a781c69656410eb4ce30126789dbaacf815e8ec
Signed-off-by: Taniya Das <tdas@codeaurora.org>