Ethernet Gadget in U-Boot

Forums Devices OSD335x-SM Ethernet Gadget in U-Boot

Viewing 3 reply threads
  • Author
    Posts
    • #9147
      Stephan Reberssrebers
      Participant

        Hello Forum,

        I’m having some trouble getting the USB RNDIS getting to work in U-Boot with (custom) boards that have the OSD335x-SM device. I created a SD card with MLO and U-Boot image and I configured a static ip. On the host I created network interface with the corresponding host address.

        This works fine for a stock Beagle Bone Black but not for our proto board (stripped SM-RED). I suspected the difference in EEPROM could be an issue, so I cloned the contents from the BBB in the proto board but no effect. I tried two versions of U-Boot but both fail on a time out. I also tried on a Pocket Beagle and the OSD3358-SM-RED with same bootloaders, they also fail.

        The RNDIS works without problems when the kernel runs with both Linux and Windows hosts. I cannot figure out what the difference in hardware/software can explain this behavior. Any help is much appreciated.

         

      • #9156
        Neeraj Dantu
        Moderator

          srebers,

          From the logs(last lines), it looks like the board is trying to use CPSW(ethernet PHY) as the communication interface. The RED board uses a different PHY than the Beaglebone Black. Can you verify that the USB RNDIS is being used by using “printenv ethact”?

          Addition info in this thread: https://stackoverflow.com/questions/32747239/can-u-boot-support-more-than-one-ethernet-port

          Also note that we demonstrated TFTP boot over USB interface on the RED board in this app note: https://octavosystems.com/app_notes/programming-emmc-with-usb/

          Please follow up here.

          Best,

          Neeraj

        • #9165
          Stephan Reberssrebers
          Participant

            Hi Neeraj,

            I finally figured this one out. It turned out that that the hardware designer decided to put a 10k pull down on the usb0_id line. Strangely enough this did not have an effect, at least not noticeable, during Linux operation, only in U-Boot.
            I also thought that U-Boot was trying the CPSW in MII mode and was giving a timeout because our board uses RGMII. It doesn’t matter how the board is identified, Beagle Bone Black or Pocketbeagle, with the resistor removed and “setenv ethact usb_ether” it will use the USB RNDIS and work correctly.
            My statement that it didn’t work on a Pocketbeagle/OSD3358-SM-RED board was incorrect. I think during all the testing some confusion occurred.

            Thanks a lot for your input.

            Regards,
            Stephan

          • #9168
            Neeraj Dantu
            Moderator

              Thanks for the update!

              Neeraj

          Viewing 3 reply threads
          • You must be logged in to reply to this topic.