Linux Audio

Check our new training course

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