[PATCH 0/6] soc: Add Baikal-T1 SoC APB/AXI EHB and L2-cache drivers

Sergey.Semin
2020-03-06T13:07:34Z

From: Serge Semin <fancer.lancer@gmail.com>

Aside from PCIe/SATA/DDR/I2C/CPU-reboot specific settings the Baikal-T1
system controller provides three vendor-specific blocks. In particular
there are two Errors Handler Blocks to detect and report an info regarding
any problems discovered on the AXI and APB buses. These are the main buses
utilized by the SoC devices to interact with each other. In addition there
is a way to tune the MIPS P5600 CM2 L2-cache up by setting the Tag/Data/WS
L2-to-RAM latencies. All of this functionality is implemented in the
APB/AXI EHB and L2-cache control block drivers to be a part of the kernel soc
subsystem (as being specific to the Baikal-T1 SoC) and introduced in the
framework of this patchset.

This patchset is rebased and tested on the mainline Linux kernel 5.6-rc4:
commit 98d54f81e36b ("Linux 5.6-rc4").

Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
Signed-off-by: Alexey Malahov <Alexey.Malahov@baikalelectronics.ru>
Cc: Maxim Kaurkin <Maxim.Kaurkin@baikalelectronics.ru>
Cc: Pavel Parkhomenko <Pavel.Parkhomenko@baikalelectronics.ru>
Cc: Ramil Zaripov <Ramil.Zaripov@baikalelectronics.ru>
Cc: Ekaterina Skachko <Ekaterina.Skachko@baikalelectronics.ru>
Cc: Vadim Vlasov <V.Vlasov@baikalelectronics.ru>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: Paul Burton <paulburton@kernel.org>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Olof Johansson <olof@lixom.net>
Cc: soc@kernel.org
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org

Serge Semin (6):
dt-bindings: Add Baikal-T1 AXI-bus EHB dts bindings file
dt-bindings: Add Baikal-T1 APB-bus EHB dts bindings file
dt-bindings: Add Baikal-T1 L2-cache Control Block dts bindings file
soc: bt1: Add Baikal-T1 AXI-bus EHB driver
soc: bt1: Add Baikal-T1 APB-bus EHB driver
soc: bt1: Add Baikal-T1 L2-cache Control Block driver

.../soc/baikal-t1/be,bt1-apb-ehb.yaml | 66 +++
.../soc/baikal-t1/be,bt1-axi-ehb.yaml | 52 +++
.../bindings/soc/baikal-t1/be,bt1-l2-ctl.yaml | 108 +++++
drivers/soc/Kconfig | 1 +
drivers/soc/Makefile | 1 +
drivers/soc/baikal-t1/Kconfig | 49 +++
drivers/soc/baikal-t1/Makefile | 4 +
drivers/soc/baikal-t1/apb-ehb.c | 381 ++++++++++++++++++
drivers/soc/baikal-t1/axi-ehb.c | 250 ++++++++++++
drivers/soc/baikal-t1/common.h | 37 ++
drivers/soc/baikal-t1/l2-ctl.c | 325 +++++++++++++++
11 files changed, 1274 insertions(+)
create mode 100644 Documentation/devicetree/bindings/soc/baikal-t1/be,bt1-apb-ehb.yaml
create mode 100644 Documentation/devicetree/bindings/soc/baikal-t1/be,bt1-axi-ehb.yaml
create mode 100644 Documentation/devicetree/bindings/soc/baikal-t1/be,bt1-l2-ctl.yaml
create mode 100644 drivers/soc/baikal-t1/Kconfig
create mode 100644 drivers/soc/baikal-t1/Makefile
create mode 100644 drivers/soc/baikal-t1/apb-ehb.c
create mode 100644 drivers/soc/baikal-t1/axi-ehb.c
create mode 100644 drivers/soc/baikal-t1/common.h
create mode 100644 drivers/soc/baikal-t1/l2-ctl.c

--
2.25.1