Lines Matching refs:pdata

97 #define trng_write(pdata, pos, val)	writel(val, (pdata)->base + (pos))  argument
98 #define trng_read(pdata, pos) readl((pdata)->base + (pos)) argument
113 struct rk_rng_platdata *pdata = dev_get_priv(dev); in rk_rng_do_enable_clk() local
116 if (!pdata->hclk.dev) in rk_rng_do_enable_clk()
119 ret = enable ? clk_enable(&pdata->hclk) : clk_disable(&pdata->hclk); in rk_rng_do_enable_clk()
162 struct rk_rng_platdata *pdata = dev_get_priv(dev); in cryptov1_rng_read() local
171 pdata->base + CRYPTO_V1_TRNG_CTRL); in cryptov1_rng_read()
173 rk_clrsetreg(pdata->base + CRYPTO_V1_CTRL, CRYPTO_V1_RNG_START, in cryptov1_rng_read()
176 retval = readl_poll_timeout(pdata->base + CRYPTO_V1_CTRL, reg, in cryptov1_rng_read()
182 rk_rng_read_regs(pdata->base + CRYPTO_V1_TRNG_DOUT_0, data, len); in cryptov1_rng_read()
186 rk_clrreg(pdata->base + CRYPTO_V1_CTRL, CRYPTO_V1_RNG_START); in cryptov1_rng_read()
193 struct rk_rng_platdata *pdata = dev_get_priv(dev); in cryptov2_rng_read() local
201 writel(100, pdata->base + CRYPTO_V2_RNG_SAMPLE_CNT); in cryptov2_rng_read()
208 rk_clrsetreg(pdata->base + CRYPTO_V2_RNG_CTL, 0xffff, reg); in cryptov2_rng_read()
210 retval = readl_poll_timeout(pdata->base + CRYPTO_V2_RNG_CTL, reg, in cryptov2_rng_read()
216 rk_rng_read_regs(pdata->base + CRYPTO_V2_RNG_DOUT_0, data, len); in cryptov2_rng_read()
220 rk_clrreg(pdata->base + CRYPTO_V2_RNG_CTL, 0xffff); in cryptov2_rng_read()
229 struct rk_rng_platdata *pdata = dev_get_priv(dev); in trngv1_init() local
231 version = trng_read(pdata, TRNG_V1_VERSION); in trngv1_init()
239 readl_poll_timeout(pdata->base + TRNG_V1_ISTAT, status, in trngv1_init()
244 trng_write(pdata, TRNG_V1_ISTAT, status); in trngv1_init()
247 trng_write(pdata, TRNG_V1_AUTO_RQSTS, auto_reseed_cnt); in trngv1_init()
254 struct rk_rng_platdata *pdata = dev_get_priv(dev); in trngv1_rng_read() local
261 trng_write(pdata, TRNG_V1_MODE, TRNG_V1_MODE_256_BIT); in trngv1_rng_read()
262 trng_write(pdata, TRNG_V1_CTRL, TRNG_V1_CTRL_RAND); in trngv1_rng_read()
264 retval = readl_poll_timeout(pdata->base + TRNG_V1_ISTAT, reg, in trngv1_rng_read()
268 trng_write(pdata, TRNG_V1_ISTAT, reg); in trngv1_rng_read()
273 rk_rng_read_regs(pdata->base + TRNG_V1_RAND0, data, len); in trngv1_rng_read()
277 trng_write(pdata, TRNG_V1_CTRL, TRNG_V1_CTRL_NOP); in trngv1_rng_read()
284 struct rk_rng_platdata *pdata = dev_get_priv(dev); in rkrng_init() local
287 rk_clrreg(pdata->base + RKRNG_CTRL, 0xffff); in rkrng_init()
289 reg = trng_read(pdata, RKRNG_STATE); in rkrng_init()
290 trng_write(pdata, RKRNG_STATE, reg); in rkrng_init()
297 struct rk_rng_platdata *pdata = dev_get_priv(dev); in rkrng_rng_read() local
308 rk_clrsetreg(pdata->base + RKRNG_CTRL, 0xffff, reg); in rkrng_rng_read()
310 retval = readl_poll_timeout(pdata->base + RKRNG_STATE, reg, in rkrng_rng_read()
316 trng_write(pdata, RKRNG_STATE, reg); in rkrng_rng_read()
318 rk_rng_read_regs(pdata->base + RKRNG_DRNG_DATA_0, data, len); in rkrng_rng_read()
322 rk_clrreg(pdata->base + RKRNG_CTRL, 0xffff); in rkrng_rng_read()
335 struct rk_rng_platdata *pdata = dev_get_priv(dev); in rockchip_rng_read() local
340 if (!pdata->soc_data || !pdata->soc_data->rk_rng_read) in rockchip_rng_read()
344 ret = pdata->soc_data->rk_rng_read(dev, buf, RK_HW_RNG_MAX); in rockchip_rng_read()
350 ret = pdata->soc_data->rk_rng_read(dev, buf, in rockchip_rng_read()
359 struct rk_rng_platdata *pdata = dev_get_priv(dev); in rockchip_rng_ofdata_to_platdata() local
363 memset(pdata, 0x00, sizeof(*pdata)); in rockchip_rng_ofdata_to_platdata()
371 pdata->base = addr; in rockchip_rng_ofdata_to_platdata()
375 pdata->base -= 0x400; in rockchip_rng_ofdata_to_platdata()
377 clk_get_by_index(dev, 0, &pdata->hclk); in rockchip_rng_ofdata_to_platdata()
384 struct rk_rng_platdata *pdata = dev_get_priv(dev); in rockchip_rng_probe() local
387 pdata->soc_data = (struct rk_rng_soc_data *)dev_get_driver_data(dev); in rockchip_rng_probe()
389 if (pdata->soc_data->rk_rng_init) in rockchip_rng_probe()
390 ret = pdata->soc_data->rk_rng_init(dev); in rockchip_rng_probe()