Commit graph

576177 commits

Author SHA1 Message Date
Joonwoo Park
a54b6930c6 sched: don't bias towards waker cluster when sched_boost is set
When sched_boost is set scheduler needs to place task on the least
loaded CPU or performance CPU for better performance.

Change-Id: I41512b4af9cd56712a241c114583b0021d1395d2
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
2016-10-19 13:21:29 -07:00
Linux Build Service Account
c6b7d9674c Merge "msm: ipa3: Add specific logs to improve debugging capabilities" 2016-10-18 03:25:05 -07:00
Linux Build Service Account
240bddf76e Merge "soc: qcom: Acquire mutex before checking for service" 2016-10-18 03:25:04 -07:00
Linux Build Service Account
cfb87a7e1f Merge "clk: msm: clock-mmss-cobalt: Update the FMAXes for dp_pixel_clk_src" 2016-10-18 03:25:03 -07:00
Linux Build Service Account
0efa66ae3e Merge "sched/fair: Fix issue with trace flag not being set properly" 2016-10-18 03:25:03 -07:00
Linux Build Service Account
a8cbf3d8be Merge "ARM: dts: msm: Add support for Lpass PIL on msmtriton" 2016-10-18 03:25:02 -07:00
Linux Build Service Account
1f7a8f328d Merge "usb: gadget: f_midi: Fix use after free bug" 2016-10-18 03:25:00 -07:00
Linux Build Service Account
083bcc387b Merge "msm: camera: isp: Set the clock rate before ahb vote" 2016-10-18 03:24:53 -07:00
Linux Build Service Account
02be6e0578 Merge "smb138x-charger: supporting switching freq prop" 2016-10-18 03:24:45 -07:00
Linux Build Service Account
d5fe1119ae Merge "power_supply: add property to reflect switcher frequency" 2016-10-18 03:24:43 -07:00
Linux Build Service Account
0fe66ef383 Merge "smb-lib: provide insertion removal functions" 2016-10-18 03:24:43 -07:00
Linux Build Service Account
02821f198d Merge "arm64: mm: Log the process id in the rtb" 2016-10-18 03:24:41 -07:00
Ghanim Fodi
d51f2f62e4 msm: ipa3: Add specific logs to improve debugging capabilities
Add some debug logs to specific places at IPA driver
to improve debugging capabilities.

Change-Id: Ibc53bd27a58c90d309a38937d6de6eef62ddc99a
CRs-Fixed: 1073482
Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org>
2016-10-17 22:57:02 -07:00
Linux Build Service Account
ff02182ddb Merge "msm: mdss: fix typo in the error message for multirect validation" 2016-10-17 21:00:48 -07:00
Linux Build Service Account
79fd9cc15e Merge "msm: camera: cpp: Add validation for v4l2 ioctl arguments" 2016-10-17 21:00:45 -07:00
Linux Build Service Account
2e25f74964 Merge "clk: msm: clock-mmss-cobalt: Update the CPP clock frequency table" 2016-10-17 21:00:45 -07:00
Linux Build Service Account
04e78b618d Merge "ARM: dts: msm: Add cpp root clock for msmcobalt" 2016-10-17 21:00:44 -07:00
Linux Build Service Account
b6cab4d0be Merge "msm: camera: isp: Update burst length for msmfalcon" 2016-10-17 21:00:43 -07:00
Linux Build Service Account
1fa5af7193 Merge "msm: sensor: Update CSI PHY 3 phase settings for msmcobalt" 2016-10-17 21:00:42 -07:00
Olav Haugan
34418fc16e sched/fair: Fix issue with trace flag not being set properly
During scheduler boost the sched_task_load ftrace event might not log
the correct flag value. Ensure that the flag is always initialized with
the selected cluster information.

Change-Id: Ia986d0fbc512c8e9ed1b5fb5b2ac4bc564cc4ba9
Signed-off-by: Olav Haugan <ohaugan@codeaurora.org>
2016-10-17 17:05:54 -07:00
Linux Build Service Account
7fcfd3ec06 Merge "ARM: dts: msm: add smmu impl-def registers for msmfalcon" 2016-10-17 13:34:12 -07:00
Linux Build Service Account
d5bdc231bc Merge "ARM: dts: msm: add the smmu dt nodes for msmfalcon" 2016-10-17 13:34:11 -07:00
Linux Build Service Account
0573581457 Merge "mmc: host: Register changes for msmfalcon" 2016-10-17 13:34:11 -07:00
Linux Build Service Account
244d98ccc7 Merge "msm: mdss: Fix the cursor max size for msmcobalt" 2016-10-17 13:34:08 -07:00
Linux Build Service Account
67846eadb1 Merge "msm: mdss: Update memory retention and periph control setting" 2016-10-17 13:34:07 -07:00
Linux Build Service Account
7691180c04 Merge "msm: mdss: dp: add support for logging event names" 2016-10-17 13:34:05 -07:00
Linux Build Service Account
2c4448cb42 Merge "msm: mdss: dp: update Clock Recovery phase of link training" 2016-10-17 13:34:05 -07:00
Linux Build Service Account
9c0815e32f Merge "msm: mdss: displayport: fix alt mode sequence" 2016-10-17 13:34:04 -07:00
Linux Build Service Account
ca2803ad16 Merge "clk: msm: mdss: fix DSI PLL post vco divider configuration" 2016-10-17 13:34:03 -07:00
Linux Build Service Account
dd0fa9929b Merge "scsi: ufs-qcom: avoid sleep in atomic context" 2016-10-17 13:34:01 -07:00
Linux Build Service Account
5699e2b539 Merge "msm: kgsl: Remove DPM registers from snapshot" 2016-10-17 13:34:00 -07:00
Linux Build Service Account
2048927de0 Merge "ARM: dts: msm: Enable SD card for msmcobalt QRD VR1 board" 2016-10-17 13:34:00 -07:00
Linux Build Service Account
a18f0e81de Merge "PM / devfreq: memlat: add device attribute to show core to device bw map" 2016-10-17 13:33:59 -07:00
Linux Build Service Account
3993230d5c Merge "ASoC: msmcobalt: Check for number of aux codecs" 2016-10-17 13:33:58 -07:00
Gaurav Kohli
4f4bba9ff6 ARM: dts: msm: Add support for Lpass PIL on msmtriton
Add support for Lpass PIL which facilitates the loading of Lpass
firmware, authentication and bringing it out of reset.

Change-Id: I367f4b3afdae9d0f78081e142be34132aaf07ab4
Signed-off-by: Gaurav Kohli <gkohli@codeaurora.org>
2016-10-17 12:55:36 -07:00
Shubhraprakash Das
db1cd0b522 msm: camera: isp: Set the clock rate before ahb vote
Set the vfe clock rate before putting the ahb vote into
suspend otherwise the clock vote will bump up the ahb
vote and prevent shutdown.

CRs-Fixed: 1078215
Change-Id: I439ae8aea839af6d9b84fe1384feb18de3d9d276
Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
2016-10-17 12:34:57 -07:00
Puja Gupta
f90fbfe1c5 soc: qcom: Acquire mutex before checking for service
Acquire lock before you check if the service exist. This leads to
race condition where you end up adding same service multiple times
in service_list and make multiple registration request to servreg.

CRs-Fixed: 1078753
Change-Id: I8ae92ee1d26bd6687b6b2b4cbed1032485d7450e
Signed-off-by: Puja Gupta <pujag@codeaurora.org>
2016-10-17 12:04:27 -07:00
Harry Yang
c7e2ce5a8c smb138x-charger: supporting switching freq prop
Allow for changing the switching frequency via a power supply property.
The main charger will call this property to ensure optimal power
dissipation.

CRs-Fixed: 1048242
Change-Id: I17aeabe9c20388747dc1965bef22127bd054a828
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2016-10-17 11:54:18 -07:00
Harry Yang
3570e9ed98 power_supply: add property to reflect switcher frequency
Modern battery chargers use a switching buck whose frequency
can be adjusted. Create a property to read/update it.

CRs-Fixed: 1048242
Change-Id: I7611e6b697222427303df47f837716005e013443
Signed-off-by: Harry Yang <harryy@codeaurora.org>
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2016-10-17 11:54:17 -07:00
Abhijeet Dharmapurikar
04519c9566 smb-lib: fix type not updating to Unknown after removal
There is a possibility where the driver fails to change
the usb type to Unknown when the cable is removed - in particular
when pd is not allowed.

Use the debounce done event of the typec change interrupt to update
the usb type to Unknown.

Change-Id: I7f201209101e54461e3d08d677bd7b266f971420
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2016-10-17 11:54:16 -07:00
Abhijeet Dharmapurikar
2b9dbcf6f4 qpnp-smb2: print function names in debug statements
Currently the driver uses the dev_ variants to print debug information.
This is not useful.

Instead print the function name and use pr_ variants to print debug
information.

Change-Id: I0eeb61e847b07ac9b7622ac521bace24a417bb14
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2016-10-17 11:54:15 -07:00
Abhijeet Dharmapurikar
934fffc487 smb-lib: rerun apsd if not pd
If an HVDCP charger is detected and it does not support PD, that means
it is likely a legacy QC2 or QC3 charger. Rerun APSD when PD sets us to
be inactive.

For cases when pd is not allowed, PD won't set inactive status. For such
cases use the hvdcp_timeout interrupt to rerun APSD.

Change-Id: Ibe03e1dc88700b605e2f43ee4bca266ce3dee92b
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2016-10-17 11:54:14 -07:00
Abhijeet Dharmapurikar
139548f446 smb-lib: support separate current settings from usb and pd
Add support to set current limits from usb and pd.

Ensure that the limit from the pd is only enforced when pd is active
and that the limit from usb is enforced only when pd is inactive.

There is one situation when the input needs to be suspended as
per the usb driver's request when pd sets system_suspend_supported.
For that allow the usb voter to set that low current value to
suspend.

Also ensure that the pd and usb votes are nullified when source
is removed.

In addition, the return the individual valid votes from usb and pd
when their current_max are read.

Change-Id: I215e9e82f44061c4083a4df8cab400beadf6322d
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2016-10-17 11:54:13 -07:00
Abhijeet Dharmapurikar
2cdfc35e0b smb-lib: provide insertion removal functions
The current driver votes and unvotes for removal/insertion at
two interrupt handlers, debounce done and the type C detach.

The recommendation from hw teams is to use debounce done for both
insertion and removal. Update the code.

While at it, provide clean functions to vote and unvote for four
situations
a typec cable insertion
a typec cable removal
a source insertion
a source removal

Note that this allows us to cleanly handle PD hard resets where
the typec connection remains intact but the source (or vbus) related
state needs to be reset.

This also helps us in cleanly handling power sole swaps where the source
plugged and removed functions handle vbus related states while typec
functions handle the typec related states.

Change-Id: I49fccb1fcf8eaea8fea1ae186906689a628c02f8
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2016-10-17 11:54:11 -07:00
Abhijeet Dharmapurikar
9cb924f2ed qpnp-smb2: handle shorted vbus and cc lines and legacy cables
There could be cables where vbus and cc lines are shorted or connected
using a small resistor. Raising VBUS to higher values could cause CC
line to get damaged. CC line cannot tolerate a voltage higher than 6V.

So if such a cable is seen, prevent pd stack from running so there is no
opportunity to increase vbus by selecting a higher voltage profile. Also
disable HVDP too.

Also, prevent PD_ALLOWED if a legacy cable is seen - the spec mentions
that if VBUS is seen along with CC, the adapter is not pd capable.

Change-Id: I7411bd541ffe704dda97dd869a3dbd4dbfc99518
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2016-10-17 11:54:10 -07:00
Abhijeet Dharmapurikar
ebdc699974 qpnp-smb2: update to USB_PD type when pd is active
Since the USB_PD type is no more set by the PD driver, it is
expected that the type be set based on pd_active property being
ACTIVE. So set the type and update the userspace when it changes.

Change-Id: I0f76f092d3e8de7a916e995e4d825fe0da79bf78
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2016-10-17 11:54:09 -07:00
Abhijeet Dharmapurikar
f080134002 qpnp-smb2: support exiting sink based on cc
While PD is under hard reset and the device is in sink mode, it
shouldn't leave sink mode because VBUS goes away. Instead it should
stay in sink mode while hard reset is being conducted and exit sink
mode only if CC gets detached.

Configure the exit state when hard reset is in progress. Also while
hard reset is in progress disable APSD else a APSD could run and
disturb SDP communication after VBUS recovers in hard reset procedure.

Change-Id: I7f5046d4822438e949658356e683e74acfa664f7
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2016-10-17 11:54:08 -07:00
Abhijeet Dharmapurikar
b9bcc03fb1 qcom-charger: Allow PD for hvdcp
Currently the code prevents pd if an hvdcp is detected. We want to
change that in that we want to prevent pd only while hvdcp detection
is in progress.  Once completed, we need to enable pd even if an  hvdcp
is detected. Enabling PD even for hvdcp allows us to detect a QC 4.0
which communicates over PD.

Currently we model the pd_allowed votable as an enable votable i.e.
if any one of the voters enable it, pd_allowed gets enabled.

Change that to a disable votable named pd_disallowed_votable,
which gets disabled when CC is detached, and hvdcp2.0 detection is not
yet completed.

Change-Id: I2ae261c71694695b41d8a31c4b40542d5e227c3a
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2016-10-17 11:54:07 -07:00
Abhijeet Dharmapurikar
665d020cda qpnp-smb2: Disable hvdcp based on user configuration
Some platforms do not support HVDCP charging. Provide means to
disable them.

Provide a votable for disabling HVDCP in preparation to handle
VBUS and CC line shorted situation.

Note that when hvdcp is disabled, we only disable voltage
negotiations i.e. qc 2.0 detection remains enabled since it
does not need voltage to change.

Change-Id: Id7eaa46f08ac451a918a550f7837efbef78ab6f6
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
2016-10-17 11:54:06 -07:00
Nicholas Troast
9fde5f5830 qcom-charger: qpnp-smb2: configure float options from DT
When a float charger is detected by APSD there are configuration options
that change the behavior of the charger. These options should be
configurable from the device tree. Add a DT parameter "qcom,float-option"
and configure it as follows:
1 - Treat as a DCP
2 - Treat as a SDP
3 - Disable charging
4 - Suspend USB input

Change-Id: Ia9219bc232f2092569dfb1a14f628e788173c4ff
Signed-off-by: Nicholas Troast <ntroast@codeaurora.org>
2016-10-17 11:54:05 -07:00