SD Boot failure, Good PMIC And Clock

Forums Devices OSD335x-SM SD Boot failure, Good PMIC And Clock

Viewing 2 reply threads
  • Author
    Posts
    • #12075
      Aaron McFarlandamcfarland
      Participant

        I am bringing up a new board revision based on the OSD3358-512M-BSM. The OSM3358-SM is replacing another vendor’s SOM that was end-of-life. A functional prototype was made using a PocketBeagle and our current board revision, which worked well. The new board basically captured the PocketBeagle schematic with two tweaks:

        1) SYSBOOT[4..0] = 11100 (MMC1 -> MMC0 -> UART0 -> USB0 (SYSBOOT[15..12] = 0100, all others ‘0’) Using 100K pullups
        2) A LAN8720A Ethernet PHY was added to the MII1 interface

        Currently, the OSD3358 does not want to boot from the SD card interface. Here is what has been checked:
        * Rechecked the Schematic checklist app note
        * Power LED comes on
        * PMIC_GOOD (+3.3V) and WARMRSTN (+5V) are high
        * VDDS_DDR = 1.50V
        * VDD_CORE = 1.11V
        * VDD_MPU = 1.10V
        * VDDS_PLL = 1.81V
        * Oscillator looks clean on the scope at 24MHz
        * The SD Image was cloned from our working PocketBeagle image, and will boot the PocketBeagle without issue

        Here is where things don’t seem correct:
        * There is no CLK seen on the SD Card Interface
        * There is no character output seen on the UART0 TX during boot. (Using 115200 BAUD, but also verified no activity with a scope.)

        What would be the next step in debugging the bootup?

        I could change the SYSBOOT[4..0] = 11000 to match the PocketBeagle. I chose 11100 because we may add an eMMC0 FLASH in the future. Also, another thread mentioned using the TI JTAG debugger to verify operation, but I would have to order one.

        Thanks!

      • #12077
        Aaron McFarlandamcfarland
        Participant

          After re-walking the PocketBeagle and our board schematics for the up-teenth time, we found the SYSBOOT pullup rail had been tied to our board’s common 3.3V rail, not the OSM3358-SM SYS_VDD1_3P3V rail. We verified on the scope that the 3.3V rail powers up much later than the +5V used for VIN_AC. I checked the power rail sequence and current requirements and added a jumper tying the SYSBOOT pullups to SYS_VDD2_3P3V (we don’t have access to SYS_VDD1_3P3V). The device boots properly now.

        • #12095
          Eshtaartha BasuEshtaartha Basu
          Moderator

            Hello amcfarland,

            Glad to know that you were able to resolve the issue. Moving forward, we recommend updating your device tree to accurately capture any new hardware or other hardware modifications. You can use this app note as a starting point for device tree updates – https://octavosystems.com/app_notes/osd335x-design-tutorial/osd335x-lesson-2-minimal-linux-boot/linux-device-tree/.

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