icst 74 drivers/clk/versatile/clk-icst.c static int vco_get(struct clk_icst *icst, struct icst_vco *vco) icst 79 drivers/clk/versatile/clk-icst.c ret = regmap_read(icst->map, icst->vcoreg_off, &val); icst 91 drivers/clk/versatile/clk-icst.c if (icst->ctype == ICST_INTEGRATOR_AP_CM) { icst 106 drivers/clk/versatile/clk-icst.c if (icst->ctype == ICST_INTEGRATOR_AP_SYS) { icst 121 drivers/clk/versatile/clk-icst.c if (icst->ctype == ICST_INTEGRATOR_AP_PCI) { icst 138 drivers/clk/versatile/clk-icst.c if (icst->ctype == ICST_INTEGRATOR_CP_CM_CORE) { icst 145 drivers/clk/versatile/clk-icst.c if (icst->ctype == ICST_INTEGRATOR_CP_CM_MEM) { icst 163 drivers/clk/versatile/clk-icst.c static int vco_set(struct clk_icst *icst, struct icst_vco vco) icst 170 drivers/clk/versatile/clk-icst.c switch (icst->ctype) { icst 217 drivers/clk/versatile/clk-icst.c ret = regmap_write(icst->map, icst->lockreg_off, VERSATILE_LOCK_VAL); icst 220 drivers/clk/versatile/clk-icst.c ret = regmap_update_bits(icst->map, icst->vcoreg_off, mask, val); icst 224 drivers/clk/versatile/clk-icst.c ret = regmap_write(icst->map, icst->lockreg_off, 0); icst 233 drivers/clk/versatile/clk-icst.c struct clk_icst *icst = to_icst(hw); icst 238 drivers/clk/versatile/clk-icst.c icst->params->ref = parent_rate; icst 239 drivers/clk/versatile/clk-icst.c ret = vco_get(icst, &vco); icst 244 drivers/clk/versatile/clk-icst.c icst->rate = icst_hz(icst->params, vco); icst 245 drivers/clk/versatile/clk-icst.c return icst->rate; icst 251 drivers/clk/versatile/clk-icst.c struct clk_icst *icst = to_icst(hw); icst 254 drivers/clk/versatile/clk-icst.c if (icst->ctype == ICST_INTEGRATOR_AP_CM || icst 255 drivers/clk/versatile/clk-icst.c icst->ctype == ICST_INTEGRATOR_CP_CM_CORE) { icst 264 drivers/clk/versatile/clk-icst.c if (icst->ctype == ICST_INTEGRATOR_CP_CM_MEM) { icst 273 drivers/clk/versatile/clk-icst.c if (icst->ctype == ICST_INTEGRATOR_AP_SYS) { icst 283 drivers/clk/versatile/clk-icst.c if (icst->ctype == ICST_INTEGRATOR_AP_PCI) { icst 294 drivers/clk/versatile/clk-icst.c vco = icst_hz_to_vco(icst->params, rate); icst 295 drivers/clk/versatile/clk-icst.c return icst_hz(icst->params, vco); icst 301 drivers/clk/versatile/clk-icst.c struct clk_icst *icst = to_icst(hw); icst 304 drivers/clk/versatile/clk-icst.c if (icst->ctype == ICST_INTEGRATOR_AP_PCI) { icst 318 drivers/clk/versatile/clk-icst.c ret = regmap_write(icst->map, icst->lockreg_off, icst 322 drivers/clk/versatile/clk-icst.c ret = regmap_update_bits(icst->map, icst->vcoreg_off, icst 328 drivers/clk/versatile/clk-icst.c ret = regmap_write(icst->map, icst->lockreg_off, 0); icst 335 drivers/clk/versatile/clk-icst.c icst->params->ref = parent_rate; icst 336 drivers/clk/versatile/clk-icst.c vco = icst_hz_to_vco(icst->params, rate); icst 337 drivers/clk/versatile/clk-icst.c icst->rate = icst_hz(icst->params, vco); icst 338 drivers/clk/versatile/clk-icst.c return vco_set(icst, vco); icst 355 drivers/clk/versatile/clk-icst.c struct clk_icst *icst; icst 359 drivers/clk/versatile/clk-icst.c icst = kzalloc(sizeof(*icst), GFP_KERNEL); icst 360 drivers/clk/versatile/clk-icst.c if (!icst) icst 365 drivers/clk/versatile/clk-icst.c kfree(icst); icst 374 drivers/clk/versatile/clk-icst.c icst->map = map; icst 375 drivers/clk/versatile/clk-icst.c icst->hw.init = &init; icst 376 drivers/clk/versatile/clk-icst.c icst->params = pclone; icst 377 drivers/clk/versatile/clk-icst.c icst->vcoreg_off = desc->vco_offset; icst 378 drivers/clk/versatile/clk-icst.c icst->lockreg_off = desc->lock_offset; icst 379 drivers/clk/versatile/clk-icst.c icst->ctype = ctype; icst 381 drivers/clk/versatile/clk-icst.c clk = clk_register(dev, &icst->hw); icst 384 drivers/clk/versatile/clk-icst.c kfree(icst);