Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d3ede2db authored by Bob Ham's avatar Bob Ham Committed by Herbert Xu
Browse files

hwrng: chaoskey - Add support for Araneus Alea I USB RNG



Adds support for the Araneus Alea I USB hardware Random Number
Generator which is interfaced with in exactly the same way as the
Altus Metrum ChaosKey.  We just add the appropriate device ID and
modify the config help text.

Signed-off-by: default avatarBob Ham <bob.ham@collabora.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 63044c4f
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -260,11 +260,12 @@ config USB_CHAOSKEY
	tristate "ChaosKey random number generator driver support"
	depends on HW_RANDOM
	help
	  Say Y here if you want to connect an AltusMetrum ChaosKey to
	  your computer's USB port. The ChaosKey is a hardware random
	  number generator which hooks into the kernel entropy pool to
	  ensure a large supply of entropy for /dev/random and
	  /dev/urandom and also provides direct access via /dev/chaoskeyX
	  Say Y here if you want to connect an AltusMetrum ChaosKey or
	  Araneus Alea I to your computer's USB port. These devices
	  are hardware random number generators which hook into the
	  kernel entropy pool to ensure a large supply of entropy for
	  /dev/random and /dev/urandom and also provides direct access
	  via /dev/chaoskeyX

	  To compile this driver as a module, choose M here: the
	  module will be called chaoskey.
+4 −0
Original line number Diff line number Diff line
@@ -55,6 +55,9 @@ MODULE_LICENSE("GPL");
#define CHAOSKEY_VENDOR_ID	0x1d50	/* OpenMoko */
#define CHAOSKEY_PRODUCT_ID	0x60c6	/* ChaosKey */

#define ALEA_VENDOR_ID		0x12d8	/* Araneus */
#define ALEA_PRODUCT_ID		0x0001	/* Alea I */

#define CHAOSKEY_BUF_LEN	64	/* max size of USB full speed packet */

#define NAK_TIMEOUT (HZ)		/* stall/wait timeout for device */
@@ -69,6 +72,7 @@ MODULE_LICENSE("GPL");

static const struct usb_device_id chaoskey_table[] = {
	{ USB_DEVICE(CHAOSKEY_VENDOR_ID, CHAOSKEY_PRODUCT_ID) },
	{ USB_DEVICE(ALEA_VENDOR_ID, ALEA_PRODUCT_ID) },
	{ },
};
MODULE_DEVICE_TABLE(usb, chaoskey_table);