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