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