1# STM32CUBE HAL config 2 3# Copyright (c) 2016 Linaro Limited. 4# SPDX-License-Identifier: Apache-2.0 5 6config ZEPHYR_HAL_STM32_MODULE 7 bool 8 9config ZEPHYR_HAL_STM32_MODULE_BLOBS 10 bool 11 12config HAS_STM32LIB 13 bool 14 15config HAS_STM32CUBE 16 bool 17 select HAS_CMSIS_CORE 18 depends on SOC_FAMILY_STM32 19 20if HAS_STM32CUBE 21 22config USE_STM32_HAL_ADC 23 bool 24 help 25 Enable STM32Cube Analog-to-Digital Converter (ADC) HAL module driver 26 27config USE_STM32_HAL_ADC_EX 28 bool 29 help 30 Enable STM32Cube Extended Analog-to-Digital Converter (ADC) HAL 31 module driver 32 33config USE_STM32_HAL_CAN 34 bool 35 help 36 Enable STM32Cube Controller Area Network (CAN) HAL module driver 37 38config USE_STM32_HAL_CEC 39 bool 40 help 41 Enable STM32Cube HDMI-CEC controller (CEC) HAL module driver 42 43config USE_STM32_HAL_COMP 44 bool 45 help 46 Enable STM32Cube Ultra Low Power Comparator channels (COMP) HAL module 47 driver 48 49config USE_STM32_HAL_CORDIC 50 bool 51 help 52 Enable STM32Cube CORDIC co-processor (CORDIC) functions HAL module 53 driver 54 55config USE_STM32_HAL_CORTEX 56 bool 57 help 58 Enable STM32Cube CORTEX HAL module driver 59 60config USE_STM32_HAL_CRC 61 bool 62 help 63 Enable STM32Cube Cyclic redundancy check calculation unit (CRC) HAL 64 module driver 65 66config USE_STM32_HAL_CRC_EX 67 bool 68 help 69 Enable STM32Cube Extended Cyclic redundancy check calculation unit 70 (CRC) HAL module driver 71 72config USE_STM32_HAL_CRYP 73 bool 74 help 75 Enable STM32Cube Cryptographic processor (CRYP) HAL module driver 76 77config USE_STM32_HAL_CRYP_EX 78 bool 79 help 80 Enable STM32Cube Extended Cryptographic processor (CRYP) HAL module 81 driver 82 83config USE_STM32_HAL_DAC 84 bool 85 help 86 Enable STM32Cube Digital-to-analog converter (DAC) HAL module driver 87 88config USE_STM32_HAL_DAC_EX 89 bool 90 help 91 Enable STM32Cube Extended Digital-to-analog converter (DAC) HAL module 92 driver 93 94config USE_STM32_HAL_DCACHE 95 bool 96 help 97 Enable STM32Cube data cache (DCACHE) HAL module driver 98 99config USE_STM32_HAL_DCMI 100 bool 101 help 102 Enable STM32Cube Digital camera interface (DCM) HAL module driver 103 104config USE_STM32_HAL_DCMI_EX 105 bool 106 help 107 Enable STM32Cube Extended Digital camera interface (DCM) HAL module 108 driver 109 110config USE_STM32_HAL_DFSDM 111 bool 112 help 113 Enable STM32Cube Digital filter for sigma delta modulators (DFSDM) HAL 114 module driver 115 116config USE_STM32_HAL_DFSDM_EX 117 bool 118 help 119 Enable STM32Cube Extended Digital filter for sigma delta modulators 120 (DFSDM) HAL module driver 121 122config USE_STM32_HAL_DMA 123 bool 124 help 125 Enable STM32Cube Direct Memory Access controller (DMA) HAL module 126 driver 127 128config USE_STM32_HAL_DMA2D 129 bool 130 help 131 Enable STM32Cube Chrom-Art Accelerator™ controller (DMA2D) HAL module 132 driver 133 134config USE_STM32_HAL_DMA_EX 135 bool 136 help 137 Enable STM32Cube Extended Direct Memory Access controller (DMA) HAL 138 module driver 139 140config USE_STM32_HAL_DSI 141 bool 142 help 143 Enable STM32Cube Display Serial Interface Host (DSI) HAL module driver 144 145config USE_STM32_HAL_DTS 146 bool 147 help 148 Enable STM32Cube Digital temperature sensor (DTS) HAL module driver 149 150config USE_STM32_HAL_ETH 151 bool 152 help 153 Enable STM32Cube Ethernet (ETH) HAL module driver 154 155config USE_STM32_HAL_ETH_EX 156 bool 157 help 158 Enable STM32Cube Extended Ethernet (ETH) HAL module driver 159 160config USE_STM32_HAL_EXTI 161 bool 162 help 163 Enable STM32Cube Extended interrupt and event controller (EXTI) HAL 164 module driver 165 166config USE_STM32_HAL_FDCAN 167 bool 168 help 169 Enable STM32Cube Controller area network with flexible data rate 170 (FDCAN) HAL module driver 171 172config USE_STM32_HAL_FIREWALL 173 bool 174 help 175 Enable STM32Cube Firewall HAL module driver 176 177config USE_STM32_HAL_FLASH 178 bool 179 help 180 Enable STM32Cube Embedded Flash Memory (FLASH) HAL module driver 181 182config USE_STM32_HAL_FLASH_EX 183 bool 184 help 185 Enable STM32Cube Extended Embedded Flash Memory (FLASH) HAL module 186 driver 187 188config USE_STM32_HAL_FLASH_RAMFUNC 189 bool 190 help 191 Enable STM32Cube Embedded Flash Memory RAM functions (FLASH_RAMFUNC) 192 HAL module driver 193 194config USE_STM32_HAL_FMAC 195 bool 196 help 197 Enable STM32Cube Filter Math Accelerator (FMAC) HAL module driver 198 199config USE_STM32_HAL_FMPI2C 200 bool 201 help 202 Enable STM32Cube Fast-mode Plus Inter-integrated circuit (FMPI2C) 203 HAL module driver 204 205config USE_STM32_HAL_FMPI2C_EX 206 bool 207 help 208 Enable STM32Cube Extended Fast-mode Plus Inter-integrated circuit 209 (FMPI2C) HAL module driver 210 211config USE_STM32_HAL_GFXMMU 212 bool 213 help 214 Enable STM32Cube Chrom-GRCTM (GFXMMU) HAL module driver 215 216config USE_STM32_HAL_GPIO 217 bool 218 help 219 Enable STM32Cube General-purpose I/Os (GPIO) HAL module driver 220 221config USE_STM32_HAL_GPIO_EX 222 bool 223 help 224 Enable STM32Cube Extended General-purpose I/Os (GPIO) HAL module 225 driver 226 227config USE_STM32_HAL_GPU2D 228 bool 229 help 230 Enable STM32Cube Neo-Chrom graphic processor (GPU2D) HAL module 231 driver 232 233config USE_STM32_HAL_GTZC 234 bool 235 help 236 Enable STM32Cube Global TrustZone controller (GTZC) HAL module 237 driver 238 239config USE_STM32_HAL_HASH 240 bool 241 help 242 Enable STM32Cube Hash processor (HASH) HAL module driver 243 244config USE_STM32_HAL_HASH_EX 245 bool 246 help 247 Enable STM32Cube Extended Hash processor (HASH) HAL module driver 248 249config USE_STM32_HAL_HCD 250 bool 251 help 252 Enable STM32Cube Host Controller device (HCD) HAL module driver 253 254config USE_STM32_HAL_HRTIM 255 bool 256 help 257 Enable STM32Cube High-Resolution Timer (HRTIM) HAL module driver 258 259config USE_STM32_HAL_HSEM 260 bool 261 help 262 Enable STM32Cube Hardware Semaphore (HSEM) HAL module driver 263 264config USE_STM32_HAL_I2C 265 bool 266 help 267 Enable STM32Cube Inter-integrated circuit (I2C) interface HAL module 268 driver 269 270config USE_STM32_HAL_I2C_EX 271 bool 272 help 273 Enable STM32Cube Extended Inter-integrated circuit (I2C) interface HAL 274 module driver 275 276config USE_STM32_HAL_I2S 277 bool 278 help 279 Enable STM32Cube Inter-IC sound (I2S) HAL module driver 280 281config USE_STM32_HAL_I2S_EX 282 bool 283 help 284 Enable STM32Cube Extended Inter-IC sound (I2S) HAL module driver 285 286config USE_STM32_HAL_I3C 287 bool 288 help 289 Enable STM32Cube Improved inter-integrated circuit (I3C) HAL module 290 driver 291 292config USE_STM32_HAL_ICACHE 293 bool 294 help 295 Enable STM32Cube Instruction cache (ICACHE) HAL module driver 296 297config USE_STM32_HAL_IPCC 298 bool 299 help 300 Enable STM32Cube Inter-Processor communication controller (IPCC) HAL 301 module driver 302 303config USE_STM32_HAL_IRDA 304 bool 305 help 306 Enable STM32Cube Infrared Data Association (IRDA) HAL module driver 307 308config USE_STM32_HAL_IWDG 309 bool 310 help 311 Enable STM32Cube Independent watchdog (IWDG) HAL module driver 312 313config USE_STM32_HAL_JPEG 314 bool 315 help 316 Enable STM32Cube Jpeg codec (JPEG) HAL module driver 317 318config USE_STM32_HAL_LCD 319 bool 320 help 321 Enable STM32Cube LCD controller (LCD) HAL module driver 322 323config USE_STM32_HAL_LPTIM 324 bool 325 help 326 Enable STM32Cube Low Power Timer (LPTIM) HAL module driver 327 328config USE_STM32_HAL_LTDC 329 bool 330 help 331 Enable STM32Cube LCD-TFT controller (LTDC) HAL module driver 332 333config USE_STM32_HAL_LTDC_EX 334 bool 335 help 336 Enable STM32Cube Extended LCD-TFT controller (LTDC) HAL module driver 337 338config USE_STM32_HAL_MDF 339 bool 340 help 341 Enable STM32Cube Multi-function digital filter (MDF) HAL module driver 342 343config USE_STM32_HAL_MDIOS 344 bool 345 help 346 Enable STM32Cube Management data input/output (MDIOS) HAL module 347 driver 348 349config USE_STM32_HAL_MDMA 350 bool 351 help 352 Enable STM32Cube Master Direct Memory Access controller (MDMA) HAL 353 module driver 354 355config USE_STM32_HAL_MMC 356 bool 357 help 358 Enable STM32Cube MultiMediaCard interface (SDMMC) HAL module driver 359 360config USE_STM32_HAL_MMC_EX 361 bool 362 help 363 Enable STM32Cube Extended MultiMediaCard interface (SDMMC) HAL module 364 driver 365 366config USE_STM32_HAL_MSP 367 bool 368 help 369 Enable STM32Cube MCU Support Package (MSP) HAL module driver 370 371config USE_STM32_HAL_NAND 372 bool 373 help 374 Enable STM32Cube NAND Controller (NAND) HAL module driver 375 376config USE_STM32_HAL_NOR 377 bool 378 help 379 Enable STM32Cube NOR Controller (NOR) HAL module driver 380 381config USE_STM32_HAL_OPAMP 382 bool 383 help 384 Enable STM32Cube Operational amplifiers (OPAMP) HAL module driver 385 386config USE_STM32_HAL_OPAMP_EX 387 bool 388 help 389 Enable STM32Cube Extended Operational amplifiers (OPAMP) HAL module 390 driver 391 392config USE_STM32_HAL_OSPI 393 bool 394 help 395 Enable STM32Cube Octo-SPI interface (OSPI) HAL module driver 396 397config USE_STM32_HAL_OTFDEC 398 bool 399 help 400 Enable STM32Cube On-the-fly decryption engine (OTFDEC) HAL module 401 driver 402 403config USE_STM32_HAL_PCCARD 404 bool 405 help 406 Enable STM32Cube PCCard memories (PCCARD) HAL module driver 407 408config USE_STM32_HAL_PCD 409 bool 410 help 411 Enable STM32Cube USB Peripheral Controller (PCD) HAL module driver 412 413config USE_STM32_HAL_PCD_EX 414 bool 415 help 416 Enable STM32Cube Extended USB Peripheral Controller (PCD) HAL module 417 driver 418 419config USE_STM32_HAL_PKA 420 bool 421 help 422 Enable STM32Cube Public key accelerator (PKA) HAL module driver 423 424config USE_STM32_HAL_PSSI 425 bool 426 help 427 Enable STM32Cube Parallel Synchronous Slave Interface (PSSI) 428 HAL module driver 429 430config USE_STM32_HAL_PWR 431 bool 432 help 433 Enable STM32Cube Power control (PWR) HAL module driver 434 435config USE_STM32_HAL_PWR_EX 436 bool 437 help 438 Enable STM32Cube Extended Power control (PWR) HAL module driver 439 440config USE_STM32_HAL_QSPI 441 bool 442 help 443 Enable STM32Cube Quad-SPI interface (QSPI) HAL module driver 444 445config USE_STM32_HAL_RAMCFG 446 bool 447 help 448 Enable STM32Cube RAMs configuration controller (RAMCFG) HAL module 449 driver 450 451config USE_STM32_HAL_RADIO 452 bool 453 help 454 Enable STM32Cube Radio HAL module driver 455 456config USE_STM32_HAL_RADIO_TIMER 457 bool 458 help 459 Enable STM32Cube Radio Timer HAL module driver 460 461config USE_STM32_HAL_RAMECC 462 bool 463 help 464 Enable STM32Cube RAM ECC monitoring (RAMECC) HAL module driver 465 466config USE_STM32_HAL_RNG 467 bool 468 help 469 Enable STM32Cube True random number generator (RNG) HAL module driver 470 471config USE_STM32_HAL_RTC 472 bool 473 help 474 Enable STM32Cube Real-time clock (RTC) HAL module driver 475 476config USE_STM32_HAL_RTC_EX 477 bool 478 help 479 Enable STM32Cube Extended Real-time clock (RTC) HAL module driver 480 481config USE_STM32_HAL_SAI 482 bool 483 help 484 Enable STM32Cube Serial audio interface (SAI) HAL module driver 485 486config USE_STM32_HAL_SAI_EX 487 bool 488 help 489 Enable STM32Cube Extended Serial audio interface (SAI) HAL module 490 driver 491 492config USE_STM32_HAL_SD 493 bool 494 help 495 Enable STM32Cube Secure digital input/output MultiMediaCard interface 496 (SDMMC) HAL module driver 497 498config USE_STM32_HAL_SD_EX 499 bool 500 help 501 Enable STM32Cube Extended Secure digital input/output MultiMediaCard 502 interface (SDMMC) HAL module driver 503 504config USE_STM32_HAL_SDADC 505 bool 506 help 507 Enable STM32Cube SDADC HAL module driver 508 509config USE_STM32_HAL_SDIO 510 bool 511 help 512 Enable STM32Cube Secure digital input/output interface (SDIO) 513 HAL module driver 514 515config USE_STM32_HAL_SDRAM 516 bool 517 help 518 Enable STM32Cube SDRAM controller (SDRAM) HAL module driver 519 520config USE_STM32_HAL_SMARTCARD 521 bool 522 help 523 Enable STM32Cube Smartcard controller (SMARTCARD) HAL module driver 524 525config USE_STM32_HAL_SMARTCARD_EX 526 bool 527 help 528 Enable STM32Cube Extended Smartcard controller (SMARTCARD) HAL module 529 driver 530 531config USE_STM32_HAL_SMBUS 532 bool 533 help 534 Enable STM32Cube System Management Bus (SMBus) HAL module driver 535 536config USE_STM32_HAL_SPDIFRX 537 bool 538 help 539 Enable STM32Cube SPDIF receiver interface (SPDIFRX) HAL module driver 540 541config USE_STM32_HAL_SPI 542 bool 543 help 544 Enable STM32Cube Serial peripheral interface (SPI) HAL module driver 545 546config USE_STM32_HAL_SPI_EX 547 bool 548 help 549 Enable STM32Cube Extended Serial peripheral interface (SPI) HAL module 550 driver 551 552config USE_STM32_HAL_SRAM 553 bool 554 help 555 Enable STM32Cube SRAM controller (SRAM) HAL module driver 556 557config USE_STM32_HAL_SWPMI 558 bool 559 help 560 Enable STM32Cube Single Wire Protocol Master Interface (SWPMI) HAL 561 module 562 563config USE_STM32_HAL_TIM 564 bool 565 help 566 Enable STM32Cube Timer (TIM) HAL module driver 567 568config USE_STM32_HAL_TIM_EX 569 bool 570 help 571 Enable STM32Cube Extended Timer (TIM) HAL module driver 572 573config USE_STM32_HAL_TSC 574 bool 575 help 576 Enable STM32Cube Touch sensing controller (TSC) HAL module driver 577 578config USE_STM32_HAL_UART 579 bool 580 help 581 Enable STM32Cube Universal asynchronous receiver transmitter (USART) 582 HAL module driver 583 584config USE_STM32_HAL_UART_EX 585 bool 586 help 587 Enable STM32Cube Extended Universal asynchronous receiver transmitter 588 (USART) HAL module driver 589 590config USE_STM32_HAL_USART 591 bool 592 help 593 Enable STM32Cube Universal synchronous asynchronous receiver 594 transmitter (USART) HAL module driver 595 596config USE_STM32_HAL_USART_EX 597 bool 598 help 599 Enable STM32Cube Extended Universal synchronous asynchronous receiver 600 transmitter (USART) HAL module driver 601 602config USE_STM32_HAL_WWDG 603 bool 604 help 605 Enable STM32Cube System window watchdog (WWDG) HAL module driver 606 607config USE_STM32_HAL_XSPI 608 bool 609 help 610 Enable STM32Cube OctoSPI (XSPI) HAL module driver 611 612config USE_STM32_LL_ADC 613 bool 614 help 615 Enable STM32Cube Analog-to-Digital Converter (ADC) LL module driver 616 617config USE_STM32_LL_BDMA 618 bool 619 help 620 Enable STM32Cube Basic direct memory access controller (BDMA) LL 621 module driver 622 623config USE_STM32_LL_COMP 624 bool 625 help 626 Enable STM32Cube Ultra Low Power Comparator channels (COMP) LL module 627 driver 628 629config USE_STM32_LL_CORDIC 630 bool 631 help 632 Enable STM32Cube CORDIC co-processor (CORDIC) functions LL module 633 driver 634 635config USE_STM32_LL_CRC 636 bool 637 help 638 Enable STM32Cube Cyclic redundancy check calculation unit (CRC) LL 639 module driver 640 641config USE_STM32_LL_CRS 642 bool 643 help 644 Enable STM32Cube Clock recovery system (CRS) LL module driver 645 646config USE_STM32_LL_DAC 647 bool 648 help 649 Enable STM32Cube Digital-to-analog converter (DAC) LL module driver 650 651config USE_STM32_LL_DELAYBLOCK 652 bool 653 help 654 Enable STM32Cube DelayBlock (DELAYBLOCK) LL module driver (stm32H7 or stm32MP1) 655 656config USE_STM32_LL_DLYB 657 bool 658 help 659 Enable STM32Cube DelayBlock (DELAYBLOCK) LL module driver (stm32U5) 660 661config USE_STM32_LL_DMA 662 bool 663 help 664 Enable STM32Cube Direct Memory Access controller (DMA) LL module 665 driver 666 667config USE_STM32_LL_DMA2D 668 bool 669 help 670 Enable STM32Cube Chrom-Art Accelerator™ controller (DMA2D) LL module 671 driver 672 673config USE_STM32_LL_EXTI 674 bool 675 help 676 Enable STM32Cube Extended interrupt and event controller (EXTI) LL 677 module driver 678 679config USE_STM32_LL_FMAC 680 bool 681 help 682 Enable STM32Cube Filter Math Accelerator (FMAC) LL module driver 683 684config USE_STM32_LL_FMC 685 bool 686 help 687 Enable STM32Cube Flexible memory controller (FMC) LL module driver 688 689config USE_STM32_LL_FSMC 690 bool 691 help 692 Enable STM32Cube Flexible static memory controller (FSMC) LL module 693 driver 694 695config USE_STM32_LL_GPIO 696 bool 697 help 698 Enable STM32Cube Extended General-purpose I/Os (GPIO) LL module driver 699 700config USE_STM32_LL_HRTIM 701 bool 702 help 703 Enable STM32Cube High-Resolution Timer (HRTIM) LL module driver 704 705config USE_STM32_LL_I2C 706 bool 707 help 708 Enable STM32Cube Inter-integrated circuit (I2C) interface LL module 709 driver 710 711config USE_STM32_LL_I3C 712 bool 713 help 714 Enable STM32Cube Improved inter-integrated circuit (I3C) LL module 715 driver 716 717config USE_STM32_LL_ICACHE 718 bool 719 help 720 Enable STM32Cube Instruction cache (ICACHE) LL module driver 721 722config USE_STM32_LL_IPCC 723 bool 724 help 725 Enable STM32Cube Inter-Processor communication controller (IPCC) LL 726 module driver 727 728config USE_STM32_LL_LPGPIO 729 bool 730 help 731 Enable STM32Cube Low-power general-purpose I/Os (LPGPIO) LL 732 module driver 733 734config USE_STM32_LL_LPTIM 735 bool 736 help 737 Enable STM32Cube Low Power Timer (LPTIM) LL module driver 738 739config USE_STM32_LL_LPUART 740 bool 741 help 742 Enable STM32Cube Low-power universal asynchronous receiver 743 transmitter (LPUART) LL module driver 744 745config USE_STM32_LL_MDMA 746 bool 747 help 748 Enable STM32Cube Master Direct Memory Access controller (MDMA) LL 749 module driver 750 751config USE_STM32_LL_OPAMP 752 bool 753 help 754 Enable STM32Cube Operational amplifiers (OPAMP) LL module driver 755 756config USE_STM32_LL_PKA 757 bool 758 help 759 Enable STM32Cube Public key accelerator (PKA) LL module driver 760 761config USE_STM32_LL_PWR 762 bool 763 help 764 Enable STM32Cube Power control (PWR) LL module driver 765 766config USE_STM32_LL_RCC 767 bool 768 help 769 Enable STM32Cube Reset and Clock Control (RCC) LL module driver 770 771config USE_STM32_LL_RNG 772 bool 773 help 774 Enable STM32Cube True random number generator (RNG) LL module driver 775 776config USE_STM32_LL_RTC 777 bool 778 help 779 Enable STM32Cube Real-time clock (RTC) LL module driver 780 781config USE_STM32_LL_SDMMC 782 bool 783 help 784 Enable STM32Cube SD/SDIO/MMC card host interface (SDMMC) LL module 785 driver 786 787config USE_STM32_LL_SPI 788 bool 789 help 790 Enable STM32Cube Serial peripheral interface (SPI) LL module driver 791 792config USE_STM32_LL_SWPMI 793 bool 794 help 795 Enable STM32Cube Single Wire Protocol Master Interface (SWPMI) LL 796 module driver 797 798config USE_STM32_LL_TIM 799 bool 800 help 801 Enable STM32Cube Timer (TIM) LL module driver 802 803config USE_STM32_LL_UCPD 804 bool 805 help 806 Enable STM32Cube USB Power Delivery device interface 807 (UCPD) LL module driver 808 809config USE_STM32_LL_USART 810 bool 811 help 812 Enable STM32Cube Universal synchronous asynchronous receiver 813 transmitter (USART) LL module driver 814 815config USE_STM32_LL_USB 816 bool 817 help 818 Enable STM32Cube Universal serial bus full-speed device interface 819 (USB) LL module driver 820 821config USE_STM32_LL_UTILS 822 bool 823 help 824 Enable STM32Cube Utility functions (UTILS) LL module driver 825 826endif # HAS_STM32CUBE 827