Forums › Reference, Evaluation, and Development Boards › OSD3358-SM-RED › Custom board with no USB
Hi All,
I am working on a custom board, which does not have any USB ports. What exactly do I need to change in my linux image to make it work?
Thank you,
Samer
Samy,
If you left the USB interface pins unconnected in your design, you should be able to just boot up Linux without issue. If you need to explicitly disable the USB ports, you will have to make a custom device tree that does not enable the USB subsystem. Please see https://github.com/RobertCNelson/dtb-rebuilder for examples of device trees you can modify.
More info on device tree: https://octavosystems.com/app_notes/osd335x-design-tutorial/osd335x-lesson-2-minimal-linux-boot/linux-device-tree/
Another way to achieve this is by changing kernel configuration options when you build the kernel. See http://e2e.ti.com/support/arm/sitara_arm/f/791/p/413913/1470309 for additional info.
Neeraj
Hi Neeraj,
I tried booting up with beaglebone black image but it gets stuck at Uboot with following error:
Samy,
Can you post the complete boot logs so we can determine where in the boot process is it entering this fault condition?
If this is from uboot, you could try halting the autoboot process when the board gets to uboot by hitting the space bar(You will have 2 seconds to do this). You will have a uboot command line from which you should be able to use uboot commands to stop the USB module and USB PHY.
Also, see http://processors.wiki.ti.com/index.php/Booting_Linux_kernel_using_U-Boot
Best,
Neeraj
Hi Neeraj,
I was able to get rid of this error by generating a custom U-boot and Kernel without USB support. But once I created custom U-boot, somehow patch for booting custom board got removed, so I had to program my EEPROM with magic number so I can run my custom U-boot.
Now I am having trouble with my PHY. I am not able to get my network up. At u-boot I get this error:
Could not get PHY for cpsw: addr 0
And at my kernel boot I get “PHY not found” error.
How can I fix this issue?
Thank you,
Samy
Samy,
You can ignore the uboot error if you are not using ethernet at uboot. If you are unable to bring up the network after Linux boot, make sure you have the correct PHY address in the device tree. You can find the PHY address settings in the PHY datasheet. Here is an example of the PHY address setting on the Beaglebone Black device tree: https://github.com/RobertCNelson/dtb-rebuilder/blob/4.14-ti/src/arm/am335x-bone-common.dtsi#L421
Best,
Neeraj
Neeraj,
I am using LAN8710 as my PHY and beaglebone also uses this PHY so I would assume it should work without making any change to this section of device tree. I have very little understanding of device tree. Can you please also explain what this line means:
phy_id = <&davinci_mdio>, <0>;
Is this supposed to look at PHYAD0?
Samy,
If you are using the same hardware configuration as Beaglebone Black (same circuit with PHY connected to AM335x on MII1 and MDIO interfaces), you should be able to bring up the network without modification to the Beagle image, since you already have the magic number in your EEPROM. Coming to your question, the line is setting the PHY address ‘0’, i.e., the kernel is going to look for an ethernet PHY at address ‘0’ on the MDIO interface for identification and driver load. Note that the address of the ethernet PHY can be set in hardware (See section 3.7 in LAN8710 datasheet: http://ww1.microchip.com/downloads/en/DeviceDoc/00002164B.pdf).
Can you attach your boot logs for a closer look at the error?
Neeraj
Neeraj,
I have attached boot log for my custom linux image that I created using buildroot.
Samy
Samy,
From the boot logs, it looks like the processor is unable to detect the ethernet PHY by probing the MDIO interface. We will be reaching out to you shortly for a closer look at your PHY hardware configuration.
Neeraj
Neeraj,
I was finally able to get my network up and running. It turns out MDIO pin on LAN8710 was not making a good connection on my board, and I just re-soldered it and it worked. I really appreciate you and everyone at Octavo systems for helping me out with this.
Thanks,
Samy
Octavo Systems LLC all rights reserved
OCTAVO is registered in the U.S. Patent and Trademark Office. OSD, C-SiP, and the Octavo Logo are trademarks of Octavo Systems LLC.
"*" indicates required fields
"*" indicates required fields
"*" indicates required fields
"*" indicates required fields