Commit graph

582699 commits

Author SHA1 Message Date
Shiraz Hashim
f39623177b arm: mm: program ptes for access restriction
CONFIG_RODATA allows strict kernel mapping permissions to
be followed and accordingly maps regions as read-only,
not-executable etc. correspondingly. CONFIG_RODATA however
assumes all memory regions to be SECTION_SIZE aligned and
section mapped for performance reasons.

With CONFIG_FORCE_PAGES, we force all kernel mappings as
page mapped thus breaking CONFIG_RODATA.

Provide provision to apply permissions at page (pte)
level, if CONFIG_RODATA does not find section mapping.

Change-Id: I8dbf5c3741836bc63a231d8a471cf0306662993b
Signed-off-by: Shiraz Hashim <shashim@codeaurora.org>
2017-02-08 16:11:00 +05:30
Pavankumar Kondeti
9c32e32899 sched: fix bug in auto adjustment of group upmigrate/downmigrate
sched_group_upmigrate tunable can accept values greater than
100%. Don't limit it to 100% while doing the auto adjustment.

Change-Id: I3d1c1e84f2f4dec688235feb1536b9261a3e808b
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
2017-02-08 15:07:45 +05:30
Vijayavardhan Vennapusa
94cd6c197a USB: u_data_ipa: Fix pm_runtime usage count in case of error
If disconnect happens before connect_work start executing, then
there is a chance that connect_work returns with port_usb NULL.
Due to this, port->is_connected will be NULL and disconnect_work
returns with this check, but not decremented pm_usage count, which
is incremented before scheduling connect_work in ipa_data_connect.
Hence fix this by decrementing pm_usage count in connect_work if
port_usb is NULL.

Change-Id: Ic60f2addcf07375429e0858d3c7a376a35132750
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
2017-02-08 14:29:20 +05:30
Tirupathi Reddy
9e38e5398a ARM: dts: msm: Update MEM ACC corner mapping for APC0/1 for sdm660
Use NOM ACC settings up to TURBO voltage corner for APC0/1 for
sdm660.

CRs-Fixed: 2003900
Change-Id: Id1c82a7e1681e028d0426fe0565d88faa6588ab5
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
2017-02-08 14:03:29 +05:30
Laura Abbott
9c2442a7a9 arm: highmem: Add support for flushing kmap_atomic mappings
The highmem code provides kmap_flush_unused to ensure all kmap
mappings are really removed if they are unused. This code does not
handle kmap_atomic mappings since they are managed separately.
This prevents an issue for any code which relies on having absolutely
no mappings for a particular page. Rather than pay the penalty of
having CONFIG_DEBUG_HIGHMEM on all the time, add functionality
to remove the kmap_atomic mappings in a similar way to kmap_flush_unused.

Change-Id: Ieb25da809b377b1fae1629e2cb75f8aebc1c1bca
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
2017-02-08 13:40:38 +05:30
Shiraz Hashim
8c98573eaf ARM: dts: msm: configure default CMA region for sdm630
Configure the size of the default CMA region to 32 MB in
DT for sdm630.

Configuring the default CMA region in the DT is cleaner
than using CONFIG_CMA_SIZE_MBYTES since it is easier to
configure per target and the alloc ranges can be specified
in DT.

Change-Id: I329ae0aa9cffeed7c30e44749c15fbb83c58b599
Signed-off-by: Shiraz Hashim <shashim@codeaurora.org>
2017-02-08 13:40:30 +05:30
Pavankumar Kondeti
3b315a544a defconfig: msm: enable SCHED_AUTOGROUP for sdm660
This config is already enabled in all other variants but missed
in the 32 bit debug defconfig.

Change-Id: I7b1cb538eaf63305eba171c7453c1459c802eb41
Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
2017-02-08 11:19:11 +05:30
Ashay Jaiswal
b3f4a97dc3 qcom-charger: smb2: fix kernel log flooding by charger driver
Power supply framework expects all registered power_supply
entities(except "battery" psy) to support ONLINE property.
"usb-main" psy doesn't support ONLINE property and prints
error for unsupported properties in get_property function.
Update error prints to debug in get-property function of
"usb-main" to prevent log flooding.

Change-Id: I270a93fe2e48d368f13e74e63c48613c1a4fb693
Signed-off-by: Ashay Jaiswal <ashayj@codeaurora.org>
2017-02-08 10:27:52 +05:30
Nicholas Troast
969526076d power: supply: qcom: fix OTG soft start failure with higher capacitance
Currently hardware based OTG soft start will fail when enabling OTG with
high capacitance.

Fix this by implementing a software based OTG soft start sequence in
addition to the underlying hardware OTG soft start.

This soft start workaround will begin when an OTG over-current interrupt
is triggered.

Change-Id: I2f3fd5f1bb6e792b2b353eb241d83548e33f563b
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2017-02-07 16:45:59 -08:00
Anirudh Ghayal
6e1f3205b4 qpnp: smb2: Add charger frequency config for PM660
The clock to the PM660 charger has to be configured in the
CHG_FREQ module instead of CHG_MISC. Also, the charger
frequencies for PM660 and PMI8998 are different, add
logic to handle that.

CRs-Fixed: 1104287
Change-Id: I5f4daf9354b209226a03b4f8026e20be8a73348b
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
2017-02-08 05:51:24 +05:30
Hemant Kumar
65719399a2 usb: dwc3: Set core clk rate to default upon device remove notification
commit 1eec2157d8 ("usb: dwc3: Update core clock rate based on
USB port speed.") only sets clk rate for HS/FS/LS device add notification.
In case super speed device is plugged in after LS/FS/HS device unplug in
absence of runtime suspend, core clk rate remains at high speed core clk
rate. Fix this issue by setting the core clk rate back to default when
a device is being removed from root hub.

Change-Id: I0ac37b7ff08a9a297441304eb2cfaff398d44bb9
Signed-off-by: Hemant Kumar <hemantk@codeaurora.org>
2017-02-07 15:13:13 -08:00
Nicholas Troast
5836501ea4 iio: qcom-tadc: set all threshold comparators directions
The threshold comparators should be set to "<=". Set them.

Change-Id: I45cf6dd7f165d20e2f2dbc6fce7fd321b4ac145a
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2017-02-07 13:40:07 -08:00
Nicholas Troast
8b06c790dd ARM: dts: msm: enable temperature change IRQ for SMB138X
The temperature change IRQ is used to update the parallel power supply
when the temperature of the connector changes. Enable it.

Change-Id: I26582ffc2c98183c75f5c302386416e840bd6ed0
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2017-02-07 13:40:07 -08:00
Nicholas Troast
271a607ef0 smb138x-charger: enable connector temp thermal regulation source
The connector thermal regulation source must be enabled in order to
receive temperature-change interrupts. Enable it.

Change-Id: I9bb2d3eaf3bba1b1f40bfd724060f2fa437235b5
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2017-02-07 13:40:06 -08:00
Nicholas Troast
82ca1cbfca smb138x-charger: configure connector temp thresholds
Add a device tree property qcom,connector-temp-max-mdegc to configure
the connector temperature at which mitigation should start.

This will set the thresholds for when the temperature-change IRQ will
fire.

Change-Id: I47df477b56a6654fbf94b5bb0f7dfdfb80e2f16e
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2017-02-07 13:40:00 -08:00
Nicholas Troast
294cded42d power: supply: qcom: support CONNECTOR_THERM_ZONE property
Use the CONNECTOR_THERM_ZONE property to show the current thermal zone
of the USB connector temperature.

Change-Id: Ia9a85055d68ed08aa9be5b2b66e3e6389ec2e6c3
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2017-02-07 13:39:39 -08:00
Nicholas Troast
6cce933457 power_supply: add CONNECTOR_THERM_ZONE property
The CONNECTOR_THERM_ZONE property shows which thermal zone the
connector temperature is currently in.

Change-Id: I669344feea13f34f98ee808cae5649766543201a
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2017-02-07 13:39:39 -08:00
Nicholas Troast
e2cc95080f smb138x-charger: handle temperature change IRQ
The temperature change IRQ is used to notify the CTM driver that the
connector temperature has changed. Enable it.

Change-Id: Ibda88fcac6044c0f9a1db96be70b7e7f99e6fb73
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2017-02-07 13:39:38 -08:00
Nicholas Troast
6611bb8976 smb138x-charger: configure charger temperature threshold
The charger temperature threshold should be configured for thermal
balancing. Add a device tree property to configure the temperature
threshold. A default value will be used in the absence of this property.

Change-Id: I5d64a8012a9c13c578714d91f1e7e4426cef235a
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2017-02-07 13:39:29 -08:00
Nicholas Troast
abaead7bc3 iio: qcom-tadc: enable hardware conversion triggers
The hardware conversion triggers are required for thermal regulation.
Enable them.

Change-Id: I4172f7ae8df437ba3a49e6abae587298bc11d78b
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2017-02-07 09:49:24 -08:00
Nicholas Troast
401dea940e iio: qcom-tadc: add threshold write support
The TADC hardware supports configuring temperature thresholds. Add
support for configuring these thresholds via the IIO framework.

Change-Id: Ib673965eb9b8265874580c8c26f72c85590151c2
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2017-02-07 09:49:09 -08:00
Rajeev Kumar Sirasanagandla
0e9ed4cf13 ath10k: Skip reading of firmware-5.bin file
In WCN3990, currently firmware gets loaded via non bmi procedure.
Since, firmware-5.bin file is not needed, this change skip parsing
and loading of the same.

CRs-Fixed: 2002151
Change-Id: I7e02349d73d333296b7beefa4c9cfc435de8f1a4
Signed-off-by: Rajeev Kumar Sirasanagandla <rsirasan@codeaurora.org>
2017-02-07 06:14:03 -08:00
Govind Singh
6786441d1b ath10k: Add support for BASE MAC ADDRESS CMD
Base address needs to be set for SAP interface
in HL 1.0 firmware. If base mac address has not
encoded in WLAN firmware board data file then auto
generate base mac address using device serial number
and user defined mac address.

Change-Id: I66f72c3c14b620107b48664d753c9dcf7a9b418e
Signed-off-by: Govind Singh <govinds@codeaurora.org>
Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
2017-02-07 06:12:54 -08:00
Srinivas Ramana
6b02379d7b ARM: dts: msm: Add TLB dump entries for sdm660 and sdm630
Add TLB dump entries to setup memory space by the cpuss dump
driver to dump TLB entries.

Change-Id: I4193191d85e3839d0fb7e7d38fee4e938d55167b
Signed-off-by: Srinivas Ramana <sramana@codeaurora.org>
2017-02-07 16:44:24 +05:30
Sandeep Panda
41294f7888 ARM: dts: msm: update nt35597 truly panel init sequence
Update the nt35597 truly panel init sequence to reduce the
high latency issue seen across suspend resume cycles on
SDM660 target.

Change-Id: I0d71cebd5571fac293a8b0f401d882342fbd9106
Signed-off-by: Sandeep Panda <spanda@codeaurora.org>
2017-02-07 16:32:46 +05:30
Linux Build Service Account
2aa89ab3ff Merge "ARM: dts: msm: add sink capabilities to PMI8998 PD PHY" 2017-02-07 02:08:16 -08:00
Linux Build Service Account
674a9404b9 Merge "power: qcom: apm: correct various coding style issues" 2017-02-07 02:08:14 -08:00
Linux Build Service Account
f33991b048 Merge "power: qcom: apm: replace msmtitanium code name with MSM8953" 2017-02-07 02:08:14 -08:00
Linux Build Service Account
25d36cd064 Merge "clk: qcom: Update the dp pixel clock flags" 2017-02-07 02:08:13 -08:00
Linux Build Service Account
ad4234306a Merge "clk: qcom: Update the display port determine rate RCG ops" 2017-02-07 02:08:12 -08:00
Linux Build Service Account
69ca7214e3 Merge "sched: fix argument type in update_task_burst()" 2017-02-07 02:08:11 -08:00
Linux Build Service Account
a2c6971ce7 Merge "sysctl: define upper limit for sched_freq_reporting_policy" 2017-02-07 02:08:10 -08:00
Linux Build Service Account
15d2d5b37f Merge "msm: vidc: Return buffers from driver on streamon failure" 2017-02-07 02:08:09 -08:00
Linux Build Service Account
80a663ad0c Merge "ARM: dts: msm: Define power configuration for msm8996 and msm8998" 2017-02-07 02:08:08 -08:00
Linux Build Service Account
cadd944dcd Merge "msm: vidc: Handle perf mode configuration" 2017-02-07 02:08:07 -08:00
Linux Build Service Account
6260ba37fc Merge "msm_vidc: Clear pendingq when releasing buffers" 2017-02-07 02:08:06 -08:00
Linux Build Service Account
020ec68b48 Merge "ARM: dts: msm: Update Temperature sensor support for sdm630" 2017-02-07 02:08:05 -08:00
Linux Build Service Account
94118f2c4f Merge "ARM: dts: msm: Enable zone dma flag for sdm660/630" 2017-02-07 02:08:00 -08:00
Amit Nischal
b6cc695ac2 clk: qcom: Remove gcc_rx2_qlink_clkref_clk for sdm660
The gcc_rx2_qlink_clkref_clk is not required by
any client, so remove controlling the clock from
HLOS clock driver.

Change-Id: I20dbb38f3f0fcbcdb3974923f4a0b540153d3fde
Signed-off-by: Amit Nischal <anischal@codeaurora.org>
2017-02-07 15:26:39 +05:30
Prashanth Bhatta
44023d5261 icnss: After recovery probe if not done already
Recovery can be initiated any time and can happen during driver
register also. With current implementation, if recovery starts
just before driver register then probe call back will not be
called as FW is not ready yet but probe call back will not be
called even after FW ready indication. Fix this case by calling
probe call back after FW ready if driver is registered but probe
call back is not called during driver register.

CRs-fixed: 2002797
Change-Id: Ia1ea812a1bac3204ad95a62b7c6e55511753f2db
Signed-off-by: Prashanth Bhatta <bhattap@codeaurora.org>
2017-02-06 23:55:43 -08:00
Sandeep Panda
30b7964f29 ARM: dts: msm: update truly fhd panel init sequence
Update truly FHD panel init sequence to fix corruption
issues. Also enable dfps feature for the video mode panel
on SDM660 target with the updated sequence.

Change-Id: Ife010a0fccefad802877fd50f222587be36d24aa
Signed-off-by: Sandeep Panda <spanda@codeaurora.org>
2017-02-07 12:23:35 +05:30
Tirupathi Reddy
51446748e3 ARM: dts: msm: Add GFX CPR device configuration for sdm630
GPU subsystem in sdm630 is supplied by either LDO300(VDD_GFX)
in LDO mode or VDD_CX in BHS mode. This LDO300 is CPR managed
and supports CPR closed-loop operation.  Add CPR device node
with required configuration for supporting CPR closed-loop
operation for sdm630.

CRs-Fixed: 2000929
Change-Id: I9a07d9b00ed3830e5146b7b1debe84a9393fafd3
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
2017-02-07 12:20:43 +05:30
Tirupathi Reddy
7ddabf956b ARM: dts: msm: Update GFX LDO CPR target quotient table for sdm660
Update GFX LDO CPR closed-loop target quotients as per silicon
characterization data and also update ro scaling factor values
for sdm660.

Also, change the supported Fmax from 800Mhz to 750Mhz in GFX LDO
CPR device node.

CRs-Fixed: 2001053
Change-Id: I032a4cd13490314b15b3abd289eb5ef541e18c56
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
2017-02-07 12:15:12 +05:30
Taniya Das
0b6b50f4e4 clk: qcom: Update the dp pixel clock flags
Display port pixel clock source is required to propagate the set rate to
parent, so update the flags for the same. The lowsvs frequency has got
updated to 154MHz, update the same.

Change-Id: I67a5ff3b5fb18c2ce986c5f431f4e41a78fe13a5
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2017-02-07 12:08:51 +05:30
Taniya Das
038297471d clk: qcom: Update the display port determine rate RCG ops
The display port PLL generates only limited set of frequency combinations.
As fractional dividers are not required to be used, update the RCG ops to
take care of the same.

Change-Id: I601273fee044ef128dbc7c2e23bc2d8ce10e31dc
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2017-02-07 12:08:50 +05:30
Odelu Kukatla
4322f1ee12 ARM: dts: msm: Add gpu clock node for sdm630
GPU RBCPR clocks needs to be registered separately as GFX CPR
requires the rbcpr clocks to register the regulator handle.

Change-Id: I18275df08b1ad91dde09ac4fbea709d08162eec9
Signed-off-by: Odelu Kukatla <okukatla@codeaurora.org>
2017-02-07 11:55:42 +05:30
Satya Krishna Pindiproli
a73b1632b1 ASoC: msm: add FE DAIs for HFP for SDM660
Add new frontend DAI links for HFP client in both
internal and external variants of SDM660.

CRs-Fixed: 1117314
Change-Id: If56ce8827c8677c35a49e70be1bfafa373b84f79
Signed-off-by: Satya Krishna Pindiproli <satyak@codeaurora.org>
2017-02-07 11:29:50 +05:30
Kalyan Thota
e8b77a585b msm: mdss: share MDP smmu device mappings with other mdss clients
Rotator and MDP share same stream ID on sdm600 target,
hence share the smmu device with rotator device to map/unmap
its buffers.

The change will also handle different secure usecase concurrencies
like, mdp running in secure and rotator in non-secure and vice versa.

Change-Id: I3ff118baed3984d63e9a9fe94289d99523c7b3e9
Signed-off-by: Kalyan Thota <kalyant@codeaurora.org>
2017-02-07 10:51:12 +05:30
Taniya Das
8136c8e129 clk: qcom: keep gcc_bimc_gfx_clk always on for SDM660
Keep gcc_bimc_gfx_clk always on to prevent a stall during BIMC redirection
handshake that occurs as part of a transition between different CCI power
modes.

Change-Id: Id027d4c3ba3ef15b24cfc2747b1a7b82a206fc31
Signed-off-by: Taniya Das <tdas@codeaurora.org>
2017-02-07 10:45:23 +05:30
Neeraj Upadhyay
5b8035a372 ARM: dts: msm: add support for NO jacktype for SDM660
Add device tree files for headset jacktype NO, for CDP
and RCM platforms of SDM660.

Change-Id: I32bfb871ced7a682016af8bec5eeb28dc27a3616
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
2017-02-07 09:04:46 +05:30