Export APIs to WLAN driver to power on/off WLAN hardware.
CRs-Fixed: 1017496
Change-Id: I4b09b7e9ee97129f952d737a530fc04205259f24
Signed-off-by: Yuanyuan Liu <yuanliu@codeaurora.org>
Driver configures the default country code during bootup.
When STA disconnects, cfg80211 restore the regulatory setting
to world domain.cfg80211 should remain in the default country
code and not restore to world reg domain.
Change-Id: I01ccdc4d2831cf252a4b35f9f856f3256d9b7429
CRs-Fixed: 1023778
Signed-off-by: Sachin Ahuja <sahuja@codeaurora.org>
[joshc: fixed hunk in disconnect_work() - moved
cfg80211_is_all_countryie_ignore() check into new location, collapsed
conditional and use upstream REGULATORY_COUNTRY_IE_IGNORE regulatory
flag]
Signed-off-by: Josh Cartwright <joshc@codeaurora.org>
Fix 4.4 merge issues in zero page support, and add the
missing label.
Change-Id: I4bed7add011e0c9b0e148d1b44132ba1873cf607
Signed-off-by: Vinayak Menon <vinmenon@codeaurora.org>
This flag is a no-op now. Remove usage of the flag.
Change-Id: I8b44c2b2b5928f3bc9ecd9f67dc014fb3bfb13df
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Some qcom SoCs' can have hierarchical power domains. Let the gdsc structs
specify the parents (if any) and the driver add genpd subdomains for them.
Change-Id: Id7faa0b6531ec787484ab17204a524858e6375dd
Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Taniya Das <tdas@codeaurora.org>
We were not checking the return from devm_add_action() which can fail.
Start using the helper and devm_add_action_or_reset() and return
directly as we know that the cleanup has been done by this helper.
Change-Id: Ie0bb9fed36484bc65b09905bda6b248a17ae2964
(cherry picked from commit 66f5ce2538e06dd6d628e37bbd38c79631274c9f)
Git-commit: 66f5ce2538e06dd6d628e37bbd38c79631274c9f
Git-repo: https://git.linaro.org/landing-teams/working/qualcomm/kernel.git
Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Currently the charger driver sets the charge current based on device tree
property. Allow setting fast charge current (fcc) via power supply (psy)
property. Moreover the current voter for fcc is a min voter, change
that to max voter so that values above what device tree has set can
be used.
Similarly, introduce a max voter for battery float voltage (vfloat) and
set it to defaults via device tree.
CRs-Fixed: 1018090
Change-Id: I691984543f8beb3c52d3d578c7cc311c285a1fcc
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
Add information about the interrupt generated by the LMH DCVSh block for
msmcobalt.
This interrupt will be generated whenever the hardware makes a new
decision about the mitigation frequency.
Change-Id: I408fb7e62ef13b21dfea68bb6b878cdbeee411cd
Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org>
LMH DCVSh hardware can send interrupts whenever the hardware mitigation
blocks make a new frequency mitigation vote. scheduler is not aware of
any of the hardware mitigation.
Add support to listen for this interrupt, read the aggregated mitigation
frequency from all LMH DCVSh block and notify scheduler. After receiving
interrupt, poll the hardware periodically for the mitigation frequency
till the mitigation is cleared by hardware. Once the mitigation is
cleared, interrupt is re-enabled.
Change-Id: I38bc0c80710038f135289420d6b20c1ff0ab06eb
Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org>
The system stats driver provides the statistics about system low power
modes and the respective masters' votes into system modes. This is a merge
of rpm-stats and rpm-master-stats modules. The rpm-stats and
rpm-master-stats driver would be eventually deprecated in preference to the
system stats driver.
Change-Id: I8a8842250fe459cb523b607ca379f9a036b4c09b
Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>
RPM stats and RPM master stats provide the similar information via
different interfaces. Combine them into a single driver to provide a
unified information.
Change-Id: If5a5ef6e080ab6d75139472c5204eb6d5e9c6614
Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>
If mdss version is not part of get driver ops function currently we set
the driver ops to NULL. When driver ops is NULL post processing driver
will treat that msm is legacy target and program the post processing
registers. For newer target if get driver ops function is not updated pp
driver will assume it as legacy msm target and programme the registers
incorrectly. Changing the default behaviour to stub function pointers
will ensure that above use-case is gracefully handled.
Change-Id: I03fdf88c741135f83d1939952e76b7460229a284
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Ping Li <pingli@codeaurora.org>
IGC module is updated for mdss V3 version, which needs to be exposed
to user-space. Change adds interface support to expose the IGC module to
user-space clients.
Change-Id: I159bca8278a1638286cc2392bb5b059e067dbb1b
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Ping Li <pingli@codeaurora.org>
Picture adjustment block on msmcobalt mdss supports dithering module.
Module can be programmed by driver clients for a logical display.
Change adds support for enabling the PA dither block.
Change-Id: I8ae05d0f98a33a8608a4caef93d50e4dabad05a1
Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
Signed-off-by: Ping Li <pingli@codeaurora.org>
This change enables the MMC/SD driver support for msmcobalt.
Change-Id: I895e70163e54e5f28c97f592cb203c6576215877
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
Enable support for app specific setting on MSM8996. This
is required for providing an interface so that app specific
settings can be applied / cleared.
CRs-Fixed: 981519
Change-Id: Ice69a77b40dbd98bfff0c8095d78a25424527a2f
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
Add support to provide an interface that can be used from
userspace to decide whether app specific settings need to
be applied / cleared when particular processes are running.
CRs-Fixed: 981519 997757
Change-Id: Id81f8b70de64f291a8586150f4d2c7c8f8b4420f
Signed-off-by: Sarangdhar Joshi <spjoshi@codeaurora.org>
[satyap@codeaurora.org: trivial merge conflict resolution and pull
fixes for CR: 997757]
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
Check for error codes returned while opening the glink channel
and unregister for notifications only after the channel has
been closed.
Change-Id: Icb92ab9a430d7c49d4aac2d7c53fc6179407d082
Acked-by: Viswanatham Paduchuri <vpaduchu@qti.qualcomm.com>
Signed-off-by: Sathish Ambley <sathishambley@codeaurora.org>
Fix the issue of wrong meq128 word order.
Change-Id: Ifb45db29d5475ede42a11613b99c4504fbe10b54
CRs-Fixed: 1018146
Acked-by: Shihuan Liu <shihuanl@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
We want to put the XO board clocks into the dt files, but we also
need to be backwards compatible with an older dtb. Add an API to
the common code to do this. This also makes a place for us to
handle the case when the RPM clock driver is enabled and we don't
want to register the fixed factor clock.
Change-Id: Ie06e1bb4e6add624787faf0372bafdf0b1126d1c
Cc: Georgi Djakov <georgi.djakov@linaro.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Add all data for the GDSCs which are part of msm8996 GCC block
Change-Id: I12323575c44b1a3ba4cb2764a498480b3e62dcaa
Signed-off-by: Rajendra Nayak <rnayak@codeaurora.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Add v4l2 control extensions to allow the video
driver client to enable/disable blur feature in
the firmware.
CRs-Fixed: 975505
Change-Id: I1b340d13bfef3b71d049d53c9bb79e4effafc79a
Signed-off-by: Arun Menon <avmenon@codeaurora.org>
If the driver is loaded when cfg80211_regdom is intersected then
user hint will fail for the first time since cfg80211 does not
have a check to see if cfg80211_regdom is intersected. Add
a check to see if cf80211_regdom is intersected and allow the
user hint to be processed.
Change-Id: Iba9cdd32470e29d35d3bb35012eb404b7c78d601
CRs-Fixed: 639538
Signed-off-by: Mihir Shete <smihir@codeaurora.org>
Export arch_setup_dma_ops symbol.
Some test modules need to call "arch_setup_dma_ops" to setup
the proper dma operations.
CRs-Fixed: 1021445
Change-Id: Ieb8aca4dab96ee8bad7c5ad0a47f83e4316bf990
Signed-off-by: Runmin Wang <runminw@codeaurora.org>
KTM frequency mitigation thread initializes during late init call.
Prior to this, client can request frequency mitigation. But request
will not be processed, since frequency mitigation thread won't be
initialized. Notify frequency mitigation thread to aggregate clients
current request immediately after thread initialization.
Change-Id: Id2425041b14554d58f944794e1b5db273f5ded26
Signed-off-by: Manaf Meethalavalappu Pallikunhi <manafm@codeaurora.org>
This reverts commit 8f90803a45 ("sched: warn/panic upon excessive
scheduling latency") as this feature is no longer used.
Change-Id: I200d0e9e8dad5047522cd02a68de25d4a70a91a4
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
This reverts commit b40bf941f6 ("sched: add scheduling latency
tracking procfs node") as this feature is no longer used.
Change-Id: I5de789b6349e6ea78ae3725af2a3ffa72b7b7f11
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
This has always been unused feature given its limitation of adding
phantom load to the system. Since there are no immediate plans of
using this and the fact that it adds unnecessary complications to
the new load fixup mechanism, remove this feature for now. It can
be revisited later in light of the new mechanism.
Change-Id: Ie9501a898d0f423338293a8dde6bc56f493f1e75
Signed-off-by: Syed Rameez Mustafa <rameezmustafa@codeaurora.org>
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
Kill unused scheduler knob sched_migration_fixup. With this change
scheduler always adjusts CPU's busy time during migration.
Change-Id: I5d59e89d5cc0f2c705c40036cd7b47f5d3f89e58
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
For multi-rect pipes, driver tries to release the
pipe only when both pipes for both rectangles
are in the destroy list. Current code always
detects that there are two pipes with the same
number in the list, since the first iteration to
look for the pipe in the list always correspond to
the same pipe used as the initial index.
This causes that driver unnecesary halt the dma pipe
when still in use for the second rect that is still not
freed. Fix this issue by making sure the same pipe
objects are not used to check if there are two pipes
with the same index in the release list.
Change-Id: I19268009e76b8535fa4a7aa742a1cfc957f8aece
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
Update the DP PLL node with the correct base address
for PHY and PLL registers.
CRs-Fixed: 1009740
Change-Id: I7194e72a191f2f52dd708c84d5a8ab55f03729fe
Signed-off-by: Chandan Uddaraju <chandanu@codeaurora.org>
AVCS_MODE_DEREGISTER_ALL_CUSTOM_TOPOLOGIES is defined
as "1" where as in ADSP the value is "2". Redefine
the same to fix the mis-match with ADSP code.
CRs-Fixed: 1005434
Change-Id: I210e43b53c6170425ee35c02b728698b33afb591
Signed-off-by: Karthik Reddy Katta <a_katta@codeaurora.org>
There is a use-after-free problem in the ion driver.
This is caused by a race condition in the ion_ioctl()
function.
A handle has ref count of 1 and two tasks on different
cpus calls ION_IOC_FREE simultaneously.
cpu 0 cpu 1
-------------------------------------------------------
ion_handle_get_by_id()
(ref == 2)
ion_handle_get_by_id()
(ref == 3)
ion_free()
(ref == 2)
ion_handle_put()
(ref == 1)
ion_free()
(ref == 0 so ion_handle_destroy() is
called
and the handle is freed.)
ion_handle_put() is called and it
decreases the slub's next free pointer
The problem is detected as an unaligned access in the
spin lock functions since it uses load exclusive
instruction. In some cases it corrupts the slub's
free pointer which causes a mis-aligned access to the
next free pointer.(kmalloc returns a pointer like
ffffc0745b4580aa). And it causes lots of other
hard-to-debug problems.
This symptom is caused since the first member in the
ion_handle structure is the reference count and the
ion driver decrements the reference after it has been
freed.
To fix this problem client->lock mutex is extended
to protect all the codes that uses the handle.
Change-Id: Ia1a36ad6336305fe8383863cfab066a56525fd9f
Signed-off-by: Eun Taik Lee <eun.taik.lee@samsung.com>
Reviewed-by: Laura Abbott <labbott@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Git-commit: 9590232bb4f4cc824f3425a6e1349afbe6d6d2b7
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
[shashim@codeaurora.org: Resolved minor merge conflicts]
Signed-off-by: Shiraz Hashim <shashim@codeaurora.org>
A wrong pointer is freed and dereferenced
leading to fatal exception. Fix this by
correcting the pointer variable.
Change-Id: Ic3d55d88c61ab215139de7fe0c53b8bb89bf85f8
Signed-off-by: Krishna Srinivas <krisrini@codeaurora.org>
Add support to fail ETM probe in case of invalid CPU id.
Change-Id: I99a95cb48190dd2efc9c78be1e2c26b0b8eb53cb
Signed-off-by: Shashank Mittal <mittals@codeaurora.org>
Enable hw controlled, interframe power collapse of video subcores.
Change-Id: I5781532ca667424a00c74805cc1178910f476c9b
Signed-off-by: Chinmay Sawarkar <chinmays@codeaurora.org>
Synchronize WLAN driver probe with the register driver so that
register driver waits for the probe to complete if FW is ready.
Change-Id: I978d217fe41c2d62bb96c6f6816d5cbf851b9add
CRs-fixed: 1022750
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
This merge brings MMC/SD card changes from 'dev/msm-4.4-mmc_port' to
msm-4.4.
* origin/dev/msm-4.4-mmc_port: (472 commits)
mmc: sdhci-msm: fix few compilation issues
mmc: cmdq_hci: fix compilation issue
mmc: host: fix compilation issue when clk_gating config is disabled
mmc: sdhci: clean up legacy adma related variables
mmc: sdhci: enable 64-bit DMA support only if chipset supports 64-bit
mmc: sdhci: Replace SDHCI_USE_ADMA_64BIT flag
mmc: auto bkops fixes
mmc: card: fix quirk bit map
Revert "mmc: core: get drive types supported by eMMC cards"
mmc: host: sdhci: don't queue zero length descriptor
mmc: core: fix deadlock between runtime-suspend and devfreq
mmc: block: Add quirk and increase read data timeout for hynix emmc
mmc: card: Fix broken clock gating
mmc: core: postpone runtime suspend in case BKOPS is required
mmc: core: update AUTO_EN in BKOPS_EN field on runtime resume
mmc: revert runtime idle state
mmc: host: Set max frequency when disabling clock scaling
mmc: queue: Fix queue_lock spinlock bug from CMDQ shutdown path
mmc: core: fix issue with devfreq clock scaling
mmc: core: set REL_WR_SEC_C register to 0x1 per eMMC5.0 spec
...
Change-Id: I702a72fbbecba520f429bf1149106e684335e2a5
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
Add support for modelling a new cnoc_periph RPM resource on
MSM COBALT. In addition, fix the rpm_res_type being used for
the mmssnoc_axi_clk and remove the pnoc resource support.
CRs-Fixed: 1003213
Change-Id: I9f9845fea425fc4463dae72e8f8ab6e8bda23121
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
Enable Round robin ADC (RRADC) driver to enable clients
to read channels on pmicobalt such as battery ID, battery
thermistors. Enable IIO since RRADC driver registers with
the IIO framework and clients can use the IIO
framework to issue read requests for supported
RRADC channels.
Change-Id: I88b5922ab4dc817257042fdaa385768e6f14be57
Signed-off-by: Siddartha Mohanadoss <smohanad@codeaurora.org>
Parameter fragments and fragment_size are type of u32. U32_MAX is
the correct check.
CRs-Fixed: 1014726
Change-Id: Ia6d4755408646ac4a75724f3c6f2177651875da3
Signed-off-by: Xiaojun Sang <xsang@codeaurora.org>
Do not reset vbif for vfe version 4.8 based on recommendation
from h/w team.
Change-Id: Ia31c3f10c24380d9670cd0ca83834844435e593d
CRs-Fixed: 999619
Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
Enable the linux clock driver support for graphics
clocks on MSMCOBALT v2.
CRs-Fixed: 1015446
Change-Id: I78f1d3a1ac9ed09d2f4f266f61a1c14d44b41f53
Signed-off-by: Deepak Katragadda <dkatraga@codeaurora.org>
IPA HW does not exist on APQ8096, so disable it.
Change-Id: Ibd0041cea2ac47180110a1cfe96516d347d9816a
CRs-Fixed: 1019576
Signed-off-by: Gidon Studinski <gidons@codeaurora.org>