Boot Issues from eMMC

Forums Devices OSD335x C-SiP Boot Issues from eMMC

Tagged: 

Viewing 10 reply threads
  • Author
    Posts
    • #11123
      Adam BiermanABierman1986
      Participant

        I have an OSD335x-C-SiP that I am bringing up on a custom board. We ran into intial boot problems due to the EEPROM being blank. We used the patch and other methods to write in the ID for the OSD00, and we are able to completely boot into Linux from the SD card. However, when we flash the SD card contents onto the eMMC, we are unable to boot from the eMMC. We can boot from SD, and look into the eMMC and see that the data has been written correctly, but we cannot boot from this state with the SD card removed. Do you have any idea what might be causing this hang up in the system?

      • #11126
        Adam BiermanABierman1986
        Participant

          Based on our investigation, it appears that the SPL is not being read out of RAM correctly, we do not get the “U-BOOT SPL 2018.01…” message that we expect. Is there some reason the eMMC would be having problems loading the SPL into RAM to execute out?

        • #11138
          Neeraj Kumar Reddy DantuNeeraj Dantu
          Moderator

            ABierman1986,

            The issue probably is boot mode setting. If the MMC interface on which the eMMC is present is not in the “Boot sequence” for a particular boot setting, the ROM code will not poll the eMMC for boot image.

            Please take a look at Table 26-7 of AM335x Technical Reference Manual(https://www.ti.com/lit/ug/spruh73q/spruh73q.pdf) for boot mode settings and corresponding Boot sequences. Make sure the the MMC interface the eMMC is on is in the boot sequence for the SYSBOOT pin configuration you have or change the SYSBOOT configuration to include the MMC interface.

            If the MMC interface is in the Boot Sequence, check whether the ROM code gets stuck on an interface with higher priority. You can probe the MMC_CLK line to verify whether ROM code is probing the eMMC for a valid image.

            Best,

            Neeraj

          • #11148
            Adam BiermanABierman1986
            Participant

              Hi Neeraj,

              We’ve checked the boot configuration a number of times, it matches what we have been using with the Beaglebone black, I’ve attached an image of the boot section in case you see something we’ve missed. On the “C” version of this IC, is the eMMC CLK line routed out? I have probed the MMC clock line to the SD card, and we can observe it operating as expected.

              Attachments:
            • #11156
              Neeraj Kumar Reddy DantuNeeraj Dantu
              Moderator

                ABierman1986,

                A couple of things:

                1. See if you have additional components on the LCD interface. You can probe the SYSBOOT pins(at boot-up) to verify that the boot mode is being set correctly. If there is another device on the LCD interface that is pulling the SYSBOOT pins differently(Note that these pull-ups / pull-downs are weak), the ROM code might be probing the wrong boot interfaces.

                2. Verify that you have a bootable image in the eMMC. You can boot via SD card and mount the partitions of the eMMC to check whether it has been flashed correctly. Also verify that you are flashing the patched SPL and U-Boot that skip EEPROM ID verification.

                 

                I missed the fact that you are using a C-SiP. As the eMMC is internal, you would not be able to probe the CLK line.

                Best,

                Neeraj

                • This reply was modified 3 years, 9 months ago by Neeraj Kumar Reddy DantuNeeraj Dantu.
              • #11158
                Adam BiermanABierman1986
                Participant

                  Hi Neeraj,

                  Great thank you we will try this, we don’t have anything other than the LCD on those lines, and we don’t try to talk to the screen until well into the boot process so I am hopefuly that’s not what we are seeing but I can try and probe them.

                  Is there a message in particular that we should be looking for after mounting the eMMC contents to ensure the SPL and U-boot are flashed correctly?

                  Thanks,

                  Adam

                • #11170
                  Neeraj Kumar Reddy DantuNeeraj Dantu
                  Moderator

                    Adam,

                    The Flashing script should provide a good error message if something is going wrong. Please verify the correct mmcblk’X'(corresponding to eMMC) is being flashed.

                    I would also boot the board without connecting the LCD to remove any unknown pull-up/pull-down messing with the boot configuration.

                    As long as you are flashing the patched SPL/U-Boot(with EEPROM ID patches), you should see boot-up messages on the console. That is one more thing to check.

                    Best,

                    Neeraj

                  • #11185
                    Adam BiermanABierman1986
                    Participant

                      Hi Neeraj,

                      Thank you for this feedback. My boss, Joe, may be chiming in on this thread with additional details as he has been working on the programming side of this project, I have been doing the hardware mostly. He attempted your suggestions and got the attached log file and his report on what he found:

                      “Attached is the log file of booting from an SDcard and flashing the eMMC. I did not see any obvious errors.. Once the flashing was complete, I booted from the SDcard, mounted the eMMC (/dev/mmcblk1p1) and saw that it did flash the MMC correctly. I made sure the patched SPL/U-boot was in the /opt/backup/uboot directory before flashing. I removed the LCD and the SDcard and tried booting from the eMMC but only got “CCCC” on the UART. I booted from the SDcard again and redid the dd commands to copy the SPL/U-boot images to the eMMC (/dev/mmcblk1). Removed the SDcard and still only get “CCCC” on the UART. I assume I am getting the SPL/U-boot images patched correctly or else I would not be able to boot from the SDcard. Is there a way to confirm what images are on the eMMC? Other ideas?”

                      • This reply was modified 3 years, 9 months ago by Adam BiermanABierman1986. Reason: log file not allowed
                    • #11191
                      Joe Bakeljoebakel
                      Participant

                        Neeraj,
                        We have found the problem. During the development, we added setting a 4096 partition size to the sfdisk command in /opt/scripts/tools/eMMC/functions.sh script. When I returned the functions.sh script to the original code, we were able to boot off of the eMMC after flashing from SDcard to the eMMC.

                        Thanks for all the help on this problem.
                        Joe

                      • #11194
                        Neeraj Kumar Reddy DantuNeeraj Dantu
                        Moderator

                          Joe,

                          Appreciate the update. Please let us know if you have more questions.

                          Best,

                          Neeraj

                        • #11852
                          Emanuel KaspereitEmmaKa
                          Participant

                            We have purchased an OSD32MP1-RED board. Booting from emmc did not work.

                            So I rummaged in the forum and looked at and tried answer # 11732 from Neeraj, unsuccessful. The USR LED is switched on after flashing, the partitions are created on the emmc, but booting is not possible. Only the power LED lights up.

                            No heartbeat and nothing else happens.  What else could that be?

                            Regards,
                            Manu

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