platform/kernel/linux-rpi.git
4 years agoMerge tag 'v5.6-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git...
Olof Johansson [Sat, 11 Jan 2020 06:18:33 +0000 (22:18 -0800)]
Merge tag 'v5.6-rockchip-dts32-1' of git://git./linux/kernel/git/mmind/linux-rockchip into arm/dt

Pin-name corrections for Veyron-Fievel, bluetooth for a number of veyron boards and
additional operating points for rk3288-tinker.

* tag 'v5.6-rockchip-dts32-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
  ARM: dts: rockchip: Use ABI name for recovery mode pin on veyron fievel/tiger
  ARM: dts: rockchip: Use ABI name for write protect pin on veyron fievel/tiger
  ARM: dts: rockchip: Add missing cpu operating points for rk3288-tinker
  ARM: dts: rockchip: Add brcm bluetooth for rk3288-veyron

Link: https://lore.kernel.org/r/8215452.dU6eVM2tAM@phil
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoARM: multi_v7_defconfig: enable STM32 PWR regulator
Amelie Delaunay [Thu, 9 Jan 2020 12:55:31 +0000 (13:55 +0100)]
ARM: multi_v7_defconfig: enable STM32 PWR regulator

This enables the driver for STM32 PWR regulators found on stm32mp1.

Link: https://lore.kernel.org/r/20200109125531.13610-1-alexandre.torgue@st.com
Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoMerge tag 'stm32-dt-for-v5.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git...
Olof Johansson [Sat, 11 Jan 2020 06:17:22 +0000 (22:17 -0800)]
Merge tag 'stm32-dt-for-v5.6-1' of git://git./linux/kernel/git/atorgue/stm32 into arm/dt

STM32 DT updates for v5.6, round 1

Highlights:
----------

MPU part:
 -Add PWM support on DK2 board.
 -Add counter support to STM32 timers.
 -Add support of SDMMC 2&3 instances based on "arm,pl18x". SDMMC2 is
  connected to eMMC on ED1 board. SDMMC3 is connected to the GPIO
  extension connector on EV1 & DKx boards.
 -Add ADC support on ED1 board.
 -Update devicetree files split to better fit to STM32MP15 SOC & boards
  diversity.
 -Fix issues seen during YAML validation.
 -Enable Ethernet (MAC) TX clock gating during low-power mode.
 -Enable USB OTG HS support on DKx boards.
 -Enable USB Host EHCI on DKx boards.

MCU part:
 -Fix issues seen during YAML validation.

* tag 'stm32-dt-for-v5.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/atorgue/stm32: (37 commits)
  ARM: dts: stm32: Add power-supply for RGB panel on stm32429i-eval
  ARM: dts: stm32: Add power-supply for DSI panel on stm32f469-disco
  ARM: dts: stm32: change nvmem node name on stm32mp1
  ARM: dts: stm32: change nvmem node name on stm32f429
  ARM: dts: stm32: update mlahb node according to the bindings on stm32mp15
  ARM: dts: stm32: fix dma controller node name on stm32mp157c
  ARM: dts: stm32: fix dma controller node name on stm32f743
  ARM: dts: stm32: fix dma controller node name on stm32f746
  ARM: dts: stm32: add phy-names to usbotg_hs on stm32mp157c-ev1
  ARM: dts: stm32: enable USB OTG HS on stm32mp15 DKx boards
  ARM: dts: stm32: enable USB Host (USBH) EHCI controller on stm32mp15 DKx
  ARM: dts: stm32: enable USBPHYC on stm32mp15 DKx boards
  ARM: dts: stm32: remove useless clock-names from RTC node on stm32f746
  ARM: dts: stm32: remove useless clock-names from RTC node on stm32f429
  ARM: dts: stm32: Enable MAC TX clock gating during TX low-power mode on stm32mp15
  ARM: dts: stm32: adjust slew rate for Ethernet on stm32mp15
  ARM: dts: stm32: remove syscfg clock on stm32mp15 ethernet
  ARM: dts: stm32: remove "@" and "_" from stm32f7 pinmux groups
  ARM: dts: stm32: remove "@" and "_" from stm32f4 pinmux groups
  ARM: dts: stm32: Adapt STM32MP157C ED1 board to STM32 DT diversity
  ...

Link: https://lore.kernel.org/r/39df1dee-3c9f-cd35-bc55-a71223e07100@st.com
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoMerge tag 'hisi-arm64-dt-for-5.6' of git://github.com/hisilicon/linux-hisi into arm/dt
Olof Johansson [Sat, 11 Jan 2020 06:16:17 +0000 (22:16 -0800)]
Merge tag 'hisi-arm64-dt-for-5.6' of git://github.com/hisilicon/linux-hisi into arm/dt

ARM64: DT: Hisilicon SoCs DT updates for 5.6

- Add remote control map name of the IR device for the hi3798cv200 poplar board
- Correct the PCIe bus range setting for the hi3798cv200

* tag 'hisi-arm64-dt-for-5.6' of git://github.com/hisilicon/linux-hisi:
  arm64: dts: hi3798cv200: correct PCIe 'bus-range' setting
  arm64: dts: hi3798cv200-poplar: add linux,rc-map-name for IR

Link: https://lore.kernel.org/r/5E169EDE.8020809@hisilicon.com
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoMerge tag 'arm-soc/for-5.6/devicetree' of https://github.com/Broadcom/stblinux into...
Olof Johansson [Sat, 11 Jan 2020 06:15:04 +0000 (22:15 -0800)]
Merge tag 'arm-soc/for-5.6/devicetree' of https://github.com/Broadcom/stblinux into arm/dt

This pull request contains Broadcom ARM-based SoCs Device Tree changes
for 5.6, please pull the following:

- Stephan adds support for the HWRNG on 2711 (Raspberry Pi 4) which is
  different than the previous Pi chips

- Florian switches the BCM956265HR board to use the hardware I2C
  controllers for interfacing with the SFPs

* tag 'arm-soc/for-5.6/devicetree' of https://github.com/Broadcom/stblinux:
  ARM: dts: bcm2711: Enable HWRNG support
  ARM: dts: bcm2835: Move rng definition to common location
  ARM: dts: NSP: Use hardware I2C for BCM958625HR

Link: https://lore.kernel.org/r/20200108191114.15987-1-f.fainelli@gmail.com
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoARM: dts: stm32: Add power-supply for RGB panel on stm32429i-eval
Benjamin Gaignard [Wed, 8 Jan 2020 13:26:46 +0000 (14:26 +0100)]
ARM: dts: stm32: Add power-supply for RGB panel on stm32429i-eval

Add a fixed regulator and use it as power supply for RBG panel.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
4 years agoARM: dts: stm32: Add power-supply for DSI panel on stm32f469-disco
Benjamin Gaignard [Wed, 8 Jan 2020 13:26:47 +0000 (14:26 +0100)]
ARM: dts: stm32: Add power-supply for DSI panel on stm32f469-disco

Add a fixed regulator and use it as power supply for DSI panel.

Fixes: 18c8866266 ("ARM: dts: stm32: Add display support on stm32f469-disco")

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
4 years agoARM: dts: stm32: change nvmem node name on stm32mp1
Benjamin Gaignard [Thu, 19 Dec 2019 14:41:17 +0000 (15:41 +0100)]
ARM: dts: stm32: change nvmem node name on stm32mp1

Change non volatile node name from nvmem to efuse to be compliant
with yaml schema.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
4 years agoARM: dts: stm32: change nvmem node name on stm32f429
Benjamin Gaignard [Thu, 19 Dec 2019 14:41:16 +0000 (15:41 +0100)]
ARM: dts: stm32: change nvmem node name on stm32f429

Change non volatile node name from nvmem to efuse to be compliant
with yaml schema.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
4 years agoARM: dts: stm32: update mlahb node according to the bindings on stm32mp15
Arnaud Pouliquen [Thu, 19 Dec 2019 12:18:15 +0000 (13:18 +0100)]
ARM: dts: stm32: update mlahb node according to the bindings on stm32mp15

Update of the mlahb node according to to DT bindings using json-schema

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
4 years agoARM: dts: stm32: fix dma controller node name on stm32mp157c
Benjamin Gaignard [Wed, 18 Dec 2019 14:48:44 +0000 (15:48 +0100)]
ARM: dts: stm32: fix dma controller node name on stm32mp157c

Modify dma controller nodes name to fit with the standard naming.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
4 years agoARM: dts: stm32: fix dma controller node name on stm32f743
Benjamin Gaignard [Wed, 18 Dec 2019 14:48:43 +0000 (15:48 +0100)]
ARM: dts: stm32: fix dma controller node name on stm32f743

Modify dma controller nodes name to fit with the standard naming.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
4 years agoARM: dts: stm32: fix dma controller node name on stm32f746
Benjamin Gaignard [Wed, 18 Dec 2019 14:48:42 +0000 (15:48 +0100)]
ARM: dts: stm32: fix dma controller node name on stm32f746

Modify dma controller nodes name to fit with the standard naming.

Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
4 years agoARM: dts: stm32: add phy-names to usbotg_hs on stm32mp157c-ev1
Amelie Delaunay [Thu, 21 Nov 2019 16:12:00 +0000 (17:12 +0100)]
ARM: dts: stm32: add phy-names to usbotg_hs on stm32mp157c-ev1

phy-names is required by usbotg_hs driver to get the phy, otherwise, it
considers that there is no phys property.

Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
4 years agoARM: dts: stm32: enable USB OTG HS on stm32mp15 DKx boards
Amelie Delaunay [Mon, 9 Dec 2019 14:23:22 +0000 (15:23 +0100)]
ARM: dts: stm32: enable USB OTG HS on stm32mp15 DKx boards

This patch enables USB OTG HS on stm32mp15 dkx in Peripheral mode.

Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
4 years agoARM: dts: stm32: enable USB Host (USBH) EHCI controller on stm32mp15 DKx
Amelie Delaunay [Mon, 9 Dec 2019 14:17:26 +0000 (15:17 +0100)]
ARM: dts: stm32: enable USB Host (USBH) EHCI controller on stm32mp15 DKx

This patch enables USB Host (USBH) EHCI controller on stm32mp15 dk boards.
As a hub is used between USBH and USB connectors, no need to enable
USBH OHCI controller: all low- and full-speed traffic is managed by the
hub.

Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
4 years agoARM: dts: stm32: enable USBPHYC on stm32mp15 DKx boards
Amelie Delaunay [Mon, 9 Dec 2019 14:15:09 +0000 (15:15 +0100)]
ARM: dts: stm32: enable USBPHYC on stm32mp15 DKx boards

This patch enables USBPHYC (USB PHY Controller on stm32mp15 DKx boards.
This enables the two usbphyc usb2 ports, which require 3 supplies:
3v3, 1v1 and 1v8.

Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@st.com>
4 years agoARM: dts: rockchip: Use ABI name for recovery mode pin on veyron fievel/tiger
Matthias Kaehlcke [Wed, 8 Jan 2020 17:29:33 +0000 (09:29 -0800)]
ARM: dts: rockchip: Use ABI name for recovery mode pin on veyron fievel/tiger

The recovery mode pin is currently named 'REC_MODE_L', which is
how the signal is called in the schematics. The Chrome OS ABI
requires the pin to be named 'RECOVERY_SW_L', which is also how
it is called on all other veyron devices. Rename the pin to match
the ABI.

Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20200108092908.1.I3afd3535b65460e79f3976e9ebfa392a0dd75e01@changeid
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
4 years agoMerge tag 'tags/bcm2835-dt-next-2020-01-07' into devicetree/next
Florian Fainelli [Wed, 8 Jan 2020 18:09:49 +0000 (10:09 -0800)]
Merge tag 'tags/bcm2835-dt-next-2020-01-07' into devicetree/next

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
4 years agoarm64: dts: hi3798cv200: correct PCIe 'bus-range' setting
Shawn Guo [Tue, 7 Jan 2020 12:29:08 +0000 (20:29 +0800)]
arm64: dts: hi3798cv200: correct PCIe 'bus-range' setting

The PCIe 'bus-range' setting is incorrect and causing the following
message during boot.

pci_bus 0000:01: busn_res: can not insert [bus 01-ff] under [bus 00-0f] (conflicts with (null) [bus 00-0f])

Correct it to get rid of the message.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Wei Xu <xuwei5@hisilicon.com>
4 years agoARM: dts: rockchip: Use ABI name for write protect pin on veyron fievel/tiger
Matthias Kaehlcke [Mon, 6 Jan 2020 21:52:13 +0000 (13:52 -0800)]
ARM: dts: rockchip: Use ABI name for write protect pin on veyron fievel/tiger

The flash write protect pin is currently named 'FW_WP_AP', which is
how the signal is called in the schematics. The Chrome OS ABI
requires the pin to be named 'AP_FLASH_WP_L', which is also how
it is called on all other veyron devices. Rename the pin to match
the ABI.

Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20200106135142.1.I3f99ac8399a564c88ff48ae6290cc691b47c16ae@changeid
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
4 years agoMerge tag 'omap-for-v5.6/ti-sysc-drop-pdata-signed' of git://git.kernel.org/pub/scm...
Olof Johansson [Tue, 7 Jan 2020 19:25:28 +0000 (11:25 -0800)]
Merge tag 'omap-for-v5.6/ti-sysc-drop-pdata-signed' of git://git./linux/kernel/git/tmlind/linux-omap into arm/dt

Drop more legacy platform data for omaps for v5.6 merge window

We can now probe devices with ti-sysc interconnect driver and dts
data, and can continue dropping the related platform data and custom
ti,hwmods dts property for various devices.

And related to that, we finally can remove the legacy sdma support in
favor of using the dmaengine driver only. I was planning to send the
sdma changes separately, but that would have produced a pile of
pointless merge conflicts, so I decided it's best to resolve it locally.
After all, the sdma series also ends up removing the related platform
data.

Note that this series is based on omap-for-v5.6/ti-sysc-dt-signed branch
as it depends for dts data being in place.

* tag 'omap-for-v5.6/ti-sysc-drop-pdata-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (56 commits)
  ARM: OMAP2+: Drop legacy platform data for sdma
  ARM: OMAP2+: Drop legacy init for sdma
  dmaengine: ti: omap-dma: Use cpu notifier to block idle for omap2
  dmaengine: ti: omap-dma: Allocate channels directly
  dmaengine: ti: omap-dma: Pass sdma auxdata to driver and use it
  dmaengine: ti: omap-dma: Configure global priority register directly
  ARM: OMAP5: hwmod-data: remove OMAP5 IOMMU hwmod data
  ARM: OMAP4: hwmod-data: remove OMAP4 IOMMU hwmod data
  ARM: OMAP2+: Drop legacy platform data for omap4 fdif
  ARM: OMAP2+: Drop legacy platform data for omap4 slimbus
  ARM: OMAP2+: Drop legacy platform data for omap5 kbd
  ARM: OMAP2+: Drop legacy platform data for omap4 kbd
  ARM: OMAP2+: Drop legacy platform data for dra7 smartreflex
  ARM: OMAP2+: Drop legacy platform data for omap4 smartreflex
  ARM: OMAP2+: Drop legacy platform data for omap4 hsi
  ARM: OMAP2+: Drop legacy platform data for am4 vpfe
  ARM: OMAP2+: Drop legacy platform data for dra7 ocp2scp
  ARM: OMAP2+: Drop legacy platform data for omap5 ocp2scp
  ARM: OMAP2+: Drop legacy platform data for omap4 ocp2scp
  ARM: OMAP2+: Drop legacy platform data for am4 ocp2scp
  ...

Link: https://lore.kernel.org/r/pull-1578420398-290837@atomide.com-4
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoMerge branch 'omap/soc' into arm/dt
Olof Johansson [Tue, 7 Jan 2020 19:22:43 +0000 (11:22 -0800)]
Merge branch 'omap/soc' into arm/dt

Bringing in to resolve soc -> add/add conflicts locally

* omap/soc:
  ARM: OMAP2+: use separate IOMMU pdata to fix DRA7 IPU1 boot
  ARM: OMAP2+: omap-iommu.c conversion to ti-sysc
  ARM: OMAP2+: Add workaround for DRA7 DSP MStandby errata i879
  ARM: OMAP4+: remove pdata quirks for omap4+ iommus
  ARM: OMAP2+: pdata-quirks: add PRM data for reset support
  ARM: OMAP2+: am43xx: Add lcdc clockdomain
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoMerge tag 'omap-for-v5.6/ti-sysc-dt-signed' of git://git.kernel.org/pub/scm/linux...
Olof Johansson [Tue, 7 Jan 2020 19:16:51 +0000 (11:16 -0800)]
Merge tag 'omap-for-v5.6/ti-sysc-dt-signed' of git://git./linux/kernel/git/tmlind/linux-omap into arm/dt

dts changes for omaps for ti-sysc driver for v5.6 merge window

Devicetree changes for omaps to configure more devices to probe with
ti-sysc interconnect target module:

- Configure am4 qspi

- Configure aes, des and sham accelerators for am3, 4 and dra7

- Configure iommus for omap4, 5 and dra7

- Add a generic compatible for sdma, and configure omap2 and 3 sdma

* tag 'omap-for-v5.6/ti-sysc-dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (24 commits)
  ARM: dts: omap5: convert IOMMUs to use ti-sysc
  ARM: dts: omap4: convert IOMMUs to use ti-sysc
  ARM: dts: dra74x: convert IOMMUs to use ti-sysc
  ARM: dts: dra7: convert IOMMUs to use ti-sysc
  ARM: dts: Configure interconnect target module for dra7 des
  ARM: dts: Configure interconnect target module for am4 des
  ARM: dts: Configure interconnect target module for dra7 aes
  ARM: dts: Configure interconnect target module for am4 aes
  ARM: dts: Configure interconnect target module for am3 aes
  ARM: dts: Configure interconnect target module for dra7 sham
  ARM: dts: Configure interconnect target module for am4 sham
  ARM: dts: Configure interconnect target module for am3 sham
  ARM: dts: Configure interconnect target module for am4 qspi
  ARM: dts: Configure interconnect target module for omap3 sdma
  ARM: dts: Configure interconnect target module for omap2 sdma
  ARM: dts: Add generic compatible for omap sdma instances
  bus: ti-sysc: Fix iterating over clocks
  ARM: OMAP2+: Fix ti_sysc_find_one_clockdomain to check for to_clk_hw_omap
  bus: ti-sysc: Fix missing reset delay handling
  ARM: dts: am437x-gp/epos-evm: fix panel compatible
  ...

Link: https://lore.kernel.org/r/pull-1578420398-290837@atomide.com-3
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoMerge tag 'omap-for-v5.6/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel...
Olof Johansson [Tue, 7 Jan 2020 19:16:23 +0000 (11:16 -0800)]
Merge tag 'omap-for-v5.6/dt-signed' of git://git./linux/kernel/git/tmlind/linux-omap into arm/dt

Devicetree changes for omaps for v5.6 merge window

Devicetree changes for omaps for v5.6 to configure more
devices and update boards to use generic lcd panels:

- Configure HDMI for dra76-evm and am57xx-idk

- Correct node name for am3517 mdio

- Convert am335x-evm, am335x-evmsk, and am335x-icev2 to use generic
  panels

* tag 'omap-for-v5.6/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: dts: am335x-icev2: Add support for OSD9616P0899-10 at i2c0
  ARM: dts: am335x-evmsk: Use drm simple-panel instead of tilcdc-panel
  ARM: dts: am335x-evm: Use drm simple-panel instead of tilcdc-panel
  ARM: dts: omap3: name mdio node properly
  ARM: dts: am57xx-idk-common: add HDMI to the common dtsi
  ARM: dts: dra76-evm: add HDMI output

Link: https://lore.kernel.org/r/pull-1578420398-290837@atomide.com-2
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoARM: dts: bcm2711: Enable HWRNG support
Stephen Brennan [Wed, 20 Nov 2019 03:16:22 +0000 (19:16 -0800)]
ARM: dts: bcm2711: Enable HWRNG support

This enables hardware random number generator support for the BCM2711
on the Raspberry Pi 4 board.

Signed-off-by: Stephen Brennan <stephen@brennan.io>
Acked-by: Stefan Wahren <wahrenst@gmx.net>
[nsaenzjulienne@suse.de: remove unnecessary status="okay"]
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
4 years agoARM: dts: bcm2835: Move rng definition to common location
Stephen Brennan [Wed, 20 Nov 2019 03:16:21 +0000 (19:16 -0800)]
ARM: dts: bcm2835: Move rng definition to common location

BCM2711 inherits from BCM283X, but has an incompatible HWRNG. Move this
node to bcm2835-common.dtsi, so that BCM2711 can define its own.

Signed-off-by: Stephen Brennan <stephen@brennan.io>
Acked-by: Stefan Wahren <wahrenst@gmx.net>
Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
4 years agoMerge branch 'mmp/hsic' into arm/dt
Olof Johansson [Mon, 6 Jan 2020 19:15:03 +0000 (11:15 -0800)]
Merge branch 'mmp/hsic' into arm/dt

* mmp/hsic:
  ARM: dts: mmp3: Fix typos

4 years agoARM: dts: mmp3: Fix typos
Olof Johansson [Mon, 6 Jan 2020 19:14:10 +0000 (11:14 -0800)]
ARM: dts: mmp3: Fix typos

Fixes build failures due to syntax errors.

Fixes: 3240d5b872f2 ("ARM: dts: mmp3: Add HSIC controllers")
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoMerge branch 'mmp/hsic' into arm/dt
Olof Johansson [Mon, 6 Jan 2020 17:33:53 +0000 (09:33 -0800)]
Merge branch 'mmp/hsic' into arm/dt

* mmp/hsic:
  ARM: dts: mmp3-dell-ariel: Enable the HSIC
  ARM: dts: mmp3: Add HSIC controllers
  dt-bindings: phy: Add binding for marvell,mmp3-hsic-phy
  clk: mmp2: Add HSIC clocks
  dt-bindings: marvell,mmp2: Add clock ids for the HSIC clocks
  + Linux 5.5-rc2

4 years agoARM: dts: mmp3-dell-ariel: Enable the HSIC
Lubomir Rintel [Fri, 20 Dec 2019 06:53:14 +0000 (07:53 +0100)]
ARM: dts: mmp3-dell-ariel: Enable the HSIC

There's a SMSC USB2640 (USB hub & SD controller) connected to it, but
the SD card slot footprint is unpopulated. Also connected to the hub is
a SMSC LAN7500 gigabit ethernet adapter.

Link: https://lore.kernel.org/r/20191220065314.237624-6-lkundrak@v3.sk
Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoARM: dts: mmp3: Add HSIC controllers
Lubomir Rintel [Fri, 20 Dec 2019 06:53:13 +0000 (07:53 +0100)]
ARM: dts: mmp3: Add HSIC controllers

There are two on MMP3, along with the PHYs. The PHYs are made compatible
with the NOP transceiver, since there's no driver for the time being and
they're likely configured by the firmware.

Link: https://lore.kernel.org/r/20191220065314.237624-5-lkundrak@v3.sk
Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
Reported-by: kbuild test robot <lkp@intel.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agodt-bindings: phy: Add binding for marvell,mmp3-hsic-phy
Lubomir Rintel [Fri, 20 Dec 2019 06:53:12 +0000 (07:53 +0100)]
dt-bindings: phy: Add binding for marvell,mmp3-hsic-phy

This is the PHY chip for USB HSIC on MMP3 platform.

Link: https://lore.kernel.org/r/20191220065314.237624-4-lkundrak@v3.sk
Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoclk: mmp2: Add HSIC clocks
Lubomir Rintel [Fri, 20 Dec 2019 06:53:11 +0000 (07:53 +0100)]
clk: mmp2: Add HSIC clocks

There are two USB HSIC controllers on MMP2 and MMP3.

Link: https://lore.kernel.org/r/20191220065314.237624-3-lkundrak@v3.sk
Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
Acked-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agodt-bindings: marvell,mmp2: Add clock ids for the HSIC clocks
Lubomir Rintel [Fri, 20 Dec 2019 06:53:10 +0000 (07:53 +0100)]
dt-bindings: marvell,mmp2: Add clock ids for the HSIC clocks

There are two USB HSIC controllers on MMP2 and MMP3.

Link: https://lore.kernel.org/r/20191220065314.237624-2-lkundrak@v3.sk
Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
Acked-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoMerge tag 'renesas-dt-bindings-for-v5.6-tag1' of git://git.kernel.org/pub/scm/linux...
Olof Johansson [Mon, 6 Jan 2020 17:29:29 +0000 (09:29 -0800)]
Merge tag 'renesas-dt-bindings-for-v5.6-tag1' of git://git./linux/kernel/git/geert/renesas-devel into arm/dt

Renesas DT binding updates for v5.6

  - Document TMU and CAN(FD) support for R-Car RZ/G2N.

* tag 'renesas-dt-bindings-for-v5.6-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  dt-bindings: can: rcar_canfd: document r8a774b1 support
  dt-bindings: can: rcar_can: document r8a774b1 support
  dt-bindings: timer: renesas: tmu: Document r8a774b1 bindings

Link: https://lore.kernel.org/r/20200106104857.8361-6-geert+renesas@glider.be
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoMerge tag 'renesas-arm64-dt-for-v5.6-tag1' of git://git.kernel.org/pub/scm/linux...
Olof Johansson [Mon, 6 Jan 2020 17:28:56 +0000 (09:28 -0800)]
Merge tag 'renesas-arm64-dt-for-v5.6-tag1' of git://git./linux/kernel/git/geert/renesas-devel into arm/dt

Renesas ARM64 DT updates for v5.6

  - Remove now unused ARCH_R8A7796 config symbol,
  - Rename R-Car H3 and M3-W SoC, and ULCB board DTS files to increase
    naming consistency,
  - Miscellaneous fixes for issues detected by "make dtbs_check",
  - Enhance support for R-Car M3-W+,
  - Display support for the EK874 board,
  - Prepare for split of R-Car H3 ES1.x and ES2.0+ config symbols,
  - Minor fixes and improvements.

* tag 'renesas-arm64-dt-for-v5.6-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  arm64: dts: renesas: Prepare for split of ARCH_R8A7795 into ARCH_R8A7795[01]
  arm64: dts: renesas: Sort DTBs in Makefile
  arm64: dts: renesas: Drop redundant SoC prefixes from ULCB DTS file names
  arm64: dts: renesas: Rename r8a7795{-es1,}* to r8a7795[01]*
  arm64: dts: renesas: Add EK874 board with idk-2121wr display support
  arm64: dts: renesas: r8a77961: Add SDHI nodes
  arm64: dts: renesas: r8a77961: Add I2C nodes
  arm64: dts: renesas: r8a77961: Add SYS-DMAC nodes
  arm64: dts: renesas: r8a77961: Add RAVB node
  arm64: dts: renesas: r8a77961: Add GPIO nodes
  arm64: dts: renesas: r8a77961: Add RWDT node
  arm64: dts: renesas: r8a77990: ebisu: Remove clkout-lr-synchronous from sound
  arm64: dts: renesas: r8a77970: Group tuples in thermal reg property
  arm64: dts: renesas: Group tuples in pci ranges and dma-ranges properties
  arm64: dts: renesas: Group tuples in interrupt properties
  arm64: dts: renesas: Group tuples in regulator-gpio states properties
  arm64: dts: renesas: Rename r8a7796* to r8a77960*
  arm64: dts: renesas: Remove use of ARCH_R8A7796

Link: https://lore.kernel.org/r/20200106104857.8361-4-geert+renesas@glider.be
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoMerge tag 'renesas-arm-dt-for-v5.6-tag1' of git://git.kernel.org/pub/scm/linux/kernel...
Olof Johansson [Mon, 6 Jan 2020 17:28:00 +0000 (09:28 -0800)]
Merge tag 'renesas-arm-dt-for-v5.6-tag1' of git://git./linux/kernel/git/geert/renesas-devel into arm/dt

Renesas ARM DT updates for v5.6

  - Touch screen support for the iwg20d board,
  - ARM global timer support on Cortex-A9 MPCore SoCs,
  - Miscellaneous fixes for issues detected by "make dtbs_check".

* tag 'renesas-arm-dt-for-v5.6-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel:
  ARM: dts: sh73a0: Add missing clock-frequency for fixed clocks
  ARM: dts: r8a7778: Add missing clock-frequency for fixed clocks
  ARM: dts: rcar-gen2: Add missing mmio-sram bus properties
  ARM: dts: rcar-gen2: Fix PCI high address in interrupt-map-mask
  ARM: dts: renesas: Group tuples in pci ranges and dma-ranges properties
  ARM: dts: renesas: Group tuples in interrupt properties
  ARM: dts: renesas: Group tuples in regulator-gpio states properties
  ARM: dts: r8a7779: Add device node for ARM global timer
  ARM: dts: sh73a0: Add device node for ARM global timer
  ARM: dts: sh73a0: Rename twd clock to periph clock
  ARM: dts: iwg20d-q7-common: Add LCD support

Link: https://lore.kernel.org/r/20200106104857.8361-3-geert+renesas@glider.be
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoMerge tag 'ux500-armsoc-v5.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git...
Olof Johansson [Mon, 6 Jan 2020 17:22:26 +0000 (09:22 -0800)]
Merge tag 'ux500-armsoc-v5.6-2' of git://git./linux/kernel/git/linusw/linux-stericsson into arm/dt

Support the Samsung GT-I8190/Golden phone:

- Proper include file for the AB8505 PMIC variant.
- Add a DTS file for the GT-I8190/Golden
- Extend the IMU, touch screen, WiFi and Bluetooth
  as separate patches.

* tag 'ux500-armsoc-v5.6-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson:
  ARM: dts: ux500: samsung-golden: Add Bluetooth
  ARM: dts: ux500: samsung-golden: Add WiFi
  ARM: dts: ux500: samsung-golden: Add touch screen
  ARM: dts: ux500: samsung-golden: Add IMU (accelerometer + gyroscope)
  ARM: dts: ux500: Add device tree for Samsung Galaxy S III mini (GT-I8190)
  dt-bindings: arm: ux500: Document samsung,golden compatible
  ARM: dts: ux500: Add device tree include for AB8505
  ARM: dts: ux500: Remove unused ste-href-ab8505.dtsi

Link: https://lore.kernel.org/r/CACRpkdaN2Lv_rBEYNiyAarA81yea6Eky8w_htqZqdRng8S-DcA@mail.gmail.com
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoarm64: dts: Add Unisoc's SC9863A SoC support
Chunyan Zhang [Mon, 23 Dec 2019 09:29:48 +0000 (17:29 +0800)]
arm64: dts: Add Unisoc's SC9863A SoC support

Add basic DT to support Unisoc's SC9863A, with this patch,
the board sp9863a-1h10 can run into console.

Link: https://lore.kernel.org/r/20191223092948.24824-4-zhang.lyra@gmail.com
Signed-off-by: Chunyan Zhang <chunyan.zhang@unisoc.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoarm64: dts: hi3798cv200-poplar: add linux,rc-map-name for IR
Shawn Guo [Thu, 26 Dec 2019 08:38:44 +0000 (16:38 +0800)]
arm64: dts: hi3798cv200-poplar: add linux,rc-map-name for IR

It adds remote control map name for IR device, so that key event can be
reported.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Wei Xu <xuwei5@hisilicon.com>
4 years agoARM: dts: sh73a0: Add missing clock-frequency for fixed clocks
Geert Uytterhoeven [Fri, 13 Dec 2019 16:27:36 +0000 (17:27 +0100)]
ARM: dts: sh73a0: Add missing clock-frequency for fixed clocks

"clock-frequency" is a required property for devices nodes compatible
with "fixed-clock", leading to warnings when running

    $ make dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/clock/fixed-clock.yaml
    arch/arm/boot/dts/sh73a0-kzm9g.dt.yaml: extcki: 'clock-frequency' is a required property

Fix this by adding the missing "clock-frequency" properties to the various
clocks, to be overridden by the board DTS files when populated.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20191213162736.2160-1-geert+renesas@glider.be
4 years agoARM: dts: r8a7778: Add missing clock-frequency for fixed clocks
Geert Uytterhoeven [Fri, 13 Dec 2019 16:27:12 +0000 (17:27 +0100)]
ARM: dts: r8a7778: Add missing clock-frequency for fixed clocks

"clock-frequency" is a required property for devices nodes compatible
with "fixed-clock", leading to warnings when running

    $ make dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/clock/fixed-clock.yaml
    arch/arm/boot/dts/r8a7778-bockw.dt.yaml: audio_clk_a: 'clock-frequency' is a required property
    arch/arm/boot/dts/r8a7778-bockw.dt.yaml: audio_clk_b: 'clock-frequency' is a required property
    arch/arm/boot/dts/r8a7778-bockw.dt.yaml: audio_clk_c: 'clock-frequency' is a required property

Fix this by adding the missing "clock-frequency" properties to the audio
clocks, to be overridden by board DTS files when populated.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20191213162712.2056-1-geert+renesas@glider.be
4 years agoARM: dts: rcar-gen2: Add missing mmio-sram bus properties
Geert Uytterhoeven [Fri, 13 Dec 2019 16:26:04 +0000 (17:26 +0100)]
ARM: dts: rcar-gen2: Add missing mmio-sram bus properties

"#address-cells", "#size-cells", and "ranges" are required properties
for devices nodes compatible with "mmio-sram", leading to warnings when
running "make dtbs_check":

    $ make dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/sram/sram.yaml
    arch/arm/boot/dts/r8a7791-koelsch.dt.yaml: sram@e63a0000: '#address-cells' is a required property
    arch/arm/boot/dts/r8a7791-koelsch.dt.yaml: sram@e63a0000: '#size-cells' is a required property
    arch/arm/boot/dts/r8a7791-koelsch.dt.yaml: sram@e63a0000: 'ranges' is a required property
    ...

Fix this by adding the missing properties to the mmio-sram device nodes
in the DTS files for all affected R-Car Gen2 and RZ/G1 SoCs.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20191213162604.1890-1-geert+renesas@glider.be
4 years agoARM: dts: rcar-gen2: Fix PCI high address in interrupt-map-mask
Geert Uytterhoeven [Fri, 13 Dec 2019 16:24:59 +0000 (17:24 +0100)]
ARM: dts: rcar-gen2: Fix PCI high address in interrupt-map-mask

"make dtbs_check" emits warnings like:

    pci@ee090000: interrupt-map-mask:0:0: 65280 is greater than the maximum of 63488
    pci@ee0b0000: interrupt-map-mask:0:0: 65280 is greater than the maximum of 63488
    pci@ee0d0000: interrupt-map-mask:0:0: 65280 is greater than the maximum of 63488

According to dt-schemas/schemas/pci/pci-bus.yaml, the PCI high address
cell value in the "interrupt-map-mask" property must lie in the range
0..0xf800.

Fix this by correcting the values from 0xff00 to 0xf800 in all affected
R-Car Gen2 and RZ/G1 DTS files.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20191213162459.1731-1-geert+renesas@glider.be
4 years agoarm64: dts: renesas: Prepare for split of ARCH_R8A7795 into ARCH_R8A7795[01]
Geert Uytterhoeven [Tue, 17 Dec 2019 18:38:40 +0000 (19:38 +0100)]
arm64: dts: renesas: Prepare for split of ARCH_R8A7795 into ARCH_R8A7795[01]

As R-Car H3 ES1.x (R8A77950) and R-Car H3 ES2.0+ (R8A77951) are really
different SoCs, CONFIG_ARCH_R8A7795 will be split in
CONFIG_ARCH_R8A77950 and CONFIG_ARCH_R8A77951.

Relax dependencies by handling both the old and the new symbols.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Tested-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Link: https://lore.kernel.org/r/20191217183841.432-5-geert+renesas@glider.be
4 years agoarm64: dts: renesas: Sort DTBs in Makefile
Geert Uytterhoeven [Tue, 17 Dec 2019 18:38:39 +0000 (19:38 +0100)]
arm64: dts: renesas: Sort DTBs in Makefile

Sort the entries for the various DTBs in the Makefile by SoC and board
type.  Keep Salvator-X(S) together, and do the same for ULCB with and
without Kingfisher extension.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Tested-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Link: https://lore.kernel.org/r/20191217183841.432-4-geert+renesas@glider.be
4 years agoarm64: dts: renesas: Drop redundant SoC prefixes from ULCB DTS file names
Geert Uytterhoeven [Tue, 17 Dec 2019 18:38:38 +0000 (19:38 +0100)]
arm64: dts: renesas: Drop redundant SoC prefixes from ULCB DTS file names

Unlike the V3MSK and V3HSK boards, the various "ULCB" boards are really
the same boards, with different SiPs fitted, just like the Salvator-X(S)
boards.  Furthermore, the "H3", "M3", and "M3N" prefixes of the "ULCB"
parts in the DTS file names are redundant, as they are implied by the
SoC part numbers, which are also part of the file names.

Hence drop the redundant prefixes, to make the DTS file names consistent
with the file names for the various "Salvator-X(S)" boards.

Suggested-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Tested-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Link: https://lore.kernel.org/r/20191217183841.432-3-geert+renesas@glider.be
4 years agoarm64: dts: renesas: Rename r8a7795{-es1,}* to r8a7795[01]*
Geert Uytterhoeven [Tue, 17 Dec 2019 18:38:37 +0000 (19:38 +0100)]
arm64: dts: renesas: Rename r8a7795{-es1,}* to r8a7795[01]*

Despite using the same compatible values ("r8a7795"-based) because of
historical reasons, R-Car H3 ES1.x (R8A77950) and R-Car H3 ES2.0+
(R8A77951) are really different SoCs, with different part numbers.

Reflect this in the DTS files by changing their base names from
"r8a7795-es1" and "r8a7795" to "r8a77950" resp. "r8a77951".
Drop all "ES" references next to part numbers, as they are implied by
the part numbers, and thus redundant.

Note that DT binding headers, definitions, and compatible values are
not renamed, to preserve backward compatibility.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Tested-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Link: https://lore.kernel.org/r/20191217183841.432-2-geert+renesas@glider.be
4 years agoMerge branch 'omap-for-v5.6/sdma' into omap-for-v5.6/ti-sysc-drop-pdata
Tony Lindgren [Mon, 30 Dec 2019 18:17:51 +0000 (10:17 -0800)]
Merge branch 'omap-for-v5.6/sdma' into omap-for-v5.6/ti-sysc-drop-pdata

4 years agoMerge tag 'sdma-dts' into omap-for-v5.6/ti-sysc-dt
Tony Lindgren [Mon, 30 Dec 2019 18:01:16 +0000 (10:01 -0800)]
Merge tag 'sdma-dts' into omap-for-v5.6/ti-sysc-dt

4 years agoARM: OMAP2+: Drop legacy platform data for sdma
Tony Lindgren [Tue, 10 Dec 2019 16:10:31 +0000 (08:10 -0800)]
ARM: OMAP2+: Drop legacy platform data for sdma

We can now probe devices with ti-sysc interconnect driver and dts
data. Let's drop the related platform data and custom ti,hwmods
dts property.

As we're just dropping data, and the early platform data init
is based on the custom ti,hwmods property, we want to drop both
the platform data and ti,hwmods property in a single patch.

Cc: Aaro Koskinen <aaro.koskinen@iki.fi>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: Russell King <rmk+kernel@armlinux.org.uk>
Cc: Vinod Koul <vkoul@kernel.org>
Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Tested-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agoARM: OMAP2+: Drop legacy init for sdma
Tony Lindgren [Mon, 16 Dec 2019 22:41:53 +0000 (14:41 -0800)]
ARM: OMAP2+: Drop legacy init for sdma

We can now drop legacy init for sdma as we pass the quirks in auxdata to
the dmaengine driver.

Cc: Aaro Koskinen <aaro.koskinen@iki.fi>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: Russell King <rmk+kernel@armlinux.org.uk>
Cc: Vinod Koul <vkoul@kernel.org>
Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Tested-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agodmaengine: ti: omap-dma: Use cpu notifier to block idle for omap2
Tony Lindgren [Mon, 16 Dec 2019 22:41:53 +0000 (14:41 -0800)]
dmaengine: ti: omap-dma: Use cpu notifier to block idle for omap2

For omap2, we need to block idle if SDMA is busy. Let's do this with a
cpu notifier and remove the custom call.

Cc: Aaro Koskinen <aaro.koskinen@iki.fi>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: Russell King <rmk+kernel@armlinux.org.uk>
Cc: Vinod Koul <vkoul@kernel.org>
Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Tested-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Acked-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agodmaengine: ti: omap-dma: Allocate channels directly
Tony Lindgren [Mon, 16 Dec 2019 22:41:53 +0000 (14:41 -0800)]
dmaengine: ti: omap-dma: Allocate channels directly

With the legacy IRQ handling gone, we can now start allocating channels
directly in the dmaengine driver for device tree based SoCs.

Cc: Aaro Koskinen <aaro.koskinen@iki.fi>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: Russell King <rmk+kernel@armlinux.org.uk>
Cc: Vinod Koul <vkoul@kernel.org>
Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Tested-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Acked-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agodmaengine: ti: omap-dma: Pass sdma auxdata to driver and use it
Tony Lindgren [Mon, 16 Dec 2019 22:41:53 +0000 (14:41 -0800)]
dmaengine: ti: omap-dma: Pass sdma auxdata to driver and use it

We can now start passing sdma auxdata to the dmaengine driver to start
removing the platform based sdma init.

Cc: Aaro Koskinen <aaro.koskinen@iki.fi>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: Russell King <rmk+kernel@armlinux.org.uk>
Cc: Vinod Koul <vkoul@kernel.org>
Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Tested-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Acked-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agodmaengine: ti: omap-dma: Configure global priority register directly
Tony Lindgren [Mon, 16 Dec 2019 22:41:53 +0000 (14:41 -0800)]
dmaengine: ti: omap-dma: Configure global priority register directly

We can move the global priority register configuration to the dmaengine
driver and configure it based on the of_device_id match data.

Cc: Aaro Koskinen <aaro.koskinen@iki.fi>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: Russell King <rmk+kernel@armlinux.org.uk>
Cc: Vinod Koul <vkoul@kernel.org>
Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Tested-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Acked-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agoARM: dts: ux500: samsung-golden: Add Bluetooth
Stephan Gerhold [Thu, 19 Dec 2019 20:20:51 +0000 (21:20 +0100)]
ARM: dts: ux500: samsung-golden: Add Bluetooth

samsung-golden uses a BCM4334 WiFi+BT combo chip.
The BT part is connected via UART and supported by the hci_bcm
driver in mainline.
Add the necessary device tree changes to make it load correctly.

It requires (seemingly) device-specific firmware that can be
extracted from the stock Android system used on samsung-golden:
  - /system/bin/bcm4334.hcd -> /lib/firmware/brcm/BCM4334B0.hcd

On my device, scanning for other Bluetooth devices works just fine,
but for some reason it keeps disconnecting immediately
when attempting to connect to an other device.

Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Link: https://lore.kernel.org/r/20191219202052.19039-9-stephan@gerhold.net
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
4 years agoARM: dts: ux500: samsung-golden: Add WiFi
Stephan Gerhold [Thu, 19 Dec 2019 20:20:50 +0000 (21:20 +0100)]
ARM: dts: ux500: samsung-golden: Add WiFi

samsung-golden uses a BCM4334 WiFi+BT combo chip, connected to SDIO.
It is supported by the brcmfmac driver in mainline,
so we only need to set up the device tree to make it work correctly.

Note: brcmfmac requires (proprietary) firmware + a device-specific
NVRAM file. Both can be extracted from the stock Android system
used on samsung-golden:
  - /system/etc/wifi/bcmdhd_sta.bin_b2   -> /lib/firmware/brcm/brcmfmac4334-sdio.bin
  - /system/etc/wifi/nvram_net.txt_GPIO4 -> /lib/firmware/brcm/brcmfmac4334-sdio.samsung,golden.txt

brcmfmac4334-sdio.bin from linux-firmware also seems to work,
but results in occasional errors for some reason.

Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Link: https://lore.kernel.org/r/20191219202052.19039-8-stephan@gerhold.net
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
4 years agoARM: dts: ux500: samsung-golden: Add touch screen
Stephan Gerhold [Thu, 19 Dec 2019 20:20:49 +0000 (21:20 +0100)]
ARM: dts: ux500: samsung-golden: Add touch screen

samsung-golden has an Atmel mXT224S touch controller connected to I2C.
It is supported by the existing driver for atmel,maxtouch, so all we
need to do to make it work is to define the necessary device tree nodes.

The atmel_mxt_ts driver does not support controlling regulators yet,
so add regulator-always-on for now to turn on the necessary regulators.

Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Link: https://lore.kernel.org/r/20191219202052.19039-7-stephan@gerhold.net
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
4 years agoARM: dts: ux500: samsung-golden: Add IMU (accelerometer + gyroscope)
Stephan Gerhold [Thu, 19 Dec 2019 20:20:48 +0000 (21:20 +0100)]
ARM: dts: ux500: samsung-golden: Add IMU (accelerometer + gyroscope)

samsung-golden has a InvenSense MPU-6051M IMU that provides an
accelerometer and gyroscope. It seems to be functionally compatible
with MPU-6050 so we can easily enable it by adding the necessary
device tree nodes.

Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Link: https://lore.kernel.org/r/20191219202052.19039-6-stephan@gerhold.net
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
4 years agoARM: dts: ux500: Add device tree for Samsung Galaxy S III mini (GT-I8190)
Stephan Gerhold [Thu, 19 Dec 2019 20:20:47 +0000 (21:20 +0100)]
ARM: dts: ux500: Add device tree for Samsung Galaxy S III mini (GT-I8190)

The Samsung Galaxy S III mini (GT-I8190) is a smartphone with Ux500 SoC
released in 2012. Thanks to the great mainline support for Ux500,
it can actually run mainline Linux quite well.

Add a new device tree for it with support for:
  - Internal Storage (eMMC)
  - External Storage (Micro SD card)
  - UART
  - GPIO Buttons
  - Vibrator

Note that the device tree cannot be booted directly with
the original (Samsung) bootloader. It keeps the L2 cache turned on,
which causes the kernel to hang shortly after decompression.

As a workaround I have created a port of (mainline) U-Boot,
which locks the L2 cache before booting Linux. At the moment it does not
replace the Samsung bootloader, instead we let the original bootloader
load U-Boot as an another (intermediate) bootloader.

Another advantage of this is that U-Boot has proper device tree support,
so we do not need to hardcode the kernel command line in the device tree.

Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Link: https://lore.kernel.org/r/20191219202052.19039-5-stephan@gerhold.net
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
4 years agodt-bindings: arm: ux500: Document samsung,golden compatible
Stephan Gerhold [Thu, 19 Dec 2019 20:20:46 +0000 (21:20 +0100)]
dt-bindings: arm: ux500: Document samsung,golden compatible

The Samsung Galaxy S III mini ("samsung-golden") can now boot
mainline Linux; document the samsung,golden compatible that is
used in its device tree.

Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Link: https://lore.kernel.org/r/20191219202052.19039-4-stephan@gerhold.net
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
4 years agoARM: dts: ux500: Add device tree include for AB8505
Stephan Gerhold [Thu, 19 Dec 2019 20:20:45 +0000 (21:20 +0100)]
ARM: dts: ux500: Add device tree include for AB8505

AB8505 is a slightly newer version of AB8500.
Overall it is quite similar, but there are some differences like
the number of GPIOs and regulators. Therefore we need a separate
device tree definition for devices making use of AB8505.

The AB8500-specific nodes were moved out of ste-dbx5x0.dtsi in
commit a46f7c6762d8 ("ARM: dts: ux500: Move ab8500 nodes to ste-ab8500.dtsi").
Add a new "ste-ab8505.dtsi" device tree include in a similar way.

Keep the battery/charging related sub-devices disabled by default
since they require additional configuration to work correctly.

Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Link: https://lore.kernel.org/r/20191219202052.19039-3-stephan@gerhold.net
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
4 years agoARM: dts: ux500: Remove unused ste-href-ab8505.dtsi
Stephan Gerhold [Thu, 19 Dec 2019 20:20:44 +0000 (21:20 +0100)]
ARM: dts: ux500: Remove unused ste-href-ab8505.dtsi

The pin configuration for HREF boards with AB8505 was added in
commit 77ad9dfc2c7e ("ARM: ux500: move last AB8505 set-up to DT").
As the commit message notes, it was unused back then and it has
remained so even today, especially considering AB8505 did not have
proper device tree support until recently.

We are now preparing to add support for some Samsung smartphones
that are using AB8505. However, they use different pin configs
because using ste-href-ab8505.dtsi is known to break UART.
There were not many HREFs with AB8505, so at this point it seems
unlikely that we will ever make use of this include. Remove it.

Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Link: https://lore.kernel.org/r/20191219202052.19039-2-stephan@gerhold.net
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
4 years agoarm64: dts: renesas: Add EK874 board with idk-2121wr display support
Fabrizio Castro [Tue, 17 Dec 2019 13:46:01 +0000 (13:46 +0000)]
arm64: dts: renesas: Add EK874 board with idk-2121wr display support

The EK874 is advertised as compatible with panel IDK-2121WR from
Advantech, however the panel isn't sold alongside the board.
A new dts, adding everything that's required to get the panel to
to work with the EK874, is the most convenient way to support the
EK874 when it's connected to the IDK-2121WR.

Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Link: https://lore.kernel.org/r/1576590361-28244-7-git-send-email-fabrizio.castro@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
4 years agoarm64: dts: renesas: r8a77961: Add SDHI nodes
Geert Uytterhoeven [Mon, 16 Dec 2019 12:47:40 +0000 (13:47 +0100)]
arm64: dts: renesas: r8a77961: Add SDHI nodes

Add device nodes for the SDHI Interfaces on the Renesas R-Car M3-W+
(r8a77961) SoC.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Tested-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Link: https://lore.kernel.org/r/20191216124740.16647-7-geert+renesas@glider.be
4 years agoarm64: dts: renesas: r8a77961: Add I2C nodes
Geert Uytterhoeven [Mon, 16 Dec 2019 12:47:39 +0000 (13:47 +0100)]
arm64: dts: renesas: r8a77961: Add I2C nodes

Add device nodes for the I2C and IIC Controllers on the Renesas R-Car
M3-W+ (r8a77961) SoC, including DMA properties linking them to the DMA
controllers.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Tested-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Link: https://lore.kernel.org/r/20191216124740.16647-6-geert+renesas@glider.be
4 years agoarm64: dts: renesas: r8a77961: Add SYS-DMAC nodes
Geert Uytterhoeven [Mon, 16 Dec 2019 12:47:38 +0000 (13:47 +0100)]
arm64: dts: renesas: r8a77961: Add SYS-DMAC nodes

Add device nodes for the System DMA Controllers (SYS-DMAC) on the
Renesas R-Car M3-W+ (r8a77961) SoC.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Link: https://lore.kernel.org/r/20191216124740.16647-5-geert+renesas@glider.be
4 years agoarm64: dts: renesas: r8a77961: Add RAVB node
Geert Uytterhoeven [Mon, 16 Dec 2019 12:47:37 +0000 (13:47 +0100)]
arm64: dts: renesas: r8a77961: Add RAVB node

Add a device node for the Ethernet AVB (RAVB) interface on the Renesas
R-Car M3-W+ (r8a77961) SoC.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Tested-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Link: https://lore.kernel.org/r/20191216124740.16647-4-geert+renesas@glider.be
4 years agoarm64: dts: renesas: r8a77961: Add GPIO nodes
Geert Uytterhoeven [Mon, 16 Dec 2019 12:47:36 +0000 (13:47 +0100)]
arm64: dts: renesas: r8a77961: Add GPIO nodes

Add device nodes for the GPIO controllers on the Renesas R-Car M3-W+
(r8a77961) SoC.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Tested-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Link: https://lore.kernel.org/r/20191216124740.16647-3-geert+renesas@glider.be
4 years agoarm64: dts: renesas: r8a77961: Add RWDT node
Geert Uytterhoeven [Mon, 16 Dec 2019 12:47:35 +0000 (13:47 +0100)]
arm64: dts: renesas: r8a77961: Add RWDT node

Add a device node for the RCLK Watchdog Timer (RWDT) on the Renesas
R-Car M3-W+ (r8a77961) SoC.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Tested-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Link: https://lore.kernel.org/r/20191216124740.16647-2-geert+renesas@glider.be
4 years agoarm64: dts: renesas: r8a77990: ebisu: Remove clkout-lr-synchronous from sound
Kuninori Morimoto [Mon, 16 Dec 2019 02:08:22 +0000 (11:08 +0900)]
arm64: dts: renesas: r8a77990: ebisu: Remove clkout-lr-synchronous from sound

rcar_sound doesn't support clkout-lr-synchronous in upstream.
It was supported under out-of-tree rcar_sound.
upstream rcar_sound is supporting
- clkout-lr-synchronous
+ clkout-lr-asynchronous

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Link: https://lore.kernel.org/r/87mubt3tux.wl-kuninori.morimoto.gx@renesas.com
Fixes: 56629fcba94c698d ("arm64: dts: renesas: ebisu: Enable Audio")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
4 years agoarm64: dts: renesas: r8a77970: Group tuples in thermal reg property
Geert Uytterhoeven [Fri, 13 Dec 2019 16:41:15 +0000 (17:41 +0100)]
arm64: dts: renesas: r8a77970: Group tuples in thermal reg property

To improve human readability and enable automatic validation, the tuples
in "reg" properties should be grouped.

Fix this by grouping the tuples in the thermal node's "reg" property
using angle brackets.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20191213164115.3697-9-geert+renesas@glider.be
Reviewed-by: Ulrich Hecht <uli+renesas@fpond.eu>
4 years agoarm64: dts: renesas: Group tuples in pci ranges and dma-ranges properties
Geert Uytterhoeven [Fri, 13 Dec 2019 16:41:14 +0000 (17:41 +0100)]
arm64: dts: renesas: Group tuples in pci ranges and dma-ranges properties

To improve human readability and enable automatic validation, the tuples
in the "ranges" and "dma-ranges" properties of PCI device nodes should
be grouped.

Fix this by grouping the tuples of the "ranges" and "dma-ranges"
properties using angle brackets.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20191213164115.3697-8-geert+renesas@glider.be
Reviewed-by: Ulrich Hecht <uli+renesas@fpond.eu>
4 years agoarm64: dts: renesas: Group tuples in interrupt properties
Geert Uytterhoeven [Fri, 13 Dec 2019 16:41:13 +0000 (17:41 +0100)]
arm64: dts: renesas: Group tuples in interrupt properties

To improve human readability and enable automatic validation, the tuples
in the various properties containing interrupt specifiers should be
grouped.  While "make dtbs_check" does not impose this yet for the
"interrupts" property, it does for the "interrupt-map" property.

Fix this by grouping the tuples of the "interrupts" and "interrupt-map"
properties using angle brackets.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20191213164115.3697-7-geert+renesas@glider.be
Reviewed-by: Ulrich Hecht <uli+renesas@fpond.eu>
4 years agoarm64: dts: renesas: Group tuples in regulator-gpio states properties
Geert Uytterhoeven [Fri, 13 Dec 2019 16:41:12 +0000 (17:41 +0100)]
arm64: dts: renesas: Group tuples in regulator-gpio states properties

To improve human readability and enable automatic validation, the tuples
in the "states" properties of device nodes compatible with
"regulator-gpio" should be grouped, as reported by "make dtbs_check":

    $ make dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/regulator/gpio-regulator.yaml
    arch/arm64/boot/dts/renesas/r8a7795-salvator-x.dt.yaml: regulator-vccq-sdhi0: states:0: Additional items are not allowed (1800000, 0 were unexpected)
    arch/arm64/boot/dts/renesas/r8a7795-salvator-x.dt.yaml: regulator-vccq-sdhi0: states:0: [3300000, 1, 1800000, 0] is too long
    arch/arm64/boot/dts/renesas/r8a7795-salvator-x.dt.yaml: regulator-vccq-sdhi3: states:0: Additional items are not allowed (1800000, 0 were unexpected)
    arch/arm64/boot/dts/renesas/r8a7795-salvator-x.dt.yaml: regulator-vccq-sdhi3: states:0: [3300000, 1, 1800000, 0] is too long
    ...

Fix this by grouping the tuples using angle brackets.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20191213164115.3697-6-geert+renesas@glider.be
Reviewed-by: Ulrich Hecht <uli+renesas@fpond.eu>
4 years agoARM: dts: renesas: Group tuples in pci ranges and dma-ranges properties
Geert Uytterhoeven [Fri, 13 Dec 2019 16:41:11 +0000 (17:41 +0100)]
ARM: dts: renesas: Group tuples in pci ranges and dma-ranges properties

To improve human readability and enable automatic validation, the tuples
in the "ranges" and "dma-ranges" properties of PCI devices nodes should
be grouped.  Not doing so causes "make dtbs_check" to emit warnings
like:

    pcie@fe000000: dma-ranges: [[1107296256, 0, 1073741824, 0, 1073741824, 0, 21474836481124073472, 2, 0, 2, 0, 1, 0]] is not valid under any of the given schemas (Possible causes of the failure):
    pcie@fe000000: dma-ranges: [[1107296256, 0, 1073741824, 0, 1073741824, 0, 21474836481124073472, 2, 0, 2, 0, 1, 0]] is not of type 'boolean'
    pcie@fe000000: dma-ranges:0: [1107296256, 0, 1073741824, 0, 1073741824, 0, 21474836481124073472, 2, 0, 2, 0, 1, 0] is too long

Fix this by grouping the tuples of the "ranges" and "dma-ranges"
properties using angle brackets.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20191213164115.3697-5-geert+renesas@glider.be
Reviewed-by: Ulrich Hecht <uli+renesas@fpond.eu>
4 years agoARM: dts: renesas: Group tuples in interrupt properties
Geert Uytterhoeven [Fri, 13 Dec 2019 16:41:10 +0000 (17:41 +0100)]
ARM: dts: renesas: Group tuples in interrupt properties

To improve human readability and enable automatic validation, the tuples
in the various properties containing interrupt specifiers should be
grouped.  While "make dtbs_check" does not impose this yet for the
"interrupts" property, it does for the "interrupt-map" property, leading
to warnings like:

    pci@ee090000: interrupt-map:0: [0, 0, 0, 1, 5, 0, 108, 4, 2048, 0, 0, 1, 5, 0, 108, 4, 4096, 0, 0, 2, 5, 0, 108, 4] is too long
    pci@ee0d0000: interrupt-map:0: [0, 0, 0, 1, 5, 0, 113, 4, 2048, 0, 0, 1, 5, 0, 113, 4, 4096, 0, 0, 2, 5, 0, 113, 4] is too long

Fix this by grouping the tuples of the "interrupts" and "interrupt-map"
properties using angle brackets.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20191213164115.3697-4-geert+renesas@glider.be
Reviewed-by: Ulrich Hecht <uli+renesas@fpond.eu>
4 years agoARM: dts: renesas: Group tuples in regulator-gpio states properties
Geert Uytterhoeven [Fri, 13 Dec 2019 16:41:08 +0000 (17:41 +0100)]
ARM: dts: renesas: Group tuples in regulator-gpio states properties

To improve human readability and enable automatic validation, the tuples
in the "states" properties of device nodes compatible with
"regulator-gpio" should be grouped, as reported by "make dtbs_check":

    $ make dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/regulator/gpio-regulator.yaml
    arch/arm/boot/dts/r8a7791-koelsch.dt.yaml: regulator-vccq-sdhi0: states:0: Additional items are not allowed (1800000, 0 were unexpected)
    arch/arm/boot/dts/r8a7791-koelsch.dt.yaml: regulator-vccq-sdhi0: states:0: [3300000, 1, 1800000, 0] is too long
    arch/arm/boot/dts/r8a7791-koelsch.dt.yaml: regulator-vccq-sdhi1: states:0: Additional items are not allowed (1800000, 0 were unexpected)
    arch/arm/boot/dts/r8a7791-koelsch.dt.yaml: regulator-vccq-sdhi1: states:0: [3300000, 1, 1800000, 0] is too long
    arch/arm/boot/dts/r8a7791-koelsch.dt.yaml: regulator-vccq-sdhi2: states:0: Additional items are not allowed (1800000, 0 were unexpected)
    arch/arm/boot/dts/r8a7791-koelsch.dt.yaml: regulator-vccq-sdhi2: states:0: [3300000, 1, 1800000, 0] is too long
    ...

Fix this by grouping the tuples using angle brackets.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20191213164115.3697-2-geert+renesas@glider.be
Reviewed-by: Ulrich Hecht <uli+renesas@fpond.eu>
4 years agoARM: dts: r8a7779: Add device node for ARM global timer
Geert Uytterhoeven [Wed, 11 Dec 2019 13:52:21 +0000 (14:52 +0100)]
ARM: dts: r8a7779: Add device node for ARM global timer

Add a device node for the global timer, which is part of the Cortex-A9
MPCore.

The global timer can serve as an accurate (4 ns) clock source for
scheduling and delay loops.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20191211135222.26770-4-geert+renesas@glider.be
4 years agoARM: dts: sh73a0: Add device node for ARM global timer
Geert Uytterhoeven [Wed, 11 Dec 2019 13:52:20 +0000 (14:52 +0100)]
ARM: dts: sh73a0: Add device node for ARM global timer

Add a device node for the global timer, which is part of the Cortex-A9
MPCore.

The global timer can serve as an accurate (3 ns) clock source for
scheduling and delay loops.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20191211135222.26770-3-geert+renesas@glider.be
4 years agoARM: dts: sh73a0: Rename twd clock to periph clock
Geert Uytterhoeven [Wed, 11 Dec 2019 13:52:19 +0000 (14:52 +0100)]
ARM: dts: sh73a0: Rename twd clock to periph clock

The "TWD" clock is actually the Cortex-A9 MPCore "PERIPHCLK" clock,
which not only clocks the private timers and watchdogs (TWD), but also
the interrupt controller and global timer.

Hence rename it from "twd" to "periph".

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20191211135222.26770-2-geert+renesas@glider.be
4 years agodt-bindings: can: rcar_canfd: document r8a774b1 support
Fabrizio Castro [Thu, 10 Oct 2019 14:25:59 +0000 (15:25 +0100)]
dt-bindings: can: rcar_canfd: document r8a774b1 support

Document the support for rcar_canfd on R8A774B1 SoC devices.

Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/1570717560-7431-3-git-send-email-fabrizio.castro@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
4 years agodt-bindings: can: rcar_can: document r8a774b1 support
Fabrizio Castro [Thu, 10 Oct 2019 14:25:58 +0000 (15:25 +0100)]
dt-bindings: can: rcar_can: document r8a774b1 support

Document RZ/G2N (r8a774b1) SoC specific bindings.

Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com>
Acked-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/1570717560-7431-2-git-send-email-fabrizio.castro@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
4 years agoMerge tag 'ux500-armsoc-v5.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git...
Olof Johansson [Tue, 17 Dec 2019 18:03:56 +0000 (10:03 -0800)]
Merge tag 'ux500-armsoc-v5.6-1' of git://git./linux/kernel/git/linusw/linux-stericsson into arm/dt

First set of Ux500 DTS changes for the v5.6 kernel:

- Add the GPADC IIO channels
- Factor out generic pin configuration
- Add the gpio_in_nopull configuration
- Tighten up I2C and SPI buses
- Clean up some compatibles
- Extract a generic DB8500 DTSI
- Add HREF520 DTS and the associated DB8520 DTSI
- Split TVK R2 and R3 to separate DTSI files

* tag 'ux500-armsoc-v5.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson:
  ARM: dts: ux500: Add devicetree for HREF520
  ARM: dts: ux500: Split TVK DTSI files in two
  ARM: dts: ux500: Break out DB8500 DTSI
  ARM: dts: ux500: Drop pulls on I2C buses
  ARM: dts: ux500: Use "arm,pl031" compatible for PL031
  ARM: dts: ux500: Add "simple-bus" compatible to soc node
  ARM: dts: ux500: Remove ux500_ prefix from ux500_serial* labels
  ARM: dts: ux500: Move serial aliases to ste-dbx5x0.dtsi
  ARM: dts: ux500: Add aliases for I2C and SPI buses
  ARM: dts: ux500: Disable I2C/SPI buses by default
  ARM: dts: ux500: nomadik-pinctrl: Add &gpio_in_nopull
  ARM: dts: ux500: Add pin configs for UART1 CTS/RTS pins
  ARM: dts: ux500: Add alternative SDI pin configs
  ARM: dts: ux500: Rename generic pin configs according to pin group
  ARM: dts: ux500: Move generic pin configs out of ste-href-family-pinctrl.dtsi
  dt-bindings: arm: Document compatibles for Ux500 boards
  ARM: dts: ux500: snowball: Remove unused PRCMU cpufreq node
  ARM: dts: ux500: declare GPADC IIO ADC channels

Link: https://lore.kernel.org/r/CACRpkdYfqJ=VXkP3Qm5Lw63AuR=1ChxbUW+Y-nhw5gCX6sYfDw@mail.gmail.com
Signed-off-by: Olof Johansson <olof@lixom.net>
4 years agoARM: OMAP2+: use separate IOMMU pdata to fix DRA7 IPU1 boot
Suman Anna [Thu, 12 Dec 2019 13:05:41 +0000 (15:05 +0200)]
ARM: OMAP2+: use separate IOMMU pdata to fix DRA7 IPU1 boot

The IPU1 MMU has been using common IOMMU pdata quirks defined and
used by all IPU IOMMU devices on OMAP4 and beyond. Separate out the
pdata for IPU1 MMU with the additional .set_pwrdm_constraint ops
plugged in, so that the IPU1 power domain can be restricted to ON
state during the boot and active period of the IPU1 remote processor.
This eliminates the pre-conditions for the IPU1 boot issue as
described in commit afe518400bdb ("iommu/omap: fix boot issue on
remoteprocs with AMMU/Unicache").

NOTE:
1. RET is not a valid target power domain state on DRA7 platforms,
   and IPU power domain is normally programmed for OFF. The IPU1
   still fails to boot though, and an unclearable l3_noc error is
   thrown currently on 4.14 kernel without this fix. This behavior
   is slightly different from previous 4.9 LTS kernel.
2. The fix is currently applied only to IPU1 on DRA7xx SoC, as the
   other affected processors on OMAP4/OMAP5/DRA7 are in domains
   that are not entering RET. IPU2 on DRA7 is in CORE power domain
   which is only programmed for ON power state. The fix can be easily
   scaled if these domains do hit RET in the future.
3. The issue was not seen on current DRA7 platforms if any of the
   DSP remote processors were booted and using one of the GPTimers
   5, 6, 7 or 8 on previous 4.9 LTS kernel. This was due to the
   errata fix for i874 implemented in commit 1cbabcb9807e ("ARM:
   DRA7: clockdomain: Implement timer workaround for errata i874")
   which keeps the IPU1 power domain from entering RET when the
   timers are active. But the timer workaround did not make any
   difference on 4.14 kernel, and an l3_noc error was seen still
   without this fix.

Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agoARM: OMAP2+: omap-iommu.c conversion to ti-sysc
Tero Kristo [Thu, 12 Dec 2019 13:05:40 +0000 (15:05 +0200)]
ARM: OMAP2+: omap-iommu.c conversion to ti-sysc

Convert omap2 iommu platform code to use ti-sysc instead of legacy
omap-device / hwmod interfaces.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agoARM: OMAP2+: Add workaround for DRA7 DSP MStandby errata i879
Suman Anna [Thu, 12 Dec 2019 13:05:39 +0000 (15:05 +0200)]
ARM: OMAP2+: Add workaround for DRA7 DSP MStandby errata i879

Errata Title:
i879: DSP MStandby requires CD_EMU in SW_WKUP

Description:
The DSP requires the internal emulation clock to be actively toggling
in order to successfully enter a low power mode via execution of the
IDLE instruction and PRCM MStandby/Idle handshake. This assumes that
other prerequisites and software sequence are followed.

Workaround:
The emulation clock to the DSP is free-running anytime CCS is connected
via JTAG debugger to the DSP subsystem or when the CD_EMU clock domain
is set in SW_WKUP mode. The CD_EMU domain can be set in SW_WKUP mode
via the CM_EMU_CLKSTCTRL [1:0]CLKTRCTRL field.

Implementation:
This patch implements this workaround by denying the HW_AUTO mode
for the EMU clockdomain during the power-up of any DSP processor
and re-enabling the HW_AUTO mode during the shutdown of the last
DSP processor (actually done during the enabling and disabling of
the respective DSP MDMA MMUs). Reference counting has to be used to
manage the independent sequencing between the multiple DSP processors.

This switching is done at runtime rather than a static clockdomain
flags value to meet the target power domain state for the EMU power
domain during suspend.

Note that the DSP MStandby behavior is not consistent across all
boards prior to this fix. Please see commit 45f871eec6c0 ("ARM:
OMAP2+: Extend DRA7 IPU1 MMU pdata quirks to DSP MDMA MMUs") for
details.

Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agoARM: OMAP4+: remove pdata quirks for omap4+ iommus
Tero Kristo [Thu, 12 Dec 2019 13:05:38 +0000 (15:05 +0200)]
ARM: OMAP4+: remove pdata quirks for omap4+ iommus

IOMMU driver will be using ti-sysc bus driver for power management control
going forward, and the pdata quirks are not needed for anything anymore.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agoARM: OMAP2+: pdata-quirks: add PRM data for reset support
Tero Kristo [Thu, 12 Dec 2019 13:05:37 +0000 (15:05 +0200)]
ARM: OMAP2+: pdata-quirks: add PRM data for reset support

The parent clockdomain for reset must be in force wakeup mode, otherwise
the reset may never complete. Add pdata quirks for this purpose for PRM
driver.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agoARM: OMAP5: hwmod-data: remove OMAP5 IOMMU hwmod data
Tero Kristo [Tue, 17 Dec 2019 17:44:16 +0000 (09:44 -0800)]
ARM: OMAP5: hwmod-data: remove OMAP5 IOMMU hwmod data

IOMMUs are now supported via ti-sysc, so the legacy hwmod data can be
removed.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agoARM: OMAP4: hwmod-data: remove OMAP4 IOMMU hwmod data
Tero Kristo [Tue, 17 Dec 2019 17:35:31 +0000 (09:35 -0800)]
ARM: OMAP4: hwmod-data: remove OMAP4 IOMMU hwmod data

IOMMUs are now supported via ti-sysc, so the legacy hwmod data can be
removed.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agoMerge branch 'omap-for-v5.6/ti-sysc-dt' into omap-for-v5.6/ti-sysc-drop-pdata
Tony Lindgren [Tue, 17 Dec 2019 17:34:14 +0000 (09:34 -0800)]
Merge branch 'omap-for-v5.6/ti-sysc-dt' into omap-for-v5.6/ti-sysc-drop-pdata

4 years agoARM: dts: omap5: convert IOMMUs to use ti-sysc
Tero Kristo [Thu, 12 Dec 2019 12:51:21 +0000 (14:51 +0200)]
ARM: dts: omap5: convert IOMMUs to use ti-sysc

Convert omap5 IOMMUs to use ti-sysc instead of legacy omap-hwmod based
implementation. Enable the IOMMUs also while doing this.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agoARM: dts: omap4: convert IOMMUs to use ti-sysc
Tero Kristo [Thu, 12 Dec 2019 12:51:20 +0000 (14:51 +0200)]
ARM: dts: omap4: convert IOMMUs to use ti-sysc

Convert omap4 IOMMUs to use ti-sysc instead of legacy omap-hwmod based
implementation. Enable the IOMMUs also while doing this.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agoARM: dts: dra74x: convert IOMMUs to use ti-sysc
Tero Kristo [Thu, 12 Dec 2019 12:51:19 +0000 (14:51 +0200)]
ARM: dts: dra74x: convert IOMMUs to use ti-sysc

Convert dra74x IOMMUs to use ti-sysc instead of legacy omap-hwmod based
implementation. Enable the IOMMUs also while doing this.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agoARM: dts: dra7: convert IOMMUs to use ti-sysc
Tero Kristo [Thu, 12 Dec 2019 12:51:18 +0000 (14:51 +0200)]
ARM: dts: dra7: convert IOMMUs to use ti-sysc

Convert dra7 IOMMUs to use ti-sysc instead of legacy omap-hwmod based
implementation. Enable the IOMMUs also while doing this.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agoARM: OMAP2+: Drop legacy platform data for omap4 fdif
Tony Lindgren [Tue, 10 Dec 2019 16:10:25 +0000 (08:10 -0800)]
ARM: OMAP2+: Drop legacy platform data for omap4 fdif

We can now probe devices with ti-sysc interconnect driver and dts
data. Let's drop the related platform data and custom ti,hwmods
dts property.

As we're just dropping data, and the early platform data init
is based on the custom ti,hwmods property, we want to drop both
the platform data and ti,hwmods property in a single patch.

Tested-by: Keerthy <j-keerthy@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
4 years agoARM: OMAP2+: Drop legacy platform data for omap4 slimbus
Tony Lindgren [Tue, 10 Dec 2019 16:10:26 +0000 (08:10 -0800)]
ARM: OMAP2+: Drop legacy platform data for omap4 slimbus

We can now probe devices with ti-sysc interconnect driver and dts
data. Let's drop the related platform data and custom ti,hwmods
dts property.

As we're just dropping data, and the early platform data init
is based on the custom ti,hwmods property, we want to drop both
the platform data and ti,hwmods property in a single patch.

Tested-by: Keerthy <j-keerthy@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>