Neeraj Dantu

Forum Replies Created

Viewing 15 posts - 16 through 30 (of 595 total)
  • Author
    Posts
  • Neeraj Dantu
    Moderator

      Dinesh,

      Check out this coarse material that walks you through working with the M4 core on OSD32MP1(STM32MP1): https://octavosystems.com/courses/getting-started-with-embedded-linux/.

      Here is another resource for M4 development from ST: https://wiki.st.com/stm32mpu/wiki/Getting_started/STM32MP1_boards/STM32MP157x-EV1/Develop_on_Arm%C2%AE_Cortex%C2%AE-M4/Modify,_rebuild_and_reload_a_firmware.

      Best,
      Neeraj

      in reply to: OSD3358 not booting from SD card on custom board design #15562
      Neeraj Dantu
      Moderator

        Manish,

        The datasheet for the crystal is unclear on the load capacitance, but the part # you posted indicates 20pF load capacitance. Given the values of C4 and C6, the load capacitance comes out to 15pF, which is not that far off. I am not sure it will make a difference, but you can try removing R33 and seeing if that starts the oscillator? If you can, I would try replacing the oscillator as well.

        The clock input is critical for OSD3358 to work. So, if removing R33 does not work, you could drive an external 24MHz input to see if that boots the device.

        Best,
        Neeraj

        in reply to: OpenStlinux 6.1 Support #15550
        Neeraj Dantu
        Moderator

          Hey Song,

          Please take a look here: https://github.com/octavosystems/meta-octavo-osd32mp1/tree/mickledore_6.1

          Let me know if you have any issues.

          Best,
          Neeraj

          in reply to: Assistance Required: Issue with OS Image on OSD32MP1 Platform #15540
          Neeraj Dantu
          Moderator

            Dinesh S,

            Are you making any modifications to the meta layer?

            The log seems to indicate that the init script cannot find several of the basic linux commands that should be available like mkdir and grep. You can mount the SD card into your host machine and look at the root file system to see if these are in one of the bin folders.

            Please also check the Ubuntu version and packages installed are OK. The README provides information on these.

            Best,
            Neeraj

            in reply to: BOOTING From SD Card #15532
            Neeraj Dantu
            Moderator

              mark,

              EEPROM ID is needed for successful boot beyond SPL(1st stage bootloader). Without the ID, it appears like there is no activity on UART0(console) because debug header print is disabled in the SPL. Please see https://octavosystems.com/app_notes/osd335x-eeprom-during-boot/ for help on programming the EEPROM and booting the board into u-boot.

              Also, see https://github.com/RobertCNelson/omap-image-builder/tree/master/octavo#generate-image-file for building custom images.

              Best,
              Neeraj

              in reply to: Can LTDC Be Used for RGB Display on OSD32MP1-RED? #15521
              Neeraj Dantu
              Moderator

                Majda,

                Unfortunately, using LTDC as RGB will not be possible on OSD32MP1-RED board. However, there are options:

                1. You can use the DSI display output with X8 or JP6(Sheet 9 of the schematics).
                2. You can use ST’s EV1 dev board: https://www.st.com/en/evaluation-tools/stm32mp157f-ev1.html that has an RGB header. Any software developed on ST’s dev board can easily be ported to OSD32MP1 device with a DDR include file.

                Best,
                Neeraj

                in reply to: Can LTDC Be Used for RGB Display on OSD32MP1-RED? #15519
                Neeraj Dantu
                Moderator

                  Majda,

                  The LTDC interface is used for HDMI on OSD32MP1-RED. Please take a look at Sheet 7 of rev 1.1 here: https://octavosystems.com/docs/osd32mp15x-red-schematic-pdf/ for LTDC connections to a HDMI Framer chip U3 as well as the Micro HDMI slot X6.

                  Best,
                  Neeraj

                  in reply to: OSD3358 not booting from SD card on custom board design #15517
                  Neeraj Dantu
                  Moderator

                    Manish,

                    The power rail measurements look OK. The sequence of RTC_1P8 vs VDD_1P8 also looks OK.

                    However, lack of 24MHz on OSC0 input is concerning. This is the main clock input for the SoC and it needs this clock input to function. The lack of activity on SD_CLK and CMD lines is consistent with the fact that the main clock input for the SoC is not functional.

                    Please review the values for C4, C6 and R33 in your schematic. Take a look at Section “Input Clock Requirements” in AM335x datasheet: https://www.ti.com/lit/ds/symlink/am3358.pdf to understand OSC0 Crystal Circuit Requirements. Can you see 32KHz signal?

                    Best,
                    Neeraj

                    in reply to: OSD32MP153C GPIO read #15512
                    Neeraj Dantu
                    Moderator

                      Gil,

                      Glad you found the issue and appreciate the update!

                      Best,

                      Neeraj

                      in reply to: OSD32MP153C GPIO read #15502
                      Neeraj Dantu
                      Moderator

                        Based on the description of what is happening so far, USB1600 is producing an interrupt on the ALERT signal, but you do not see it detected on the kernel side. Is that correct?

                        If so I suggest:

                        Look at kernel messages for USB with “dmesg | grep usb” and make sure the IRQ is registered. The messages I see when I do this on OSD32MP1-RED:[    0.122420] usbcore: registered new interface driver usbfs1# dmesg | grep usb

                        [    0.122513] usbcore: registered new interface driver hub

                        [    0.122590] usbcore: registered new device driver usb

                        [    1.692445] usbcore: registered new interface driver pegasus

                        [    1.692533] usbcore: registered new interface driver asix

                        [    1.692617] usbcore: registered new interface driver ax88179_178a

                        [    1.692688] usbcore: registered new interface driver cdc_ether

                        [    1.692771] usbcore: registered new interface driver smsc75xx

                        [    1.692853] usbcore: registered new interface driver smsc95xx

                        [    1.692919] usbcore: registered new interface driver net1080

                        [    1.692984] usbcore: registered new interface driver cdc_subset

                        [    1.693058] usbcore: registered new interface driver zaurus

                        [    1.693154] usbcore: registered new interface driver cdc_ncm

                        [    1.696494] usbcore: registered new interface driver usb-storage

                        [    1.710775] usbcore: registered new interface driver usbhid

                        [    1.710792] usbhid: USB HID core driver

                        [    3.323124] vdd_usb: supplied by vin

                        [    3.550022] stm32-usbphyc 5a006000.usbphyc: registered rev:1.0

                        [    3.589060] dwc2 49000000.usb-otg: supply vusb_d not found, using dummy regulator

                        [    3.595971] dwc2 49000000.usb-otg: supply vusb_a not found, using dummy regulator

                        [    3.738244] dwc2 49000000.usb-otg: EPs: 9, dedicated fifos, 952 entries in SPRAM

                        [    3.746814] dwc2 49000000.usb-otg: DWC OTG Controller

                        [    3.750562] dwc2 49000000.usb-otg: new USB bus registered, assigned bus number 1

                        [    3.757906] dwc2 49000000.usb-otg: irq 98, io mem 0x49000000

                        [    3.773879] ehci-platform 5800d000.usbh-ehci: EHCI Host Controller

                        [    3.778756] ehci-platform 5800d000.usbh-ehci: new USB bus registered, assigned bus number 2

                        [    3.787902] ehci-platform 5800d000.usbh-ehci: irq 71, io mem 0x5800d000

                        [    3.817661] ehci-platform 5800d000.usbh-ehci: USB 2.0 started, EHCI 1.00

                        [    3.832919] ohci-platform 5800c000.usbh-ohci: Generic Platform OHCI controller

                        [    3.838833] ohci-platform 5800c000.usbh-ohci: new USB bus registered, assigned bus number 3

                        [    3.847510] ohci-platform 5800c000.usbh-ohci: irq 61, io mem 0x5800c000

                        [   27.274310] usb0: HOST MAC a0:39:f4:d0:0d:9a

                        [   27.284648] usb0: MAC ee:42:52:59:6b:25

                        [   27.287112] dwc2 49000000.usb-otg: bound driver configfs-gadget

                        [   34.397708] usb33: supplied by vdd_usb

                        IRQ 98 is what I see trigger when there is a device plugged in.

                        You can “cat /proc/interrupts” to get the interrupt details and # triggered. 98 should look like the following:

                        ” 98:       3493          0  stm32-exti-h-direct  44 Level     49000000.usb-otg, 49000000.usb-otg, dwc2_hsotg:usb1″

                         

                        If I am wrong and STUSB1600 is not generating the alert signal, you mentioned above that the mask register 0x0C does not look right. I am not sure what the reason for this would be, but you could modify this register by issuing a “i2cset” command from linux command line and see if that fixes the interrupt generation.

                         

                        Best,

                        Neeraj

                         

                        in reply to: OSD32MP153C GPIO read #15500
                        Neeraj Dantu
                        Moderator

                          Gil,

                          The attached circuit configuration should work correctly. A couple of changes I noticed in device tree from ST’s DK board: the GPIO pin used was declared as ANALOG until 5.10 and has changed to GPIO since 5.15 kernel. The IRQ_TYPE definition in the device tree has also changed since 5.10. I have not looked at the driver changes, can you check which version of the kernel you are using and try the configurations that match?

                          Best,
                          Neeraj

                          in reply to: Dual Ethernet KSZ9031 #15498
                          Neeraj Dantu
                          Moderator

                            Pooja,

                            Which kernel version are you using?

                            I suggest looking at ethernet device tree for EVM-SK: https://github.com/RobertCNelson/dtb-rebuilder/blob/4.19-ti/src/arm/am335x-evmsk.dts corresponding to the kernel version you are using. Although the PHY is different, the device tree should not change much.

                            A couple of things you might need to change :The phy-mode depending on whether TX/RX delays are required. See https://www.kernel.org/doc/Documentation/devicetree/bindings/net/ethernet-controller.yaml for bindings.  phy_id address based on hardware configured phy address: https://github.com/RobertCNelson/dtb-rebuilder/blob/4.19-ti/src/arm/am335x-evmsk.dts#L663. Please note that these examples are kernel version specific. You will need to match the entries with the kernel version you are running on the device.

                            Best,

                            Neeraj

                            • This reply was modified 3 months, 1 week ago by Neeraj Dantu.
                            Neeraj Dantu
                            Moderator

                              C spengler,

                              It seems like Yocto does stuff to binaries: https://docs.yoctoproject.org/dev/dev-manual/prebuilt-libraries.html. May be yocto is stripping the elf file when it is packaging?

                              There should be log files associated with each recipe as described here: https://docs.yoctoproject.org/dev-manual/new-recipe.html#running-a-build-on-the-recipe.

                              Best,

                              Neeraj

                              in reply to: Dunfell kernel oops on boot in pmic_irq #15490
                              Neeraj Dantu
                              Moderator

                                C Spengler,

                                It looks like PMIC_BSTOUT is experiencing an over current condition. I have seen this condition trigger when there is a large amount of capacitance on BSTOUT leading to an inrush current situation that exceeds the current limit on this rail. Please remove the large bypass capacitors and check if the issue persists.

                                Best,

                                Neeraj

                                in reply to: OSD3358-512M-BAS Reball #15489
                                Neeraj Dantu
                                Moderator

                                  Javas,

                                  We do not re-ball parts, but we have worked with several rework outfits to re-ball parts successfully for debug. We recommend paying close attention to the storage and reflow requirements outlined in sections 9.2 and 9.3 of the datasheet: https://octavosystems.com/docs/osd335x-datasheet/. Baking is recommended before any reflow events as the devices will have been stored in uncontrolled environment.

                                   

                                  Best,

                                  Neeraj

                                Viewing 15 posts - 16 through 30 (of 595 total)