Skip to main content
Visitor II
June 9, 2023
Question

Using I2S on stm32mp135f-dk

  • June 9, 2023
  • 2 replies
  • 1527 views

Hi I am trying to configure I2S with stm32mp135f-dk so that i2s signals are accessible from 40 pin header. I am using the realtime package (build-openstlinuxweston-stm32mp13-rt). I was checking the instruction from you web and it tells that I should enable I2S using menuconfig. I am seeing that I2S is a module that I cannot directly enable. How can I check that this is in the build?

Also I would need some support regarding the device tree configuration. Do I need to run STM32CubeMX and generate new devicetree files to get something activated? Or is there some existing dts file which I could edit and add my i2s driver in use there? It looks like that stm32mp135f-dk.dts does not currently contain any i2s related configuration.

    This topic has been closed for replies.

    2 replies

    Technical Moderator
    June 9, 2023

    Hello @Kimmo Raatikainen​ ,

    If i'm right, you followed this page: https://wiki.st.com/stm32mpu/wiki/I2S_Linux_driver#Kernel_Configuration

    To enable the I2S interface support as a built-in and not a module, you have to push one more time the "space" key. If you never used menuconfig, I would recommend you to also read this page:

    https://wiki.st.com/stm32mpu/wiki/Menuconfig_or_how_to_configure_kernel#Menuconfig_and_Developer_Package

    useful keys to know:
    enter: enter in config subdirectory
    space: hit several times to either select [*], select in module [m] or unselect [ ] 
    /: to search for a keyword, this is usefull to navigate in tree
    ?: to have more information on selected line

    If you have a "*" instead of a "m", it means that you correctly enabled it as a "built-in".

    ---

    Regarding the Device Tree (DTS) question, I would advise you to understand to read this page:

    https://wiki.st.com/stm32mpu/wiki/STM32_MPU_device_tree

    If you are building a developer package, you can find the linux device tree in "arch/arm/boot/dts".

    If you are using the distribution package , you have to follow the last paragraph of the page that I sent above.

    Hope it helps,

    Best Regards,

    Kevin

    In order to give better visibility on the answered topics, please click on 'Select as Best' on the reply which solved your issue or answered your question. See also 'Best Answers'

    KRaat.1Author
    Visitor II
    June 12, 2023

    Hi Kevin,

    thank you for your answer. Yes I was following that #kernel_configuration page, posting link to ticket was not possible for new users but you had it figured out. I have been able to use menuconfig, there option cannot be changed to * but only blank or M are valid options. As a result the option is generated as CONF_SND_SOC_STM32_I2S=m.

    I am using distribution package for build. Are you suggesting that I need to generate the dts files to get I2S activated?

    Br,

    Kimmo