We don't want user space tasks to run on isolated cpus. If the affinity
mask that the user space task is trying to set only includes online
cpus that are isolated return error.
Also ensure that tasks do not get stuck on isolated cores. We are not
properly updating the mask that we check against the current CPU so we
might end up thinking we can run on the current CPU. Fix this.
Change-Id: I078d01e63860d1fc60fc96eb0c739c0f680ae983
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
In certain PMICs, when WLED is configured for AMOLED panels, AVDD
default voltage configured for SWIRE mode has to be reconfigured
every time WLED module is disabled and enabled. Otherwise, AVDD
voltage can stay at the previous voltage level configured through
SWIRE pulses. Add support for it.
CRs-Fixed: 1071936
Change-Id: I938ce65f42eebe31be27151281d7e8502ba29f6e
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
There is null pointer access occurring when video session
opening failed and power collapse thread sending sys_error
to all opened sessions in parallel. Fix the issue by doing
v4l2_fh_exit() afer removing new session from core->instances
list.
CRs-Fixed: 1088562
Change-Id: I2523a46487a03ade40afeddd394a4572283d91a2
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
Make sure the USB3/DP PHY mode selection is switched back to
USB3 mode before proceeding with PHY initialization. This fixes
a bug when DisplayPort previously uses the PHY and does not
switch it back which causes the POWER_DOWN_CONTROL register write
to not take effect and results in USB3 PHY initialization failure.
Change-Id: Idad0f80eda6192ccae9e824f1f76c7071806ffec
Signed-off-by: Jack Pham <jackp@codeaurora.org>
This change adds unmapping the buffers from the previous commit
before transitioning to the secure state. This is required so that
driver does not have any buffers mapped before we detach from the secure
and unsecure context banks.
Change-Id: I4dcf3d794c0e7e111a86e72d26bed8de7e3329a1
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
Extend the media format options passed to the voice driver to
include sample rate, bits per sample, and channel mapping in
addition to port ID and the number of channels. Additional media type
information is provide to help avoid additional buffers required in
case of non-fractional sample rate for post processing voice data.
CRs-Fixed: 1065881
Change-Id: Ib69b57dc677b87fecfd689df7f8fc7ec8b4bc59f
Signed-off-by: Siena Richard <sienar@codeaurora.org>
For targets with LMH DCVSh hardware and OSM, BCL software frequency
mitigation is not required. Since hardware is doing the frequency
mitigation, there is no need for the HLOS BCL frequency mitigation.
So make the properties "qcom,mitigation-freq-khz" and
"qcom,thermal-handle" as optional properties.
Change-Id: I0062f3b39f00ff2f0e74affcffbcf1afd89d3b2f
Signed-off-by: Manaf Meethalavalappu Pallikunhi <manafm@codeaurora.org>
Record cycle count and kernel time in ns while entering suspend
and while resuming. This will help in matching up the kernel time
with external subsystems and in recording suspend time in cycles.
Change-Id: If22d9880103c7d54087d0faf4c992259e6b97f08
Signed-off-by: Srinivas Ramana <sramana@codeaurora.org>
Enable flash nodes for front and rear camera.
Change-Id: I4e14ef9177dcf06c6cab5fb5b32d817fbbaa8478
Signed-off-by: Shankar Ravi <rshankar@codeaurora.org>
When the eSE is powered off, the “system” needs to give
8ms to the capacitor connected on the SVDD line to discharge.
We should inform the FW we just powered off the eSE.
Change-Id: I864fd8f75ded6ab8c42ea36bcdadcdbe924e927d
Signed-off-by: Gaurav Singhal <gsinghal@codeaurora.org>
Introduce clk_debug_mux which would support clocks to be allowed to measure
clock frequency from debugfs.
Change-Id: I81c32a876b33f5a7773485a76897ff9cbed45a76
Signed-off-by: Taniya Das <tdas@codeaurora.org>
When accessing diag master table we need a check for
null pointer while iterating over the circular list.
Without this check there is a possibility of kernel panic.
CRs-Fixed: 1087738
Change-Id: I73ee708f2df6e1cd6b56fc40296ede490824f194
Signed-off-by: Gopikrishna Mogasati <gmogas@codeaurora.org>
Remove WLAN hardware reset sequence from ICNSS platform as it
will be taken care by WLAN FW.
CRs-Fixed: 1089686
Change-Id: I363ee028eeb360ef998fd90c1ff94bb09c4ac8b4
Signed-off-by: Yuanyuan Liu <yuanliu@codeaurora.org>
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
The diag dload memory region is part of IMEM. USB Diag driver
queries this device node for the memory address to access and update
USB PID and serial number. Hence add qcom,msm-imem-diag-dload node
on msmfalcon and msmtriton.
Change-Id: Ib283941037469833786b793c1e31e69e1c95d45d
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
This prevents leakage on 1p8 power rail upon boot up when usb cable
is not connect.
Change-Id: I28a4f495293863361843eb30b2d20f1f57889f95
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
HDCP needs to read data from sink during authentication protocol.
Currently, hdcp reads the data one by one based on the addresses
provided in the hdcp specification. Optimize this by reading whole
data in one read call if the data lay contiguously in memory at
sink to avoid unnecessary delay which may affect hdcp compliance.
Change-Id: Icbeeb9b11a9bbe6808eb5c84b2561d6c74696522
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
Proxy vote for gcc_boot_rom_ahb_clk for modem pil on msm8998 instead
of keeping the vote until the modem was shutdown.
Change-Id: Ib32d40351179a687eca38228c4503e4a9a88c28d
Signed-off-by: Puja Gupta <pujag@codeaurora.org>
Certain sinks (such as DVI monitors) do not support audio
which can be identified using the sink's EDID. For such sinks,
ensure that audio is not routed over the external display.
Change-Id: I1c1a634bf096392094b5fd868a87385764657e6b
CRs-Fixed: 1093442
Signed-off-by: Aravind Venkateswaran <aravindh@codeaurora.org>
When an atomic iommu domain attaches, an additional vote for both
clk_prepare, bus_bw, and regulator_enable must be held. The prior logic
only did this if the atomic domain was the first to attach to the iommu.
Fix this.
As a side effect, add reference counting for bus_bandwidth voting such
that a call to arm_smmu_enable_clock() followed by
arm_smmu_disable_clocks() will not always result in a bus bandwidth
vote of zero.
Change-Id: I7f88ea845a281c8c1def4f642e61262b53b60e1a
Signed-off-by: Patrick Daly <pdaly@codeaurora.org>
1B-01 DP HDCP compliance test needs either poll RxStatus
or wait for CP_IRQ to fetch the list of Downstream devices'
KSVs. Currently, hdcp_1x module waits for CP_IRQ but
compliance test equipment fails this test as source is unable
to read KSVs within allowed time due to software delays.
Poll RxStatus register in sink to get KSVs ready status
so that KSVs can be read as soon as sink mark them as ready.
Also, re-factor the code as per the specification.
Change-Id: Ieefa13dfc9e154b005329b01e2769266a1954ddb
Signed-off-by: Ajay Singh Parmar <aparmar@codeaurora.org>
L2a is required to lock the phy PLL upon bus resume when
exiting from XO shutdown. This LDO powers REFGEN block
which is required to be powered on so that phy PLL gets
locked as part of wakeup from XO shutdown.
Change-Id: Ia0e3d574de7c78534832e4f8749672eb6fcde1f0
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
For the devices supporting implicit feedback over data endpoint
usb audio driver instantiates snd_usb_endpoint as sync_endpoint
even though there is no real usb sync endpoint exists. QMI driver
looks for usb endpoint if sync_endpoint is instantiated and bails
out if endpoint related context does not exist. This causes such
devices to not work. Hence do not bail out if sync ep context
does not exist and continue preparing the QMI response.
Change-Id: I7d96555573cfd6cca1ca56c877d78fde943f8100
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
This fixes the issue where the dp pll resource was not correctly
keeping a refcount on the pll resource. This will fix the bootup
warning when both DSI and DP are enabled.
Crs-Fixed: 1088737
Change-Id: I19f8eef7f664a58cac1a082b8195e48c52613c5d
Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
The hardware version register does not return the expected
version value. The register is located in register space that is
accessible to the secure world only. This results in WDOG status
register not being enabled. Use the chip version instead.
CRs-Fixed: 1099112
Change-Id: I014c823bcf2545f005205dde326a074eaa5d7a6a
Signed-off-by: Osvaldo Banuelos <osvaldob@codeaurora.org>
For iommus which do not use stage1 translation, stage2 may not be aware
of the device's dma_mask requirements. Choose the dma_ops such that
allocations are made within the dma_mask region and bounce buffers are
used as necessary.
Change-Id: I63ae3ff9e5ab608892d12db7a813264d234699ee
Signed-off-by: Charan Teja Reddy <charante@codeaurora.org>
1. Update PMIC gpio configuration for
front and rear camera.
2. Correct VANA GPIO.
3. Correct the CSID VREG Voting.
Change-Id: I1e72bf8855ea1150eb2cedaee82d04610b09bdae
Signed-off-by: Shankar Ravi <rshankar@codeaurora.org>
NL80211_ATTR_MAC was used to set both the specific BSSID to be scanned
and the random MAC address to be used when privacy is enabled. When both
the features are enabled, both the BSSID and the local MAC address were
getting same value causing Probe Request frames to go with unintended
DA. Hence, this has been fixed by using a different NL80211_ATTR_BSSID
attribute to set the specific BSSID (which was the more recent addition
in cfg80211) for a scan.
Backwards compatibility with old userspace software is maintained to
some extent by allowing NL80211_ATTR_MAC to be used to set the specific
BSSID when scanning without enabling random MAC address use.
Scanning with random source MAC address was introduced by commit
ad2b26abc1 ("cfg80211: allow drivers to support random MAC addresses
for scan") and the issue was introduced with the addition of the second
user for the same attribute in commit 818965d39177 ("cfg80211: Allow a
scan request for a specific BSSID").
Fixes: 818965d39177 ("cfg80211: Allow a scan request for a specific BSSID")
Signed-off-by: Vamsi Krishna <vamsin@qti.qualcomm.com>
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Git-commit: 478b2a3b7faa4c50c54b2bd3a2507405fcf6fad8
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git
CRs-Fixed: 1097863
Change-Id: Ib55302c8fc9dbf2a4114a793e17f9b2dc9ade37c
Define macro to indicate backport support for update connection
parameters when in connected state.
Change-Id: I175d76cd193d649f8b91cdab5000f6e1c66de15e
CRs-Fixed: 1097836
Signed-off-by: Ashwini Patil <apati@codeaurora.org>
Add functionality to update the connection parameters when in connected
state, so that driver/firmware uses the updated parameters for
subsequent roaming. This is for drivers that support internal BSS
selection and roaming. The new command does not change the current
association state, i.e., it can be used to update IE contents for future
(re)associations without causing an immediate disassociation or
reassociation with the current BSS.
This commit implements the required functionality for updating IEs for
(Re)Association Request frame only. Other parameters can be added in
future when required.
Signed-off-by: vamsi krishna <vamsin@qti.qualcomm.com>
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Git-commit: 088e8df82f91a24728d49d9532cab7ebdee5117f
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git
Change-Id: I184b8e13bc5f7e2ed21e5337673c6ba82cd2f4fe
CRs-Fixed: 1097836
[apati@codeaurora.org: backport to 4.4-This commit includes the
changes from following commits in include/uapi/linux/nl80211.h to compile
for msm-4.4.
cb3b7d87652aeb37cfb5295a6157a3280dae10cb :
cfg80211: add start / stop NAN commands.
a442b761b24b6886f9a4e2ff5f8cb4824c96526b :
cfg80211: add add_nan_func / del_nan_func.
a5a9dcf291e1e541243878eed2d73a74006fa1f1 :
cfg80211: allow the user space to change current NAN configuration.
50bcd31d9992e99c231820f5276e70346cbfbc51 :
cfg80211: provide a function to report a match for NAN.
ce0ce13a1c89ff8b94b7f8fb32eb4c43e111c82e :
cfg80211: configure multicast to unicast for AP interfaces.
c6e6a0c8be575c830a97b1942dabeab70f423fe0 :
nl80211: Add API to support VHT MU-MIMO air sniffer.
1d76250bd34af86c6498fc51e50cab3bfbbeceaa :
nl80211: support beacon report scanning.
7d27a0ba7adc8ef30c2aae7592fce4c162aee4df :
cfg80211: Add mesh peer AID setting API.
348bd456699801920a309c66e382380809fbdf41 :
cfg80211: Add KEK/nonces for FILS association frames.]
Signed-off-by: Ashwini Patil<apati@codeaurora.org>
Enable required audiosource driver that is required for audio
over accessory dock to work.
Change-Id: Ifeb779a3323c505d482eb53ad96a1b8aec0f3af5
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
As audio-ext-clk.h is finally included in device tree and
and using ifdef results in compilation failure. Delete
ifdef from audio-ext-clk.h.
CRs-Fixed: 1090500
Change-Id: Ib6f715c3f606770e7e0b1f0f84ab50e442398cd0
Signed-off-by: Meng Wang <mwang@codeaurora.org>
Add support of PMFALCON PMIC in FG driver. PMFALCON
FG core uses same SRAM map as PMI8998v2.0.
While at it, add workaround flag variable to keep track
of all hardware specific workarounds.
CRs-Fixed: 1096793
Change-Id: I8ba73276fd30f6eaf935ed77b75601f1322c0ba6
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
Add support for diag communication between APPS and CDSP.
Change-Id: I43cffa370f1bee51fb252530c6ae9173bb21110a
Signed-off-by: Sreelakshmi Gownipalli <sgownipa@codeaurora.org>
Signed-off-by: Mohit Aggarwal <maggarwa@codeaurora.org>
Update the DSI PLL configuration to match the latest
recommendations. DP mode is changed from 01 to 00 in addition
to other changes.
Change-Id: Id0fe7d3d60db310690c2ba2e277da911d3798076
Signed-off-by: Naseer Ahmed <naseer@codeaurora.org>
If software becomes unresponsive then the battery could be overcharged by
the parallel charger. Enable the watchdog so that when the bite timer
expires then charging will be disabled by hardware.
Change-Id: I82febbc28c05563d052c6eed034adc817df39790
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
The smb138x parallel charger device has a watchdog timer that will
disable parallel charging if it is not pet by software. Enable it.
Change-Id: Ie28323cdabccdc64196fae25deb2f56dfbb5a0e7
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
Reduce the VDD_GFX CPR maximum floor to ceiling voltage range for
each corner in order to meet the most recent hardware guidelines.
Change-Id: Ie70a698fbed442e8826f0bc30c5ef6bdfd5b3e1f
CRs-Fixed: 1098577
Signed-off-by: David Collins <collinsd@codeaurora.org>
Bus error can be generated on RDI write master even if there
is no data sent on it. This is not actually an error hence
ignore it.
CRs-Fixed: 1098568
Change-Id: I8dc24f3c4926f008d114778c890ad2c2902f84b9
Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
When the camif input is disabled the stats streams need to be
turned off as well. Stop the stats stream by following the
correct stop sequence instead of just turning off the
stats write masters.
CRs-Fixed: 1098562
Change-Id: I4789bf9e837b1c0af7288e26ff02c4068638337a
Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
Add option to put the isp hardware in secure smmu mode. The
isp stats will still be in non secure mode. Add ioctl to
indicate which buffer queue will be in secure mode so that
they can be mapped in secure mode
CRs-Fixed: 1060631
Change-Id: Ibf2050d0814cc2aaf22a6f510847054d78fd7477
Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
Initialize the qos registers and turn on interrupts after reset.
CRs-Fixed: 1089171
Change-Id: I8ed92a835fec1d5297448f440c19cc22ba52728b
Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
Specify the graphics coresight trace ID in the device tree
file.
Change-Id: I30a10a63b320cd3cb6d7cc4ef2fba423f697a66f
Signed-off-by: Harshdeep Dhatt <hdhatt@codeaurora.org>
Add properties in the GPU device tree for coresight. Define GPU
name and its funnel connections.
CR-fixed: 988516
Change-Id: Ibf2e369c2a4732ebc7471ee103bc8d5d934247ec
Signed-off-by: Lokesh Batra <lbatra@codeaurora.org>
Disable VDD_GFX CPR aging measurement and adjustments for all
global CPR fusing revisions. The initial aging sensor difference
fuse will not be blown on parts with revision 3 so software must
not attempt to perform an aging measurement on these parts. It
is unknown which future revision will end up utilizing aging so
also disable aging measurements on all future revisions as well.
Modify the open-loop and closed-loop voltage adjustments
accordingly so that the maximum 15 mV aging margin is present
for all CPR revisions.
Change-Id: I4d413a2b3320d421c487aff1a97e72bd2678b19f
CRs-Fixed: 1097587
Signed-off-by: David Collins <collinsd@codeaurora.org>
In WDI2.0, seeing some issue about rdy_ring_rp_va
is not equal to rdy_comp_ring_wp_va because wlan-fw
still update the doorbell after ipa host-driver
issue the CH_DISABLE cmd to ipa-uc. The fix is
to compare rdy_comp_ring_wp_va and rx_door_bell
values instead.
Change-Id: Ibe57c7d5ba9e45260c12528910f173e347259d7c
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
LMH DCVSh hardware doesn't generate a debug interrupt, when HLOS
CPU frequency cap is the only throttling value coming to the hardware
aggregator logic. The LMH DCVSh requires atleast one of the hardware
algorithm to throttle to generate a debug interrupt. So there will be
a case where, LMH DCVS driver won't notify scheduler about the
throttling frequency if HLOS is the only reason for throttling.
LMH DCVSh driver now exposes a new API, to trigger the frequency polling
loop. KTM is updated to use this API to trigger the LMH DCVSh polling,
whenever there is a new software frequency cap. This will ensure that
the LMH DCVSh will notify the scheduler even if software is the only
throttling reason.
Change-Id: I92b1bd9a5efc9810eea721b088dff1bd6eef3838
Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org>
kgsl_ioctl_gpu_sparse_command() is added to for user to
specify list of binds/unbinds for a memory entry
and syncpoints they depend on. If user specifies both
create a sync object for syncpoints and bind object for
binds/unbinds and add them to dispatcher draw queue. Sync
object should be inserted before the bind object in the
draw queue. Once the bind object reaches the head of
draw queue the corresponding binds/unbinds are performed.
kgsl_ioctl_gpu_sparse_command() only accepts commands from
context created with flag KGSL_CONTEXT_SPARSE, commands
from all other context types will return an error.
Change-Id: Ib0a2361f854ae01d0d8090cdd48cfa96308daf93
Signed-off-by: Tarun Karra <tkarra@codeaurora.org>