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 Kumar Reddy DantuNeeraj 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 Kumar Reddy DantuNeeraj Dantu
            Moderator

              Thanks for the update!

              Neeraj

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