summaryrefslogtreecommitdiff
path: root/arch/riscv/boot/dts/starfive/jh7100-starfive-visionfive-v1.dts
blob: ab8ec5712e8d21add8633815b5b4668ec70cefae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
// SPDX-License-Identifier: GPL-2.0 OR MIT
/*
 * Copyright (C) 2021 StarFive Technology Co., Ltd.
 * Copyright (C) 2021 Emil Renner Berthing <kernel@esmil.dk>
 */

/dts-v1/;
#include "jh7100-common.dtsi"

/ {
	model = "StarFive VisionFive V1";
	compatible = "starfive,visionfive-v1", "starfive,jh7100";

	gpio-restart {
		compatible = "gpio-restart";
		gpios = <&gpio 63 GPIO_ACTIVE_HIGH>;
		priority = <224>;
	};
};

&gmac {
	phy-handle = <&phy>;
};

&gpio {
	/* don't reset gpio mux for serial console and reset gpio */
	starfive,keep-gpiomux = <13 14 63>;
};

&i2c0 {
	eeprom@50 {
		compatible = "atmel,24c04";
		reg = <0x50>;
		pagesize = <16>;
	};
};

/*
 * The board uses a Motorcomm YT8521 PHY supporting RGMII-ID, but requires
 * manual adjustment of the RX internal delay to work properly.  The default
 * RX delay provided by the driver (1.95ns) is too high, but applying a 50%
 * reduction seems to mitigate the issue.
 *
 * It is worth noting the adjustment is not necessary on BeagleV Starlight SBC,
 * which uses a Microchip PHY.  Hence, most likely the Motorcomm PHY is the one
 * responsible for the misbehaviour, not the GMAC.
 */
&mdio {
	phy: ethernet-phy@0 {
		reg = <0>;
		rx-internal-delay-ps = <900>;
	};
};