can't enable CONFIG_USE_STM32_HAL_DMA2D and CONFIG_USE_STM32_HAL_* in general


Tristen Ennemuist
 

erwan, you're a champion - thank you!


Erwan Gouriou
 

Hi,


Cheers
Erwan

On Wed, 6 May 2020 at 05:44, Tristen Ennemuist <tomeaus@...> wrote:
hello zephyr users

i'm using the stmf469i discovery board and i'm trying to enable some stm32 hal drivers but, try as i might, i cannot.

so for example, if i look in menuconfig for CONFIG_USE_STM32_HAL_DMA2D it appears but it is in red. if i press ? for information:

Name: USE_STM32_HAL_DMA2D
Type: bool
Value: n

Help:

  Enable STM32Cube Chrom-Art Accelerator™ controller (DMA2D) HAL module
  driver

Direct dependencies (=y):
     HAS_STM32CUBE(=y)

Kconfig definition, with parent deps. propagated to 'depends on'
================================================================

At modules/Kconfig.stm32:108
Included via /home/tristen/zephyrproject/zephyr/Kconfig:8 -> Kconfig.zephyr:10 -> modules/Kconfig:21
Menu path: (Top) -> Modules

  config USE_STM32_HAL_DMA2D
        bool
        depends on HAS_STM32CUBE(=y)
        help
          Enable STM32Cube Chrom-Art Accelerator™ controller (DMA2D) HAL module
          driver

working back it says it

HAS_STM32CUBE (=y)
SOC_SERIES_STM32F4X(=y)

yet i can't explicitly enable that specific CONFIG_USE_STM32_HAL_DMA2D and i can't include it in the prj.conf (errors about not being able to explicitly set it) and so i don't know what to do.

in my code i could

#include <stm32f4xx_hal_dma2d.h>

and compile without errors however the linking process failed whenever i tried to access a function, eg: HAL_DMA2D_Init. so it's like the environment knows i want to use that HAL and makes the include available to me, but i can't complete the build.

so i don't know if i'm getting hung up on the idea of whether linking will work if i could only enable CONFIG_USE_STM32_HAL_DMA2D or whether there is another way to get my project to compile/link the required hal driver, or indeed whether there are other options i'm not aware of.

when i look in 

zephyrproject/modules/hal/stm32/stm32cube/stm32f4xx/CMakeLists.txt

there is a whole lot of stuff about zephyr_library_sources_ifdef(CONFIG_USE_STM32_HAL_[all the things i would like to enable but cannot]) but the problem is i can't actually enable any of them.

anyway i tried google every which way and i'm stuck, so if anyone can help a brother out i'd be over the moon, cheers all, tristen.




Tristen Ennemuist
 

hello zephyr users

i'm using the stmf469i discovery board and i'm trying to enable some stm32 hal drivers but, try as i might, i cannot.

so for example, if i look in menuconfig for CONFIG_USE_STM32_HAL_DMA2D it appears but it is in red. if i press ? for information:

Name: USE_STM32_HAL_DMA2D
Type: bool
Value: n

Help:

  Enable STM32Cube Chrom-Art Accelerator™ controller (DMA2D) HAL module
  driver

Direct dependencies (=y):
     HAS_STM32CUBE(=y)

Kconfig definition, with parent deps. propagated to 'depends on'
================================================================

At modules/Kconfig.stm32:108
Included via /home/tristen/zephyrproject/zephyr/Kconfig:8 -> Kconfig.zephyr:10 -> modules/Kconfig:21
Menu path: (Top) -> Modules

  config USE_STM32_HAL_DMA2D
        bool
        depends on HAS_STM32CUBE(=y)
        help
          Enable STM32Cube Chrom-Art Accelerator™ controller (DMA2D) HAL module
          driver

working back it says it

HAS_STM32CUBE (=y)
SOC_SERIES_STM32F4X(=y)

yet i can't explicitly enable that specific CONFIG_USE_STM32_HAL_DMA2D and i can't include it in the prj.conf (errors about not being able to explicitly set it) and so i don't know what to do.

in my code i could

#include <stm32f4xx_hal_dma2d.h>

and compile without errors however the linking process failed whenever i tried to access a function, eg: HAL_DMA2D_Init. so it's like the environment knows i want to use that HAL and makes the include available to me, but i can't complete the build.

so i don't know if i'm getting hung up on the idea of whether linking will work if i could only enable CONFIG_USE_STM32_HAL_DMA2D or whether there is another way to get my project to compile/link the required hal driver, or indeed whether there are other options i'm not aware of.

when i look in 

zephyrproject/modules/hal/stm32/stm32cube/stm32f4xx/CMakeLists.txt

there is a whole lot of stuff about zephyr_library_sources_ifdef(CONFIG_USE_STM32_HAL_[all the things i would like to enable but cannot]) but the problem is i can't actually enable any of them.

anyway i tried google every which way and i'm stuck, so if anyone can help a brother out i'd be over the moon, cheers all, tristen.