PCLK
DIV(PCLK, "pclk", "hclkx2", CLK_DIV0, 12, 4),
ALIAS(PCLK, NULL, "pclk"),
ALIAS(PCLK, NULL, "clk_uart_baud2"),
PCLK(TIM2, "tim2", "pclk1", CLK_IGNORE_UNUSED, G_TIM2),
PCLK(TIM3, "tim3", "pclk1", CLK_IGNORE_UNUSED, G_TIM3),
PCLK(TIM4, "tim4", "pclk1", CLK_IGNORE_UNUSED, G_TIM4),
PCLK(TIM5, "tim5", "pclk1", CLK_IGNORE_UNUSED, G_TIM5),
PCLK(TIM6, "tim6", "pclk1", CLK_IGNORE_UNUSED, G_TIM6),
PCLK(TIM7, "tim7", "pclk1", CLK_IGNORE_UNUSED, G_TIM7),
PCLK(TIM12, "tim12", "pclk1", CLK_IGNORE_UNUSED, G_TIM12),
PCLK(TIM13, "tim13", "pclk1", CLK_IGNORE_UNUSED, G_TIM13),
PCLK(TIM14, "tim14", "pclk1", CLK_IGNORE_UNUSED, G_TIM14),
PCLK(LPTIM1, "lptim1", "pclk1", 0, G_LPTIM1),
PCLK(SPI2, "spi2", "pclk1", 0, G_SPI2),
PCLK(SPI3, "spi3", "pclk1", 0, G_SPI3),
PCLK(USART2, "usart2", "pclk1", 0, G_USART2),
PCLK(USART3, "usart3", "pclk1", 0, G_USART3),
PCLK(UART4, "uart4", "pclk1", 0, G_UART4),
PCLK(UART5, "uart5", "pclk1", 0, G_UART5),
PCLK(UART7, "uart7", "pclk1", 0, G_UART7),
PCLK(UART8, "uart8", "pclk1", 0, G_UART8),
PCLK(I2C1, "i2c1", "pclk1", 0, G_I2C1),
PCLK(I2C2, "i2c2", "pclk1", 0, G_I2C2),
PCLK(I2C3, "i2c3", "pclk1", 0, G_I2C3),
PCLK(I2C5, "i2c5", "pclk1", 0, G_I2C5),
PCLK(SPDIF, "spdif", "pclk1", 0, G_SPDIF),
PCLK(CEC, "cec", "pclk1", 0, G_CEC),
PCLK(DAC12, "dac12", "pclk1", 0, G_DAC12),
PCLK(MDIO, "mdio", "pclk1", 0, G_MDIO),
PCLK(TIM1, "tim1", "pclk2", CLK_IGNORE_UNUSED, G_TIM1),
PCLK(TIM8, "tim8", "pclk2", CLK_IGNORE_UNUSED, G_TIM8),
PCLK(TIM15, "tim15", "pclk2", CLK_IGNORE_UNUSED, G_TIM15),
PCLK(TIM16, "tim16", "pclk2", CLK_IGNORE_UNUSED, G_TIM16),
PCLK(TIM17, "tim17", "pclk2", CLK_IGNORE_UNUSED, G_TIM17),
PCLK(SPI1, "spi1", "pclk2", 0, G_SPI1),
PCLK(SPI4, "spi4", "pclk2", 0, G_SPI4),
PCLK(SPI5, "spi5", "pclk2", 0, G_SPI5),
PCLK(USART6, "usart6", "pclk2", 0, G_USART6),
PCLK(SAI1, "sai1", "pclk2", 0, G_SAI1),
PCLK(SAI2, "sai2", "pclk2", 0, G_SAI2),
PCLK(SAI3, "sai3", "pclk2", 0, G_SAI3),
PCLK(DFSDM, "dfsdm", "pclk2", 0, G_DFSDM),
PCLK(FDCAN, "fdcan", "pclk2", 0, G_FDCAN),
PCLK(LPTIM2, "lptim2", "pclk3", 0, G_LPTIM2),
PCLK(LPTIM3, "lptim3", "pclk3", 0, G_LPTIM3),
PCLK(LPTIM4, "lptim4", "pclk3", 0, G_LPTIM4),
PCLK(LPTIM5, "lptim5", "pclk3", 0, G_LPTIM5),
PCLK(SAI4, "sai4", "pclk3", 0, G_SAI4),
PCLK(SYSCFG, "syscfg", "pclk3", 0, G_SYSCFG),
PCLK(VREF, "vref", "pclk3", 13, G_VREF),
PCLK(TMPSENS, "tmpsens", "pclk3", 0, G_TMPSENS),
PCLK(PMBCTRL, "pmbctrl", "pclk3", 0, G_PMBCTRL),
PCLK(HDP, "hdp", "pclk3", 0, G_HDP),
PCLK(LTDC, "ltdc", "pclk4", 0, G_LTDC),
PCLK(DSI, "dsi", "pclk4", 0, G_DSI),
PCLK(IWDG2, "iwdg2", "pclk4", 0, G_IWDG2),
PCLK(USBPHY, "usbphy", "pclk4", 0, G_USBPHY),
PCLK(STGENRO, "stgenro", "pclk4", 0, G_STGENRO),
PCLK(SPI6, "spi6", "pclk5", 0, G_SPI6),
PCLK(I2C4, "i2c4", "pclk5", 0, G_I2C4),
PCLK(I2C6, "i2c6", "pclk5", 0, G_I2C6),
PCLK(USART1, "usart1", "pclk5", 0, G_USART1),
PCLK(RTCAPB, "rtcapb", "pclk5", CLK_IGNORE_UNUSED |
PCLK(TZC1, "tzc1", "ck_axi", CLK_IGNORE_UNUSED, G_TZC1),
PCLK(TZC2, "tzc2", "ck_axi", CLK_IGNORE_UNUSED, G_TZC2),
PCLK(TZPC, "tzpc", "pclk5", CLK_IGNORE_UNUSED, G_TZPC),
PCLK(IWDG1, "iwdg1", "pclk5", 0, G_IWDG1),
PCLK(BSEC, "bsec", "pclk5", CLK_IGNORE_UNUSED, G_BSEC),
PCLK(STGEN, "stgen", "pclk5", CLK_IGNORE_UNUSED, G_STGEN),
PCLK(DMA1, "dma1", "ck_mcu", 0, G_DMA1),
PCLK(DMA2, "dma2", "ck_mcu", 0, G_DMA2),
PCLK(DMAMUX, "dmamux", "ck_mcu", 0, G_DMAMUX),
PCLK(ADC12, "adc12", "ck_mcu", 0, G_ADC12),
PCLK(USBO, "usbo", "ck_mcu", 0, G_USBO),
PCLK(SDMMC3, "sdmmc3", "ck_mcu", 0, G_SDMMC3),
PCLK(DCMI, "dcmi", "ck_mcu", 0, G_DCMI),
PCLK(CRYP2, "cryp2", "ck_mcu", 0, G_CRYP2),
PCLK(HASH2, "hash2", "ck_mcu", 0, G_HASH2),
PCLK(RNG2, "rng2", "ck_mcu", 0, G_RNG2),
PCLK(CRC2, "crc2", "ck_mcu", 0, G_CRC2),
PCLK(HSEM, "hsem", "ck_mcu", 0, G_HSEM),
PCLK(IPCC, "ipcc", "ck_mcu", 0, G_IPCC),
PCLK(GPIOA, "gpioa", "ck_mcu", 0, G_GPIOA),
PCLK(GPIOB, "gpiob", "ck_mcu", 0, G_GPIOB),
PCLK(GPIOC, "gpioc", "ck_mcu", 0, G_GPIOC),
PCLK(GPIOD, "gpiod", "ck_mcu", 0, G_GPIOD),
PCLK(GPIOE, "gpioe", "ck_mcu", 0, G_GPIOE),
PCLK(GPIOF, "gpiof", "ck_mcu", 0, G_GPIOF),
PCLK(GPIOG, "gpiog", "ck_mcu", 0, G_GPIOG),
PCLK(GPIOH, "gpioh", "ck_mcu", 0, G_GPIOH),
PCLK(GPIOI, "gpioi", "ck_mcu", 0, G_GPIOI),
PCLK(GPIOJ, "gpioj", "ck_mcu", 0, G_GPIOJ),
PCLK(GPIOK, "gpiok", "ck_mcu", 0, G_GPIOK),
PCLK(GPIOZ, "gpioz", "ck_axi", CLK_IGNORE_UNUSED, G_GPIOZ),
PCLK(CRYP1, "cryp1", "ck_axi", CLK_IGNORE_UNUSED, G_CRYP1),
PCLK(HASH1, "hash1", "ck_axi", CLK_IGNORE_UNUSED, G_HASH1),
PCLK(RNG1, "rng1", "ck_axi", 0, G_RNG1),
PCLK(BKPSRAM, "bkpsram", "ck_axi", CLK_IGNORE_UNUSED, G_BKPSRAM),
PCLK(MDMA, "mdma", "ck_axi", 0, G_MDMA),
PCLK(GPU, "gpu", "ck_axi", 0, G_GPU),
PCLK(ETHTX, "ethtx", "ck_axi", 0, G_ETHTX),
PCLK(ETHMAC, "ethmac", "ck_axi", 0, G_ETHMAC),
PCLK(FMC, "fmc", "ck_axi", CLK_IGNORE_UNUSED, G_FMC),
PCLK(QSPI, "qspi", "ck_axi", CLK_IGNORE_UNUSED, G_QSPI),
PCLK(SDMMC1, "sdmmc1", "ck_axi", 0, G_SDMMC1),
PCLK(SDMMC2, "sdmmc2", "ck_axi", 0, G_SDMMC2),
PCLK(CRC1, "crc1", "ck_axi", 0, G_CRC1),
PCLK(USBH, "usbh", "ck_axi", 0, G_USBH),
PCLK(ETHSTP, "ethstp", "ck_axi", 0, G_ETHSTP),
PCLK(DDRPERFM, "ddrperfm", "pclk4", 0, G_DDRPERFM),
fifo->pclk = aiu->i2s.clks[PCLK].clk;
fifo->pclk = aiu->spdif.clks[PCLK].clk;
[PCLK] = "i2s_pclk",
[PCLK] = "spdif_pclk",
return clk_prepare_enable(aiu->i2s.clks[PCLK].clk);
clk_disable_unprepare(aiu->i2s.clks[PCLK].clk);