Commit 50190edb authored by Geert Uytterhoeven's avatar Geert Uytterhoeven
Browse files

m68k/amiga: Provide mach_random_get_entropy()



Use the beam position registers, which provide at least 17 bits of data
changing at 1.79 MHz.

Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
parent 017cecee
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -360,6 +360,14 @@ static void __init amiga_identify(void)
#undef AMIGAHW_ANNOUNCE
}


static unsigned long amiga_random_get_entropy(void)
{
	/* VPOSR/VHPOSR provide at least 17 bits of data changing at 1.79 MHz */
	return *(unsigned long *)&amiga_custom.vposr;
}


    /*
     *  Setup the Amiga configuration info
     */
@@ -397,6 +405,8 @@ void __init config_amiga(void)
	mach_heartbeat = amiga_heartbeat;
#endif

	mach_random_get_entropy = amiga_random_get_entropy;

	/* Fill in the clock value (based on the 700 kHz E-Clock) */
	amiga_colorclock = 5*amiga_eclock;	/* 3.5 MHz */