Allwinner DT changes for 4.21
This is a quite big pull request this time, with a huge number of changes
(and patches) due to us fixing the vast majority of the DTC warnings our DT
had.
We also have a bunch of other good, more meaningful, changes:
- Support for the new Allwinner T3 (rebranded R40) and f1c100s (armv5)
SoCs
- AXP803 PMIC AC Power supply support
- Rework of the oscillators tree
- Two new boards: the t3-cqa3t-bv3 and Lichee Pi Nano
Plus a few enhancements here and there.
* tag 'sunxi-dt-for-4.21' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux: (84 commits)
ARM: dts: sunxi: Fix PMU compatible strings
ARM: dts: sun8i: r40: Add RTC device node
ARM: dts: sunxi: h3/h5: Fix up RTC device node and clock references
ARM: dts: sun8i: a23/a33: Fix up RTC device node
ARM: dts: sun8i: r40: Add clock accuracy for external oscillators
ARM: dts: sunxi: h3/h5: Add clock accuracy for external oscillators
ARM: dts: sun8i: a33: Drop audio codec oversampling rate to 128 fs
ARM: dts: sun8i: h3: Remove unnecessary reserved memory node
ARM: dts: sun8i: a33: Remove unnecessary reserved memory node
ARM: dts: suniv: Add device tree for Lichee Pi Nano
ARM: dts: suniv: add initial DTSI file for F1C100s
ARM: dts: axp81x: add AC power supply subnode
ARM: dts: sun8i: v3s: Remove skeleton and memory to avoid warnings
ARM: dts: sun8i: v3s: Provide default muxing for relevant controllers
ARM: dts: sun8i: v3s: Change pinctrl nodes to avoid warning
ARM: dts: sun8i: v3s: Change LRADC node names to avoid warnings
ARM: dts: sun8i: h3: Remove leading zeros from unit-addresses
ARM: dts: sun8i: BPI-M2M: Remove i2c nodes
ARM: dts: sun8i: a23/a33: Provide default muxing for relevant controllers
ARM: dts: sunxi: reference: Move the muxing back to the common DTSI
...
Signed-off-by: Olof Johansson <olof@lixom.net>
arm64: tegra: Device tree change for v4.21-rc1
These changes add a bunch of features for Tegra194 and Tegra186, such as
wake events, on-die RTC, temperature sensors, HDA for audio over HDMI
and fan support on Jetson Xavier to allow cooling of the device.
* tag 'tegra-for-4.21-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: (29 commits)
arm64: tegra: Set reg property for display-hub on Tegra194
arm64: tegra: Set reg property for display-hub on Tegra186
arm64: dts: tegra186: Enable IOMMU for SDHCI
arm64: tegra: Enable HDA controller on Jetson TX1
arm64: tegra: Add CEC controller on Tegra194
arm64: tegra: Enable HDA on Jetson Xavier
arm64: tegra: Add HDA controller on Tegra194
arm64: tegra: Add CEC controller on Tegra186
arm64: tegra: Enable HDA on Jetson TX2
arm64: tegra: Add HDA controller on Tegra186
arm64: tegra: Add temperature sensor on P2888
arm64: tegra: Add gpio-keys on Jetson Xavier
arm64: tegra: Add AON GPIO controller on Tegra194
arm64: tegra: p2888: Enable on-die RTC
arm64: tegra: Add RTC support on Tegra194
arm64: tegra: Enable PMC wake events on Tegra194
arm64: tegra: p3310: Enable on-die RTC
arm64: tegra: Add RTC support on Tegra186
arm64: tegra: Enable PMC wake events on Tegra186
arm64: tegra: Fix power key interrupt type on Jetson TX2
...
Signed-off-by: Olof Johansson <olof@lixom.net>
ARM: tegra: Device tree changes for v4.21-rc1
These changes add the external memory controller on Tegra20 as well as
the VIC on Tegra124.
* tag 'tegra-for-4.21-arm-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
ARM: tegra: Add VIC on Tegra124
ARM: dts: tegra20: Add clock entry to External Memory Controller
ARM: dts: tegra20: Add interrupt entry to External Memory Controller
Signed-off-by: Olof Johansson <olof@lixom.net>
dt-bindings: Changes for v4.21-rc1
This contains a few cleanups of and additions to existing device tree
bindings, such as XUSB, EMC, PMC and thermal.
* tag 'tegra-for-4.21-dt-bindings' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
dt-bindings: tegra186-pmc: Add interrupt controller properties
dt-bindings: thermal: tegra-bpmp: Add Tegra194 support
dt: bindings: Move tegra20-emc binding to memory-controllers directory
dt: bindings: tegra20-emc: Document clock property
dt: bindings: tegra20-emc: Document interrupt property
dt-bindings: usb: xhci-tegra: Add power-domain details
Signed-off-by: Olof Johansson <olof@lixom.net>
Renesas ARM Based SoC DT Bindings Updates for v4.21
* Move 'renesas,prr' binding to its own document
- Prepration for converting board-level bindings to json-schema
* Document iW-RainboW-G20D-Qseven-RZG1N board and iWave RZ/G1N SOM
* tag 'renesas-dt-bindings-for-v4.21' of https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
dt-bindings: arm: renesas: Move 'renesas,prr' binding to its own doc
dt-bindings: arm: renesas: Document iW-RainboW-G20D-Qseven-RZG1N board
dt-bindings: arm: renesas: Document iWave RZ/G1N SOM
Signed-off-by: Olof Johansson <olof@lixom.net>
ASPEED device tree updates for 4.20
- New machine: Facebook Backpack-CMM BMC and flash layout
- OpenPower reference systems (Palmetto P8, Romulus P9) move to the
ColdFire based FSI driver
- Misc device tree updates from the OpenBMC project
* tag 'aspeed-4.21-devicetree' of git://git.kernel.org/pub/scm/linux/kernel/git/joel/aspeed:
ARM: dts: aspeed: Add Facebook Backpack-CMM BMC
ARM: dts: Add Facebook BMC flash layout
ARM: dts: aspeed: wspoon: Enable iio-hwmon battery
ARM: dts: aspeed: romulus: Enable iio-hwmon-battery
ARM: dts: aspeed: Enable VHUB on Romulus
ARM: dts: aspeed-palmetto: Add LPC control node
ARM: dts: aspeed: Palmetto system can use coprocessor for FSI
ARM: dts: aspeed: Romulus system can use coprocessor for FSI
Signed-off-by: Olof Johansson <olof@lixom.net>
This device-tree pxa update brings :
- various fixes from Daniel (W=12 issues mainly)
- support for the first pxa3xx devicetree pxa board
* tag 'pxa-dt-4.21' of https://github.com/rjarzmik/linux:
ARM: dts: pxa3xx: Add Raumfeld DTS files
ARM: dts: pxa: clean up USB controller nodes
ARM: dts: pxa3xx: clean up pxa3xx clock controller node name
ARM: dts: pxa3xx: order timer and gcu nodes under /pxabus
ARM: dts: pxa2xx: fix hwuart memory range
ARM: dts: pxa3xx: drop #address-cells and #size-cells from pinctrl node
ARM: dts: pxa2xx: drop #address-cells and #size-cells from /cpus
ARM: dts: pxa3xx: add gcu node
Signed-off-by: Olof Johansson <olof@lixom.net>
Technically the display-hub driver could access registers via the
specified region, though it practice it will do so via the display
controllers' register regions.
Signed-off-by: Thierry Reding <treding@nvidia.com>
Technically the display-hub driver could access registers via the
specified region, though it practice it will do so via the display
controllers' register regions.
Signed-off-by: Thierry Reding <treding@nvidia.com>
The R40 has an RTC hardware block, which has additional registers
that are not related to RTC or clock functions, and is otherwise
compatible with the H3's RTC.
Add a device node for it, and fix up any references to the LOSC.
Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
Tested-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
The RTC module on the H3 was claimed to be the same as on the A31, when
in fact it is not. The A31 does not have an RTC external clock output,
and its internal RC oscillator's average clock rate is not in the same
range. The H5's RTC has some extra crypto-related registers compared to
the H3. Their exact functions are not clear. Also the RTC-VIO regulator
has different settings.
This patch fixes the compatible string and clock properties to conform
to the updated bindings. The device node for the internal oscillator is
removed, as it is internalized into the RTC device. Clock references to
the IOSC and LOSC are also fixed.
Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
Tested-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
The RTC module on the A23 was claimed to be the same as on the A31, when
in fact it is not. The A31 does not have an RTC external clock output,
and its internal RC oscillator's average clock rate is not in the same
range. The A33's RTC is the same as the A23.
This patch fixes the compatible string and clock properties to conform
to the updated bindings. The register range is also fixed.
Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
In preparation to convert board-level bindings to json-schema, move
various misc SoC bindings out to their own file.
Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
The CEC controller found on Tegra194 can be used to control consumer
devices using the HDMI CEC pin.
Signed-off-by: Thierry Reding <treding@nvidia.com>
The HDA controller found on Tegra194 can be used for audio playback over
HDMI.
Signed-off-by: Sameer Pujar <spujar@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
The CEC controller found on Tegra186 can be used to control consumer
devices using the HDMI CEC pin.
Signed-off-by: Thierry Reding <treding@nvidia.com>
The R40 datasheet specifies a tolerance range for the external
oscillators used. Add them to the device tree as the clock accuracy.
Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
Tested-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
The H3 datasheet specifies a tolerance range for the external
oscillators used. Add them to the device tree as the clock accuracy.
The internal oscillator is left unchanged, as it will be removed later.
Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
Tested-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
The iWave RZ/G1N board is almost identical to RZ/G1M. cmt and rwdt modules
are SoC specific and should be part of board dts rather than SoM dtsi. By
moving these nodes to the common dtsi it allows cmt and rwdt to be enabled
on both of these boards with less lines of code.
Signed-off-by: Biju Das <biju.das@bp.renesas.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
The current oversampling rate of 512 means that for 48 kHz 16 bit
stereo, the MCLK is running at the same rate as the module clock,
so there is no head room to support higher sampling rates. The codec
however supports up to 192 kHz for playback.
This patch drops the oversampling rate from 512 to 128, so that 192 kHz
audio can be played back directly without downsampling. Ideally we
should be using different oversampling rates for different sampling
rates, but that's not possible without a platform-specific machine
driver.
Fixes: 870f1bd1f5 ("ARM: dts: sun8i: Add audio codec, dai and card for A33")
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
Just like on the A33, the video engine on the H3 can map any address in
memory, so there is no particular need to have reserved memory at a fixed
address.
As a result, remove the reserved memory node and let the kernel allocate
the CMA pool wherever it sees fit.
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Acked-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
While we believed that the memory for the video engine had to be kept
in the first 256 MiBs of DRAM, this is no longer true starting with the
A33 and any address can be mapped.
As a result, remove the reserved memory node and let the kernel allocate
the CMA pool wherever it sees fit.
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Acked-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>