bus: Add Baikal-T1 AXI-bus driver
authorSerge Semin <Sergey.Semin@baikalelectronics.ru>
Tue, 26 May 2020 12:59:26 +0000 (15:59 +0300)
committerArnd Bergmann <arnd@arndb.de>
Thu, 28 May 2020 12:11:53 +0000 (14:11 +0200)
commit63cb77136e04ff24ca520e46f5ff57d351dadbdb
tree7e3869a698b602baa44013a4cc3fc52844e5c2e9
parenta1c13784d25111d8c8e98a4dae6dadd41ce4df3d
bus: Add Baikal-T1 AXI-bus driver

AXI3-bus is the main communication bus connecting all high-speed
peripheral IP-cores with RAM controller and MIPS P5600 cores on Baikal-T1
SoC. Bus traffic arbitration is done by means of DW AMBA 3 AXI
Interconnect (so called AXI Main Interconnect) routing IO requests from
one SoC block to another. This driver provides a way to detect any bus
protocol errors and device not responding situations by means of an
embedded on top of the interconnect errors handler block (EHB). AXI
Interconnect QoS arbitration tuning is currently unsupported.
The bus doesn't provide a way to detect the interconnected devices,
so they are supposed to be statically defined like by means of the
simple-bus sub-nodes.

[arnd: fix build warnings for missing includes and wrong return types]

Link: https://lore.kernel.org/r/20200526125928.17096-5-Sergey.Semin@baikalelectronics.ru
Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
Cc: Alexey Malahov <Alexey.Malahov@baikalelectronics.ru>
Cc: Paul Burton <paulburton@kernel.org>
Cc: Olof Johansson <olof@lixom.net>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: linux-mips@vger.kernel.org
Cc: soc@kernel.org
Cc: devicetree@vger.kernel.org
Reported-by: kbuild test robot <lkp@intel.com>
Reported-by: kbuild test robot <lkp@intel.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
drivers/bus/Kconfig
drivers/bus/Makefile
drivers/bus/bt1-axi.c [new file with mode: 0644]