Skip to content

Commit e592f65

Browse files
xdarklightkhilman
authored andcommitted
ARM: dts: meson: add support for the Meson8m2 SoC
This adds a meson8m2.dtsi which simply inherits meson8.dtsi as both SoCs share most peripherals. The known differences are: - Meson8m2's hardware video decoder additionally supports H.265 decoding - Meson8m2 has the same Gigabit MAC as Meson8b (instead of the 10/100M MAC that Meson8 uses) - Meson8m2 uses the same watchdog register layout/bits as Meson8b (using the Meson8 watchdog compatible leads to an infinite hang when rebooting the machine) - Meson8m2 uses the same SAR ADC register layout/bits as Meson8b. However, it uses the temperature sensor calibration formula (and registers) Meson8b which differ from Meson8. This however is currently not supported by the meson-saradc driver yet. - the pin controller is mostly compatible with Meson8, Meson8m2 has an additional function on eight pins and removes the "VGA" function. So there's a total of 10 pins which are slightly changed, which is why there's a separate compatible for the pin controller - a separate compatible for the clock controller is used because at least the Mali clock tree (not supported yet) is the same as on GXBB while Meson8 and Meson8b have a reduced/older version of the Mali clock tree. Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Signed-off-by: Kevin Hilman <khilman@baylibre.com>
1 parent 0633d20 commit e592f65

File tree

1 file changed

+54
-0
lines changed

1 file changed

+54
-0
lines changed

arch/arm/boot/dts/meson8m2.dtsi

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2+
/*
3+
* Copyright (c) 2017 Martin Blumenstingl <martin.blumenstingl@googlemail.com>.
4+
*/
5+
6+
#include "meson8.dtsi"
7+
8+
/ {
9+
model = "Amlogic Meson8m2 SoC";
10+
compatible = "amlogic,meson8m2";
11+
}; /* end of / */
12+
13+
&clkc {
14+
compatible = "amlogic,meson8m2-clkc", "amlogic,meson8-clkc";
15+
};
16+
17+
&ethmac {
18+
compatible = "amlogic,meson8m2-dwmac", "snps,dwmac";
19+
reg = <0xc9410000 0x10000
20+
0xc1108140 0x8>;
21+
clocks = <&clkc CLKID_ETH>,
22+
<&clkc CLKID_MPLL2>,
23+
<&clkc CLKID_MPLL2>;
24+
clock-names = "stmmaceth", "clkin0", "clkin1";
25+
resets = <&reset RESET_ETHERNET>;
26+
reset-names = "stmmaceth";
27+
};
28+
29+
&pinctrl_aobus {
30+
compatible = "amlogic,meson8m2-aobus-pinctrl",
31+
"amlogic,meson8-aobus-pinctrl";
32+
};
33+
34+
&pinctrl_cbus {
35+
compatible = "amlogic,meson8m2-cbus-pinctrl",
36+
"amlogic,meson8-cbus-pinctrl";
37+
38+
eth_rgmii_pins: ethernet {
39+
mux {
40+
groups = "eth_tx_clk_50m", "eth_tx_en",
41+
"eth_txd3", "eth_txd2",
42+
"eth_txd1", "eth_txd0",
43+
"eth_rx_clk_in", "eth_rx_dv",
44+
"eth_rxd3", "eth_rxd2",
45+
"eth_rxd1", "eth_rxd0",
46+
"eth_mdio", "eth_mdc";
47+
function = "ethernet";
48+
};
49+
};
50+
};
51+
52+
&wdt {
53+
compatible = "amlogic,meson8m2-wdt", "amlogic,meson8b-wdt";
54+
};

0 commit comments

Comments
 (0)