AnsweredAssumed Answered

Unable to communicate with an RMII Ethernet Switch

Question asked by HILAIRE Nicolas on Sep 29, 2014
Latest reply on Sep 30, 2014 by HILAIRE Nicolas

We're currently triying to communicate using RMII bus with a Micrel Ethernet Switch (KZS8895RQ).

We also using MDC / MDIO link to configure it.


The MDC / MDIO link works well. We can see when a connection is established on a port of the switch.


We have plugged the RMII of our MPC8377 to the SW5 MAC of the Switch.


We have configured the MAC of the Switch to work in "PHY Mode" to permit to communicate with the MAC of our MPC8377.


We have successfully configured the MPC8377 to work in RMII mode and not in RGMII (default value)


We have made this connection:


The clock is generated at 50MHz by the Switch.


We are in Linux 2.6.38  Environment with an adapted generic driver from micrel.c file.

We are using dts to configure our switch :


mdio@24520 {

  #address-cells = <1>;

  #size-cells = <0>;

  compatible = "fsl,gianfar-mdio";

  reg = <0x24520 0x20>;


  ksz8895_1: ethernet-phy@1 {

  interrupt-parent = <&ipic>;

  reg = <0x1>;

  device_type = "ethernet-phy";




enet0: ethernet@25000 {

  #address-cells = <1>;

  #size-cells = <1>;

  cell-index = <0>;

  device_type = "network";

  model = "eTSEC";

  compatible = "gianfar";

  reg = <0x25000 0x1000>;

  ranges = <0x0 0x25000 0x1000>;

  local-mac-address = [ 12 23 45 56 67 01 ];

  interrupts = <35 0x8 36 0x8 37 0x8>;

  phy-connection-type = "rmii";

  interrupt-parent = <&ipic>;

  phy-handle = <&ksz8895_1>;

  sleep = <&pmc 0xc0000000>;




When we make ping from the linux board to a PC connected to the switch we can see data on the RMII bus with a scope but never on the Ethernet

When we make a ping from the PC to the board, wa can see RMII data but linux never see them.

When we plug two computer onto the switch they communicate successfully (so the ethernet transformer are Ok)


Why ?


Any idea ? or question to clarify my request ?