1*28507ac3SSughosh Ganu // SPDX-License-Identifier: GPL-2.0+ 2*28507ac3SSughosh Ganu /* 3*28507ac3SSughosh Ganu * Copyright (c) 2019, Linaro Limited 4*28507ac3SSughosh Ganu */ 5*28507ac3SSughosh Ganu 6*28507ac3SSughosh Ganu #include <common.h> 7*28507ac3SSughosh Ganu #include <dm.h> 8*28507ac3SSughosh Ganu #include <rng.h> 9*28507ac3SSughosh Ganu dm_rng_read(struct udevice * dev,void * buffer,size_t size)10*28507ac3SSughosh Ganuint dm_rng_read(struct udevice *dev, void *buffer, size_t size) 11*28507ac3SSughosh Ganu { 12*28507ac3SSughosh Ganu const struct dm_rng_ops *ops = device_get_ops(dev); 13*28507ac3SSughosh Ganu 14*28507ac3SSughosh Ganu if (!ops->read) 15*28507ac3SSughosh Ganu return -ENOSYS; 16*28507ac3SSughosh Ganu 17*28507ac3SSughosh Ganu return ops->read(dev, buffer, size); 18*28507ac3SSughosh Ganu } 19*28507ac3SSughosh Ganu 20*28507ac3SSughosh Ganu UCLASS_DRIVER(rng) = { 21*28507ac3SSughosh Ganu .name = "rng", 22*28507ac3SSughosh Ganu .id = UCLASS_RNG, 23*28507ac3SSughosh Ganu }; 24