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