axi_clkgen 160 drivers/clk/clk-axi-clkgen.c static void axi_clkgen_write(struct axi_clkgen *axi_clkgen, axi_clkgen 163 drivers/clk/clk-axi-clkgen.c writel(val, axi_clkgen->base + reg); axi_clkgen 166 drivers/clk/clk-axi-clkgen.c static void axi_clkgen_read(struct axi_clkgen *axi_clkgen, axi_clkgen 169 drivers/clk/clk-axi-clkgen.c *val = readl(axi_clkgen->base + reg); axi_clkgen 172 drivers/clk/clk-axi-clkgen.c static int axi_clkgen_wait_non_busy(struct axi_clkgen *axi_clkgen) axi_clkgen 178 drivers/clk/clk-axi-clkgen.c axi_clkgen_read(axi_clkgen, AXI_CLKGEN_V2_REG_DRP_STATUS, &val); axi_clkgen 187 drivers/clk/clk-axi-clkgen.c static int axi_clkgen_mmcm_read(struct axi_clkgen *axi_clkgen, axi_clkgen 193 drivers/clk/clk-axi-clkgen.c ret = axi_clkgen_wait_non_busy(axi_clkgen); axi_clkgen 200 drivers/clk/clk-axi-clkgen.c axi_clkgen_write(axi_clkgen, AXI_CLKGEN_V2_REG_DRP_CNTRL, reg_val); axi_clkgen 202 drivers/clk/clk-axi-clkgen.c ret = axi_clkgen_wait_non_busy(axi_clkgen); axi_clkgen 211 drivers/clk/clk-axi-clkgen.c static int axi_clkgen_mmcm_write(struct axi_clkgen *axi_clkgen, axi_clkgen 217 drivers/clk/clk-axi-clkgen.c ret = axi_clkgen_wait_non_busy(axi_clkgen); axi_clkgen 222 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_read(axi_clkgen, reg, ®_val); axi_clkgen 228 drivers/clk/clk-axi-clkgen.c axi_clkgen_write(axi_clkgen, AXI_CLKGEN_V2_REG_DRP_CNTRL, reg_val); axi_clkgen 233 drivers/clk/clk-axi-clkgen.c static void axi_clkgen_mmcm_enable(struct axi_clkgen *axi_clkgen, axi_clkgen 241 drivers/clk/clk-axi-clkgen.c axi_clkgen_write(axi_clkgen, AXI_CLKGEN_V2_REG_RESET, val); axi_clkgen 244 drivers/clk/clk-axi-clkgen.c static struct axi_clkgen *clk_hw_to_axi_clkgen(struct clk_hw *clk_hw) axi_clkgen 246 drivers/clk/clk-axi-clkgen.c return container_of(clk_hw, struct axi_clkgen, clk_hw); axi_clkgen 252 drivers/clk/clk-axi-clkgen.c struct axi_clkgen *axi_clkgen = clk_hw_to_axi_clkgen(clk_hw); axi_clkgen 273 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_write(axi_clkgen, MMCM_REG_CLKOUT0_1, axi_clkgen 275 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_write(axi_clkgen, MMCM_REG_CLKOUT0_2, axi_clkgen 279 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_write(axi_clkgen, MMCM_REG_CLK_DIV, axi_clkgen 283 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_write(axi_clkgen, MMCM_REG_CLK_FB1, axi_clkgen 285 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_write(axi_clkgen, MMCM_REG_CLK_FB2, axi_clkgen 288 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_write(axi_clkgen, MMCM_REG_LOCK1, lock & 0x3ff, 0x3ff); axi_clkgen 289 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_write(axi_clkgen, MMCM_REG_LOCK2, axi_clkgen 291 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_write(axi_clkgen, MMCM_REG_LOCK3, axi_clkgen 293 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_write(axi_clkgen, MMCM_REG_FILTER1, filter >> 16, 0x9900); axi_clkgen 294 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_write(axi_clkgen, MMCM_REG_FILTER2, filter, 0x9900); axi_clkgen 319 drivers/clk/clk-axi-clkgen.c struct axi_clkgen *axi_clkgen = clk_hw_to_axi_clkgen(clk_hw); axi_clkgen 324 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_read(axi_clkgen, MMCM_REG_CLKOUT0_2, ®); axi_clkgen 328 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_read(axi_clkgen, MMCM_REG_CLKOUT0_1, ®); axi_clkgen 332 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_read(axi_clkgen, MMCM_REG_CLK_DIV, ®); axi_clkgen 338 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_read(axi_clkgen, MMCM_REG_CLK_FB2, ®); axi_clkgen 342 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_read(axi_clkgen, MMCM_REG_CLK_FB1, ®); axi_clkgen 357 drivers/clk/clk-axi-clkgen.c struct axi_clkgen *axi_clkgen = clk_hw_to_axi_clkgen(clk_hw); axi_clkgen 359 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_enable(axi_clkgen, true); axi_clkgen 366 drivers/clk/clk-axi-clkgen.c struct axi_clkgen *axi_clkgen = clk_hw_to_axi_clkgen(clk_hw); axi_clkgen 368 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_enable(axi_clkgen, false); axi_clkgen 373 drivers/clk/clk-axi-clkgen.c struct axi_clkgen *axi_clkgen = clk_hw_to_axi_clkgen(clk_hw); axi_clkgen 375 drivers/clk/clk-axi-clkgen.c axi_clkgen_write(axi_clkgen, AXI_CLKGEN_V2_REG_CLKSEL, index); axi_clkgen 382 drivers/clk/clk-axi-clkgen.c struct axi_clkgen *axi_clkgen = clk_hw_to_axi_clkgen(clk_hw); axi_clkgen 385 drivers/clk/clk-axi-clkgen.c axi_clkgen_read(axi_clkgen, AXI_CLKGEN_V2_REG_CLKSEL, &parent); axi_clkgen 411 drivers/clk/clk-axi-clkgen.c struct axi_clkgen *axi_clkgen; axi_clkgen 426 drivers/clk/clk-axi-clkgen.c axi_clkgen = devm_kzalloc(&pdev->dev, sizeof(*axi_clkgen), GFP_KERNEL); axi_clkgen 427 drivers/clk/clk-axi-clkgen.c if (!axi_clkgen) axi_clkgen 431 drivers/clk/clk-axi-clkgen.c axi_clkgen->base = devm_ioremap_resource(&pdev->dev, mem); axi_clkgen 432 drivers/clk/clk-axi-clkgen.c if (IS_ERR(axi_clkgen->base)) axi_clkgen 433 drivers/clk/clk-axi-clkgen.c return PTR_ERR(axi_clkgen->base); axi_clkgen 454 drivers/clk/clk-axi-clkgen.c axi_clkgen_mmcm_enable(axi_clkgen, false); axi_clkgen 456 drivers/clk/clk-axi-clkgen.c axi_clkgen->clk_hw.init = &init; axi_clkgen 457 drivers/clk/clk-axi-clkgen.c ret = devm_clk_hw_register(&pdev->dev, &axi_clkgen->clk_hw); axi_clkgen 462 drivers/clk/clk-axi-clkgen.c &axi_clkgen->clk_hw);