| Commit message (Collapse) | Author | Age |
| ... | |
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
commit 290284776bb281759b11faa287b8abccaf74bfcb upstream.
The voltage ranges listed here are wrong. The correct ranges can
be seen in the "native" spmi regulator driver
qcom_spmi-regulator.c at pldo_ranges[], ftsmps_ranges[] and
boost_ranges[] for the pldo, ftsmps, and boost type regulators.
Port these ranges over to the RPM SMD regulator driver so that we
list the appropriate set of supported voltages on pldos.
Doing this allows us to specify a voltage like 3075000 for l24,
whereas before that wasn't a supported voltage.
Fixes: da65e367b67e ("regulator: Regulator driver for the Qualcomm RPM")
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Reviewed-by: Andy Gross <andy.gross@linaro.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
commit 93bfe79b03365f410aa91caf04263173c008ecdf upstream.
The mvs1 and mvs2 switches are actually called 5vs1 and 5vs2 on
some datasheets. Let's rename them to match the datasheets and
also match the RPM based regulator driver which calls these by
their 5vs names (see qcom_smd-regulator.c). There aren't any
users of these regulators so far, so there aren't any concerns of
DT ABI breakage here. While we're here making updates to the
switches, also mandate usage of the OCP irq for these switches
too.
Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Fixes: e92a4047419c ("regulator: Add QCOM SPMI regulator driver")
Signed-off-by: Stephen Boyd <stephen.boyd@linaro.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
commit 919163f6362ac23138d31fc8befdd52e5d7e488d upstream.
The voltage switches support mode switching, so add support for
these ops to those types of regulators.
Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Fixes: e92a4047419c ("regulator: Add QCOM SPMI regulator driver")
Signed-off-by: Stephen Boyd <stephen.boyd@linaro.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
commit c333dfe8dba7d3e47e97e1cee3c38123e19ae73c upstream.
The S4 supply is sometimes called the boost regulator because it
outputs 5V. Typically it's connected to the 5vs1 and 5vs2
switches for use in USB OTG and HDMI applications. Add support
for this regulator which was mistakenly left out from the initial
submission of this driver.
Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Fixes: e92a4047419c ("regulator: Add QCOM SPMI regulator driver")
Signed-off-by: Stephen Boyd <stephen.boyd@linaro.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
| |\ \ \
| |/ /
|/| | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
OLEDB driver needs the LAB_VREG_OK status to program the PD_CTL
register after the oledb module is enabled. As this status register
is not accessible from the OLEDB driver, register a notifier callback
with LABIBB driver to get LAB_VREG_OK status.
Change-Id: I85009688a2accb6246135d22e08ee21fb8296f62
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
|
| |\ \ \ |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The LCDB module does not sample the vph_pwr_2p5_ok signal if it drops
low when the module is off. It will continue with the last known
state of vph_pwr_2p5_ok which could cause a problem if vph_pwr_2p5_ok
is indeed low. Fix this by re-enabling of the module to activate
the vph_pwr_2p5_ok signal sampling.
CRs-Fixed: 1053543
Change-Id: If0950140cae12c92bb6be428b22400b492f823e4
Signed-off-by: Anirudh Ghayal <aghayal@codeaurora.org>
|
| |\ \ \ \
| | |/ /
| |/| | |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Some drivers (e.g. OLEDB) would need to know about LAB_VREG_OK
status from the LABIBB module. Hence, add support for the
notifier callback so that required drivers can be notified about
LAB_VREG_OK status.
Change-Id: Ib60c94c7557ee6ffb7595dee5bd268bb76faaf6e
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
|
| | |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Update the number of fuse corners used for APC0 and APC1 CPR
instances of sdm630 as per the new fusing scheme.
CRs-Fixed: 2008764
Change-Id: Icee251c350c102c698c2f60f3189e5aecf2dc7b1
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
|
| |\ \ \
| | | |
| | | |
| | | | |
sdm630"
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The GFX LDO CPR sensor count in sdm630 is different from that of sdm660.
Assign the correct sensor count under a soc-id comparison check.
CRs-Fixed: 2007621
Change-Id: I82231a30143dc3df0bee3421101316c1d9693d08
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
|
| |/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Configure CPR4/h controllers to reset to default step_quot on each
loop_en = 0 transition. This enables the CPR controller to use the
default step_quot during a corner switch and then later switch to
the run-time calibrated step_quot. Without this feature enabled,
there is a chance for the CPR controller to use the run-time
calibrated step_quot of lower modes for higher modes that sometimes
can lead to closed-loop voltage getting stuck at open-loop voltage.
CRs-Fixed: 2003482
Change-Id: Ic738f6205a2e2030202abd811e94bd47240bad43
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
|
| |\ \ \ |
|
| | |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
CRs-Fixed: 2000929
Change-Id: I94d6739f9abbdba3918b118eaa29fc0bc5cbd6e7
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
|
| |/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
sdm630 CPU CPR controllers support full hardware closed-loop CPR
operation also known as CPR hardening. Extend the cprh-kbss-regulator
driver to handle CPU subsystem specific power requirements of
the sdm630 chip.
CRs-Fixed: 1117353
Change-Id: Id2aa0674b0d9737907defd4b305ee70b74f65142
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
|
| |\ \ |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The LDO300 regulator supplies power to GPU subsystem of sdm630.
Update GFX LDO regulator driver to support LDO300 regulation on
sdm630.
CRs-Fixed: 2000929
Change-Id: I7ae9834f47763e06e110c03c4cf4220fe044659e
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
|
| |\ \ \ |
|
| | |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Null terminate cpr4_mmss_regulator_match_table with
'{}', to fix the error reported from KASAN.
Change-Id: Ib991fe5ce57e9e12132c3c836e1e807cb0afad22
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Correct warnings flagged by checkpatch. In particular, modify
the following:
- Change variables of type 'unsigned' to 'unsigned int'.
- Update the REGULATOR_QPNP_OLEDB Kconfig option.
Change-Id: I75f4a5868f98f7090baa0dc77da8923c1d789d3a
Signed-off-by: David Collins <collinsd@codeaurora.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Correct warnings flagged by checkpatch. In particular, modify
the following:
- Change variables of type 'unsigned' to 'unsigned int'.
- Update the REGULATOR_QPNP_LCDB Kconfig option.
Change-Id: I9b9324f205481dd91f0db39f2c4ac309105cb556
Signed-off-by: David Collins <collinsd@codeaurora.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Correct warnings flagged by checkpatch. In particular, modify
the following:
- Add 'const' to the type of a struct of_device_id variable.
- Remove unnecessary out-of-memory error messages.
- Change variables of type 'unsigned' to 'unsigned int'.
- Use variable name in sizeof() for devm_kzalloc() call.
- Update the REGULATOR_QPNP_LABIBB Kconfig option.
Change-Id: Id98fed6b3c460d6f4282eab88cebdc8b2bd9bf2e
Signed-off-by: David Collins <collinsd@codeaurora.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Correct warnings flagged by checkpatch. In particular, modify
the following:
- Use octal file permissions instead of symbolic.
- Add 'const' to type of struct of_device_id variables.
- Remove unnecessary out-of-memory error messages.
- Change variables of type 'unsigned' to 'unsigned int'.
- Restructure conditionals to avoid else after return/break.
- Remove 'return' from the end of void functions.
- Join strings that are wrapped across two lines.
- Remove ';' from the end of a macro definition.
- Update the REGULATOR_QPNP Kconfig entry and the device tree
documentation to use the name: 'Qualcomm Technologies, Inc.'
Change-Id: I9f2cde58929ae57667366bb886e65154d36dfd3d
Signed-off-by: David Collins <collinsd@codeaurora.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Correct warnings flagged by checkpatch. In particular, modify
the following:
- Use octal file permissions instead of symbolic.
- Change variables of type 'unsigned' to 'unsigned int'.
- Correct a minor whitespace inconsistency.
Change-Id: I282801edaa3a713fd34035e7270d4fb1d0b86fca
Signed-off-by: David Collins <collinsd@codeaurora.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Correct warnings flagged by checkpatch. In particular, modify
the following:
- Add 'const' to the type of a struct of_device_id variable.
- Remove unnecessary out-of-memory error messages.
- Change variables of type 'unsigned' to 'unsigned int'.
- Restructure conditionals to avoid else after return.
- Correct the spelling of the word 'initialize'.
- Update the REGULATOR_MEM_ACC Kconfig entry and the device
tree documentation to use the name: 'Qualcomm Technologies,
Inc.'
Change-Id: Idfccd4289eadbbeaf2c682ca4fbe73eda691499a
Signed-off-by: David Collins <collinsd@codeaurora.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Correct warnings flagged by checkpatch. In particular, modify
the following:
- Use octal file permissions instead of symbolic.
- Add 'const' to the type of a struct of_device_id variable.
- Remove unnecessary out-of-memory error messages.
- Change variables of type 'unsigned' to 'unsigned int'.
- Update the REGULATOR_KRYO Kconfig entry.
Change-Id: Iad0fcbcc8f276f4f8344b6fc8591cfbe604659fa
Signed-off-by: David Collins <collinsd@codeaurora.org>
|
| |/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Correct warnings flagged by checkpatch. In particular, modify
the following:
- Use octal file permissions instead of symbolic.
- Add 'const' to type of struct of_device_id variables.
- Remove unnecessary out-of-memory error messages.
- Change variables of type 'unsigned' to 'unsigned int'.
- Restructure conditionals to avoid else after return/break.
- Remove 'return' from the end of void functions.
- Correct minor whitespace inconsistencies.
Change-Id: Ibf7812cd722c74e48d51e765f00efcbcf548c552
Signed-off-by: David Collins <collinsd@codeaurora.org>
|
| |\ \ |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Adjust the target quotients according to the closed-loop voltage
adjustments mentioned in device tree node and efuse data.
Move the common code as utility functions in cpr3-util file
and keep the platform specific code in platform specific MMSS
files.
Change-Id: I39989cc57522009929c2785340563ee6ffb2475c
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
|
| |\ \ \
| | | |
| | | |
| | | | |
optional"
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
IBB discharge resistor configuration needs to be decided on the
mode (LCD/AMOLED) along with the capacitor used on the hardware
platform. On hardware platforms that uses pmi8998, this would be
configured in the bootloader and HLOS should not be modifying it
based on the mode.
Hence, remove the property in msm-pmi8998.dtsi. Change the device
tree property to optional so that the driver can probe even when
the property is not specified.
Also, remove the code that force discharge resistor configuration
to 300KOhms for AMOLED mode as it can be done either in the
bootloader or through device tree.
CRs-Fixed: 1115531
Change-Id: I0da5db166bb99a732978c287e97566f649686f42
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Instead of using the value read from IBB_ENABLE_CTL register to
determine whether SWIRE control is already enabled by bootloader,
wrong value is used. Fix it.
Change-Id: I80ddf60a3a8010a749a001f10ba82e6560ecdfd2
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
|
| |\ \ \ \ |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Correct the conditional check in the oledb_hw_init to avoid programming the
configuration registers if module is already enabled. Also correct the
conditional check in the oledb_regulator_disable.
CRs-Fixed: 1114628
Change-Id: I1af6c5ba6427050832ae04e693f161c517ef03a2
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
|
| | | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Programming the default (1.5x) LAB_CURRENT_SENSE configuration is not
required for PM660A. Configure it only if explicitly specified in the
DT config.
CRs-Fixed: 1114628
Change-Id: Ib09e6430e99a7f39a9d2f837494a977daff354ba
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
|
| |\ \ \ \
| |/ / /
|/| / /
| |/ / |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Number of elements in ibb_pwrup_dly_table is 4. An out of bounds
access can be made if value read from IBB_PWRUP_PWRDN_CTL_1
register is larger than 3 as the DLY1 value is not shifted.
Fix it.
CRs-Fixed: 1112706
Change-Id: I40783a9c87d1e390a514b84743379c57f488f299
Signed-off-by: Subbaraman Narayanamurthy <subbaram@codeaurora.org>
|
| |\ \ \
| |/ /
|/| | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Correct the index calculation used when printing the sdelta
adjustment table.
Change-Id: Ieaf46199f2b440206fd3442d614cf97f3f3728ea
CRs-Fixed: 1089098
Signed-off-by: David Collins <collinsd@codeaurora.org>
|
| |\ \ \ |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Vote minimum possible voltage corner on system regulator in
regulator disable path when the CPR controller manages an
underlying LDO of type LDO300.
Also, fix the regulator get failure print when vdd-supply
not specified for CPRh controllers.
CRs-Fixed: 1108988
Change-Id: Ic1c7b6fd4bf93dd213b2f639aa21b47890906478
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
|
| |/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fix checkpatch warnings and other style issues in the regulator
debugfs functions. Refactor the code to remove unnecessary error
checks as well as a shared buffer and mutex. Rename variables
and functions to better follow the naming conventions found in
the core.c file. Update the conditions used for allowing the
creation of 'voltage' and 'load' debugfs files.
Change-Id: I59881078ce9e908de11e74d15372edf233eb17b0
Signed-off-by: David Collins <collinsd@codeaurora.org>
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
sdm660 CPU CPR controllers support full hardware closed-loop CPR
operation also known as CPR hardening. Extend the cprh-kbss-regulator
driver to handle CPU subsystem specific power requirements of
the sdm660 chip.
CRs-Fixed: 1105923
Change-Id: I2e24a061a5ad4ee959dd578da9e811ac7700702c
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
|
| |\ \ \ |
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Modify the driver to support the new lab/ibb
hardware changes supported on PM660A.
New hardware supports the following features:
1) Smart pulse skip mode
2) LDO mode for LAB
3) PFM mode
4) PBS sequencer handling SWIRE decoding
5) Default output voltage configuration
Change-Id: I5461995cc0ac930dd354c63b97223085306e869d
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
|
| |\ \ \ \ |
|
| | |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The OLEDB module provides the AVDD bias supply for the AMOLED display.
The supported voltage range of the bias is 5 to 8.1V. This driver provides
the regulator interface to control the bias voltage.
Change-Id: Ide4af995ca9fd12b3467de42e5d08eddc3981344
Signed-off-by: ansharma <ansharma@codeaurora.org>
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
|
| |/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
GPU subsystem in sdm660 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 sdm660.
CRs-Fixed: 1068294
Change-Id: Id12a50563f6cef196ef76816fcf8e177b9a3fa97
Signed-off-by: Tirupathi Reddy <tirupath@codeaurora.org>
|