On 6/4/2020 6:48 PM, Michael Walle wrote:
> +static int caam_rng_read(struct udevice *dev, void *data, size_t len)
> +{
> +     struct caam_rng_platdata *pdata = dev_get_platdata(dev);
> +     u8 *buffer = data;
> +     size_t size;
> +     int ret;
> +
> +     while (len) {
> +             ret = caam_rng_read_one(pdata);
> +             if (ret)
> +                     return ret;
> +
> +             size = min(len, (size_t)CAAM_RNG_MAX_FIFO_STORE_SIZE);
> +
> +             memcpy(buffer, pdata->data, len);
size instead of len.

> +             buffer += size;
> +             len -= size;
> +     }
> +
> +     return 0;
> +}
> +
> +static int caam_rng_probe(struct udevice *dev)
> +{
> +     struct caam_rng_platdata *pdata = dev_get_platdata(dev);
> +
> +     inline_cnstr_jobdesc_rng(pdata->desc, pdata->data,
> +                              CAAM_RNG_MAX_FIFO_STORE_SIZE);
flush_dcache_range() on pdata->desc would be needed, no?

Horia

Reply via email to