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