arm: mvebu: Implement simple mvebu-reset driver for enabling/disabling PCIe ports
authorPali Rohár <pali@kernel.org>
Tue, 21 Dec 2021 11:20:18 +0000 (12:20 +0100)
committerStefan Roese <sr@denx.de>
Fri, 14 Jan 2022 06:47:57 +0000 (07:47 +0100)
commit35e29e89a38662407d773e01ad6344de6ad268f0
tree432459023ef371756da8b81185bf63ccc835b351
parente7ff4271ab431cc725a95a87fe6b175bb6cede3a
arm: mvebu: Implement simple mvebu-reset driver for enabling/disabling PCIe ports

Enabling and disabling PCIe ports is done via address space of system
controller. All 32-bit Armada SoCs use low 4 bits in SoC Control 1 Register
for enabling and disabling some or more PCIe ports. Correct mapping needs
to be set in particular DTS files.

DT API for mvebu-reset is prepared for implementing resets also for other
HW blocks, but currently only PCIe is implemented via index 0.

Currently this driver is not used as PCIe ports are automatically enabled
by SerDes code executed by U-Boot SPL. But this will change in followup
patches.

Signed-off-by: Pali Rohár <pali@kernel.org>
arch/arm/dts/armada-375.dtsi
arch/arm/dts/armada-38x.dtsi
arch/arm/dts/armada-xp-98dx3236.dtsi
arch/arm/dts/armada-xp.dtsi
arch/arm/mach-mvebu/Makefile
arch/arm/mach-mvebu/system-controller.c [new file with mode: 0644]