Assistance Needed for Enabling UART7, USART1, and UART8 on OSDMP157F-RED v1.1

Forums Devices OSD32MP15x Assistance Needed for Enabling UART7, USART1, and UART8 on OSDMP157F-RED v1.1

Tagged: 

Viewing 4 reply threads
  • Author
    Posts
    • #15585
      Dinesh SDinesh S
      Participant

        Hello Sir,

        I am seeking assistance with enabling UART7, USART1, and now UART8 on the OSDMP157F-RED board version 1.1. Despite configuring the device tree for these UARTs, they are not appearing under /dev/tty* and also disabled dcmi and camera by virtual kernel then removed from dts files.

        Below are the relevant configuration snippets used in my device tree:

        USART1 Pin Configuration

        • USART1_TX (Pin Z2):
          • Configured for alternate function 7 (AF7).
          • Disabled bias to avoid any interference with data transmission.
          • Set to push-pull drive mode to ensure proper signal integrity.
          • Configured with a slew rate of 0 for optimal timing characteristics.
        • USART1_RX (Pin Z1):
          • Configured for alternate function 7 (AF7).
          • Bias disabled to prevent unintended pull-ups or pull-downs.

        The pins are also configured for idle and sleep states to transition safely when the UART is not in use.

         

        UART7 Pin Configuration

        • UART7_TX (Pin F7):
          • Configured for alternate function 7 (AF7).
          • Disabled bias to avoid incorrect pull configurations.
          • Set to push-pull drive for proper output signaling.
          • Slew rate set to 0 for stable operation.
        • UART7_RX (Pin F6):
          • Configured for alternate function 7 (AF7).
          • Bias disabled to prevent any unintentional signal modifications.

        This setup ensures UART7 is ready for data communication with proper electrical characteristics.

         

        UART8 Pin Configuration

        • UART8_RX (Pin E0):
          • Configured for alternate function 8 (AF8).
          • Bias disabled to ensure the pin operates cleanly as an input.
        • UART8_TX (Pin E1):
          • Configured for alternate function 8 (AF8).
          • Bias disabled, with a push-pull drive mode for robust signal transmission.
          • Slew rate set to 0 to maintain reliable performance.

        Idle and sleep pin configurations have also been defined for UART8, ensuring smooth transitions in low-power modes.

        Problem:

        • USART2 and USART3 are working fine, but UART7, USART1, and now UART8 are not appearing in /dev/tty*.
        • These UARTs are essential for my project, and I also need to enable additional UARTs.

        Questions:

        1. Why are UART7, USART1, and UART8 not appearing despite the above configuration?
        2. Are there additional steps to enable these UARTs on the OSDMP157F-RED board?
        3. How can I enable more UARTs on this board effectively?

        Any help or insights would be highly appreciated.

         

         

        • This topic was modified 1 week, 1 day ago by Dinesh SDinesh S.
        • This topic was modified 1 week, 1 day ago by Dinesh SDinesh S.
        • This topic was modified 1 week, 1 day ago by Dinesh SDinesh S.
        • This topic was modified 1 week, 1 day ago by Dinesh SDinesh S.
      • #15590
        Dinesh SDinesh S
        Participant

          [    2.465043] stm32-usart: probe of 40018000.serial failed with error -22
          [    2.471995] stm32-usart: probe of 40019000.serial failed with error -22
          [    2.478636] stm32-usart: probe of 5c000000.serial failed with error -22

          i am getting error like this sir

          • This reply was modified 1 week, 1 day ago by Dinesh SDinesh S.
        • #15598
          Neeraj Dantu
          Moderator

            Dinesh,

            Seems like the kernel is unable to initialize the UART devices you are trying to setup. https://elixir.bootlin.com/linux/v6.11.11/source/include/uapi/asm-generic/errno-base.h#L26 shows the generic error codes for Linux kernel, here indicating an invalid argument somewhere in the driver probe function of the UART driver for STM32 inside OSD32.

            Please review https://wiki.st.com/stm32mpu/wiki/Serial_TTY_device_tree_configuration and https://wiki.st.com/stm32mpu/wiki/Trace_and_debug_scenario_-_UART_issue for a reference to device tree and a good how-to on debugging the issue. May be there is an issue with DMA channel usage, in which case you can disable the use of DMA for the UARTs by following the device tree guide linked above.

            Best,
            Neeraj

          • #15656
            Dinesh SDinesh S
            Participant

              Hi Sir,

              Thank you for pointing me to the references and sharing the insights.

              I have already reviewed the configurations mentioned in the links, including the device tree and clock settings, as well as the DMA usage for the UARTs. I have tested multiple scenarios, such as disabling the use of DMA for the UARTs and rechecking the clock configurations thoroughly, but unfortunately, I am still unable to get any UART devices initialized.

              The kernel continues to show the same error (probe of {40018000.serial} failed with error {-22}), indicating that the issue persists. If you have any further suggestions or specific debugging steps that could help pinpoint the root cause, I would greatly appreciate it.

              Best regards,
              Dinesh

            • #15665
              Neeraj Dantu
              Moderator

                Dinesh,

                Have you checked whether the pinmux is correct? If there are pin conflicts in the device tree(same pin used by different peripherals), that could be an issue. An additional reference is the BRK, which implements UART5, UART7 and UART8: https://github.com/octavosystems/OSD32MP1-BRK-device-tree/tree/kirkstone.

                If everything mentioned so far has been verified, please post the device tree you are using as well as the complete “dmesg” output so I can take a look.

                Best,
                Neeraj

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