您好!
我有一个基于 am4376的定制板、带有 dp83849ivs [而不是 EVM 中的 KSZ9031RN]。
我在代码中进行了以下更改、但仍然无法通过 eth0发送或接收数据。
请检查以下更改并指导我们解决此问题。
已禁用 u-boot 器件树中的 MAC:
{-Mac}(&M)
+/-*&Mac{
从器件=<1>;
pinctrl-names ="default"、"sleep";
pinctrl-0 =<&cpsw_default>;
pinctrl-1 =<&cpsw_sleep>;
状态="正常";
-};
+};*/
在 u-boot mux.c 中添加了多路复用器条目
+
+static 结构 module_pin_mux mii1_pin_mux[]={
+ {offset (mii1_txen)、mode (0)}、
+ {offset (mii1_rxdv)、mode (0)| RXACTIVE}、
+ {offset (mii1_txd3)、mode (0)}、
+ {offset (mii1_txd2)、mode (0)}、
+ {offset (mii1_txd1)、mode (0)}、
+ {offset (mii1_txd0)、mode (0)}、
+ {offset (mii1_txclk)、mode (0)}、
+ {offset (mii1_rxclk)、mode (0)| RXACTIVE}、
+ {offset (mii1_rxd3)、mode (0)| RXACTIVE}、
+ {offset (mii1_rxd2)、mode (0)| RXACTIVE}、
+ {offset (mii1_rxd1)、mode (0)| RXACTIVE}、
+ {offset (mii1_rxd0)、mode (0)| RXACTIVE}、
+ {-1}、
+};
+
+static 结构 module_pin_mux mii2_pin_mux[]={
+ {offset (GPMC_a0)、mode (1)}、
+ {offset (GPMC_A1)、mode (1)| RXACTIVE}、
+ {offset (GPMC_A2)、mode (1)}、
+ {offset (GPMC_A3)、mode (1)}、
+ {offset (GPMC_A4)、mode (1)}、
+ {offset (GPMC_A5)、mode (1)}、
+ {offset (GPMC_A6)、mode (1)}、
+ {OFFSET (GPMC_A7)、MODE (1)| RXACTIVE}、
+ {offset (GPMC_A8)、mode (1)| RXACTIVE}、
+ {offset (GPMC_A9)、mode (1)| RXACTIVE}、
+ {offset (GPMC_A10)、mode (1)| RXACTIVE}、
+ {offset (GPMC_A11)、mode (1)| RXACTIVE}、
+ {-1}、
+};
@@-134、6 +167、8 @@ void enable_board_pin_mux (void)
CONFIG_MODULE_PIN_mux (mmc0_PIN_mux);
CONFIG_MODULE_PIN_mux (i2c0_PIN_mux);
CONFIG_MODULE_PIN_mux (MDIO_PIN_mux);
+ CONFIG_MODULE_PIN_mux (mii1_PIN_mux);
+ CONFIG_MODULE_PIN_mux (mii2_PIN_mux);
以下是 Linux 设备树中的更改:
===================================
diff --git a/arch/arm/boot/dts/AM437X-gp-evm.dts b/arch/arm/boot/dts/AM437x-gp-evm.dts
索引49ab9520f16..083ede3d3e0 100644
--- a/arch/arm/boot/dts/AM437X-gp-evm.dts
++ b/arch/arm/boot/dts/AM437X-gp-evm.dts
@@-246、44 + 246、50 @@
>;
};
+ cpsw_default:cpsw_default{
+ pinctrl-single、pins =<
+
+/* 从属设备1*/
+ /* 0x108 (PIN_INPUT_PULLUGDOWN | MUX_MODE0) *//*(D16) mii1_col.gmii1_col */
+ /* 0x10c (PIN_INPUT_PULLUGDOWN | MUX_MODE0)*//*(B14) mii1_crs.gmii1_crs */
+
+ 0x110 (PIN_INPUT_PULLUGDOWN | MUX_MODE0) /*(B13) mii1_Rx_er.gmii1_rxer *
+ 0x114 (PIN_OUTPUT 下拉| MUX_MODE0) //(A13) mii1_TX_en.gmii1_txen */
+ 0x118 (PIN_INPUT_PULLUX | MUX_MODE0) /*(A15) mii1_Rx_dv.gmii1_rxdv */
+ 0x12c (PIN_INPUT 下拉| MUX_MODE0) /*(D14) mii1_TX_clk.gmii1_txclk *
+ 0x130 (PIN_INPUT 下拉| MUX_MODE0) /*(D13) mii1_Rx_clk.gmii1_rxclk *
+ 0x128 (PIN_OUTPUT 下拉| MUX_MODE0) /*(B15) mii1_txd0.gmii1_txd0 */
+ 0x124 (PIN_OUTPUT 下拉| MUX_MODE0) /*(A14) mii1_txd1.gmii1_txd1 *
+ 0x120 (PIN_OUTPUT 下拉| MUX_MODE0) /*(C13) mii1_txd2.gmii1_txd2 */
+ 0x11c (PIN_OUTPUT 下拉| MUX_MODE0) /*(C16) mii1_txd3.gmii1_txd3 *
+ 0x140 (PIN_INPUT_PULLUX | MUX_MODE0) /*(F17) mii1_rxd0.gmii1_rxd0 */
+ 0x13c (PIN_INPUT_PULLUX | MUX_MODE0) /*(B16) mii1_rxd1.gmii1_rxd1 *
+ 0x138 (PIN_INPUT_PULLUX | MUX_MODE0) /*(E16) mii1_rxd2.gmii1_rxd2 */
+ 0x134 (PIN_INPUT_PULLUGDOWN | MUX_MODE0) /*(C14) mii1 */
+
+
+/* 从器件2 */
+ /* 0x78 (PIN_INPUT_PULLUP | MUX_MODE1)*/ /*(A3) GPMC_BE1n.gmii2_col */
+ /* 0x84 (PIN_INPUT_PULLUP | MUX_MODE8)*//*(F10) GPMC_csn2.gmii2_crs */
+
+ 0x74 (PIN_INPUT_PULLUP | MUX_MODE1) /*(B3) GPMC_WPN.gmii2_rxer *
+ 0x40 (PIN_OUTPUT 下拉| MUX_MODE1) /*(C3) GPMC_a0.gmii2_txen *
+ 0x44 (PIN_INPUT 下拉| MUX_MODE1) //(C5) GPMC_A1.gmii2_rxdv */
+ 0x58 (PIN_INPUT 下拉| MUX_MODE1) /*(E8) GPMC_A6.gmii2_txclk *
+ 0x5c (PIN_INPUT_PULLUX | MUX_MODE1) /*(F6) GPMC_A7.gmii2_rxclk *
+ 0x54 (PIN_OUTPUT 下拉| MUX_MODE1) /*(E7) GPMC_A5.gmii2_txd0 */
+ 0x50 (PIN_OUTPUT 下拉| MUX_MODE1) /*(D7) GPMC_A4.gmii2_txd1 */
+ 0x4c (PIN_OUTPUT 下拉| MUX_MODE1) /*(A4) GPMC_A3.gmii2_txd2 */
+ 0x48 (PIN_OUTPUT 下拉| MUX_MODE1) /*(C6) GPMC_A2.gmii2_txd3 */
+ 0x6c (PIN_INPUT 下拉| MUX_MODE1) //(D8) GPMC_A11.gmii2_rxd0 */
+ 0x68 (PIN_INPUT 下拉| MUX_MODE1) //(G8) GPMC_A10.gmii2_rxd1 */
+ 0x64 (PIN_INPUT 下拉| MUX_MODE1) //(B4) GPMC_A9.gmii2_rxd2 */
+ 0x60 (PIN_INPUT 下拉| MUX_MODE1) //(F7) GPMC_A8.gmii2_rxd3 */
- cpsw_default:cpsw_default{
- pinctrl-single、pins =<
-/* 从属设备1 */
- 0x114 (PIN_OUTPUT 下拉| MUX_Mode2) /* mii1_txen.rgmii1_txen */
- 0x118 (PIN_INPUT_PULLUX | MUX_MODE2) /* mii1_rxdv.rgmii1_rxctl *
- 0x11c (PIN_OUTPUT 下拉| MUX_Mode2) /* mii1_txd1.rgmii1_txd3 */
- 0x120 (PIN_OUTPUT 下拉| MUX_Mode2) /* mii1_txd0.rgmii1_txd2 */
- 0x124 (PIN_OUTPUT 下拉| MUX_Mode2) /* mii1_txd1.rgmii1_txd1 */
- 0x128 (PIN_OUTPUT 下拉| MUX_Mode2) /* mii1_txd0.rgmii1_txd0 */
- 0x12c (PIN_OUTPUT 下拉| MUX_Mode2) /* mii1_txclk.rmii1_tclk *
- 0x130 (PIN_INPUT 下拉| MUX_Mode2) /* mii1_rxclk.rmii1_RCLK */
- 0x134 (PIN_INPUT_PULLUG_MODE2) /* mii1_rxd1.rgmii1_rxd3 */
- 0x138 (PIN_INPUT_PULLUX | MUX_MODE2) /* mii1_rxd0.rgmii1_rxd2 */
- 0x13c (PIN_INPUT_PULLUX | MUX_Mode2) /* mii1_rxd1.rgmii1_rxd1 */
- 0x140 (PIN_INPUT_PULLUX | MUX_MODE2) /* mii1_rxd0.rgmii1_rxd0 */
- >;
-};
+ >;
+};
- cpsw_sleep:cpsw_sleep{
- pinctrl-single、pins =<
-/* 从器件1复位值*/
- 0x114 (PIN_INPUT_PULLUX | MUX_MODE7)
- 0x118 (PIN_INPUT_PULLUX | MUX_MODE7)
- 0x11c (PIN_INPUT 下拉| MUX_MODE7)
- 0x120 (PIN_INPUT_PULLUX | MUX_MODE7)
- 0x124 (PIN_INPUT_PULLUX | MUX_MODE7)
- 0x128 (PIN_INPUT_PULLUX | MUX_MODE7)
- 0x12c (PIN_INPUT 下拉| MUX_MODE7)
- 0x130 (PIN_INPUT_PULLUX | MUX_MODE7)
- 0x134 (PIN_INPUT | PULL_DISABLE | MUX_MODE7)
- 0x138 (PIN_INPUT | PULL_DISABLE | MUX_MODE7)
- 0x13c (PIN_INPUT | PULL_DISABLE | MUX_MODE7)
- 0x140 (PIN_INPUT | PULL_DISABLE | MUX_MODE7)
-
- >;
-};
DaVinci_MDIO_DEFAULT:DaVinci_MDIO_DEFAULT{
pinctrl-single、pins =<
@@-1034、9 +104、10 @@
Mac{(&M)
从器件=<1>;
- pinctrl-names ="default"、"sleep";
/* pinctrl-names ="默认值"、"睡眠"; */
+ pinctrl-names ="default";
pinctrl-0 =<&cpsw_default>;
- pinctrl-1 =<&cpsw_sleep>;
+/-* pinctrl-1 =<&cpsw_sleep>;*/
状态="正常";
};
@@-1048、8 +105、8 @@
};
cpsw_emac0{&cpsw_emac0}
- phy_id =<&Davinci_mdio>、<0>;
- phy-mode ="RGMII";
+ phy_id =<&Davinci_mdio>、<3>;
+ phy-mode ="MII";
};
Minicom 日志:
eth0 Link encap:ethernet HWaddr c4:be :84:CB:12:32
inet6 addr:fe80::c6be:84FF:fectb:1232%132688/64范围:链接
运行多播 MTU:1500 公制:1的上广播
RX 数据包:0错误:0丢弃:0超限:0帧:0
TX 数据包:43错误:0丢弃:0超限:0载波:0
冲突:0 txqueuelen:1000
RX 字节:0 (0.0 B) TX 字节:7637 (7.4 KiB)
中断:143
LO 链路环接:本地环回
iNet addr:127.0.0.1 掩码:255.0.0.0
inet6 addr:::1%132688/128范围:主机
正在运行 MTU:65536 公制:1的上环回
RX 数据包:323错误:0丢弃:0超限:0帧:0
TX 数据包:323错误:0丢弃:0超限:0载波:0
冲突:0 txqueuelen:1
RX 字节:24632 (24.0 KiB) TX 字节:24632 (24.0 KiB)
root@AM437X-EVM:~# ethtool eth0
eth0的设置:
支持的端口:[ TP MII]
支持的链路模式: 10BaseT/Half 10baseT/Full
100BaseT /半个100BaseT /全双工
支持的暂停帧使用:否
支持自动协商:是
通告的链路模式: 10BaseT /半10baseT/全
100BaseT /半个100BaseT /全双工
广播的暂停帧使用:否
广播自协商:是
链接伙伴通告的链接模式: 10BaseT /半10baseT/全
100BaseT /半个100BaseT /全双工
链接伙伴通告的暂停帧使用:对称仅接收
连接方通告的自动协商:是
速度:100Mb/s
双工:全双工
端口:MII
PHYAD:3.
收发器:外部
自协商:开
支持唤醒:D
唤醒:D
当前消息级别:0x00000000 (0)
检测到链接:是
我附加了引脚比较图
提前感谢
