1# SPDX-License-Identifier: GPL-2.0-only 2config KRAIT_CLOCKS 3 bool 4 select KRAIT_L2_ACCESSORS 5 6config QCOM_GDSC 7 bool 8 select PM_GENERIC_DOMAINS if PM 9 10menuconfig COMMON_CLK_QCOM 11 tristate "Support for Qualcomm's clock controllers" 12 depends on OF 13 depends on ARCH_QCOM || COMPILE_TEST 14 select RATIONAL 15 select REGMAP_MMIO 16 select RESET_CONTROLLER 17 select INTERCONNECT 18 select INTERCONNECT_CLK 19 20if COMMON_CLK_QCOM 21 22config CLK_X1E80100_CAMCC 23 tristate "X1E80100 Camera Clock Controller" 24 depends on ARM64 || COMPILE_TEST 25 select CLK_X1E80100_GCC 26 help 27 Support for the camera clock controller on X1E80100 devices. 28 Say Y if you want to support camera devices and camera functionality. 29 30config CLK_X1E80100_DISPCC 31 tristate "X1E80100 Display Clock Controller" 32 depends on ARM64 || COMPILE_TEST 33 select CLK_X1E80100_GCC 34 help 35 Support for the two display clock controllers on Qualcomm 36 Technologies, Inc. X1E80100 devices. 37 Say Y if you want to support display devices and functionality such as 38 splash screen. 39 40config CLK_X1E80100_GCC 41 tristate "X1E80100 Global Clock Controller" 42 depends on ARM64 || COMPILE_TEST 43 select QCOM_GDSC 44 help 45 Support for the global clock controller on Qualcomm Technologies, Inc 46 X1E80100 devices. 47 Say Y if you want to use peripheral devices such as UART, SPI, I2C, 48 USB, UFS, SD/eMMC, PCIe, etc. 49 50config CLK_X1E80100_GPUCC 51 tristate "X1E80100 Graphics Clock Controller" 52 depends on ARM64 || COMPILE_TEST 53 select CLK_X1E80100_GCC 54 help 55 Support for the graphics clock controller on X1E80100 devices. 56 Say Y if you want to support graphics controller devices and 57 functionality such as 3D graphics. 58 59config CLK_X1E80100_TCSRCC 60 tristate "X1E80100 TCSR Clock Controller" 61 depends on ARM64 || COMPILE_TEST 62 select QCOM_GDSC 63 help 64 Support for the TCSR clock controller on X1E80100 devices. 65 Say Y if you want to use peripheral devices such as SD/UFS. 66 67config CLK_QCM2290_GPUCC 68 tristate "QCM2290 Graphics Clock Controller" 69 depends on ARM64 || COMPILE_TEST 70 select QCM_GCC_2290 71 help 72 Support for the graphics clock controller on QCM2290 devices. 73 Say Y if you want to support graphics controller devices and 74 functionality such as 3D graphics. 75 76config QCOM_A53PLL 77 tristate "MSM8916 A53 PLL" 78 help 79 Support for the A53 PLL on MSM8916 devices. It provides 80 the CPU with frequencies above 1GHz. 81 Say Y if you want to support higher CPU frequencies on MSM8916 82 devices. 83 84config QCOM_A7PLL 85 tristate "A7 PLL driver for SDX55 and SDX65" 86 help 87 Support for the A7 PLL on SDX55 and SDX65 devices. It provides the CPU with 88 frequencies above 1GHz. 89 Say Y if you want to support higher CPU frequencies on SDX55 and SDX65 90 devices. 91 92config QCOM_CLK_APCS_MSM8916 93 tristate "MSM8916 APCS Clock Controller" 94 depends on QCOM_APCS_IPC || COMPILE_TEST 95 help 96 Support for the APCS Clock Controller on msm8916 devices. The 97 APCS is managing the mux and divider which feeds the CPUs. 98 Say Y if you want to support CPU frequency scaling on devices 99 such as msm8916. 100 101config QCOM_CLK_APCC_MSM8996 102 tristate "MSM8996 CPU Clock Controller" 103 select QCOM_KRYO_L2_ACCESSORS 104 select INTERCONNECT_CLK if INTERCONNECT 105 depends on ARM64 106 help 107 Support for the CPU clock controller on msm8996 devices. 108 Say Y if you want to support CPU clock scaling using CPUfreq 109 drivers for dynamic power management. 110 111config QCOM_CLK_APCS_SDX55 112 tristate "SDX55 and SDX65 APCS Clock Controller" 113 depends on QCOM_APCS_IPC || COMPILE_TEST 114 depends on ARM || COMPILE_TEST 115 help 116 Support for the APCS Clock Controller on SDX55, SDX65 platforms. The 117 APCS is managing the mux and divider which feeds the CPUs. 118 Say Y if you want to support CPU frequency scaling on devices 119 such as SDX55, SDX65. 120 121config QCOM_CLK_RPM 122 tristate "RPM based Clock Controller" 123 depends on MFD_QCOM_RPM 124 help 125 The RPM (Resource Power Manager) is a dedicated hardware engine for 126 managing the shared SoC resources in order to keep the lowest power 127 profile. It communicates with other hardware subsystems via shared 128 memory and accepts clock requests, aggregates the requests and turns 129 the clocks on/off or scales them on demand. 130 Say Y if you want to support the clocks exposed by the RPM on 131 platforms such as apq8064, msm8660, msm8960 etc. 132 133config QCOM_CLK_SMD_RPM 134 tristate "RPM over SMD based Clock Controller" 135 depends on QCOM_SMD_RPM 136 help 137 The RPM (Resource Power Manager) is a dedicated hardware engine for 138 managing the shared SoC resources in order to keep the lowest power 139 profile. It communicates with other hardware subsystems via shared 140 memory and accepts clock requests, aggregates the requests and turns 141 the clocks on/off or scales them on demand. 142 Say Y if you want to support the clocks exposed by the RPM on 143 platforms such as apq8016, apq8084, msm8974 etc. 144 145config QCOM_CLK_RPMH 146 tristate "RPMh Clock Driver" 147 depends on QCOM_RPMH 148 help 149 RPMh manages shared resources on some Qualcomm Technologies, Inc. 150 SoCs. It accepts requests from other hardware subsystems via RSC. 151 Say Y if you want to support the clocks exposed by RPMh on 152 platforms such as SDM845. 153 154config APQ_GCC_8084 155 tristate "APQ8084 Global Clock Controller" 156 depends on ARM || COMPILE_TEST 157 select QCOM_GDSC 158 help 159 Support for the global clock controller on apq8084 devices. 160 Say Y if you want to use peripheral devices such as UART, SPI, 161 i2c, USB, SD/eMMC, SATA, PCIe, etc. 162 163config APQ_MMCC_8084 164 tristate "APQ8084 Multimedia Clock Controller" 165 depends on ARM || COMPILE_TEST 166 select APQ_GCC_8084 167 select QCOM_GDSC 168 help 169 Support for the multimedia clock controller on apq8084 devices. 170 Say Y if you want to support multimedia devices such as display, 171 graphics, video encode/decode, camera, etc. 172 173config IPQ_APSS_PLL 174 tristate "IPQ APSS PLL" 175 help 176 Support for APSS PLL on ipq devices. The APSS PLL is the main 177 clock that feeds the CPUs on ipq based devices. 178 Say Y if you want to support CPU frequency scaling on ipq based 179 devices. 180 181config IPQ_APSS_6018 182 tristate "IPQ APSS Clock Controller" 183 select IPQ_APSS_PLL 184 depends on QCOM_APCS_IPC || COMPILE_TEST 185 depends on QCOM_SMEM 186 help 187 Support for APSS clock controller on IPQ platforms. The 188 APSS clock controller manages the Mux and enable block that feeds the 189 CPUs. 190 Say Y if you want to support CPU frequency scaling on 191 ipq based devices. 192 193config IPQ_GCC_4019 194 tristate "IPQ4019 Global Clock Controller" 195 help 196 Support for the global clock controller on ipq4019 devices. 197 Say Y if you want to use peripheral devices such as UART, SPI, 198 i2c, USB, SD/eMMC, etc. 199 200config IPQ_GCC_5018 201 tristate "IPQ5018 Global Clock Controller" 202 depends on ARM64 || COMPILE_TEST 203 help 204 Support for global clock controller on ipq5018 devices. 205 Say Y if you want to use peripheral devices such as UART, SPI, 206 i2c, USB, SD/eMMC, etc. 207 208config IPQ_GCC_5332 209 tristate "IPQ5332 Global Clock Controller" 210 depends on ARM64 || COMPILE_TEST 211 help 212 Support for the global clock controller on ipq5332 devices. 213 Say Y if you want to use peripheral devices such as UART, SPI, 214 i2c, USB, SD/eMMC, etc. 215 216config IPQ_GCC_6018 217 tristate "IPQ6018 Global Clock Controller" 218 help 219 Support for global clock controller on ipq6018 devices. 220 Say Y if you want to use peripheral devices such as UART, SPI, 221 i2c, USB, SD/eMMC, etc. Select this for the root clock 222 of ipq6018. 223 224config IPQ_GCC_806X 225 tristate "IPQ806x Global Clock Controller" 226 depends on ARM || COMPILE_TEST 227 help 228 Support for the global clock controller on ipq806x devices. 229 Say Y if you want to use peripheral devices such as UART, SPI, 230 i2c, USB, SD/eMMC, etc. 231 232config IPQ_LCC_806X 233 tristate "IPQ806x LPASS Clock Controller" 234 depends on ARM || COMPILE_TEST 235 select IPQ_GCC_806X 236 help 237 Support for the LPASS clock controller on ipq806x devices. 238 Say Y if you want to use audio devices such as i2s, pcm, 239 S/PDIF, etc. 240 241config IPQ_GCC_8074 242 tristate "IPQ8074 Global Clock Controller" 243 select QCOM_GDSC 244 help 245 Support for global clock controller on ipq8074 devices. 246 Say Y if you want to use peripheral devices such as UART, SPI, 247 i2c, USB, SD/eMMC, etc. Select this for the root clock 248 of ipq8074. 249 250config IPQ_GCC_9574 251 tristate "IPQ9574 Global Clock Controller" 252 help 253 Support for global clock controller on ipq9574 devices. 254 Say Y if you want to use peripheral devices such as UART, SPI, 255 i2c, USB, SD/eMMC, etc. Select this for the root clock 256 of ipq9574. 257 258config IPQ_NSSCC_QCA8K 259 tristate "QCA8K(QCA8386 or QCA8084) NSS Clock Controller" 260 depends on MDIO_BUS 261 help 262 Support for NSS(Network SubSystem) clock controller on 263 qca8386/qca8084 chip. 264 Say Y or M if you want to use network features of switch or 265 PHY device. Select this for the root clock of qca8k. 266 267config MSM_GCC_8660 268 tristate "MSM8660 Global Clock Controller" 269 depends on ARM || COMPILE_TEST 270 help 271 Support for the global clock controller on msm8660 devices. 272 Say Y if you want to use peripheral devices such as UART, SPI, 273 i2c, USB, SD/eMMC, etc. 274 275config MSM_GCC_8909 276 tristate "MSM8909 Global Clock Controller" 277 depends on ARM || COMPILE_TEST 278 select QCOM_GDSC 279 help 280 Support for the global clock controller on msm8909 devices. 281 Say Y if you want to use devices such as UART, SPI, I2C, USB, 282 SD/eMMC, display, graphics, camera etc. 283 284config MSM_GCC_8916 285 tristate "MSM8916 Global Clock Controller" 286 select QCOM_GDSC 287 help 288 Support for the global clock controller on msm8916 devices. 289 Say Y if you want to use devices such as UART, SPI i2c, USB, 290 SD/eMMC, display, graphics, camera etc. 291 292config MSM_GCC_8917 293 tristate "MSM8917/QM215 Global Clock Controller" 294 depends on ARM64 || COMPILE_TEST 295 select QCOM_GDSC 296 help 297 Support for the global clock controller on msm8917 and qm215 298 devices. 299 Say Y if you want to use devices such as UART, SPI i2c, USB, 300 SD/eMMC, display, graphics, camera etc. 301 302config MSM_GCC_8939 303 tristate "MSM8939 Global Clock Controller" 304 select QCOM_GDSC 305 help 306 Support for the global clock controller on msm8939 devices. 307 Say Y if you want to use devices such as UART, SPI i2c, USB, 308 SD/eMMC, display, graphics, camera etc. 309 310config MSM_GCC_8960 311 tristate "APQ8064/MSM8960 Global Clock Controller" 312 depends on ARM || COMPILE_TEST 313 help 314 Support for the global clock controller on apq8064/msm8960 devices. 315 Say Y if you want to use peripheral devices such as UART, SPI, 316 i2c, USB, SD/eMMC, SATA, PCIe, etc. 317 318config MSM_LCC_8960 319 tristate "APQ8064/MSM8960/MDM9650 LPASS Clock Controller" 320 depends on ARM || COMPILE_TEST 321 help 322 Support for the LPASS clock controller on apq8064/msm8960/mdm9650 323 devices. 324 Say Y if you want to use audio devices such as i2s, pcm, 325 SLIMBus, etc. 326 327config MDM_GCC_9607 328 tristate "MDM9607 Global Clock Controller" 329 depends on ARM || COMPILE_TEST 330 help 331 Support for the global clock controller on mdm9607 devices. 332 Say Y if you want to use peripheral devices such as UART, SPI, 333 I2C, USB, SD/eMMC, etc. 334 335config MDM_GCC_9615 336 tristate "MDM9615 Global Clock Controller" 337 depends on ARM || COMPILE_TEST 338 help 339 Support for the global clock controller on mdm9615 devices. 340 Say Y if you want to use peripheral devices such as UART, SPI, 341 i2c, USB, SD/eMMC, etc. 342 343config MSM_MMCC_8960 344 tristate "MSM8960 Multimedia Clock Controller" 345 depends on ARM || COMPILE_TEST 346 select MSM_GCC_8960 347 help 348 Support for the multimedia clock controller on msm8960 devices. 349 Say Y if you want to support multimedia devices such as display, 350 graphics, video encode/decode, camera, etc. 351 352config MSM_GCC_8953 353 tristate "MSM8953 Global Clock Controller" 354 select QCOM_GDSC 355 help 356 Support for the global clock controller on msm8953 devices. 357 Say Y if you want to use devices such as UART, SPI i2c, USB, 358 SD/eMMC, display, graphics, camera etc. 359 360config MSM_GCC_8974 361 tristate "MSM8974 Global Clock Controller" 362 depends on ARM || COMPILE_TEST 363 select QCOM_GDSC 364 help 365 Support for the global clock controller on msm8974 devices. 366 Say Y if you want to use peripheral devices such as UART, SPI, 367 i2c, USB, SD/eMMC, SATA, PCIe, etc. 368 369config MSM_MMCC_8974 370 tristate "MSM8974 Multimedia Clock Controller" 371 depends on ARM || COMPILE_TEST 372 select MSM_GCC_8974 373 select QCOM_GDSC 374 help 375 Support for the multimedia clock controller on msm8974 devices. 376 Say Y if you want to support multimedia devices such as display, 377 graphics, video encode/decode, camera, etc. 378 379config MSM_GCC_8976 380 tristate "MSM8956/76 Global Clock Controller" 381 select QCOM_GDSC 382 help 383 Support for the global clock controller on msm8956/76 devices. 384 Say Y if you want to use peripheral devices such as UART, SPI, 385 i2c, USB, SD/eMMC, SATA, PCIe, etc. 386 387config MSM_MMCC_8994 388 tristate "MSM8994 Multimedia Clock Controller" 389 select MSM_GCC_8994 390 select QCOM_GDSC 391 help 392 Support for the multimedia clock controller on msm8994 devices. 393 Say Y if you want to support multimedia devices such as display, 394 graphics, video encode/decode, camera, etc. 395 396config MSM_GCC_8994 397 tristate "MSM8994 Global Clock Controller" 398 help 399 Support for the global clock controller on msm8994 devices. 400 Say Y if you want to use peripheral devices such as UART, SPI, 401 i2c, USB, UFS, SD/eMMC, PCIe, etc. 402 403config MSM_GCC_8996 404 tristate "MSM8996 Global Clock Controller" 405 select QCOM_GDSC 406 help 407 Support for the global clock controller on msm8996 devices. 408 Say Y if you want to use peripheral devices such as UART, SPI, 409 i2c, USB, UFS, SD/eMMC, PCIe, etc. 410 411config MSM_MMCC_8996 412 tristate "MSM8996 Multimedia Clock Controller" 413 select MSM_GCC_8996 414 select QCOM_GDSC 415 help 416 Support for the multimedia clock controller on msm8996 devices. 417 Say Y if you want to support multimedia devices such as display, 418 graphics, video encode/decode, camera, etc. 419 420config MSM_GCC_8998 421 tristate "MSM8998 Global Clock Controller" 422 select QCOM_GDSC 423 help 424 Support for the global clock controller on msm8998 devices. 425 Say Y if you want to use peripheral devices such as UART, SPI, 426 i2c, USB, UFS, SD/eMMC, PCIe, etc. 427 428config MSM_GPUCC_8998 429 tristate "MSM8998 Graphics Clock Controller" 430 select MSM_GCC_8998 431 select QCOM_GDSC 432 help 433 Support for the graphics clock controller on MSM8998 devices. 434 Say Y if you want to support graphics controller devices and 435 functionality such as 3D graphics. 436 437config MSM_MMCC_8998 438 tristate "MSM8998 Multimedia Clock Controller" 439 select MSM_GCC_8998 440 select QCOM_GDSC 441 help 442 Support for the multimedia clock controller on msm8998 devices. 443 Say Y if you want to support multimedia devices such as display, 444 graphics, video encode/decode, camera, etc. 445 446config QCM_GCC_2290 447 tristate "QCM2290 Global Clock Controller" 448 select QCOM_GDSC 449 help 450 Support for the global clock controller on QCM2290 devices. 451 Say Y if you want to use multimedia devices or peripheral 452 devices such as UART, SPI, I2C, USB, SD/eMMC etc. 453 454config QCM_DISPCC_2290 455 tristate "QCM2290 Display Clock Controller" 456 select QCM_GCC_2290 457 help 458 Support for the display clock controller on Qualcomm Technologies, Inc 459 QCM2290 devices. 460 Say Y if you want to support display devices and functionality such as 461 splash screen. 462 463config QCS_GCC_404 464 tristate "QCS404 Global Clock Controller" 465 help 466 Support for the global clock controller on QCS404 devices. 467 Say Y if you want to use multimedia devices or peripheral 468 devices such as UART, SPI, I2C, USB, SD/eMMC, PCIe etc. 469 470config SC_CAMCC_7180 471 tristate "SC7180 Camera Clock Controller" 472 depends on ARM64 || COMPILE_TEST 473 select SC_GCC_7180 474 help 475 Support for the camera clock controller on Qualcomm Technologies, Inc 476 SC7180 devices. 477 Say Y if you want to support camera devices and functionality such as 478 capturing pictures. 479 480config SC_CAMCC_7280 481 tristate "SC7280 Camera Clock Controller" 482 depends on ARM64 || COMPILE_TEST 483 select SC_GCC_7280 484 help 485 Support for the camera clock controller on Qualcomm Technologies, Inc 486 SC7280 devices. 487 Say Y if you want to support camera devices and functionality such as 488 capturing pictures. 489 490config SC_CAMCC_8280XP 491 tristate "SC8280XP Camera Clock Controller" 492 depends on ARM64 || COMPILE_TEST 493 select SC_GCC_8280XP 494 help 495 Support for the camera clock controller on Qualcomm Technologies, Inc 496 SC8280XP devices. 497 Say Y if you want to support camera devices and functionality such as 498 capturing pictures. 499 500config SC_DISPCC_7180 501 tristate "SC7180 Display Clock Controller" 502 depends on ARM64 || COMPILE_TEST 503 select SC_GCC_7180 504 help 505 Support for the display clock controller on Qualcomm Technologies, Inc 506 SC7180 devices. 507 Say Y if you want to support display devices and functionality such as 508 splash screen. 509 510config SC_DISPCC_7280 511 tristate "SC7280 Display Clock Controller" 512 depends on ARM64 || COMPILE_TEST 513 select SC_GCC_7280 514 help 515 Support for the display clock controller on Qualcomm Technologies, Inc. 516 SC7280 devices. 517 Say Y if you want to support display devices and functionality such as 518 splash screen. 519 520config SC_DISPCC_8280XP 521 tristate "SC8280XP Display Clock Controller" 522 depends on ARM64 || COMPILE_TEST 523 select SC_GCC_8280XP 524 help 525 Support for the two display clock controllers on Qualcomm 526 Technologies, Inc. SC8280XP devices. 527 Say Y if you want to support display devices and functionality such as 528 splash screen. 529 530config SA_GCC_8775P 531 tristate "SA8775 Global Clock Controller" 532 select QCOM_GDSC 533 depends on COMMON_CLK_QCOM 534 help 535 Support for the global clock controller on SA8775 devices. 536 Say Y if you want to use peripheral devices such as UART, SPI, 537 I2C, USB, UFS, SDCC, etc. 538 539config SA_GPUCC_8775P 540 tristate "SA8775P Graphics clock controller" 541 select QCOM_GDSC 542 select SA_GCC_8775P 543 help 544 Support for the graphics clock controller on SA8775P devices. 545 Say Y if you want to support graphics controller devices and 546 functionality such as 3D graphics. 547 548config SC_GCC_7180 549 tristate "SC7180 Global Clock Controller" 550 select QCOM_GDSC 551 depends on COMMON_CLK_QCOM 552 depends on ARM64 || COMPILE_TEST 553 help 554 Support for the global clock controller on SC7180 devices. 555 Say Y if you want to use peripheral devices such as UART, SPI, 556 I2C, USB, UFS, SDCC, etc. 557 558config SC_GCC_7280 559 tristate "SC7280 Global Clock Controller" 560 select QCOM_GDSC 561 depends on COMMON_CLK_QCOM 562 depends on ARM64 || COMPILE_TEST 563 help 564 Support for the global clock controller on SC7280 devices. 565 Say Y if you want to use peripheral devices such as UART, SPI, 566 I2C, USB, UFS, SDCC, PCIe etc. 567 568config SC_GCC_8180X 569 tristate "SC8180X Global Clock Controller" 570 select QCOM_GDSC 571 depends on COMMON_CLK_QCOM 572 depends on ARM64 || COMPILE_TEST 573 help 574 Support for the global clock controller on SC8180X devices. 575 Say Y if you want to use peripheral devices such as UART, SPI, 576 I2C, USB, UFS, SDCC, etc. 577 578config SC_GCC_8280XP 579 tristate "SC8280XP Global Clock Controller" 580 select QCOM_GDSC 581 depends on COMMON_CLK_QCOM 582 depends on ARM64 || COMPILE_TEST 583 help 584 Support for the global clock controller on SC8280XP devices. 585 Say Y if you want to use peripheral devices such as UART, SPI, 586 I2C, USB, UFS, SDCC, etc. 587 588config SC_GPUCC_7180 589 tristate "SC7180 Graphics Clock Controller" 590 depends on ARM64 || COMPILE_TEST 591 select SC_GCC_7180 592 help 593 Support for the graphics clock controller on SC7180 devices. 594 Say Y if you want to support graphics controller devices and 595 functionality such as 3D graphics. 596 597config SC_GPUCC_7280 598 tristate "SC7280 Graphics Clock Controller" 599 depends on ARM64 || COMPILE_TEST 600 select SC_GCC_7280 601 help 602 Support for the graphics clock controller on SC7280 devices. 603 Say Y if you want to support graphics controller devices and 604 functionality such as 3D graphics. 605 606config SC_GPUCC_8280XP 607 tristate "SC8280XP Graphics Clock Controller" 608 depends on ARM64 || COMPILE_TEST 609 select SC_GCC_8280XP 610 help 611 Support for the graphics clock controller on SC8280XP devices. 612 Say Y if you want to support graphics controller devices and 613 functionality such as 3D graphics. 614 615config SC_LPASSCC_7280 616 tristate "SC7280 Low Power Audio Subsystem (LPASS) Clock Controller" 617 depends on ARM64 || COMPILE_TEST 618 select SC_GCC_7280 619 help 620 Support for the LPASS clock controller on SC7280 devices. 621 Say Y if you want to use the LPASS branch clocks of the LPASS clock 622 controller to reset the LPASS subsystem. 623 624config SC_LPASSCC_8280XP 625 tristate "SC8280 Low Power Audio Subsystem (LPASS) Clock Controller" 626 depends on ARM64 || COMPILE_TEST 627 select SC_GCC_8280XP 628 help 629 Support for the LPASS clock controller on SC8280XP devices. 630 Say Y if you want to use the LPASS branch clocks of the LPASS clock 631 controller to reset the LPASS subsystem. 632 633config SC_LPASS_CORECC_7180 634 tristate "SC7180 LPASS Core Clock Controller" 635 depends on ARM64 || COMPILE_TEST 636 select SC_GCC_7180 637 help 638 Support for the LPASS(Low Power Audio Subsystem) core clock controller 639 on SC7180 devices. 640 Say Y if you want to use LPASS clocks and power domains of the LPASS 641 core clock controller. 642 643config SC_LPASS_CORECC_7280 644 tristate "SC7280 LPASS Core & Audio Clock Controller" 645 depends on ARM64 || COMPILE_TEST 646 select SC_GCC_7280 647 select QCOM_GDSC 648 help 649 Support for the LPASS(Low Power Audio Subsystem) core and audio clock 650 controller on SC7280 devices. 651 Say Y if you want to use LPASS clocks and power domains of the LPASS 652 core clock controller. 653 654config SC_VIDEOCC_7180 655 tristate "SC7180 Video Clock Controller" 656 depends on ARM64 || COMPILE_TEST 657 select SC_GCC_7180 658 help 659 Support for the video clock controller on SC7180 devices. 660 Say Y if you want to support video devices and functionality such as 661 video encode and decode. 662 663config SC_VIDEOCC_7280 664 tristate "SC7280 Video Clock Controller" 665 depends on ARM64 || COMPILE_TEST 666 select SC_GCC_7280 667 help 668 Support for the video clock controller on SC7280 devices. 669 Say Y if you want to support video devices and functionality such as 670 video encode and decode. 671 672config SDM_CAMCC_845 673 tristate "SDM845 Camera Clock Controller" 674 depends on ARM64 || COMPILE_TEST 675 select SDM_GCC_845 676 help 677 Support for the camera clock controller on SDM845 devices. 678 Say Y if you want to support camera devices and camera functionality. 679 680config SDM_GCC_660 681 tristate "SDM660 Global Clock Controller" 682 depends on ARM64 || COMPILE_TEST 683 select QCOM_GDSC 684 help 685 Support for the global clock controller on SDM660 devices. 686 Say Y if you want to use peripheral devices such as UART, SPI, 687 i2C, USB, UFS, SDDC, PCIe, etc. 688 689config SDM_MMCC_660 690 tristate "SDM660 Multimedia Clock Controller" 691 depends on ARM64 || COMPILE_TEST 692 select SDM_GCC_660 693 select QCOM_GDSC 694 help 695 Support for the multimedia clock controller on SDM660 devices. 696 Say Y if you want to support multimedia devices such as display, 697 graphics, video encode/decode, camera, etc. 698 699config SDM_GPUCC_660 700 tristate "SDM660 Graphics Clock Controller" 701 depends on ARM64 || COMPILE_TEST 702 select SDM_GCC_660 703 select QCOM_GDSC 704 help 705 Support for the graphics clock controller on SDM630/636/660 devices. 706 Say Y if you want to support graphics controller devices and 707 functionality such as 3D graphics 708 709config QCS_TURING_404 710 tristate "QCS404 Turing Clock Controller" 711 help 712 Support for the Turing Clock Controller on QCS404, provides clocks 713 and resets for the Turing subsystem. 714 715config QCS_Q6SSTOP_404 716 tristate "QCS404 Q6SSTOP Clock Controller" 717 select QCS_GCC_404 718 help 719 Support for the Q6SSTOP clock controller on QCS404 devices. 720 Say Y if you want to use the Q6SSTOP branch clocks of the WCSS clock 721 controller to reset the Q6SSTOP subsystem. 722 723config QDU_GCC_1000 724 tristate "QDU1000/QRU1000 Global Clock Controller" 725 select QCOM_GDSC 726 help 727 Support for the global clock controller on QDU1000 and 728 QRU1000 devices. Say Y if you want to use peripheral 729 devices such as UART, SPI, I2C, USB, SD, PCIe, etc. 730 731config QDU_ECPRICC_1000 732 tristate "QDU1000/QRU1000 ECPRI Clock Controller" 733 depends on ARM64 || COMPILE_TEST 734 select QDU_GCC_1000 735 help 736 Support for the ECPRI clock controller on QDU1000 and 737 QRU1000 devices. Say Y if you want to support the ECPRI 738 clock controller functionality such as Ethernet. 739 740config SDM_GCC_845 741 tristate "SDM845/SDM670 Global Clock Controller" 742 depends on ARM64 || COMPILE_TEST 743 select QCOM_GDSC 744 help 745 Support for the global clock controller on SDM845 and SDM670 devices. 746 Say Y if you want to use peripheral devices such as UART, SPI, 747 i2C, USB, UFS, SDDC, PCIe, etc. 748 749config SDM_GPUCC_845 750 tristate "SDM845 Graphics Clock Controller" 751 depends on ARM64 || COMPILE_TEST 752 select SDM_GCC_845 753 help 754 Support for the graphics clock controller on SDM845 devices. 755 Say Y if you want to support graphics controller devices and 756 functionality such as 3D graphics. 757 758config SDM_VIDEOCC_845 759 tristate "SDM845 Video Clock Controller" 760 depends on ARM64 || COMPILE_TEST 761 select SDM_GCC_845 762 select QCOM_GDSC 763 help 764 Support for the video clock controller on SDM845 devices. 765 Say Y if you want to support video devices and functionality such as 766 video encode and decode. 767 768config SDM_DISPCC_845 769 tristate "SDM845 Display Clock Controller" 770 depends on ARM64 || COMPILE_TEST 771 select SDM_GCC_845 772 help 773 Support for the display clock controller on Qualcomm Technologies, Inc 774 SDM845 devices. 775 Say Y if you want to support display devices and functionality such as 776 splash screen. 777 778config SDM_LPASSCC_845 779 tristate "SDM845 Low Power Audio Subsystem (LPAAS) Clock Controller" 780 depends on ARM64 || COMPILE_TEST 781 select SDM_GCC_845 782 help 783 Support for the LPASS clock controller on SDM845 devices. 784 Say Y if you want to use the LPASS branch clocks of the LPASS clock 785 controller to reset the LPASS subsystem. 786 787config SDX_GCC_55 788 tristate "SDX55 Global Clock Controller" 789 depends on ARM || COMPILE_TEST 790 select QCOM_GDSC 791 help 792 Support for the global clock controller on SDX55 devices. 793 Say Y if you want to use peripheral devices such as UART, 794 SPI, I2C, USB, SD/UFS, PCIe etc. 795 796config SDX_GCC_65 797 tristate "SDX65 Global Clock Controller" 798 depends on ARM || COMPILE_TEST 799 select QCOM_GDSC 800 help 801 Support for the global clock controller on SDX65 devices. 802 Say Y if you want to use peripheral devices such as UART, 803 SPI, I2C, USB, SD/UFS, PCIe etc. 804 805config SDX_GCC_75 806 tristate "SDX75 Global Clock Controller" 807 select QCOM_GDSC 808 help 809 Support for the global clock controller on SDX75 devices. 810 Say Y if you want to use peripheral devices such as UART, 811 SPI, I2C, USB, SD/eMMC, PCIe etc. 812 813config SM_CAMCC_6350 814 tristate "SM6350 Camera Clock Controller" 815 depends on ARM64 || COMPILE_TEST 816 select SM_GCC_6350 817 help 818 Support for the camera clock controller on SM6350 devices. 819 Say Y if you want to support camera devices and camera functionality. 820 821config SM_CAMCC_7150 822 tristate "SM7150 Camera Clock Controller" 823 depends on ARM64 || COMPILE_TEST 824 select SM_GCC_7150 825 help 826 Support for the camera clock controller on SM7150 devices. 827 Say Y if you want to support camera devices and camera functionality. 828 829config SM_CAMCC_8150 830 tristate "SM8150 Camera Clock Controller" 831 select SM_GCC_8150 832 help 833 Support for the camera clock controller on Qualcomm Technologies, Inc 834 SM8150 devices. 835 Say Y if you want to support camera devices and functionality such as 836 capturing pictures. 837 838config SM_CAMCC_8250 839 tristate "SM8250 Camera Clock Controller" 840 depends on ARM64 || COMPILE_TEST 841 select SM_GCC_8250 842 help 843 Support for the camera clock controller on SM8250 devices. 844 Say Y if you want to support camera devices and camera functionality. 845 846config SM_CAMCC_8450 847 tristate "SM8450 Camera Clock Controller" 848 depends on ARM64 || COMPILE_TEST 849 select SM_GCC_8450 850 help 851 Support for the camera clock controller on SM8450 devices. 852 Say Y if you want to support camera devices and camera functionality. 853 854config SM_CAMCC_8550 855 tristate "SM8550 Camera Clock Controller" 856 depends on ARM64 || COMPILE_TEST 857 select SM_GCC_8550 858 help 859 Support for the camera clock controller on SM8550 devices. 860 Say Y if you want to support camera devices and camera functionality. 861 862config SM_CAMCC_8650 863 tristate "SM8650 Camera Clock Controller" 864 depends on ARM64 || COMPILE_TEST 865 select SM_GCC_8650 866 help 867 Support for the camera clock controller on SM8650 devices. 868 Say Y if you want to support camera devices and camera functionality. 869 870config SM_DISPCC_6115 871 tristate "SM6115 Display Clock Controller" 872 depends on ARM64 || COMPILE_TEST 873 depends on SM_GCC_6115 874 help 875 Support for the display clock controller on Qualcomm Technologies, Inc 876 SM6115/SM4250 devices. 877 Say Y if you want to support display devices and functionality such as 878 splash screen 879 880config SM_DISPCC_6125 881 tristate "SM6125 Display Clock Controller" 882 depends on ARM64 || COMPILE_TEST 883 depends on SM_GCC_6125 884 help 885 Support for the display clock controller on Qualcomm Technologies, Inc 886 SM6125 devices. 887 Say Y if you want to support display devices and functionality such as 888 splash screen 889 890config SM_DISPCC_7150 891 tristate "SM7150 Display Clock Controller" 892 depends on ARM64 || COMPILE_TEST 893 depends on SM_GCC_7150 894 help 895 Support for the display clock controller on Qualcomm Technologies, Inc 896 SM7150 devices. 897 Say Y if you want to support display devices and functionality such as 898 splash screen. 899 900config SM_DISPCC_8250 901 tristate "SM8150/SM8250/SM8350 Display Clock Controller" 902 depends on ARM64 || COMPILE_TEST 903 depends on SM_GCC_8150 || SM_GCC_8250 || SM_GCC_8350 904 help 905 Support for the display clock controller on Qualcomm Technologies, Inc 906 SM8150/SM8250/SM8350 devices. 907 Say Y if you want to support display devices and functionality such as 908 splash screen. 909 910config SM_DISPCC_6350 911 tristate "SM6350 Display Clock Controller" 912 depends on ARM64 || COMPILE_TEST 913 depends on SM_GCC_6350 914 help 915 Support for the display clock controller on Qualcomm Technologies, Inc 916 SM6350 devices. 917 Say Y if you want to support display devices and functionality such as 918 splash screen. 919 920config SM_DISPCC_6375 921 tristate "SM6375 Display Clock Controller" 922 depends on ARM64 || COMPILE_TEST 923 depends on SM_GCC_6375 924 help 925 Support for the display clock controller on Qualcomm Technologies, Inc 926 SM6375 devices. 927 Say Y if you want to support display devices and functionality such as 928 splash screen. 929 930config SM_DISPCC_8450 931 tristate "SM8450 Display Clock Controller" 932 depends on ARM64 || COMPILE_TEST 933 depends on SM_GCC_8450 934 help 935 Support for the display clock controller on Qualcomm Technologies, Inc 936 SM8450 devices. 937 Say Y if you want to support display devices and functionality such as 938 splash screen. 939 940config SM_DISPCC_8550 941 tristate "SM8550 Display Clock Controller" 942 depends on ARM64 || COMPILE_TEST 943 depends on SM_GCC_8550 || SM_GCC_8650 944 help 945 Support for the display clock controller on Qualcomm Technologies, Inc 946 SM8550 or SM8650 devices. 947 Say Y if you want to support display devices and functionality such as 948 splash screen. 949 950config SM_GCC_4450 951 tristate "SM4450 Global Clock Controller" 952 depends on ARM64 || COMPILE_TEST 953 select QCOM_GDSC 954 help 955 Support for the global clock controller on SM4450 devices. 956 Say Y if you want to use peripheral devices such as UART, SPI, 957 I2C, USB, SD/UFS, PCIe, etc. 958 959config SM_GCC_6115 960 tristate "SM6115 and SM4250 Global Clock Controller" 961 depends on ARM64 || COMPILE_TEST 962 select QCOM_GDSC 963 help 964 Support for the global clock controller on SM6115 and SM4250 devices. 965 Say Y if you want to use peripheral devices such as UART, SPI, 966 i2C, USB, UFS, SDDC, PCIe, etc. 967 968config SM_GCC_6125 969 tristate "SM6125 Global Clock Controller" 970 depends on ARM64 || COMPILE_TEST 971 help 972 Support for the global clock controller on SM6125 devices. 973 Say Y if you want to use peripheral devices such as UART, 974 SPI, I2C, USB, SD/UFS, PCIe etc. 975 976config SM_GCC_6350 977 tristate "SM6350 Global Clock Controller" 978 depends on ARM64 || COMPILE_TEST 979 select QCOM_GDSC 980 help 981 Support for the global clock controller on SM6350 devices. 982 Say Y if you want to use peripheral devices such as UART, 983 SPI, I2C, USB, SD/UFS, PCIe etc. 984 985config SM_GCC_6375 986 tristate "SM6375 Global Clock Controller" 987 depends on ARM64 || COMPILE_TEST 988 select QCOM_GDSC 989 help 990 Support for the global clock controller on SM6375 devices. 991 Say Y if you want to use peripheral devices such as UART, 992 SPI, I2C, USB, SD/UFS etc. 993 994config SM_GCC_7150 995 tristate "SM7150 Global Clock Controller" 996 depends on ARM64 || COMPILE_TEST 997 select QCOM_GDSC 998 help 999 Support for the global clock controller on SM7150 devices. 1000 Say Y if you want to use peripheral devices such as UART, 1001 SPI, I2C, USB, SD/UFS, PCIe etc. 1002 1003config SM_GCC_8150 1004 tristate "SM8150 Global Clock Controller" 1005 depends on ARM64 || COMPILE_TEST 1006 help 1007 Support for the global clock controller on SM8150 devices. 1008 Say Y if you want to use peripheral devices such as UART, 1009 SPI, I2C, USB, SD/UFS, PCIe etc. 1010 1011config SM_GCC_8250 1012 tristate "SM8250 Global Clock Controller" 1013 depends on ARM64 || COMPILE_TEST 1014 select QCOM_GDSC 1015 help 1016 Support for the global clock controller on SM8250 devices. 1017 Say Y if you want to use peripheral devices such as UART, 1018 SPI, I2C, USB, SD/UFS, PCIe etc. 1019 1020config SM_GCC_8350 1021 tristate "SM8350 Global Clock Controller" 1022 depends on ARM64 || COMPILE_TEST 1023 select QCOM_GDSC 1024 help 1025 Support for the global clock controller on SM8350 devices. 1026 Say Y if you want to use peripheral devices such as UART, 1027 SPI, I2C, USB, SD/UFS, PCIe etc. 1028 1029config SM_GCC_8450 1030 tristate "SM8450 Global Clock Controller" 1031 depends on ARM64 || COMPILE_TEST 1032 select QCOM_GDSC 1033 help 1034 Support for the global clock controller on SM8450 devices. 1035 Say Y if you want to use peripheral devices such as UART, 1036 SPI, I2C, USB, SD/UFS, PCIe etc. 1037 1038config SM_GCC_8550 1039 tristate "SM8550 Global Clock Controller" 1040 depends on ARM64 || COMPILE_TEST 1041 select QCOM_GDSC 1042 help 1043 Support for the global clock controller on SM8550 devices. 1044 Say Y if you want to use peripheral devices such as UART, 1045 SPI, I2C, USB, SD/UFS, PCIe etc. 1046 1047config SM_GCC_8650 1048 tristate "SM8650 Global Clock Controller" 1049 depends on ARM64 || COMPILE_TEST 1050 select QCOM_GDSC 1051 help 1052 Support for the global clock controller on SM8650 devices. 1053 Say Y if you want to use peripheral devices such as UART, 1054 SPI, I2C, USB, SD/UFS, PCIe etc. 1055 1056config SM_GPUCC_6115 1057 tristate "SM6115 Graphics Clock Controller" 1058 select SM_GCC_6115 1059 depends on ARM64 || COMPILE_TEST 1060 help 1061 Support for the graphics clock controller on SM6115 devices. 1062 Say Y if you want to support graphics controller devices and 1063 functionality such as 3D graphics. 1064 1065config SM_GPUCC_6125 1066 tristate "SM6125 Graphics Clock Controller" 1067 select SM_GCC_6125 1068 depends on ARM64 || COMPILE_TEST 1069 help 1070 Support for the graphics clock controller on SM6125 devices. 1071 Say Y if you want to support graphics controller devices and 1072 functionality such as 3D graphics. 1073 1074config SM_GPUCC_6375 1075 tristate "SM6375 Graphics Clock Controller" 1076 select SM_GCC_6375 1077 depends on ARM64 || COMPILE_TEST 1078 help 1079 Support for the graphics clock controller on SM6375 devices. 1080 Say Y if you want to support graphics controller devices and 1081 functionality such as 3D graphics. 1082 1083config SM_GPUCC_6350 1084 tristate "SM6350 Graphics Clock Controller" 1085 depends on ARM64 || COMPILE_TEST 1086 select SM_GCC_6350 1087 help 1088 Support for the graphics clock controller on SM6350 devices. 1089 Say Y if you want to support graphics controller devices and 1090 functionality such as 3D graphics. 1091 1092config SM_GPUCC_8150 1093 tristate "SM8150 Graphics Clock Controller" 1094 depends on ARM64 || COMPILE_TEST 1095 select SM_GCC_8150 1096 help 1097 Support for the graphics clock controller on SM8150 devices. 1098 Say Y if you want to support graphics controller devices and 1099 functionality such as 3D graphics. 1100 1101config SM_GPUCC_8250 1102 tristate "SM8250 Graphics Clock Controller" 1103 depends on ARM64 || COMPILE_TEST 1104 select SM_GCC_8250 1105 help 1106 Support for the graphics clock controller on SM8250 devices. 1107 Say Y if you want to support graphics controller devices and 1108 functionality such as 3D graphics. 1109 1110config SM_GPUCC_8350 1111 tristate "SM8350 Graphics Clock Controller" 1112 depends on ARM64 || COMPILE_TEST 1113 select SM_GCC_8350 1114 help 1115 Support for the graphics clock controller on SM8350 devices. 1116 Say Y if you want to support graphics controller devices and 1117 functionality such as 3D graphics. 1118 1119config SM_GPUCC_8450 1120 tristate "SM8450 Graphics Clock Controller" 1121 depends on ARM64 || COMPILE_TEST 1122 select SM_GCC_8450 1123 help 1124 Support for the graphics clock controller on SM8450 devices. 1125 Say Y if you want to support graphics controller devices and 1126 functionality such as 3D graphics. 1127 1128config SM_GPUCC_8550 1129 tristate "SM8550 Graphics Clock Controller" 1130 depends on ARM64 || COMPILE_TEST 1131 select SM_GCC_8550 1132 help 1133 Support for the graphics clock controller on SM8550 devices. 1134 Say Y if you want to support graphics controller devices and 1135 functionality such as 3D graphics. 1136 1137config SM_GPUCC_8650 1138 tristate "SM8650 Graphics Clock Controller" 1139 depends on ARM64 || COMPILE_TEST 1140 select SM_GCC_8650 1141 help 1142 Support for the graphics clock controller on SM8650 devices. 1143 Say Y if you want to support graphics controller devices and 1144 functionality such as 3D graphics. 1145 1146config SM_TCSRCC_8550 1147 tristate "SM8550 TCSR Clock Controller" 1148 depends on ARM64 || COMPILE_TEST 1149 select QCOM_GDSC 1150 help 1151 Support for the TCSR clock controller on SM8550 devices. 1152 Say Y if you want to use peripheral devices such as SD/UFS. 1153 1154config SM_TCSRCC_8650 1155 tristate "SM8650 TCSR Clock Controller" 1156 depends on ARM64 || COMPILE_TEST 1157 select QCOM_GDSC 1158 help 1159 Support for the TCSR clock controller on SM8650 devices. 1160 Say Y if you want to use peripheral devices such as SD/UFS. 1161 1162config SM_VIDEOCC_7150 1163 tristate "SM7150 Video Clock Controller" 1164 depends on ARM64 || COMPILE_TEST 1165 select SM_GCC_7150 1166 select QCOM_GDSC 1167 help 1168 Support for the video clock controller on SM7150 devices. 1169 Say Y if you want to support video devices and functionality such as 1170 video encode and decode. 1171 1172config SM_VIDEOCC_8150 1173 tristate "SM8150 Video Clock Controller" 1174 depends on ARM64 || COMPILE_TEST 1175 select SM_GCC_8150 1176 select QCOM_GDSC 1177 help 1178 Support for the video clock controller on SM8150 devices. 1179 Say Y if you want to support video devices and functionality such as 1180 video encode and decode. 1181 1182config SM_VIDEOCC_8250 1183 tristate "SM8250 Video Clock Controller" 1184 depends on ARM64 || COMPILE_TEST 1185 select SM_GCC_8250 1186 select QCOM_GDSC 1187 help 1188 Support for the video clock controller on SM8250 devices. 1189 Say Y if you want to support video devices and functionality such as 1190 video encode and decode. 1191 1192config SM_VIDEOCC_8350 1193 tristate "SM8350 Video Clock Controller" 1194 depends on ARM64 || COMPILE_TEST 1195 select SM_GCC_8350 1196 select QCOM_GDSC 1197 help 1198 Support for the video clock controller on SM8350 devices. 1199 Say Y if you want to support video devices and functionality such as 1200 video encode and decode. 1201 1202config SM_VIDEOCC_8550 1203 tristate "SM8550 Video Clock Controller" 1204 depends on ARM64 || COMPILE_TEST 1205 select SM_GCC_8550 1206 select QCOM_GDSC 1207 help 1208 Support for the video clock controller on Qualcomm Technologies, Inc. 1209 SM8550 devices. 1210 Say Y if you want to support video devices and functionality such as 1211 video encode/decode. 1212 1213config SPMI_PMIC_CLKDIV 1214 tristate "SPMI PMIC clkdiv Support" 1215 depends on SPMI || COMPILE_TEST 1216 help 1217 This driver supports the clkdiv functionality on the Qualcomm 1218 Technologies, Inc. SPMI PMIC. It configures the frequency of 1219 clkdiv outputs of the PMIC. These clocks are typically wired 1220 through alternate functions on GPIO pins. 1221 1222config QCOM_HFPLL 1223 tristate "High-Frequency PLL (HFPLL) Clock Controller" 1224 help 1225 Support for the high-frequency PLLs present on Qualcomm devices. 1226 Say Y if you want to support CPU frequency scaling on devices 1227 such as MSM8974, APQ8084, etc. 1228 1229config KPSS_XCC 1230 tristate "KPSS Clock Controller" 1231 help 1232 Support for the Krait ACC and GCC clock controllers. Say Y 1233 if you want to support CPU frequency scaling on devices such 1234 as MSM8960, APQ8064, etc. 1235 1236config KRAITCC 1237 tristate "Krait Clock Controller" 1238 depends on ARM 1239 select KRAIT_CLOCKS 1240 help 1241 Support for the Krait CPU clocks on Qualcomm devices. 1242 Say Y if you want to support CPU frequency scaling. 1243 1244config CLK_GFM_LPASS_SM8250 1245 tristate "SM8250 GFM LPASS Clocks" 1246 depends on ARM64 || COMPILE_TEST 1247 help 1248 Support for the Glitch Free Mux (GFM) Low power audio 1249 subsystem (LPASS) clocks found on SM8250 SoCs. 1250 1251config SM_VIDEOCC_8450 1252 tristate "SM8450 Video Clock Controller" 1253 depends on ARM64 || COMPILE_TEST 1254 select SM_GCC_8450 1255 select QCOM_GDSC 1256 help 1257 Support for the video clock controller on Qualcomm Technologies, Inc. 1258 SM8450 devices. 1259 Say Y if you want to support video devices and functionality such as 1260 video encode/decode. 1261endif 1262