2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-29 15:43:59 +08:00
Commit Graph

19 Commits

Author SHA1 Message Date
Krzysztof Kozlowski
a19a209ee4 ARM: dts: exynos: Adjust buck[78] regulators to supported values on Odroid XU3 family
The datasheet of S2MPS11 PMIC is slightly non-consistent in buck[78]
voltage regulators values.

1. The voltage tables for configuring their registers mention range of
   voltages: 0.750 V to 3.55 V,
2. The constrains in electrical specifications say output voltage range
   to be different (buck7: 1.2 V to 1.5 V, buck8: 1.8 V to 2.1 V).

Adjust the ranges to match the electrical specifications to stay on the
safe side.  Also change the name of regulators to match reality.  Anyway
these regulators stay at default value so this should not have effect.

Reported-by: Anand Moon <linux.amoon@gmail.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2019-07-01 20:28:32 +02:00
Krzysztof Kozlowski
3e7f057681 ARM: dts: exynos: Add regulator suspend configuration to Odroid XU3/XU4/HC1 family
Add the PMIC regulator suspend configuration to entire Odroid
XU3/XU4/HC1 family of boards to reduce power usage during suspend.  The
configuration is based on vendor (Hardkernel) reference kernel with
additional buck9 suspend configuration (for USB hub suspend and proper
reset).

Energy consumption measurements from Marek Szyprowski during suspend to
RAM:
 - all at 5 V power supply,
 - before: next-20190620,
 - after: next-20190620 + this patch + suspend configuration for s2mps11
          regulator driver,

Board              | before [mA] | after [mA] |
Odroid HC1         |         120 |       7-10 |
Odroid XU4, sdcard |          88 |        6-9 |
Odroid XU4, eMMC   |         100 |        6-9 |

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
Tested-by: Anand Moon <linux.amoon@gmail.com>
2019-06-24 19:08:06 +02:00
Krzysztof Kozlowski
d0b737f939 ARM: dts: exynos: Disable unused buck10 regulator on Odroid HC1 board
The eMMC memory on Odroid XU3/XU4 boards is supplied by two regulators
LDO18 and buck10 (and LDO13 for the host interface).

However the Odroid HC1 board does not have eMMC connector so this
regulator does not have to be always on.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2019-06-24 19:07:47 +02:00
Marek Szyprowski
a3238924a8 ARM: dts: exynos: Fix max voltage for buck8 regulator on Odroid XU3/XU4
The maximum voltage value for buck8 regulator on Odroid XU3/XU4 boards is
set too low. Increase it to the 2000mV as specified on the board schematic.
So far the board worked fine, because of the bug in the PMIC driver, which
used incorrect step value for that regulator. It interpreted the voltage
value set by the bootloader as 1225mV and kept it unchanged. The regulator
driver has been however fixed recently in the commit 56b5d4ea77
("regulator: s2mps11: Fix steps for buck7, buck8 and LDO35"), what results
in reading the proper buck8 value and forcing it to 1500mV on boot. This
is not enough for proper board operation and results in eMMC errors during
heavy IO traffic. Increasing maximum voltage value for buck8 restores
original driver behavior and fixes eMMC issues.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Fixes: 86a2d2ac5e ("ARM: dts: Add dts file for Odroid XU3 board")
Fixes: 56b5d4ea77 ("regulator: s2mps11: Fix steps for buck7, buck8 and LDO35")
Cc: <stable@vger.kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2019-03-01 15:10:30 +01:00
Krzysztof Kozlowski
e653eaed97 ARM: dts: exynos: Enable ADC on Odroid HC1
Odroid HC1 uses the exynos5422-odroid-core.dtsi file as a base.  All
other Exynos5422 Odroids use the "common".  The ADC node was defined
only in the latter.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2019-02-18 18:39:47 +01:00
Krzysztof Kozlowski
6e2422ff94 ARM: dts: exynos: Clarify comment explaining purpose of Odroid XU3 DTSI
There are two common DTSI files for Exynos5422 Odroid XU3 family of
boards.  One is shared between all of them (XU3, XU3-Lite, XU4 and HC1)
and the second skips HC1.  Document this in the files.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-11-16 16:56:04 +01:00
Anand Moon
6135ee70cb ARM: dts: exynos: Add pin configuration for SD write protect on Odroid XU3/XU4/HC1
Add SD card write-protect pin configuration to be sure that it will be
properly pulled down to indicate write access.

Suggested-by: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Anand Moon <linux.amoon@gmail.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-11-13 20:54:23 +01:00
Anand Moon
c60b3f77f4 ARM: dts: exynos: Update maximum frequency for SD card to 200MHz on Odroid XU3/XU4/HC1
Set the SD max-frequency to 200MHz for optimal performance on Odroid
XU3/XU4/HC1 family of boards.

Signed-off-by: Anand Moon <linux.amoon@gmail.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-11-13 20:49:23 +01:00
Anand Moon
8fe325fa9d ARM: dts: exynos: Fix LDO13 min values on Odroid XU3/XU4/HC1
From Odroid XU3/XU4/HC1 schematics the LDO13 regulator for SD2, can be
set on 1.8V or 2.8V so the minimal value should be fixed to 1.8V.  This
is necessary to support UHS-I tuning (otherwise card won't be detected
during boot).

Signed-off-by: Anand Moon <linux.amoon@gmail.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-11-13 20:48:05 +01:00
Anand Moon
25e5566e2b ARM: dts: exynos: Add UHS-I bus speed support to Odroid XU3/XU4/HC1
Add support for UHS-I bus speed tuning for SDR50, DDR50 and SDR104 to
Odroid XU3/XU4/HC1 family boards.

Signed-off-by: Anand Moon <linux.amoon@gmail.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-11-13 20:47:55 +01:00
Krzysztof Kozlowski
3f9d8677b7 ARM: dts: exynos: Add compatible for s2mps11 clocks node on Exynos542x
The bindings for s2mps11/s5m8767 clocks driver require a compatible for
clocks node.  Parent MFD sec-core driver will also use it when
instantiating children.

The compatible is not needed for proper working because device will be
anyway created by parent MFD device.  Add it for correctness.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-11-12 21:21:01 +01:00
Krzysztof Kozlowski
8be3e7f078 ARM: dts: exynos: Add LDO28 regulator on Exynos5422 Odroid boards
The LDO28 is used only on Odroid XU3 for Display Port.  Define it so DTS
will describe entire hardware.

Depending on bootloader behavior this might affect the Display Port
because none of drivers are enabling it. By default it is off in S2MPS11
PMIC reset values.  However it could be enabled by bootloader so in such
case kernel will later disable it as unused regulator.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
2018-08-29 21:57:24 +02:00
Krzysztof Kozlowski
b5124e4507 ARM: dts: exynos: Disable unused PMIC regulators on Exynos5422 Odroid boards
Disable unused PMIC regulators on Exynos5422 Odroid boards to reduce
energy used. According to schematics:
1. LDO12, LDO16 and LDO24 are not connected,
2. LDO26 is not used on Odroid HC1.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-08-29 21:57:23 +02:00
Krzysztof Kozlowski
8e82954979 ARM: dts: exynos: Add unused PMIC regulators on Exynos5422 Odroid boards
Define LDO14, LDO20-22, LDO25 and LOD29-38 unused regulators to
describe the hardware.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-08-29 21:57:22 +02:00
Krzysztof Kozlowski
95ac226222 ARM: dts: exynos: Add missing used PMIC regulators on Exynos5422 Odroid boards
Define LDO2, LDO23 and LDO27 critical board regulators to describe the
hardware.

Suggested-by: Joonyoung Shim <jy0922.shim@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-08-29 21:57:20 +02:00
Mathieu Malaterre
edef4285af ARM: dts: exynos/s3c: Remove leading 0x and 0s from bindings notation
Improve the DTS files by removing all the leading "0x" and zeros to fix the
following dtc warnings:

    Warning (unit_address_format): Node /XXX unit name should not have leading "0x"
    Warning (unit_address_format): Node /XXX unit name should not have leading 0s

Converted using the following command:

    find arch/arm/boot/dts -type f \( -iname "*.dts" -o -iname "*.dtsi" \) -exec sed -i \
    -e "s/@\([0-9a-fA-FxX\.;:#]\+\)\s*{/@\L\1 {/g" -e "s/@0x\(.*\) {/@\1 \
    {/g" -e "s/@0\+\(.\+\) {/@\1 {/g" {} +

For simplicity, two sed expressions were used to solve each warnings separately.

To make the regex expression more robust a few other issues were resolved,
namely setting unit-address to lower case, and adding a whitespace before the
the opening curly brace: https://elinux.org/Device_Tree_Linux#Linux_conventions

This will solve also a side effect warning:

    Warning (simple_bus_reg): Node /XXX@<UPPER> simple-bus unit address format error, expected "<lower>"

This is a follow up to commit 4c9847b737 ("dt-bindings: Remove leading 0x from bindings notation")

Reported-by: David Daney <ddaney@caviumnetworks.com>
Suggested-by: Rob Herring <robh@kernel.org>
Signed-off-by: Mathieu Malaterre <malat@debian.org>
[krzk: Rerun the command to include few more changes, adjust the commit msg]
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-05-03 21:11:16 +02:00
Krzysztof Kozlowski
cc4637f7c9 ARM: dts: exynos: Add SPDX license identifiers
Replace GPL v2.0 license statements with SPDX license identifiers.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2018-01-03 18:27:26 +01:00
Dongjin Kim
e4c1ea7b8e ARM: dts: exynos: Fix property values of LDO15/17 for Odroid XU3/XU4
Looking at the schematic, LDO15 and LDO17 are tied as a power source of a
builtin network chipset. Correct voltage on LDO15 to 3.3V and the name
of LDO17 to "vdd_ldo17".

Signed-off-by: Dongjin Kim <tobetter@gmail.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2017-12-04 17:45:44 +01:00
Marek Szyprowski
1ac49427b5 ARM: dts: exynos: Add support for Hardkernel's Odroid HC1 board
Odroid HC1 board is based on Odroid XU4 board, but it has no HDMI,
no eMMC, no built-in USB3.0 hub, no extension port pins, and no GPIO
button. USB3.0 ports are used for built-in JMicron USB to SATA bridge
and Gigabit R8152 ethernet chips. HC1 uses only passive cooling.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
2017-10-02 19:01:05 +02:00