18c2ecf20Sopenharmony_ci* Gated Clock bindings for Marvell EBU SoCs 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ciMarvell Armada 370/375/380/385/39x/XP, Dove and Kirkwood allow some 48c2ecf20Sopenharmony_ciperipheral clocks to be gated to save some power. The clock consumer 58c2ecf20Sopenharmony_cishould specify the desired clock by having the clock ID in its 68c2ecf20Sopenharmony_ci"clocks" phandle cell. The clock ID is directly mapped to the 78c2ecf20Sopenharmony_cicorresponding clock gating control bit in HW to ease manual clock 88c2ecf20Sopenharmony_cilookup in datasheet. 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ciThe following is a list of provided IDs for Armada 370: 118c2ecf20Sopenharmony_ciID Clock Peripheral 128c2ecf20Sopenharmony_ci----------------------------------- 138c2ecf20Sopenharmony_ci0 Audio AC97 Cntrl 148c2ecf20Sopenharmony_ci1 pex0_en PCIe 0 Clock out 158c2ecf20Sopenharmony_ci2 pex1_en PCIe 1 Clock out 168c2ecf20Sopenharmony_ci3 ge1 Gigabit Ethernet 1 178c2ecf20Sopenharmony_ci4 ge0 Gigabit Ethernet 0 188c2ecf20Sopenharmony_ci5 pex0 PCIe Cntrl 0 198c2ecf20Sopenharmony_ci9 pex1 PCIe Cntrl 1 208c2ecf20Sopenharmony_ci15 sata0 SATA Host 0 218c2ecf20Sopenharmony_ci17 sdio SDHCI Host 228c2ecf20Sopenharmony_ci23 crypto CESA (crypto engine) 238c2ecf20Sopenharmony_ci25 tdm Time Division Mplx 248c2ecf20Sopenharmony_ci28 ddr DDR Cntrl 258c2ecf20Sopenharmony_ci30 sata1 SATA Host 0 268c2ecf20Sopenharmony_ci 278c2ecf20Sopenharmony_ciThe following is a list of provided IDs for Armada 375: 288c2ecf20Sopenharmony_ciID Clock Peripheral 298c2ecf20Sopenharmony_ci----------------------------------- 308c2ecf20Sopenharmony_ci2 mu Management Unit 318c2ecf20Sopenharmony_ci3 pp Packet Processor 328c2ecf20Sopenharmony_ci4 ptp PTP 338c2ecf20Sopenharmony_ci5 pex0 PCIe 0 Clock out 348c2ecf20Sopenharmony_ci6 pex1 PCIe 1 Clock out 358c2ecf20Sopenharmony_ci8 audio Audio Cntrl 368c2ecf20Sopenharmony_ci11 nd_clk Nand Flash Cntrl 378c2ecf20Sopenharmony_ci14 sata0_link SATA 0 Link 388c2ecf20Sopenharmony_ci15 sata0_core SATA 0 Core 398c2ecf20Sopenharmony_ci16 usb3 USB3 Host 408c2ecf20Sopenharmony_ci17 sdio SDHCI Host 418c2ecf20Sopenharmony_ci18 usb USB Host 428c2ecf20Sopenharmony_ci19 gop Gigabit Ethernet MAC 438c2ecf20Sopenharmony_ci20 sata1_link SATA 1 Link 448c2ecf20Sopenharmony_ci21 sata1_core SATA 1 Core 458c2ecf20Sopenharmony_ci22 xor0 XOR DMA 0 468c2ecf20Sopenharmony_ci23 xor1 XOR DMA 0 478c2ecf20Sopenharmony_ci24 copro Coprocessor 488c2ecf20Sopenharmony_ci25 tdm Time Division Mplx 498c2ecf20Sopenharmony_ci28 crypto0_enc Cryptographic Unit Port 0 Encryption 508c2ecf20Sopenharmony_ci29 crypto0_core Cryptographic Unit Port 0 Core 518c2ecf20Sopenharmony_ci30 crypto1_enc Cryptographic Unit Port 1 Encryption 528c2ecf20Sopenharmony_ci31 crypto1_core Cryptographic Unit Port 1 Core 538c2ecf20Sopenharmony_ci 548c2ecf20Sopenharmony_ciThe following is a list of provided IDs for Armada 380/385: 558c2ecf20Sopenharmony_ciID Clock Peripheral 568c2ecf20Sopenharmony_ci----------------------------------- 578c2ecf20Sopenharmony_ci0 audio Audio 588c2ecf20Sopenharmony_ci2 ge2 Gigabit Ethernet 2 598c2ecf20Sopenharmony_ci3 ge1 Gigabit Ethernet 1 608c2ecf20Sopenharmony_ci4 ge0 Gigabit Ethernet 0 618c2ecf20Sopenharmony_ci5 pex1 PCIe 1 628c2ecf20Sopenharmony_ci6 pex2 PCIe 2 638c2ecf20Sopenharmony_ci7 pex3 PCIe 3 648c2ecf20Sopenharmony_ci8 pex0 PCIe 0 658c2ecf20Sopenharmony_ci9 usb3h0 USB3 Host 0 668c2ecf20Sopenharmony_ci10 usb3h1 USB3 Host 1 678c2ecf20Sopenharmony_ci11 usb3d USB3 Device 688c2ecf20Sopenharmony_ci13 bm Buffer Management 698c2ecf20Sopenharmony_ci14 crypto0z Cryptographic 0 Z 708c2ecf20Sopenharmony_ci15 sata0 SATA 0 718c2ecf20Sopenharmony_ci16 crypto1z Cryptographic 1 Z 728c2ecf20Sopenharmony_ci17 sdio SDIO 738c2ecf20Sopenharmony_ci18 usb2 USB 2 748c2ecf20Sopenharmony_ci21 crypto1 Cryptographic 1 758c2ecf20Sopenharmony_ci22 xor0 XOR 0 768c2ecf20Sopenharmony_ci23 crypto0 Cryptographic 0 778c2ecf20Sopenharmony_ci25 tdm Time Division Multiplexing 788c2ecf20Sopenharmony_ci28 xor1 XOR 1 798c2ecf20Sopenharmony_ci30 sata1 SATA 1 808c2ecf20Sopenharmony_ci 818c2ecf20Sopenharmony_ciThe following is a list of provided IDs for Armada 39x: 828c2ecf20Sopenharmony_ciID Clock Peripheral 838c2ecf20Sopenharmony_ci----------------------------------- 848c2ecf20Sopenharmony_ci5 pex1 PCIe 1 858c2ecf20Sopenharmony_ci6 pex2 PCIe 2 868c2ecf20Sopenharmony_ci7 pex3 PCIe 3 878c2ecf20Sopenharmony_ci8 pex0 PCIe 0 888c2ecf20Sopenharmony_ci9 usb3h0 USB3 Host 0 898c2ecf20Sopenharmony_ci10 usb3h1 USB3 Host 1 908c2ecf20Sopenharmony_ci15 sata0 SATA 0 918c2ecf20Sopenharmony_ci17 sdio SDIO 928c2ecf20Sopenharmony_ci22 xor0 XOR 0 938c2ecf20Sopenharmony_ci28 xor1 XOR 1 948c2ecf20Sopenharmony_ci 958c2ecf20Sopenharmony_ciThe following is a list of provided IDs for Armada XP: 968c2ecf20Sopenharmony_ciID Clock Peripheral 978c2ecf20Sopenharmony_ci----------------------------------- 988c2ecf20Sopenharmony_ci0 audio Audio Cntrl 998c2ecf20Sopenharmony_ci1 ge3 Gigabit Ethernet 3 1008c2ecf20Sopenharmony_ci2 ge2 Gigabit Ethernet 2 1018c2ecf20Sopenharmony_ci3 ge1 Gigabit Ethernet 1 1028c2ecf20Sopenharmony_ci4 ge0 Gigabit Ethernet 0 1038c2ecf20Sopenharmony_ci5 pex0 PCIe Cntrl 0 1048c2ecf20Sopenharmony_ci6 pex1 PCIe Cntrl 1 1058c2ecf20Sopenharmony_ci7 pex2 PCIe Cntrl 2 1068c2ecf20Sopenharmony_ci8 pex3 PCIe Cntrl 3 1078c2ecf20Sopenharmony_ci13 bp 1088c2ecf20Sopenharmony_ci14 sata0lnk 1098c2ecf20Sopenharmony_ci15 sata0 SATA Host 0 1108c2ecf20Sopenharmony_ci16 lcd LCD Cntrl 1118c2ecf20Sopenharmony_ci17 sdio SDHCI Host 1128c2ecf20Sopenharmony_ci18 usb0 USB Host 0 1138c2ecf20Sopenharmony_ci19 usb1 USB Host 1 1148c2ecf20Sopenharmony_ci20 usb2 USB Host 2 1158c2ecf20Sopenharmony_ci22 xor0 XOR DMA 0 1168c2ecf20Sopenharmony_ci23 crypto CESA engine 1178c2ecf20Sopenharmony_ci25 tdm Time Division Mplx 1188c2ecf20Sopenharmony_ci28 xor1 XOR DMA 1 1198c2ecf20Sopenharmony_ci29 sata1lnk 1208c2ecf20Sopenharmony_ci30 sata1 SATA Host 1 1218c2ecf20Sopenharmony_ci 1228c2ecf20Sopenharmony_ciThe following is a list of provided IDs for 98dx3236: 1238c2ecf20Sopenharmony_ciID Clock Peripheral 1248c2ecf20Sopenharmony_ci----------------------------------- 1258c2ecf20Sopenharmony_ci3 ge1 Gigabit Ethernet 1 1268c2ecf20Sopenharmony_ci4 ge0 Gigabit Ethernet 0 1278c2ecf20Sopenharmony_ci5 pex0 PCIe Cntrl 0 1288c2ecf20Sopenharmony_ci17 sdio SDHCI Host 1298c2ecf20Sopenharmony_ci18 usb0 USB Host 0 1308c2ecf20Sopenharmony_ci22 xor0 XOR DMA 0 1318c2ecf20Sopenharmony_ci 1328c2ecf20Sopenharmony_ciThe following is a list of provided IDs for Dove: 1338c2ecf20Sopenharmony_ciID Clock Peripheral 1348c2ecf20Sopenharmony_ci----------------------------------- 1358c2ecf20Sopenharmony_ci0 usb0 USB Host 0 1368c2ecf20Sopenharmony_ci1 usb1 USB Host 1 1378c2ecf20Sopenharmony_ci2 ge Gigabit Ethernet 1388c2ecf20Sopenharmony_ci3 sata SATA Host 1398c2ecf20Sopenharmony_ci4 pex0 PCIe Cntrl 0 1408c2ecf20Sopenharmony_ci5 pex1 PCIe Cntrl 1 1418c2ecf20Sopenharmony_ci8 sdio0 SDHCI Host 0 1428c2ecf20Sopenharmony_ci9 sdio1 SDHCI Host 1 1438c2ecf20Sopenharmony_ci10 nand NAND Cntrl 1448c2ecf20Sopenharmony_ci11 camera Camera Cntrl 1458c2ecf20Sopenharmony_ci12 i2s0 I2S Cntrl 0 1468c2ecf20Sopenharmony_ci13 i2s1 I2S Cntrl 1 1478c2ecf20Sopenharmony_ci15 crypto CESA engine 1488c2ecf20Sopenharmony_ci21 ac97 AC97 Cntrl 1498c2ecf20Sopenharmony_ci22 pdma Peripheral DMA 1508c2ecf20Sopenharmony_ci23 xor0 XOR DMA 0 1518c2ecf20Sopenharmony_ci24 xor1 XOR DMA 1 1528c2ecf20Sopenharmony_ci30 gephy Gigabit Ethernel PHY 1538c2ecf20Sopenharmony_ciNote: gephy(30) is implemented as a parent clock of ge(2) 1548c2ecf20Sopenharmony_ci 1558c2ecf20Sopenharmony_ciThe following is a list of provided IDs for Kirkwood: 1568c2ecf20Sopenharmony_ciID Clock Peripheral 1578c2ecf20Sopenharmony_ci----------------------------------- 1588c2ecf20Sopenharmony_ci0 ge0 Gigabit Ethernet 0 1598c2ecf20Sopenharmony_ci2 pex0 PCIe Cntrl 0 1608c2ecf20Sopenharmony_ci3 usb0 USB Host 0 1618c2ecf20Sopenharmony_ci4 sdio SDIO Cntrl 1628c2ecf20Sopenharmony_ci5 tsu Transp. Stream Unit 1638c2ecf20Sopenharmony_ci6 dunit SDRAM Cntrl 1648c2ecf20Sopenharmony_ci7 runit Runit 1658c2ecf20Sopenharmony_ci8 xor0 XOR DMA 0 1668c2ecf20Sopenharmony_ci9 audio I2S Cntrl 0 1678c2ecf20Sopenharmony_ci14 sata0 SATA Host 0 1688c2ecf20Sopenharmony_ci15 sata1 SATA Host 1 1698c2ecf20Sopenharmony_ci16 xor1 XOR DMA 1 1708c2ecf20Sopenharmony_ci17 crypto CESA engine 1718c2ecf20Sopenharmony_ci18 pex1 PCIe Cntrl 1 1728c2ecf20Sopenharmony_ci19 ge1 Gigabit Ethernet 1 1738c2ecf20Sopenharmony_ci20 tdm Time Division Mplx 1748c2ecf20Sopenharmony_ci 1758c2ecf20Sopenharmony_ciRequired properties: 1768c2ecf20Sopenharmony_ci- compatible : shall be one of the following: 1778c2ecf20Sopenharmony_ci "marvell,armada-370-gating-clock" - for Armada 370 SoC clock gating 1788c2ecf20Sopenharmony_ci "marvell,armada-375-gating-clock" - for Armada 375 SoC clock gating 1798c2ecf20Sopenharmony_ci "marvell,armada-380-gating-clock" - for Armada 380/385 SoC clock gating 1808c2ecf20Sopenharmony_ci "marvell,armada-390-gating-clock" - for Armada 39x SoC clock gating 1818c2ecf20Sopenharmony_ci "marvell,armada-xp-gating-clock" - for Armada XP SoC clock gating 1828c2ecf20Sopenharmony_ci "marvell,mv98dx3236-gating-clock" - for 98dx3236 SoC clock gating 1838c2ecf20Sopenharmony_ci "marvell,dove-gating-clock" - for Dove SoC clock gating 1848c2ecf20Sopenharmony_ci "marvell,kirkwood-gating-clock" - for Kirkwood SoC clock gating 1858c2ecf20Sopenharmony_ci- reg : shall be the register address of the Clock Gating Control register 1868c2ecf20Sopenharmony_ci- #clock-cells : from common clock binding; shall be set to 1 1878c2ecf20Sopenharmony_ci 1888c2ecf20Sopenharmony_ciOptional properties: 1898c2ecf20Sopenharmony_ci- clocks : default parent clock phandle (e.g. tclk) 1908c2ecf20Sopenharmony_ci 1918c2ecf20Sopenharmony_ciExample: 1928c2ecf20Sopenharmony_ci 1938c2ecf20Sopenharmony_cigate_clk: clock-gating-control@d0038 { 1948c2ecf20Sopenharmony_ci compatible = "marvell,dove-gating-clock"; 1958c2ecf20Sopenharmony_ci reg = <0xd0038 0x4>; 1968c2ecf20Sopenharmony_ci /* default parent clock is tclk */ 1978c2ecf20Sopenharmony_ci clocks = <&core_clk 0>; 1988c2ecf20Sopenharmony_ci #clock-cells = <1>; 1998c2ecf20Sopenharmony_ci}; 2008c2ecf20Sopenharmony_ci 2018c2ecf20Sopenharmony_cisdio0: sdio@92000 { 2028c2ecf20Sopenharmony_ci compatible = "marvell,dove-sdhci"; 2038c2ecf20Sopenharmony_ci /* get clk gate bit 8 (sdio0) */ 2048c2ecf20Sopenharmony_ci clocks = <&gate_clk 8>; 2058c2ecf20Sopenharmony_ci}; 206