Commit graph

583406 commits

Author SHA1 Message Date
Jordan Crouse
49892bb8a5 drm/msm: Disable interrupts during init
Disable the interrupt during the init sequence to avoid having
interrupts fired for errors and other things that we are not
ready to handle while initializing.

Change-Id: Ic0dedbad972f25586e792478f9c96c4af7c31d17
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-02-22 09:52:07 -07:00
Jordan Crouse
6c523382a9 drm/msm: gpu Add new gpu register read/write functions
Add some new functions to manipulate GPU registers.  gpu_read64 and
gpu_write64 can read/write a 64 bit value to two 32 bit registers.
For 4XX and older these are normally perfcounter registers, but
future targets will use 64 bit addressing so there will be many
more spots where a 64 bit read and write are needed.

gpu_rmw() does a read/modify/write on a 32 bit register given a mask
and bits to OR in.

Change-Id: Ic0dedbadb83d3ac46f7e463c9c901d4f94a7bb58
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-02-22 09:52:06 -07:00
Jordan Crouse
6740cb63dd drm/msm: gpu: Cut down the list of "generic" registers to the ones we use
There are very few register accesses in the common code. Cut down
the list of common registers to just those that are used.  This
saves const space and saves us the effort of maintaining registers
for A3XX and A4XX that don't exist or are unused.

Change-Id: Ic0dedbadb4dccbba284e9badf2f52f3a72594581
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-02-22 09:52:05 -07:00
Jordan Crouse
97fc325a31 drm/msm: gpu: Add OUT_TYPE4 and OUT_TYPE7
Add helper functions for TYPE4 and TYPE7 ME opcodes that replace
TYPE0 and TYPE3 starting on the A5XX targets.

Change-Id: Ic0dedbad114e28bdbcba55a788c6307b48e14675
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-02-22 09:52:02 -07:00
Sujeev Dias
4267834dd4 mhi: core: Preserve DB Mode state during lpm
When exiting low power modes (M3) do not reset
the DB Mode state if DB mode preserve flag is
set for channel.

CRs-Fixed: 1022868
Change-Id: I6557d28afe9d0ac11b76c683ffba76d7d6ffd377
Signed-off-by: Sujeev Dias <sdias@codeaurora.org>
2017-02-21 17:12:25 -08:00
Sujeev Dias
8526dcd425 mhi: core: Do not reset doorbell mode during MHI_M3 abort
In order to avoid being out of sync between MHI client
and MHI host, host shall not reset the doorbell modes for
hardware channels during MHI_M3 state transition abort.

CRs-Fixed: 1023725
Change-Id: I6c742fc968fd57d71a86039bf1f3f65b1362bc90
Signed-off-by: Sujeev Dias <sdias@codeaurora.org>
2017-02-21 17:12:01 -08:00
Tony Truong
683cb7801e mhi: core: Lock MHI_M3 state transition
To avoid any race conditions between MHI_M2 state
transition and MHI_M3 state transition lock the
entire MHI_M3 transition using xfer_lock.

CRs-Fixed: 972390
Change-Id: I7c2e1b7b3966dc5fb8bf2f91bce734bbc58c6fd7
Signed-off-by: Tony Truong <truong@codeaurora.org>
Signed-off-by: Sujeev Dias <sdias@codeaurora.org>
2017-02-21 16:23:59 -08:00
Sujeev Dias
ac489269bb mhi: core: add memory barrier after ring operations
There are instances when MHI channel context read
pointer can be accessed simultaneously by different
CPU cores. To make sure read pointer updates visible
to all cores, add a memory barrier after completion
of MHI ring operation.

CRs-Fixed: 966338
Change-Id: Ifc8c4cd7595fed9049009c42420a665fb170079f
Signed-off-by: Sujeev Dias <sdias@codeaurora.org>
2017-02-21 16:23:58 -08:00
Sujeev Dias
667012017d msm: mhi: fix error handling
Validate the channel prior to proceeding further.
Unlock spin lock before jumping to error handler.

CRs-Fixed: 1016969
Change-Id: Ie3328f878b582a333ae15f3b950c258ec42fd768
Signed-off-by: Sujeev Dias <sdias@codeaurora.org>
2017-02-21 16:23:58 -08:00
Sujeev Dias
fc63288a51 mhi: core: change logs to print MHI_STATEs in text
Instead of printing enum index convert MHI_STATE
enum to text representation for easier interpretation
of debug logs.

CRs-Fixed: 1012249
Change-Id: I97a9a7ff293c739531d8197334a0f0a35bf20419
Signed-off-by: Sujeev Dias <sdias@codeaurora.org>
2017-02-21 16:23:57 -08:00
Sujeev Dias
78f1bef7e5 mhi: core: Protect DB register when handling DB MODE
Possibility exist when handling a DB MODE event another
core to queue a TRE to same channel.  During that time
CC ctxt WP may get updated, however DB MODE event thread
still be using a stale WP.  Add a lock to synchronize
DB MODE event thread and queue TRE thread.

CRs-Fixed: 1005752
Change-Id: I7f285da8751a867a1c3d651466537368799eb657
Signed-off-by: Sujeev Dias <sdias@codeaurora.org>
2017-02-21 16:23:49 -08:00
Linux Build Service Account
d72462d943 Merge "defconfig: msm: Enable the config SYSTEM_TRUSTED_KEYS" 2017-02-21 15:48:56 -08:00
Linux Build Service Account
8f7667b1ee Merge "diag: Register diag glink channels for only WDSP" 2017-02-21 15:48:55 -08:00
Linux Build Service Account
8a3a302f90 Merge "diag: Add mdlog session to apps pkt response path" 2017-02-21 15:48:54 -08:00
Linux Build Service Account
359c6348d1 Merge "ARM: dts: msm: Modify DMIC settings for sdm660 skus" 2017-02-21 15:48:54 -08:00
Linux Build Service Account
62def6b5e8 Merge "mmc: cmdq_hci: Enable legacy interrupts immediately after halt" 2017-02-21 15:48:52 -08:00
Linux Build Service Account
6e60fa39c5 Merge "ARM: dts: msm: Add VOL_UP node for SDM630" 2017-02-21 15:48:52 -08:00
Linux Build Service Account
69f533f015 Merge "ARM: dts: msm: Add touch device node for QVR8998" 2017-02-21 15:48:50 -08:00
Linux Build Service Account
340de7ccf0 Merge "ARM: dts: msm: add analog USB audio support for SDM660" 2017-02-21 15:48:50 -08:00
Linux Build Service Account
1cf336a9c8 Merge "mmc: cmdq_hci: CQ Register changes for sdm660" 2017-02-21 15:48:49 -08:00
Linux Build Service Account
ffa80fe1c2 Merge "ARM: dts: msm: Enable audio over DP for sdm660" 2017-02-21 15:48:48 -08:00
Linux Build Service Account
0f98f6f434 Merge "ASoC: msm: Add support for audio over Display Port for sdm660" 2017-02-21 15:48:47 -08:00
Linux Build Service Account
aecb1ed030 Merge "core_ctl: fix bug in assignment of not_preferred tunable values" 2017-02-21 15:48:46 -08:00
Linux Build Service Account
f538bfd560 Merge "ASoC: msm: Changes for adding format widget" 2017-02-21 15:48:45 -08:00
Linux Build Service Account
cfdfed314b Merge "wil6210: added sysfs file for FTM calibration" 2017-02-21 15:48:44 -08:00
Linux Build Service Account
ba2744213b Merge "Revert "ASoC: wsa881x: Add cache-always mode for sdm660"" 2017-02-21 15:48:43 -08:00
Linux Build Service Account
16ec079f8a Merge "Revert "ARM: dts: msm: Enable cache-always for WSA in sdm660 internal codec"" 2017-02-21 15:48:43 -08:00
Linux Build Service Account
0382b3bdb8 Merge "ASoC: msm_sdw: Fix wsa881x random speaker mute" 2017-02-21 15:48:42 -08:00
Linux Build Service Account
e4bd10339b Merge "mm, memory hotplug: small cleanup in online_pages()" 2017-02-21 15:48:42 -08:00
Linux Build Service Account
5114afcd40 Merge "mm, compaction: introduce kcompactd" 2017-02-21 15:48:41 -08:00
Linux Build Service Account
c834e8d43d Merge "clk: msm: Fix half-divider calculation for slave clks" 2017-02-21 15:48:40 -08:00
Linux Build Service Account
1b21698409 Merge "msm: pcie: add bounds check for debugfs register write" 2017-02-21 15:48:40 -08:00
Jordan Crouse
d8396535ce drm/msm: Bring in new register definitions
Bring in refreshed register definitions from the rnndb database.

Change-Id: Ic0dedbaddd22f6ac0b8cfb6184073968569de22d
Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
2017-02-21 08:42:11 -07:00
Linux Build Service Account
3294e91ec6 Merge "ASoC: msm: enable DAP set license logic on sdm660" 2017-02-21 05:33:50 -08:00
Linux Build Service Account
d245369b25 Merge "ARM: dts: msm: correct headset detection for msm8998 HDK" 2017-02-21 05:33:49 -08:00
Linux Build Service Account
cbd1ddded0 Merge "ASoC: msm: remove obsolete dolby driver" 2017-02-21 05:33:48 -08:00
Linux Build Service Account
b0e13cce52 Merge "ASoC: qdsp6v2: send afe calibration in acdb id mismatch cases" 2017-02-21 05:33:47 -08:00
Linux Build Service Account
a42c0634e2 Merge "ASoC: msm: qdsp6v2: Add support for fractional sampling rates" 2017-02-21 05:33:46 -08:00
Linux Build Service Account
1ebb258fac Merge "ARM: dts: msm: Fix compile warning in sdm660 audio node" 2017-02-21 05:33:46 -08:00
Linux Build Service Account
af9fe51e34 Merge "clk: qcom: Remove gcc_hmss_ahb_clk for sdm660" 2017-02-21 05:33:45 -08:00
Linux Build Service Account
d7f0452065 Merge "mm, kswapd: remove bogus check of balance_classzone_idx" 2017-02-21 05:33:44 -08:00
Linux Build Service Account
e236c2f038 Merge "defconfig: msmcortex: Add ST TP configuration for QVR8998" 2017-02-21 05:33:43 -08:00
Linux Build Service Account
07fe9cf491 Merge "drivers:soc: Avoid use of uninitialized variable" 2017-02-21 05:33:43 -08:00
Linux Build Service Account
61c51021df Merge "msm: mdss: Correct mixer enumeration for sdm630" 2017-02-21 05:33:42 -08:00
Linux Build Service Account
c56e71975b Merge "clk: qcom: Remove mmssnoc cpu active vote clock for SDM660" 2017-02-21 05:33:41 -08:00
Linux Build Service Account
37582e3e06 Merge "ARM: dts: msm: Update VFE SVS clock corner" 2017-02-21 05:33:40 -08:00
Linux Build Service Account
53995bb66d Merge "wil6210: Move dma mask setting after platform initialization" 2017-02-21 05:33:40 -08:00
Linux Build Service Account
d2c8f5b696 Merge "MMC : host: clear interrupt after halt in case of error" 2017-02-21 05:33:39 -08:00
Linux Build Service Account
5478ccfd84 Merge "ARM: dts: msm: Correct vote on LDO11 for VDDIO on sdm630" 2017-02-21 05:33:38 -08:00
Linux Build Service Account
dcf939a8a2 Merge "clk: qcom: Move gcc_usb3_phy_pipe_clk to branch clock" 2017-02-21 05:33:37 -08:00