]> asedeno.scripts.mit.edu Git - linux.git/commit
arm64: dts: marvell: add DTS for Turris Mox
authorMarek Behún <marek.behun@nic.cz>
Wed, 28 Aug 2019 15:12:43 +0000 (17:12 +0200)
committerGregory CLEMENT <gregory.clement@bootlin.com>
Sat, 31 Aug 2019 07:24:31 +0000 (09:24 +0200)
commit7109d817db2e020379d0f245300b8ffe651c5c04
treea700d7d93d1241a6d75d267465e2288e639627dc
parent3e8e28f28e400818f23292ec1a9d3ce8035bee2d
arm64: dts: marvell: add DTS for Turris Mox

This adds support for the Turris Mox board from CZ.NIC.

Turris Mox is as modular router based on the Armada 3720 SOC (same as
EspressoBin).

The basic board can be extended by different modules.
If those are connected, U-Boot lets the kernel know via device-tree.

Since modules can be connected in different order and some modules can
be connected multiple times (up to three modules containing 8-port
ethernet switch in DSA configuration can be connected) we decided
against using device-tree overlays, because it got complicated rather
quickly. (For example the SFP module can be connected directly to the
CPU, or after a switch module. There are four cases and all would need
different SFP overlay. There are two types of switch modules (8-port
with pass-through and 4-port with no pass-through). For those we would
again need at least 6 more overlays.)

We therefore decided to put all the possibly connected devices in one
device-tree and disable them by default. When U-Boot finds out which
modules are connected, it fixes the loaded device-tree accordingly just
before boot. By Rob Herring's suggestion we also made it so that U-Boot
completely removes nodes which are disabled after this fixup.

Signed-off-by: Marek Behún <marek.behun@nic.cz>
Cc: Rob Herring <robh@kernel.org>
Cc: Gregory CLEMENT <gregory.clement@bootlin.com>
Cc: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
arch/arm64/boot/dts/marvell/Makefile
arch/arm64/boot/dts/marvell/armada-3720-turris-mox.dts [new file with mode: 0644]