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