Commit Graph

18 Commits

Author SHA1 Message Date
Tony Lindgren
36f808f2f1 ARM: dts: motorola-cpcap-mapphone: Configure calibration interrupt
We added coulomb counter calibration support With commit 0cb90f071f
("power: supply: cpcap-battery: Add basic coulomb counter calibrate
support"), but we also need to configure the related interrupt.

Without the interrupt calibration happens based on a timeout after two
seconds, with the interrupt the calibration just gets done a bit faster.

Cc: Merlijn Wajer <merlijn@wizzup.org>
Cc: Pavel Machek <pavel@ucw.cz>
Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2020-01-23 10:00:01 -08:00
Olof Johansson
e89d108da9 Device tree fixes for omap variants for for v5.5 merge window
This series of changes contains fixes for few SoC and board specific
 issues that would be good to have merged for v5.5-rc1:
 
 - Fix incorrect MMC card detection polarity for omap3-tao3530
 
 - Fix wrong am57xx-beagle-x15 pinmux named states for eMMC
 
 - Fix dra7 cpsw mdio clock that causes wrong speed
 
 - Fix vcsi for droid4 so it won't get turned off after init
 
 - Fix rev and sysconfig register offsets for omap4 sgx so it can idle
 
 Then there are also two minor late changes to logicpd-torpedo-baseboard
 to configure 1-wire HDQ for battery stats, and remove out of date
 workaround comments no longer needed.
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEkgNvrZJU/QSQYIcQG9Q+yVyrpXMFAl3enk4RHHRvbnlAYXRv
 bWlkZS5jb20ACgkQG9Q+yVyrpXORmhAA3MvMUSvfo3qOH+7kktlFFzAPWvFAkcCm
 jKjAEOY1b0wBJkTVY9vUEL8+UHrqDguxNz7JgVqi7GXbJvafc0C1KoFbbohPncPK
 bzao7o2lAgje1NQ+cBIFVrqYLHPX3uxKKeTwnqIeti47fF48eIqVG2soKBEGAGpR
 R6/9WfK7Gd2NA/OGPfKX4h8ggm1nXnTZWwfM53I4JjW+36G5ZgpFxdQ5GdNw2uk3
 iXttxuigkEMS3dR+Wlphquf2kDmIhKgc+UQq3N13s6Axb/FyM7CBNuoCTS/63VXP
 7j34/W43/Ehhjrssp35r0psEkqO23BzWo2HpmPjMpa8XSu0MrRMWBqzwGKCN92UQ
 KSVwvydBm6QL/WrMXGYlkEs73N/bHpX2Tb22EdhmbL7zpS+1D14g9t7qRvuF/AnE
 ubsNzl9Eh9hma4EFvVP+YETpuOMJ9lhgAz/aEUiTPV/AINDfyJkDFP9/feP9DUzj
 BJkthGbMGdmTbGIZ+fQ2E8fXVpNVFRNBwZ0mmjYm4EbG1pbroGiDXByNv9sTusPn
 e1x9aU9fOqrY0OAr7SR2s1/d3E3MntW6lzBYehNdA0C3NMutrxULqxXAksYwkOud
 S6f6uV2Uq9DumapwbKkC7GKaHtONW6ocKmfraH7S+CIbvohfR3FBBdCNtqM84XOE
 EBtdBX7ToBQ=
 =2L5D
 -----END PGP SIGNATURE-----

Merge tag 'omap-for-v5.5/dt-fixes-merge-window-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into arm/fixes

Device tree fixes for omap variants for for v5.5 merge window

This series of changes contains fixes for few SoC and board specific
issues that would be good to have merged for v5.5-rc1:

- Fix incorrect MMC card detection polarity for omap3-tao3530

- Fix wrong am57xx-beagle-x15 pinmux named states for eMMC

- Fix dra7 cpsw mdio clock that causes wrong speed

- Fix vcsi for droid4 so it won't get turned off after init

- Fix rev and sysconfig register offsets for omap4 sgx so it can idle

Then there are also two minor late changes to logicpd-torpedo-baseboard
to configure 1-wire HDQ for battery stats, and remove out of date
workaround comments no longer needed.

* tag 'omap-for-v5.5/dt-fixes-merge-window-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: dts: Fix sgx sysconfig register for omap4
  ARM: dts: Fix vcsi regulator to be always-on for droid4 to prevent hangs
  ARM: dts: dra7: fix cpsw mdio fck clock
  ARM: dts: am57xx-beagle-x15: Update pinmux name to ddr_3_3v
  ARM: dts: omap3-tao3530: Fix incorrect MMC card detection GPIO polarity
  ARM: dts: logicpd-torpedo: Remove unnecessary notes/comments
  ARM: dts: logicpd-torpedo-baseboard:  Enable HDQ

Link: https://lore.kernel.org/r/pull-1574870758-237468@atomide.com
Signed-off-by: Olof Johansson <olof@lixom.net>
2019-12-06 08:27:17 -08:00
Tony Lindgren
ddb5294599 ARM: dts: Fix vcsi regulator to be always-on for droid4 to prevent hangs
In addition to using vcsi regulator for the display, looks like droid4 is
using vcsi regulator to trigger off mode internally with the PMIC firmware
when the SoC enters deeper idle states. This is configured in the Motorola
Mapphone Linux kernel sources as "zerov_regulator".

As we currently don't support off mode during idle for omap4, we must
prevent vcsi from being disabled when the display is blanked to prevent
the PMIC change to off mode. Otherwise the device will hang on entering
idle when the display is blanked.

Before commit 089b3f61ec ("regulator: core: Let boot-on regulators be
powered off"), the boot-on regulators never got disabled like they should
and vcsi did not get turned off on idle.

Let's fix the issue by setting vcsi to always-on for now. Later on we may
want to claim the vcsi regulator also in the PM code if needed.

Fixes: 089b3f61ec ("regulator: core: Let boot-on regulators be powered off")
Cc: Merlijn Wajer <merlijn@wizzup.org>
Cc: Pavel Machek <pavel@ucw.cz>
Cc: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2019-11-21 07:14:00 -08:00
Tony Lindgren
d4ee021c41 power: supply: cpcap-charger: Limit voltage to 4.2V for battery
There have been some cases of droid4 battery bulging that seem to be
related to being left connected to the charger for several weeks.

It is suspected that the 4.35V charge voltage configured for the battery
is too much in the long run, so lets limit the charge voltage to 4.2V.
It could also be that the batteries are just getting old.

We don't really want to just change the charge voltage to 4.2V as Android
may have charged the battery to 4.35V as pointed out by Pavel Machek.

To add checks for battery voltage, the driver needs to understand the
voltage it's charging at, and also needs to better understand it's
charger state. Right now it only understands connect and disconnect,
while now we need to know also a connected state but not charging.

So let's add better charger state handling with help of chrgcurr2 interrupt
for detecting charge full and retry, and add a check for battery voltage
before we start charging. And then we finally can lower the charge voltage
to 4.2V.

Note that we've been using the same register values as the Android distros
on droid4, so it is suspected that the same problem also exists in Android.

Cc: Pavel Machek <pavel@ucw.cz>
Cc: Rob Herring <robh+dt@kernel.org>
Reported-by: Merlijn Wajer <merlijn@wizzup.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>
2019-10-20 19:10:39 +02:00
Thomas Gleixner
d2912cb15b treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500
Based on 2 normalized pattern(s):

  this program is free software you can redistribute it and or modify
  it under the terms of the gnu general public license version 2 as
  published by the free software foundation

  this program is free software you can redistribute it and or modify
  it under the terms of the gnu general public license version 2 as
  published by the free software foundation #

extracted by the scancode license scanner the SPDX license identifier

  GPL-2.0-only

has been chosen to replace the boilerplate/reference in 4122 file(s).

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Enrico Weigelt <info@metux.net>
Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org>
Reviewed-by: Allison Randal <allison@lohutok.net>
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190604081206.933168790@linutronix.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-06-19 17:09:55 +02:00
Tony Lindgren
ef4a55b919 ARM: dts: omap4-droid4: Fix typo in cpcap IRQ flags
We're now getting the following error:

genirq: Setting trigger mode 1 for irq 230 failed
(regmap_irq_set_type+0x0/0x15c)
cpcap-usb-phy cpcap-usb-phy.0: could not get irq dp: -524

Cc: Sebastian Reichel <sre@kernel.org>
Reported-by: Pavel Machek <pavel@ucw.cz>
Tested-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2019-01-07 10:34:28 -08:00
Sebastian Reichel
1f64d431b1 ARM: dts: motorola-cpcap-mapphone: add audio-codec
Add node for audio-codec to its DT file.

Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2018-03-02 12:55:09 -08:00
Sebastian Reichel
aed09a4a48 ARM: dts: motorola-cpcap-mapphone: set initial mode for vaudio
Set default mode for vaudio, which may be left in standby mode
if the system is booted via kexec from Android.

Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2017-08-14 11:34:24 -07:00
Tony Lindgren
c3d28e5379 ARM: dts: omap4-droid4: Configure CPCAP battery driver
Configure CPCAP battery driver.

Cc: devicetree@vger.kernel.org
Cc: Marcel Partap <mpartap@gmx.net>
Cc: Michael Scott <michael.scott@linaro.org>
Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2017-06-12 09:07:13 -07:00
Tony Lindgren
8434fbefc6 ARM: dts: omap4-droid4: Add CPCAP PMIC OTG PHY configuration
Add CPCAP PMIC OTG PHY configuration.

Cc: devicetree@vger.kernel.org
Cc: Marcel Partap <mpartap@gmx.net>
Cc: Michael Scott <michael.scott@linaro.org>
Reviewed-by: Sebastian Reichel <sre@kernel.org>
Tested-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2017-04-09 16:22:08 -07:00
Tony Lindgren
8a1a625965 ARM: dts: omap4-droid4: Add CPCAP PMIC battery charger configuration
Add CPCAP PMIC battery charger configuration.

Cc: devicetree@vger.kernel.org
Cc: Marcel Partap <mpartap@gmx.net>
Cc: Michael Scott <michael.scott@linaro.org>
Reviewed-by: Sebastian Reichel <sre@kernel.org>
Tested-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2017-04-09 16:21:59 -07:00
Tony Lindgren
94b9a8a6fd ARM: dts: omap4-droid4: Add CPCAP PMIC ADC configuration
Add CPCAP PMIC ADC configuration.

Cc: devicetree@vger.kernel.org
Cc: Marcel Partap <mpartap@gmx.net>
Cc: Michael Scott <michael.scott@linaro.org>
Reviewed-by: Sebastian Reichel <sre@kernel.org>
Tested-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2017-04-09 16:20:29 -07:00
Tony Lindgren
4fd14a4954 ARM: dts: omap4-droid4: Fix interrupt triggering for cpcap
The CPCAP PMIC interrupt is level high sensitive despite it being
requested as edge high triggered in the Motorola Linux kernel.

Note that also the related driver change is needed posted as
"mfd: cpcap: Fix interrupt to use level interrupt".

Fixes: 56e1d40d3b ("mfd: cpcap: Add minimal support")
Cc: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Cc: Marcel Partap <mpartap@gmx.net>
Cc: Michael Scott <michael.scott@linaro.org>
Cc: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2017-04-04 09:22:25 -07:00
Tony Lindgren
26bfad63ca ARM: dts: omap4-droid4: Fix MMC1 card for detect GPIO and regulator
There's a typo, it should be GPIO176 and not GPIO106.

And it seems I messed up the regulators at some point while trying
to figure out what devices the regulators are used. The correct
regulator for MMC1 is vwlan2.

Fixes: 0d4cb3ccee ("ARM: dts: Configure regulators for droid 4")
Reported-by: Sebastian Reichel <sre@kernel.org>
Reviewed-by: Sebastian Reichel <sre@kernel.org>
Tested-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2017-03-28 08:57:25 -07:00
Sebastian Reichel
836a0b0bb9 ARM: dts: motorola-cpcap-mapphone: add LEDs
Add LEDs.

Signed-off-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2017-03-22 09:09:16 -07:00
Sebastian Reichel
594e808bfa ARM: dts: motorola-cpcap-mapphone: add pwrbutton
Add power button.

Signed-off-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2017-03-06 08:04:30 -08:00
Sebastian Reichel
45ce6cf0c6 ARM: dts: motorola-cpcap-mapphone: add rtc
Add rtc.

Signed-off-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2017-03-06 08:04:30 -08:00
Tony Lindgren
0d4cb3ccee ARM: dts: Configure regulators for droid 4
With drivers/mfd/motorola-cpcap.c and drivers/regulator/cpcap-regulator.c
we can now configure proper regulators for droid 4.

Let's add regulator voltages and switch over MMC, eMMC and WLAN to use
the CPCAP regulators.

Cc: devicetree@vger.kernel.org
Cc: Marcel Partap <mpartap@gmx.net>
Cc: Michael Scott <michael.scott@linaro.org>
Tested-By: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2017-03-06 08:04:30 -08:00