mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-02 01:19:49 +00:00
4007103350
The i.MX8MP DHCOM SoM may come with either external RGMII PHY or LAN8740Ai RMII PHY on the SoM attached to FEC MAC. Add pin mux settings for both options, so that DT overlay can override these settings on SoM variant with the LAN8740Ai PHY. Signed-off-by: Marek Vasut <marex@denx.de>
170 lines
3.9 KiB
Text
170 lines
3.9 KiB
Text
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
/*
|
|
* Copyright (C) 2022 Marek Vasut <marex@denx.de>
|
|
*
|
|
* DHCOM iMX8MP variant:
|
|
* DHCM-iMX8ML8-C160-R409-F1638-SPI16-GE-CAN2-SD-RTC-WBTA-ADC-T-RGB-CSI2-HS-I-01D2
|
|
* DHCOM PCB number: 660-100 or newer
|
|
* PDK2 PCB number: 516-400 or newer
|
|
*/
|
|
|
|
/dts-v1/;
|
|
|
|
#include <dt-bindings/leds/common.h>
|
|
#include <dt-bindings/phy/phy-imx8-pcie.h>
|
|
#include "imx8mp-dhcom-som.dtsi"
|
|
|
|
/ {
|
|
model = "DH electronics i.MX8M Plus DHCOM Premium Developer Kit (2)";
|
|
compatible = "dh,imx8mp-dhcom-pdk2", "dh,imx8mp-dhcom-som",
|
|
"fsl,imx8mp";
|
|
|
|
chosen {
|
|
stdout-path = &uart1;
|
|
};
|
|
|
|
gpio-keys {
|
|
compatible = "gpio-keys";
|
|
|
|
button-0 {
|
|
gpios = <&gpio1 9 GPIO_ACTIVE_LOW>; /* GPIO A */
|
|
label = "TA1-GPIO-A";
|
|
linux,code = <KEY_A>;
|
|
pinctrl-0 = <&pinctrl_dhcom_a>;
|
|
pinctrl-names = "default";
|
|
wakeup-source;
|
|
};
|
|
|
|
button-1 {
|
|
gpios = <&gpio1 8 GPIO_ACTIVE_LOW>; /* GPIO B */
|
|
label = "TA2-GPIO-B";
|
|
linux,code = <KEY_B>;
|
|
pinctrl-0 = <&pinctrl_dhcom_b>;
|
|
pinctrl-names = "default";
|
|
wakeup-source;
|
|
};
|
|
|
|
button-2 {
|
|
gpios = <&gpio5 2 GPIO_ACTIVE_LOW>; /* GPIO C */
|
|
label = "TA3-GPIO-C";
|
|
linux,code = <KEY_C>;
|
|
pinctrl-0 = <&pinctrl_dhcom_c>;
|
|
pinctrl-names = "default";
|
|
wakeup-source;
|
|
};
|
|
|
|
button-3 {
|
|
gpios = <&gpio4 27 GPIO_ACTIVE_LOW>; /* GPIO D */
|
|
label = "TA4-GPIO-D";
|
|
linux,code = <KEY_D>;
|
|
pinctrl-0 = <&pinctrl_dhcom_d>;
|
|
pinctrl-names = "default";
|
|
wakeup-source;
|
|
};
|
|
};
|
|
|
|
led {
|
|
compatible = "gpio-leds";
|
|
|
|
led-0 {
|
|
color = <LED_COLOR_ID_GREEN>;
|
|
default-state = "off";
|
|
function = LED_FUNCTION_INDICATOR;
|
|
gpios = <&gpio5 22 GPIO_ACTIVE_HIGH>; /* GPIO E */
|
|
pinctrl-0 = <&pinctrl_dhcom_e>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
led-1 {
|
|
color = <LED_COLOR_ID_GREEN>;
|
|
default-state = "off";
|
|
function = LED_FUNCTION_INDICATOR;
|
|
gpios = <&gpio5 23 GPIO_ACTIVE_HIGH>; /* GPIO F */
|
|
pinctrl-0 = <&pinctrl_dhcom_f>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
led-2 {
|
|
color = <LED_COLOR_ID_GREEN>;
|
|
default-state = "off";
|
|
function = LED_FUNCTION_INDICATOR;
|
|
gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>; /* GPIO H */
|
|
pinctrl-0 = <&pinctrl_dhcom_h>;
|
|
pinctrl-names = "default";
|
|
};
|
|
|
|
led-3 {
|
|
color = <LED_COLOR_ID_GREEN>;
|
|
default-state = "off";
|
|
function = LED_FUNCTION_INDICATOR;
|
|
gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>; /* GPIO I */
|
|
pinctrl-0 = <&pinctrl_dhcom_i>;
|
|
pinctrl-names = "default";
|
|
};
|
|
};
|
|
};
|
|
|
|
/*
|
|
* PDK2 carrier board uses SoM with KSZ9131 populated and connected to
|
|
* SoM EQoS ethernet RGMII interface. Remove the other SoM PHY DT node.
|
|
*/
|
|
/delete-node/ ðphy0f;
|
|
|
|
/*
|
|
* PDK2 carrier board has KSZ9021 PHY populated and connected to SoM FEC
|
|
* ethernet RGMII interface. The SoM is not populated with second FEC PHY.
|
|
*/
|
|
/delete-node/ ðphy1f;
|
|
|
|
&fec { /* Second ethernet */
|
|
pinctrl-0 = <&pinctrl_fec_rgmii>;
|
|
phy-handle = <ðphypdk>;
|
|
phy-mode = "rgmii";
|
|
|
|
mdio {
|
|
ethphypdk: ethernet-phy@7 { /* KSZ 9021 */
|
|
compatible = "ethernet-phy-ieee802.3-c22";
|
|
pinctrl-0 = <&pinctrl_ethphy1>;
|
|
pinctrl-names = "default";
|
|
interrupt-parent = <&gpio4>;
|
|
interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
|
|
max-speed = <100>;
|
|
reg = <7>;
|
|
reset-assert-us = <1000>;
|
|
reset-deassert-us = <1000>;
|
|
reset-gpios = <&gpio4 2 GPIO_ACTIVE_LOW>;
|
|
rxc-skew-ps = <3000>;
|
|
rxd0-skew-ps = <0>;
|
|
rxd1-skew-ps = <0>;
|
|
rxd2-skew-ps = <0>;
|
|
rxd3-skew-ps = <0>;
|
|
rxdv-skew-ps = <0>;
|
|
txc-skew-ps = <3000>;
|
|
txd0-skew-ps = <0>;
|
|
txd1-skew-ps = <0>;
|
|
txd2-skew-ps = <0>;
|
|
txd3-skew-ps = <0>;
|
|
txen-skew-ps = <0>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&flexcan1 {
|
|
status = "okay";
|
|
};
|
|
|
|
&usb3_1 {
|
|
fsl,over-current-active-low;
|
|
};
|
|
|
|
&iomuxc {
|
|
/*
|
|
* GPIO_A,B,C,D are connected to buttons.
|
|
* GPIO_E,F,H,I are connected to LEDs.
|
|
* GPIO_M is connected to CLKOUT2.
|
|
*/
|
|
pinctrl-0 = <&pinctrl_hog_base
|
|
&pinctrl_dhcom_g &pinctrl_dhcom_j
|
|
&pinctrl_dhcom_k &pinctrl_dhcom_l
|
|
&pinctrl_dhcom_int>;
|
|
};
|