硬件做了双千兆网口,在u-boot中只用了其中一个,是没有问题的。
linux3.18.30内核启动后ping不通,板子(192.168.1.225)和电脑(192.168.1.11)都是接在路由器上的,电脑上用抓包工具没有抓到包:
[root@Kernel3.18 ]# ifconfig eth0 192.168.1.225 netmask 255.255.255.0 up
[ 238.316574] net eth0: initializing cpsw version 1.12 (0)
[ 238.401458] net eth0: phy found : id is : 0x4dd074
[ 238.414343] 8021q: adding VLAN 0 to HW filter on device eth0
[ 242.401736] cpsw 4a100000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[root@Kernel3.18 ]# ifconfig
eth0 Link encap:Ethernet HWaddr 68:C9:0B:F7:80:6A
inet addr:192.168.1.225 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:720 (720.0 B)
Interrupt:171
[root@Kernel3.18 ]# ping 192.168.1.11
PING 192.168.1.11 (192.168.1.11): 56 data bytes
^C
--- 192.168.1.11 ping statistics ---
19 packets transmitted, 0 packets received, 100% packet loss
Device tree是参照am335x-evmsk.dts设置的:
cpsw_default: cpsw_default {
pinctrl-single,pins = <
/* Slave 1 */
0x114 ( PIN_OUTPUT | MUX_MODE2 ) /* (J16) gmii1_txen.rgmii1_tctl */
0x118 ( PIN_INPUT | MUX_MODE2 ) /* (J17) gmii1_rxdv.rgmii1_rctl */
0x12c ( PIN_OUTPUT | MUX_MODE2 ) /* (K18) gmii1_txclk.rgmii1_tclk */
0x130 ( PIN_INPUT | MUX_MODE2 ) /* (L18) gmii1_rxclk.rgmii1_rclk */
0x128 ( PIN_OUTPUT | MUX_MODE2 ) /* (K17) gmii1_txd0.rgmii1_td0 */
0x124 ( PIN_OUTPUT | MUX_MODE2 ) /* (K16) gmii1_txd1.rgmii1_td1 */
0x120 ( PIN_OUTPUT | MUX_MODE2 ) /* (K15) gmii1_txd2.rgmii1_td2 */
0x11c ( PIN_OUTPUT | MUX_MODE2 ) /* (J18) gmii1_txd3.rgmii1_td3 */
0x140 ( PIN_INPUT | MUX_MODE2 ) /* (M16) gmii1_rxd0.rgmii1_rd0 */
0x13c ( PIN_INPUT | MUX_MODE2 ) /* (L15) gmii1_rxd1.rgmii1_rd1 */
0x138 ( PIN_INPUT | MUX_MODE2 ) /* (L16) gmii1_rxd2.rgmii1_rd2 */
0x134 ( PIN_INPUT | MUX_MODE2 ) /* (L17) gmii1_rxd3.rgmii1_rd3 */
/* Slave 2 */
0x40 ( PIN_OUTPUT | MUX_MODE2 ) /* (R13) gpmc_a0.rgmii2_tctl */
0x44 ( PIN_INPUT | MUX_MODE2 ) /* (V14) gpmc_a1.rgmii2_rctl */
0x58 ( PIN_OUTPUT | MUX_MODE2 ) /* (U15) gpmc_a6.rgmii2_tclk */
0x5c ( PIN_INPUT | MUX_MODE2 ) /* (T15) gpmc_a7.rgmii2_rclk */
0x54 ( PIN_OUTPUT | MUX_MODE2 ) /* (V15) gpmc_a5.rgmii2_td0 */
0x50 ( PIN_OUTPUT | MUX_MODE2 ) /* (R14) gpmc_a4.rgmii2_td1 */
0x4c ( PIN_OUTPUT | MUX_MODE2 ) /* (T14) gpmc_a3.rgmii2_td2 */
0x48 ( PIN_OUTPUT | MUX_MODE2 ) /* (U14) gpmc_a2.rgmii2_td3 */
0x6c ( PIN_INPUT | MUX_MODE2 ) /* (V17) gpmc_a11.rgmii2_rd0 */
0x68 ( PIN_INPUT | MUX_MODE2 ) /* (T16) gpmc_a10.rgmii2_rd1 */
0x64 ( PIN_INPUT | MUX_MODE2 ) /* (U16) gpmc_a9.rgmii2_rd2 */
0x60 ( PIN_INPUT | MUX_MODE2 ) /* (V16) gpmc_a8.rgmii2_rd3 */
>;
};
cpsw_sleep: cpsw_sleep {
pinctrl-single,pins = <
/* Slave 1 reset value */
0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
0x118 (PIN_INPUT_PULLDOWN | MUX_MODE7)
0x11c (PIN_INPUT_PULLDOWN | MUX_MODE7)
0x120 (PIN_INPUT_PULLDOWN | MUX_MODE7)
0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7)
0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)
0x12c (PIN_INPUT_PULLDOWN | MUX_MODE7)
0x130 (PIN_INPUT_PULLDOWN | MUX_MODE7)
0x134 (PIN_INPUT_PULLDOWN | MUX_MODE7)
0x138 (PIN_INPUT_PULLDOWN | MUX_MODE7)
0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7)
0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7)
/* Slave 2 reset value */
0x40 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (R13) gpmc_a0.rgmii2_tctl */
0x44 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (V14) gpmc_a1.rgmii2_rctl */
0x58 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (U15) gpmc_a6.rgmii2_tclk */
0x5c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (T15) gpmc_a7.rgmii2_rclk */
0x54 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (V15) gpmc_a5.rgmii2_td0 */
0x50 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (R14) gpmc_a4.rgmii2_td1 */
0x4c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (T14) gpmc_a3.rgmii2_td2 */
0x48 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (U14) gpmc_a2.rgmii2_td3 */
0x6c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (V17) gpmc_a11.rgmii2_rd0 */
0x68 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (T16) gpmc_a10.rgmii2_rd1 */
0x64 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (U16) gpmc_a9.rgmii2_rd2 */
0x60 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* (V16) gpmc_a8.rgmii2_rd3 */
>;
};
davinci_mdio_default: davinci_mdio_default {
pinctrl-single,pins = <
/* MDIO */
0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* mdio_data.mdio_data */
0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_clk.mdio_clk */
>;
};
davinci_mdio_sleep: davinci_mdio_sleep {
pinctrl-single,pins = <
/* MDIO reset value */
0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7)
0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)
>;
};
&mac {
pinctrl-names = "default", "sleep";
pinctrl-0 = <&cpsw_default>;
pinctrl-1 = <&cpsw_sleep>;
dual_emac = <1>;
status = "okay";
};
&davinci_mdio {
pinctrl-names = "default", "sleep";
pinctrl-0 = <&davinci_mdio_default>;
pinctrl-1 = <&davinci_mdio_sleep>;
status = "okay";
};
&cpsw_emac0 {
phy_id = <&davinci_mdio>, <0>;
phy-mode = "rgmii-txid";
dual_emac_res_vlan = <1>;
};
&cpsw_emac1 {
phy_id = <&davinci_mdio>, <1>;
phy-mode = "rgmii-txid";
dual_emac_res_vlan = <2>;
};
内核配置是按照processors.wiki.ti.com/.../Linux_Core_CPSW_User's_Guide上面配置的。
问题出在哪里了呢???请各位指导一下!!!