17b9487a9SPaul Walmsley# SPDX-License-Identifier: GPL-2.0 26d803ba7SJean-Christop PLAGNIOL-VILLARD 3bc8c945eSStephen Boydconfig HAVE_CLK 4bc8c945eSStephen Boyd bool 5bc8c945eSStephen Boyd help 6bc8c945eSStephen Boyd The <linux/clk.h> calls support software clock gating and 7bc8c945eSStephen Boyd thus are a key power management tool on many systems. 8bc8c945eSStephen Boyd 95c77f560SShawn Guoconfig HAVE_CLK_PREPARE 105c77f560SShawn Guo bool 115c77f560SShawn Guo 12bbd7ffdbSStephen Boydconfig HAVE_LEGACY_CLK # TODO: Remove once all legacy users are migrated 138fb61e33SArnd Bergmann bool 14bbd7ffdbSStephen Boyd select HAVE_CLK 15bbd7ffdbSStephen Boyd help 16bbd7ffdbSStephen Boyd Select this option when the clock API in <linux/clk.h> is implemented 17bbd7ffdbSStephen Boyd by platform/architecture code. This method is deprecated. Modern 18bbd7ffdbSStephen Boyd code should select COMMON_CLK instead and not define a custom 19bbd7ffdbSStephen Boyd 'struct clk'. 20bbd7ffdbSStephen Boyd 21bbd7ffdbSStephen Boydmenuconfig COMMON_CLK 22bbd7ffdbSStephen Boyd bool "Common Clock Framework" 23bbd7ffdbSStephen Boyd depends on !HAVE_LEGACY_CLK 24b2476490SMike Turquette select HAVE_CLK_PREPARE 252f4574ddSArnd Bergmann select HAVE_CLK 260777591eSAndy Shevchenko select RATIONAL 27a7f7f624SMasahiro Yamada help 28b2476490SMike Turquette The common clock framework is a single definition of struct 29b2476490SMike Turquette clk, useful across many platforms, as well as an 30b2476490SMike Turquette implementation of the clock API in include/linux/clk.h. 31b2476490SMike Turquette Architectures utilizing the common struct clk should select 328fb61e33SArnd Bergmann this option. 33b2476490SMike Turquette 34bbd7ffdbSStephen Boydif COMMON_CLK 35b2476490SMike Turquette 36f05259a6SMark Brownconfig COMMON_CLK_WM831X 37f05259a6SMark Brown tristate "Clock driver for WM831x/2x PMICs" 38f05259a6SMark Brown depends on MFD_WM831X 39a7f7f624SMasahiro Yamada help 40f05259a6SMark Brown Supports the clocking subsystem of the WM831x/2x series of 41fe4e4372SMasanari Iida PMICs from Wolfson Microelectronics. 42f05259a6SMark Brown 435ee2b877SPawel Mollsource "drivers/clk/versatile/Kconfig" 44f9a6aa43SLinus Walleij 45daeeb438SEugeniy Paltsevconfig CLK_HSDK 46daeeb438SEugeniy Paltsev bool "PLL Driver for HSDK platform" 47f6bade68SGeert Uytterhoeven depends on ARC_SOC_HSDK || COMPILE_TEST 48bd8548d0SGeert Uytterhoeven depends on HAS_IOMEM 49a7f7f624SMasahiro Yamada help 50daeeb438SEugeniy Paltsev This driver supports the HSDK core, system, ddr, tunnel and hdmi PLLs 51daeeb438SEugeniy Paltsev control. 52daeeb438SEugeniy Paltsev 533bc61cfdSLiam Beguinconfig LMK04832 543bc61cfdSLiam Beguin tristate "Ti LMK04832 JESD204B Compliant Clock Jitter Cleaner" 5597a1c5cbSStephen Boyd depends on SPI 563bc61cfdSLiam Beguin select REGMAP_SPI 573bc61cfdSLiam Beguin help 583bc61cfdSLiam Beguin Say yes here to build support for Texas Instruments' LMK04832 Ultra 593bc61cfdSLiam Beguin Low-Noise JESD204B Compliant Clock Jitter Cleaner With Dual Loop PLLs 603bc61cfdSLiam Beguin 616641057dSMartin Povišerconfig COMMON_CLK_APPLE_NCO 62236541acSMartin Povišer tristate "Clock driver for Apple SoC NCOs" 636641057dSMartin Povišer depends on ARCH_APPLE || COMPILE_TEST 646641057dSMartin Povišer default ARCH_APPLE 656641057dSMartin Povišer help 666641057dSMartin Povišer This driver supports NCO (Numerically Controlled Oscillator) blocks 676641057dSMartin Povišer found on Apple SoCs such as t8103 (M1). The blocks are typically 686641057dSMartin Povišer generators of audio clocks. 696641057dSMartin Povišer 7073118e61SJonghwa Leeconfig COMMON_CLK_MAX77686 715a227cd1SLaxman Dewangan tristate "Clock driver for Maxim 77620/77686/77802 MFD" 729c1b305cSKrzysztof Kozlowski depends on MFD_MAX77686 || MFD_MAX77620 || COMPILE_TEST 73a7f7f624SMasahiro Yamada help 745a227cd1SLaxman Dewangan This driver supports Maxim 77620/77686/77802 crystal oscillator 755a227cd1SLaxman Dewangan clock. 7683ccf16cSJavier Martinez Canillas 7733f51046SDaniel Mackconfig COMMON_CLK_MAX9485 7833f51046SDaniel Mack tristate "Maxim 9485 Programmable Clock Generator" 7933f51046SDaniel Mack depends on I2C 8033f51046SDaniel Mack help 8133f51046SDaniel Mack This driver supports Maxim 9485 Programmable Audio Clock Generator 8233f51046SDaniel Mack 83038b892aSChris Zhongconfig COMMON_CLK_RK808 848ed14401STony Xie tristate "Clock driver for RK805/RK808/RK809/RK817/RK818" 85c20e8c5bSSebastian Reichel depends on MFD_RK8XX 86a7f7f624SMasahiro Yamada help 878ed14401STony Xie This driver supports RK805, RK809 and RK817, RK808 and RK818 crystal oscillator clock. 888ed14401STony Xie These multi-function devices have two fixed-rate oscillators, clocked at 32KHz each. 898ed14401STony Xie Clkout1 is always on, Clkout2 can off by control register. 90038b892aSChris Zhong 91b68adc23SDaniel Lezcanoconfig COMMON_CLK_HI655X 923a49afb8SRiku Voipio tristate "Clock driver for Hi655x" if EXPERT 933a49afb8SRiku Voipio depends on (MFD_HI655X_PMIC || COMPILE_TEST) 940ffad677SRandy Dunlap select REGMAP 953a49afb8SRiku Voipio default MFD_HI655X_PMIC 96a7f7f624SMasahiro Yamada help 97b68adc23SDaniel Lezcano This driver supports the hi655x PMIC clock. This 98b68adc23SDaniel Lezcano multi-function device has one fixed-rate oscillator, clocked 99b68adc23SDaniel Lezcano at 32KHz. 100b68adc23SDaniel Lezcano 1016d6a1d82SSudeep Hollaconfig COMMON_CLK_SCMI 1026d6a1d82SSudeep Holla tristate "Clock driver controlled via SCMI interface" 1036d6a1d82SSudeep Holla depends on ARM_SCMI_PROTOCOL || COMPILE_TEST 104a7f7f624SMasahiro Yamada help 1056d6a1d82SSudeep Holla This driver provides support for clocks that are controlled 1066d6a1d82SSudeep Holla by firmware that implements the SCMI interface. 1076d6a1d82SSudeep Holla 1086d6a1d82SSudeep Holla This driver uses SCMI Message Protocol to interact with the 1096d6a1d82SSudeep Holla firmware providing all the clock controls. 1106d6a1d82SSudeep Holla 111cd52c2a4SSudeep Hollaconfig COMMON_CLK_SCPI 112cd52c2a4SSudeep Holla tristate "Clock driver controlled via SCPI interface" 113cd52c2a4SSudeep Holla depends on ARM_SCPI_PROTOCOL || COMPILE_TEST 114a7f7f624SMasahiro Yamada help 115cd52c2a4SSudeep Holla This driver provides support for clocks that are controlled 116cd52c2a4SSudeep Holla by firmware that implements the SCPI interface. 117cd52c2a4SSudeep Holla 118cd52c2a4SSudeep Holla This driver uses SCPI Message Protocol to interact with the 119cd52c2a4SSudeep Holla firmware providing all the clock controls. 120cd52c2a4SSudeep Holla 1213044a860SMike Looijmansconfig COMMON_CLK_SI5341 1223044a860SMike Looijmans tristate "Clock driver for SiLabs 5341 and 5340 A/B/C/D devices" 1233044a860SMike Looijmans depends on I2C 1243044a860SMike Looijmans select REGMAP_I2C 1253044a860SMike Looijmans help 1263044a860SMike Looijmans This driver supports Silicon Labs Si5341 and Si5340 programmable clock 1273044a860SMike Looijmans generators. Not all features of these chips are currently supported 1283044a860SMike Looijmans by the driver, in particular it only supports XTAL input. The chip can 1293044a860SMike Looijmans be pre-programmed to support other configurations and features not yet 1303044a860SMike Looijmans implemented in the driver. 1313044a860SMike Looijmans 1329abd5f05SSebastian Hesselbarthconfig COMMON_CLK_SI5351 1339abd5f05SSebastian Hesselbarth tristate "Clock driver for SiLabs 5351A/B/C" 1349abd5f05SSebastian Hesselbarth depends on I2C 1359abd5f05SSebastian Hesselbarth select REGMAP_I2C 136a7f7f624SMasahiro Yamada help 1379abd5f05SSebastian Hesselbarth This driver supports Silicon Labs 5351A/B/C programmable clock 1389abd5f05SSebastian Hesselbarth generators. 1399abd5f05SSebastian Hesselbarth 1408ce20e66SMike Looijmansconfig COMMON_CLK_SI514 1418ce20e66SMike Looijmans tristate "Clock driver for SiLabs 514 devices" 1428ce20e66SMike Looijmans depends on I2C 1438ce20e66SMike Looijmans depends on OF 1448ce20e66SMike Looijmans select REGMAP_I2C 1458ce20e66SMike Looijmans help 1468ce20e66SMike Looijmans This driver supports the Silicon Labs 514 programmable clock 1478ce20e66SMike Looijmans generator. 1488ce20e66SMike Looijmans 149953cc3e8SMike Looijmansconfig COMMON_CLK_SI544 150953cc3e8SMike Looijmans tristate "Clock driver for SiLabs 544 devices" 151953cc3e8SMike Looijmans depends on I2C 152953cc3e8SMike Looijmans select REGMAP_I2C 153953cc3e8SMike Looijmans help 154953cc3e8SMike Looijmans This driver supports the Silicon Labs 544 programmable clock 155953cc3e8SMike Looijmans generator. 156953cc3e8SMike Looijmans 1571459c837SSoren Brinkmannconfig COMMON_CLK_SI570 1581459c837SSoren Brinkmann tristate "Clock driver for SiLabs 570 and compatible devices" 1591459c837SSoren Brinkmann depends on I2C 1601459c837SSoren Brinkmann depends on OF 1611459c837SSoren Brinkmann select REGMAP_I2C 1621459c837SSoren Brinkmann help 1631459c837SSoren Brinkmann This driver supports Silicon Labs 570/571/598/599 programmable 1641459c837SSoren Brinkmann clock generators. 1651459c837SSoren Brinkmann 1661ab4601dSManivannan Sadhasivamconfig COMMON_CLK_BM1880 1671ab4601dSManivannan Sadhasivam bool "Clock driver for Bitmain BM1880 SoC" 1681ab4601dSManivannan Sadhasivam depends on ARCH_BITMAIN || COMPILE_TEST 1691ab4601dSManivannan Sadhasivam default ARCH_BITMAIN 1701ab4601dSManivannan Sadhasivam help 1711ab4601dSManivannan Sadhasivam This driver supports the clocks on Bitmain BM1880 SoC. 1721ab4601dSManivannan Sadhasivam 173c7d5a46bSMike Looijmansconfig COMMON_CLK_CDCE706 174c7d5a46bSMike Looijmans tristate "Clock driver for TI CDCE706 clock synthesizer" 175c7d5a46bSMike Looijmans depends on I2C 176c7d5a46bSMike Looijmans select REGMAP_I2C 177a7f7f624SMasahiro Yamada help 178c7d5a46bSMike Looijmans This driver supports TI CDCE706 programmable 3-PLL clock synthesizer. 179c7d5a46bSMike Looijmans 180ff5f87cbSHans de Goedeconfig COMMON_CLK_TPS68470 181ff5f87cbSHans de Goede tristate "Clock Driver for TI TPS68470 PMIC" 182ff5f87cbSHans de Goede depends on I2C 183ff5f87cbSHans de Goede depends on INTEL_SKL_INT3472 || COMPILE_TEST 184ff5f87cbSHans de Goede select REGMAP_I2C 185ff5f87cbSHans de Goede help 186ff5f87cbSHans de Goede This driver supports the clocks provided by the TPS68470 PMIC. 187ff5f87cbSHans de Goede 18819fbbbbcSMike Looijmansconfig COMMON_CLK_CDCE925 1895508124cSAkinobu Mita tristate "Clock driver for TI CDCE913/925/937/949 devices" 19019fbbbbcSMike Looijmans depends on I2C 19119fbbbbcSMike Looijmans depends on OF 19219fbbbbcSMike Looijmans select REGMAP_I2C 19319fbbbbcSMike Looijmans help 1945508124cSAkinobu Mita This driver supports the TI CDCE913/925/937/949 programmable clock 1955508124cSAkinobu Mita synthesizer. Each chip has different number of PLLs and outputs. 1965508124cSAkinobu Mita For example, the CDCE925 contains two PLLs with spread-spectrum 1975508124cSAkinobu Mita clocking support and five output dividers. The driver only supports 1985508124cSAkinobu Mita the following setup, and uses a fixed setting for the output muxes. 19919fbbbbcSMike Looijmans Y1 is derived from the input clock 20019fbbbbcSMike Looijmans Y2 and Y3 derive from PLL1 20119fbbbbcSMike Looijmans Y4 and Y5 derive from PLL2 20219fbbbbcSMike Looijmans Given a target output frequency, the driver will set the PLL and 20319fbbbbcSMike Looijmans divider to best approximate the desired output. 20419fbbbbcSMike Looijmans 20564dfbe24SKuninori Morimotoconfig COMMON_CLK_CS2000_CP 20664dfbe24SKuninori Morimoto tristate "Clock driver for CS2000 Fractional-N Clock Synthesizer & Clock Multiplier" 20764dfbe24SKuninori Morimoto depends on I2C 2085edffb98SDaniel Mack select REGMAP_I2C 20964dfbe24SKuninori Morimoto help 21064dfbe24SKuninori Morimoto If you say yes here you get support for the CS2000 clock multiplier. 21164dfbe24SKuninori Morimoto 2121e627317SFelix Fietkauconfig COMMON_CLK_EN7523 2131e627317SFelix Fietkau bool "Clock driver for Airoha EN7523 SoC system clocks" 2141e627317SFelix Fietkau depends on OF 2151e627317SFelix Fietkau depends on ARCH_AIROHA || COMPILE_TEST 2161e627317SFelix Fietkau default ARCH_AIROHA 2171e627317SFelix Fietkau help 2181e627317SFelix Fietkau This driver provides the fixed clocks and gates present on Airoha 2191e627317SFelix Fietkau ARM silicon. 2201e627317SFelix Fietkau 2218a6b7e2bSNikita Shubinconfig COMMON_CLK_EP93XX 2228a6b7e2bSNikita Shubin tristate "Clock driver for Cirrus Logic ep93xx SoC" 2238a6b7e2bSNikita Shubin depends on ARCH_EP93XX || COMPILE_TEST 2248a6b7e2bSNikita Shubin select AUXILIARY_BUS 2258a6b7e2bSNikita Shubin select REGMAP_MMIO 2268a6b7e2bSNikita Shubin help 2278a6b7e2bSNikita Shubin This driver supports the SoC clocks on the Cirrus Logic ep93xx. 2288a6b7e2bSNikita Shubin 22925d90494SThéo Lebrunconfig COMMON_CLK_EYEQ 23025d90494SThéo Lebrun bool "Clock driver for the Mobileye EyeQ platform" 23125d90494SThéo Lebrun depends on MACH_EYEQ5 || MACH_EYEQ6H || COMPILE_TEST 23225d90494SThéo Lebrun select AUXILIARY_BUS 23325d90494SThéo Lebrun default MACH_EYEQ5 || MACH_EYEQ6H 23425d90494SThéo Lebrun help 23525d90494SThéo Lebrun This driver provides clocks found on Mobileye EyeQ5, EyeQ6L and Eye6H 23625d90494SThéo Lebrun SoCs. Controllers live in shared register regions called OLB. Driver 23725d90494SThéo Lebrun provides read-only PLLs, derived from the main crystal clock (which 23825d90494SThéo Lebrun must be constant). It also exposes some divider clocks. 23925d90494SThéo Lebrun 240fcf77be8SMichael Walleconfig COMMON_CLK_FSL_FLEXSPI 241fcf77be8SMichael Walle tristate "Clock driver for FlexSPI on Layerscape SoCs" 242fcf77be8SMichael Walle depends on ARCH_LAYERSCAPE || COMPILE_TEST 243fcf77be8SMichael Walle default ARCH_LAYERSCAPE && SPI_NXP_FLEXSPI 244fcf77be8SMichael Walle help 245fcf77be8SMichael Walle On Layerscape SoCs there is a special clock for the FlexSPI 246fcf77be8SMichael Walle interface. 247fcf77be8SMichael Walle 2489cd10205SMichael Walleconfig COMMON_CLK_FSL_SAI 2499cd10205SMichael Walle bool "Clock driver for BCLK of Freescale SAI cores" 2509cd10205SMichael Walle depends on ARCH_LAYERSCAPE || COMPILE_TEST 2519cd10205SMichael Walle help 2529cd10205SMichael Walle This driver supports the Freescale SAI (Synchronous Audio Interface) 2539cd10205SMichael Walle to be used as a generic clock output. Some SoCs have restrictions 2549cd10205SMichael Walle regarding the possible pin multiplexer settings. Eg. on some SoCs 2559cd10205SMichael Walle two SAI interfaces can only be enabled together. If just one is 2569cd10205SMichael Walle needed, the BCLK pin of the second one can be used as general 2579cd10205SMichael Walle purpose clock output. Ideally, it can be used to drive an audio 2589cd10205SMichael Walle codec (sometimes known as MCLK). 2599cd10205SMichael Walle 260846423f9SLinus Walleijconfig COMMON_CLK_GEMINI 261846423f9SLinus Walleij bool "Clock driver for Cortina Systems Gemini SoC" 262846423f9SLinus Walleij depends on ARCH_GEMINI || COMPILE_TEST 263846423f9SLinus Walleij select MFD_SYSCON 264846423f9SLinus Walleij select RESET_CONTROLLER 265a7f7f624SMasahiro Yamada help 266846423f9SLinus Walleij This driver supports the SoC clocks on the Cortina Systems Gemini 267846423f9SLinus Walleij platform, also known as SL3516 or CS3516. 268846423f9SLinus Walleij 26954104ee0SKavyasree Kotagiriconfig COMMON_CLK_LAN966X 2708a977bbbSClément Léger tristate "Generic Clock Controller driver for LAN966X SoC" 271aa091a6aSHoratiu Vultur depends on HAS_IOMEM 272aa091a6aSHoratiu Vultur depends on OF 273e7b012cbSRobert Marko depends on SOC_LAN966 || ARCH_LAN969X || COMPILE_TEST 27454104ee0SKavyasree Kotagiri help 27554104ee0SKavyasree Kotagiri This driver provides support for Generic Clock Controller(GCK) on 27654104ee0SKavyasree Kotagiri LAN966X SoC. GCK generates and supplies clock to various peripherals 27754104ee0SKavyasree Kotagiri within the SoC. 27854104ee0SKavyasree Kotagiri 2795eda5d79SJoel Stanleyconfig COMMON_CLK_ASPEED 2805eda5d79SJoel Stanley bool "Clock driver for Aspeed BMC SoCs" 2815eda5d79SJoel Stanley depends on ARCH_ASPEED || COMPILE_TEST 2825eda5d79SJoel Stanley default ARCH_ASPEED 2835eda5d79SJoel Stanley select MFD_SYSCON 2845eda5d79SJoel Stanley select RESET_CONTROLLER 285a7f7f624SMasahiro Yamada help 2865eda5d79SJoel Stanley This driver supports the SoC clocks on the Aspeed BMC platforms. 2875eda5d79SJoel Stanley 2885eda5d79SJoel Stanley The G4 and G5 series, including the ast2400 and ast2500, are supported 2895eda5d79SJoel Stanley by this driver. 2905eda5d79SJoel Stanley 2917cc560deSYadwinder Singh Brarconfig COMMON_CLK_S2MPS11 292e8b60a45SKrzysztof Kozlowski tristate "Clock driver for S2MPS1X/S5M8767 MFD" 2939c1b305cSKrzysztof Kozlowski depends on MFD_SEC_CORE || COMPILE_TEST 294a7f7f624SMasahiro Yamada help 295e8b60a45SKrzysztof Kozlowski This driver supports S2MPS11/S2MPS14/S5M8767 crystal oscillator 296e8b60a45SKrzysztof Kozlowski clock. These multi-function devices have two (S2MPS14) or three 297e8b60a45SKrzysztof Kozlowski (S2MPS11, S5M8767) fixed-rate oscillators, clocked at 32KHz each. 2987cc560deSYadwinder Singh Brar 2994eb15b03SAndreas Kemnadeconfig CLK_TWL 3004eb15b03SAndreas Kemnade tristate "Clock driver for the TWL PMIC family" 3014eb15b03SAndreas Kemnade depends on TWL4030_CORE 3024eb15b03SAndreas Kemnade help 3034eb15b03SAndreas Kemnade Enable support for controlling the clock resources on TWL family 3044eb15b03SAndreas Kemnade PMICs. These devices have some 32K clock outputs which can be 3059abc1eb6SAndreas Kemnade controlled by software. For now, the TWL6032 and TWL6030 clocks are 3064eb15b03SAndreas Kemnade supported. 3074eb15b03SAndreas Kemnade 308f9f8c043SPeter Ujfalusiconfig CLK_TWL6040 309f9f8c043SPeter Ujfalusi tristate "External McPDM functional clock from twl6040" 310f9f8c043SPeter Ujfalusi depends on TWL6040_CORE 311a7f7f624SMasahiro Yamada help 312f9f8c043SPeter Ujfalusi Enable the external functional clock support on OMAP4+ platforms for 313f9f8c043SPeter Ujfalusi McPDM. McPDM module is using the external bit clock on the McPDM bus 314f9f8c043SPeter Ujfalusi as functional clock. 315f9f8c043SPeter Ujfalusi 3160e646c52SLars-Peter Clausenconfig COMMON_CLK_AXI_CLKGEN 3170e646c52SLars-Peter Clausen tristate "AXI clkgen driver" 318324a8105SAlexandru Ardelean depends on HAS_IOMEM || COMPILE_TEST 319324a8105SAlexandru Ardelean depends on OF 3200e646c52SLars-Peter Clausen help 3210e646c52SLars-Peter Clausen Support for the Analog Devices axi-clkgen pcore clock generator for Xilinx 3220e646c52SLars-Peter Clausen FPGAs. It is commonly used in Analog Devices' reference designs. 3230e646c52SLars-Peter Clausen 32493a17c05STang Yuantianconfig CLK_QORIQ 32593a17c05STang Yuantian bool "Clock driver for Freescale QorIQ platforms" 326b8bcece8SGeert Uytterhoeven depends on OF 327b8bcece8SGeert Uytterhoeven depends on PPC_E500MC || SOC_LS1021A || ARCH_LAYERSCAPE || COMPILE_TEST 328a7f7f624SMasahiro Yamada help 32993a17c05STang Yuantian This adds the clock driver support for Freescale QorIQ platforms 33093a17c05STang Yuantian using common clock framework. 331555eae97STang Yuantian 332d37010a3SWen Heconfig CLK_LS1028A_PLLDIG 333d37010a3SWen He tristate "Clock driver for LS1028A Display output" 334d37010a3SWen He depends on ARCH_LAYERSCAPE || COMPILE_TEST 335d37010a3SWen He default ARCH_LAYERSCAPE 336d37010a3SWen He help 337d37010a3SWen He This driver support the Display output interfaces(LCD, DPHY) pixel clocks 338d37010a3SWen He of the QorIQ Layerscape LS1028A, as implemented TSMC CLN28HPM PLL. Not all 339d37010a3SWen He features of the PLL are currently supported by the driver. By default, 340d37010a3SWen He configured bypass mode with this PLL. 3416d803ba7SJean-Christop PLAGNIOL-VILLARD 342308964caSLoc Hoconfig COMMON_CLK_XGENE 343308964caSLoc Ho bool "Clock driver for APM XGene SoC" 344ce9a1046SMarc Gonzalez default ARCH_XGENE 3454a7748c3SJavier Martinez Canillas depends on ARM64 || COMPILE_TEST 346a7f7f624SMasahiro Yamada help 3474fe02fefSChristophe JAILLET Support for the APM X-Gene SoC reference, PLL, and device clocks. 348308964caSLoc Ho 34976c54783SCharles Keepaxconfig COMMON_CLK_LOCHNAGAR 35076c54783SCharles Keepax tristate "Cirrus Logic Lochnagar clock driver" 35176c54783SCharles Keepax depends on MFD_LOCHNAGAR 35276c54783SCharles Keepax help 35376c54783SCharles Keepax This driver supports the clocking features of the Cirrus Logic 35476c54783SCharles Keepax Lochnagar audio development board. 35576c54783SCharles Keepax 356e0b255dfSTomer Maimonconfig COMMON_CLK_NPCM8XX 357e0b255dfSTomer Maimon tristate "Clock driver for the NPCM8XX SoC Family" 358e0b255dfSTomer Maimon depends on ARCH_NPCM || COMPILE_TEST 359e0b255dfSTomer Maimon help 360e0b255dfSTomer Maimon This driver supports the clocks on the Nuvoton BMC NPCM8XX SoC Family, 361e0b255dfSTomer Maimon all the clocks are initialized by the bootloader, so this driver 362e0b255dfSTomer Maimon allows only reading of current settings directly from the hardware. 363e0b255dfSTomer Maimon 364acc0ccffSYinbo Zhuconfig COMMON_CLK_LOONGSON2 365acc0ccffSYinbo Zhu bool "Clock driver for Loongson-2 SoC" 366acc0ccffSYinbo Zhu depends on LOONGARCH || COMPILE_TEST 367acc0ccffSYinbo Zhu help 368acc0ccffSYinbo Zhu This driver provides support for clock controller on Loongson-2 SoC. 369acc0ccffSYinbo Zhu The clock controller can generates and supplies clock to various 370acc0ccffSYinbo Zhu peripherals within the SoC. 371acc0ccffSYinbo Zhu Say Y here to support Loongson-2 SoC clock driver. 372acc0ccffSYinbo Zhu 373f7c82a60SVladimir Zapolskiyconfig COMMON_CLK_NXP 374f7c82a60SVladimir Zapolskiy def_bool COMMON_CLK && (ARCH_LPC18XX || ARCH_LPC32XX) 375f7c82a60SVladimir Zapolskiy select REGMAP_MMIO if ARCH_LPC32XX 37672ad679aSEzequiel Garcia select MFD_SYSCON if ARCH_LPC18XX 377a7f7f624SMasahiro Yamada help 378f7c82a60SVladimir Zapolskiy Support for clock providers on NXP platforms. 379f7c82a60SVladimir Zapolskiy 380942d1d67SPeter Ujfalusiconfig COMMON_CLK_PALMAS 381942d1d67SPeter Ujfalusi tristate "Clock driver for TI Palmas devices" 382942d1d67SPeter Ujfalusi depends on MFD_PALMAS 383a7f7f624SMasahiro Yamada help 384942d1d67SPeter Ujfalusi This driver supports TI Palmas devices 32KHz output KG and KG_AUDIO 385942d1d67SPeter Ujfalusi using common clock framework. 386942d1d67SPeter Ujfalusi 3879a74ccdbSPhilipp Zabelconfig COMMON_CLK_PWM 3889a74ccdbSPhilipp Zabel tristate "Clock driver for PWMs used as clock outputs" 3899a74ccdbSPhilipp Zabel depends on PWM 390a7f7f624SMasahiro Yamada help 3919a74ccdbSPhilipp Zabel Adapter driver so that any PWM output can be (mis)used as clock signal 3929a74ccdbSPhilipp Zabel at 50% duty cycle. 3939a74ccdbSPhilipp Zabel 39498d147f5SRobert Jarzmikconfig COMMON_CLK_PXA 39598d147f5SRobert Jarzmik def_bool COMMON_CLK && ARCH_PXA 396a7f7f624SMasahiro Yamada help 397048c58b4SMike Looijmans Support for the Marvell PXA SoC. 39898d147f5SRobert Jarzmik 399892e0ddeSMarek Vasutconfig COMMON_CLK_RS9_PCIE 400892e0ddeSMarek Vasut tristate "Clock driver for Renesas 9-series PCIe clock generators" 401892e0ddeSMarek Vasut depends on I2C 402892e0ddeSMarek Vasut depends on OF 403892e0ddeSMarek Vasut select REGMAP_I2C 404892e0ddeSMarek Vasut help 405892e0ddeSMarek Vasut This driver supports the Renesas 9-series PCIe clock generator 406892e0ddeSMarek Vasut models 9FGV/9DBV/9DMV/9FGL/9DML/9QXL/9SQ. 407892e0ddeSMarek Vasut 408edc12763SMarek Vasutconfig COMMON_CLK_SI521XX 409edc12763SMarek Vasut tristate "Clock driver for SkyWorks Si521xx PCIe clock generators" 410edc12763SMarek Vasut depends on I2C 411edc12763SMarek Vasut depends on OF 412edc12763SMarek Vasut select REGMAP_I2C 413edc12763SMarek Vasut help 414edc12763SMarek Vasut This driver supports the SkyWorks Si521xx PCIe clock generator 415edc12763SMarek Vasut models Si52144/Si52146/Si52147. 416edc12763SMarek Vasut 4176e9aff55SBiju Dasconfig COMMON_CLK_VC3 4186e9aff55SBiju Das tristate "Clock driver for Renesas VersaClock 3 devices" 4196e9aff55SBiju Das depends on I2C 4206e9aff55SBiju Das depends on OF 4216e9aff55SBiju Das select REGMAP_I2C 4226e9aff55SBiju Das help 4236e9aff55SBiju Das This driver supports the Renesas VersaClock 3 programmable clock 4246e9aff55SBiju Das generators. 4256e9aff55SBiju Das 4263e1aec4eSMarek Vasutconfig COMMON_CLK_VC5 427dbf6b16fSMarek Vasut tristate "Clock driver for IDT VersaClock 5,6 devices" 4283e1aec4eSMarek Vasut depends on I2C 4293e1aec4eSMarek Vasut depends on OF 4303e1aec4eSMarek Vasut select REGMAP_I2C 4313e1aec4eSMarek Vasut help 432dbf6b16fSMarek Vasut This driver supports the IDT VersaClock 5 and VersaClock 6 433dbf6b16fSMarek Vasut programmable clock generators. 4343e1aec4eSMarek Vasut 43548c5e98fSAlex Helmsconfig COMMON_CLK_VC7 43648c5e98fSAlex Helms tristate "Clock driver for Renesas Versaclock 7 devices" 43748c5e98fSAlex Helms depends on I2C 43848c5e98fSAlex Helms depends on OF 43948c5e98fSAlex Helms select REGMAP_I2C 44048c5e98fSAlex Helms help 44148c5e98fSAlex Helms Renesas Versaclock7 is a family of configurable clock generator 44248c5e98fSAlex Helms and jitter attenuator ICs with fractional and integer dividers. 44348c5e98fSAlex Helms 444da32d353SBenjamin Gaignardconfig COMMON_CLK_STM32F 4459a160601SGabriel Fernandez def_bool COMMON_CLK && (MACH_STM32F429 || MACH_STM32F469 || MACH_STM32F746) 446da32d353SBenjamin Gaignard help 447da32d353SBenjamin Gaignard Support for stm32f4 and stm32f7 SoC families clocks 448da32d353SBenjamin Gaignard 449da32d353SBenjamin Gaignardconfig COMMON_CLK_STM32H7 4509a160601SGabriel Fernandez def_bool COMMON_CLK && MACH_STM32H743 451da32d353SBenjamin Gaignard help 452da32d353SBenjamin Gaignard Support for stm32h7 SoC family clocks 453da32d353SBenjamin Gaignard 454a9372a5fSLubomir Rintelconfig COMMON_CLK_MMP2 455a9372a5fSLubomir Rintel def_bool COMMON_CLK && (MACH_MMP2_DT || MACH_MMP3_DT) 456a9372a5fSLubomir Rintel help 457a9372a5fSLubomir Rintel Support for Marvell MMP2 and MMP3 SoC clocks 458a9372a5fSLubomir Rintel 459725262d2SLubomir Rintelconfig COMMON_CLK_MMP2_AUDIO 460725262d2SLubomir Rintel tristate "Clock driver for MMP2 Audio subsystem" 461725262d2SLubomir Rintel depends on COMMON_CLK_MMP2 || COMPILE_TEST 462725262d2SLubomir Rintel help 463725262d2SLubomir Rintel This driver supports clocks for Audio subsystem on MMP2 SoC. 464725262d2SLubomir Rintel 4652e62246bSMatti Vaittinenconfig COMMON_CLK_BD718XX 466ae866decSMatti Vaittinen tristate "Clock driver for 32K clk gates on ROHM PMICs" 467fa5b6541SMatti Vaittinen depends on MFD_ROHM_BD718XX || MFD_ROHM_BD71828 4682e62246bSMatti Vaittinen help 469fa5b6541SMatti Vaittinen This driver supports ROHM BD71837, BD71847, BD71850, BD71815 470fa5b6541SMatti Vaittinen and BD71828 PMICs clock gates. 4712e62246bSMatti Vaittinen 47250cc4cafSJan Kotasconfig COMMON_CLK_FIXED_MMIO 47350cc4cafSJan Kotas bool "Clock driver for Memory Mapped Fixed values" 47450cc4cafSJan Kotas depends on COMMON_CLK && OF 475e7dd44f4SBaoquan He depends on HAS_IOMEM 47650cc4cafSJan Kotas help 47750cc4cafSJan Kotas Support for Memory Mapped IO Fixed clocks 47850cc4cafSJan Kotas 479c6ca7616SDamien Le Moalconfig COMMON_CLK_K210 480c6ca7616SDamien Le Moal bool "Clock driver for the Canaan Kendryte K210 SoC" 4818e5b7234SYangyu Chen depends on OF && RISCV && SOC_CANAAN_K210 4828e5b7234SYangyu Chen default SOC_CANAAN_K210 483c6ca7616SDamien Le Moal help 484c6ca7616SDamien Le Moal Support for the Canaan Kendryte K210 RISC-V SoC clocks. 485c6ca7616SDamien Le Moal 486d54c1fd4SQin Jianconfig COMMON_CLK_SP7021 487d54c1fd4SQin Jian tristate "Clock driver for Sunplus SP7021 SoC" 488d54c1fd4SQin Jian depends on SOC_SP7021 || COMPILE_TEST 489d54c1fd4SQin Jian default SOC_SP7021 490d54c1fd4SQin Jian help 491d54c1fd4SQin Jian This driver supports the Sunplus SP7021 SoC clocks. 492d54c1fd4SQin Jian It implements SP7021 PLLs/gate. 493d54c1fd4SQin Jian Not all features of the PLL are currently supported 494d54c1fd4SQin Jian by the driver. 495d54c1fd4SQin Jian 4963495e295SManivannan Sadhasivamsource "drivers/clk/actions/Kconfig" 4977b9487a9SPaul Walmsleysource "drivers/clk/analogbits/Kconfig" 498b7d950b9SSerge Seminsource "drivers/clk/baikal-t1/Kconfig" 49964a12c56SStephen Boydsource "drivers/clk/bcm/Kconfig" 50072ea4861SBintian Wangsource "drivers/clk/hisilicon/Kconfig" 5016b0fd6c1SPaul Burtonsource "drivers/clk/imgtec/Kconfig" 5023a48d918SAisheng Dongsource "drivers/clk/imx/Kconfig" 5030880fb86SPaul Cercueilsource "drivers/clk/ingenic/Kconfig" 504b745c079STero Kristosource "drivers/clk/keystone/Kconfig" 5052886c846SJames Liaosource "drivers/clk/mediatek/Kconfig" 506cb7c47d7SMichael Turquettesource "drivers/clk/meson/Kconfig" 507bef7a78dSDaniel Palmersource "drivers/clk/mstar/Kconfig" 508635e5e73SDaire McNamarasource "drivers/clk/microchip/Kconfig" 5096d803ba7SJean-Christop PLAGNIOL-VILLARDsource "drivers/clk/mvebu/Kconfig" 510691521a3SJacky Huangsource "drivers/clk/nuvoton/Kconfig" 51190429205SJiaxun Yangsource "drivers/clk/pistachio/Kconfig" 512b9e65ebcSJames Liaosource "drivers/clk/qcom/Kconfig" 51348df7a26SSergio Paracuellossource "drivers/clk/ralink/Kconfig" 514a5bd7f7aSGeert Uytterhoevensource "drivers/clk/renesas/Kconfig" 5154d98ed1eSElaine Zhangsource "drivers/clk/rockchip/Kconfig" 5164ce9b85eSPankaj Dubeysource "drivers/clk/samsung/Kconfig" 51730b8e27eSPaul Walmsleysource "drivers/clk/sifive/Kconfig" 5183b218baaSKrzysztof Kozlowskisource "drivers/clk/socfpga/Kconfig" 51980fd61ecSInochi Amaotosource "drivers/clk/sophgo/Kconfig" 520*1b72c59dSHaylen Chusource "drivers/clk/spacemit/Kconfig" 521d41f59fdSChunyan Zhangsource "drivers/clk/sprd/Kconfig" 5224210be66SGeert Uytterhoevensource "drivers/clk/starfive/Kconfig" 52349c726d5SMaxime Ripardsource "drivers/clk/sunxi/Kconfig" 5241d80c142SMaxime Ripardsource "drivers/clk/sunxi-ng/Kconfig" 52531b52ba4SThierry Redingsource "drivers/clk/tegra/Kconfig" 526ae81b69fSDrew Fustinisource "drivers/clk/thead/Kconfig" 5273ac7ca59SGabriel Fernandezsource "drivers/clk/stm32/Kconfig" 52821330497STony Lindgrensource "drivers/clk/ti/Kconfig" 529734d82f4SMasahiro Yamadasource "drivers/clk/uniphier/Kconfig" 530b4cbe606SNobuhiro Iwamatsusource "drivers/clk/visconti/Kconfig" 531d058fd9eSRahul Tanwarsource "drivers/clk/x86/Kconfig" 532a2fe7baaSMichael Trettersource "drivers/clk/xilinx/Kconfig" 5333fde0e16SJolly Shahsource "drivers/clk/zynqmp/Kconfig" 534b9e65ebcSJames Liao 535a992acbbSStephen Boyd# Kunit test cases 536723d0530SMaxime Ripardconfig CLK_KUNIT_TEST 537723d0530SMaxime Ripard tristate "Basic Clock Framework Kunit Tests" if !KUNIT_ALL_TESTS 538723d0530SMaxime Ripard depends on KUNIT 539723d0530SMaxime Ripard default KUNIT_ALL_TESTS 540274aff87SStephen Boyd select DTC 541723d0530SMaxime Ripard help 542723d0530SMaxime Ripard Kunit tests for the common clock framework. 543723d0530SMaxime Ripard 5445776526bSStephen Boydconfig CLK_FIXED_RATE_KUNIT_TEST 5455776526bSStephen Boyd tristate "Basic fixed rate clk type KUnit test" if !KUNIT_ALL_TESTS 5465776526bSStephen Boyd depends on KUNIT 5475776526bSStephen Boyd default KUNIT_ALL_TESTS 5485776526bSStephen Boyd select DTC 5495776526bSStephen Boyd help 5505776526bSStephen Boyd KUnit tests for the basic fixed rate clk type. 5515776526bSStephen Boyd 552a992acbbSStephen Boydconfig CLK_GATE_KUNIT_TEST 553a992acbbSStephen Boyd tristate "Basic gate type Kunit test" if !KUNIT_ALL_TESTS 554a992acbbSStephen Boyd depends on KUNIT 555a6c3da03SAudra Mitchell depends on !S390 556a992acbbSStephen Boyd default KUNIT_ALL_TESTS 557a992acbbSStephen Boyd help 558a992acbbSStephen Boyd Kunit test for the basic clk gate type. 559a992acbbSStephen Boyd 5602790e2a3SFrank Oltmannsconfig CLK_FD_KUNIT_TEST 5612790e2a3SFrank Oltmanns tristate "Basic fractional divider type Kunit test" if !KUNIT_ALL_TESTS 5622790e2a3SFrank Oltmanns depends on KUNIT 5632790e2a3SFrank Oltmanns default KUNIT_ALL_TESTS 5642790e2a3SFrank Oltmanns help 5652790e2a3SFrank Oltmanns Kunit test for the clk-fractional-divider type. 5662790e2a3SFrank Oltmanns 567bbd7ffdbSStephen Boydendif 568