ETH的配置
*****************
Note: Acore ETH支持SGMII模式

pinctrl
==============
dts配置如下：

SGMII其他pin保持默认配置即可，仅需要配置mdio和mdc：

.. code:: shell

	peri_emac: peri_emac_func {
		pinmux {
			function = "peri_emac";
			pins = "peri_emac_mdc_hsi0", "peri_emac_mdio_hsi0";
		};
		pinconf {
			pins = "peri_emac_mdc_hsi0", "peri_emac_mdio_hsi0";
			drive-strength = <8>;
		};
	};


pinmux：配置pin的管脚复用；

pinconf：配置电气属性，主要关注drive-strength，drive-strength表示驱动能力，需要结合信号质量测试确定；


Phy
==============
dts如下：

确保在phy使用前完成了复位，并处于解复位状态。

uboot dts配置如下：

.. code:: shell

	eth0: eth0 {
		status = "disabled";
		compatible = "hobot,j6-gmac";
		phy-handle = <&phy1>;
		phy-mode = "sgmii";
		pinctrl-names = "default";
		pinctrl-0 = <&peri_emac>;
		#address-cells = <1>;
		#size-cells = <0>;
		phy1: phy@1 {
			compatible = "ethernet-phy-ieee802.3-c22";
			reg = <0xe>;
		};
	};

phy-mode：phy interface模式；

pinctrl-names：pinctrl选择的配置组名，此处表示使用默认配置；

pinctrl-0：pinctrl的引用节点；

compatible: phy的匹配类型，支持C22/C45；

reg：表示phy的mdio地址；


kernel dts配置如下：

.. code:: shell

	ethernet0: ethernet@0x330f0000 {
		status = "okay";
		compatible = "hobot,hobot_gmac";
		phy-handle = <&phy1>;
		phy-mode = "sgmii";
		hobot,managed = "sgmii-autoneg";
		pinctrl-names = "default";
		pinctrl-0 = <&peri_emac>;
		mdio {
			#address-cells = <0x1>;
			#size-cells = <0x0>;
			phy1: phy@1 {
				compatible = "nxp,tja1120","ethernet-phy-ieee802.3-c45";
				reg = <0x3>;
			};
		};
	};

phy-mode：phy interface模式；

hobot,managed：外接PHY时xpcs的管理模式；

pinctrl-names：pinctrl选择的配置组名，此处表示使用默认配置；

pinctrl-0：pinctrl的引用节点；

compatible: phy的匹配类型，支持C22/C45；

reg：表示phy的mdio地址；


switch
==============
使用前请确保switch的port口模式配置正确。

.. code:: shell

	ethernet1: ethernet@0x33100000 {
		status = "okay";
		compatible = "hobot,hobot_gmac";
		fixed-link {
			speed = <1000>;
			full-duplex;
		};
	};

speed：固定速率1000M；

full-duplex: 表示全双工；

