Hi,

the `random` should IMHO also stay strictly an API for *pseudo* random
number generators, I agree however with Michel's issue, that hwnrg should
be used for seed generation if available.

Cheers,
Martine

2018-03-05 17:08 GMT+01:00 Michel Rottleuthner <
[email protected]>:

> Hi Josua,
>
> IMO: cpu/periph is right if its part of the SOC (as you already said,
> there should be no dependency to the at86rf2xx driver -if possible- ).
>
> Regarding your other question: I think the answer is no, at the moment its
> not guaranteed that calls to random32 are directed to hwrng, see [1].
>
>
> regards,
>
> Michel
>
> [1]: https://github.com/RIOT-OS/RIOT/issues/8663
>
> On 03/05/2018 04:31 PM, Arndt, Josua wrote:
>
> Thanks Martine,
>
>
>
> But as the atmegarfr2 is a soc this is the hwrng for this device.
>
>
>
> So what would be the best place to put it if not as cpu/periph in this
> special case?
>
>
>
> I would then implement it as CPU feature and remove the depency to the
> at86rf2xx driver.
>
>
>
> Still the remaining question is it made sure that random32 calls or any
> calls to random are directed to hwrng_read
>
> Is this already done by just enabling the module when building with
> FEATURES_REQUIRED = periph_hwrng ?
>
>
>
>
>
> *Von:* devel <[email protected]> <[email protected]> *Im
> Auftrag von *Martine Lenders
> *Gesendet:* Montag, 5. März 2018 15:47
> *An:* RIOT OS kernel developers <[email protected]> <[email protected]>
> *Betreff:* Re: [riot-devel] hwrnd how to implement
>
>
>
> Hi Josua,
>
>
>
> when the RNG component of the at86rf2xx driver was provided in [1] we
> decided to not implement the `periph/hwnrg` with it.
>
> Main reasons are that it is
>
>
>
> 1. Not a `periph` (i.e. a CPU feature)
>
> 2. Hard to integrate when e.g. the CPU already provides a `hwnrg`.
>
>
>
> Hope this helps,
>
> Martine
>
>
>
> [1] https://github.com/RIOT-OS/RIOT/pull/4989
>
>
>
> 2018-03-05 15:04 GMT+01:00 Arndt, Josua <[email protected]>:
>
> Hello all,
>
>
>
> While implementing the at86rfr2 transceiver for the jiminy board I thought
> of also implement the hwrng.
>
>
>
> What I did is implementing in cpu/atmega256rfr2/periph/hwnrg.c
>
> hwrng_init
>
> hwrng_read
>
>
>
> Added feature and module to makefiles.
>
>
>
> Now I have some questions:
>
>    1. How do I best include the depency to 
> $(RIOTBASE)/drivers/at86rf2xx/include/at86rf2xx_internal.h,
>    of hwrng.c in cpu folder?
>    2. How is it ensured that hardware random is used in all cases? And
>    all other are not linked?
>    3. Where to find howto, concept description, implementation guide?
>
>
>
> Best Regards
>
> Josua
>
> [image: rwth_ias_bild_rgb_logo]
>
> *Josua Arndt, M.Sc.*
> *RWTH Aachen Univers**ity*
>
> *Integrated Analog Circuits and RF Systems*
>
> Kopernikusstraße 16, ICT Cube North, Room 209, D-52074 Aachen
>
> Email: [email protected]
> Phone: +49 241 / 80 - 27750 <+49%20241%208027750>
>
>
>
>
>
>
> _______________________________________________
> devel mailing list
> [email protected]
> https://lists.riot-os.org/mailman/listinfo/devel
>
>
>
>
> _______________________________________________
> devel mailing 
> [email protected]https://lists.riot-os.org/mailman/listinfo/devel
>
>
>
> _______________________________________________
> devel mailing list
> [email protected]
> https://lists.riot-os.org/mailman/listinfo/devel
>
>
_______________________________________________
devel mailing list
[email protected]
https://lists.riot-os.org/mailman/listinfo/devel

Reply via email to