mirror of
https://github.com/Dasharo/linux.git
synced 2026-03-06 15:25:10 -08:00
usb: Add driver for Altus Metrum ChaosKey device (v2)
This is a hardware random number generator. The driver provides both a /dev/chaoskeyX entry and hooks the entropy source up to the kernel hwrng interface. More information about the device can be found at http://chaoskey.org The USB ID for ChaosKey was allocated from the OpenMoko USB vendor space and is visible as 'USBtrng' here: http://wiki.openmoko.org/wiki/USB_Product_IDs v2: Respond to review from Oliver Neukum <oneukum@suse.de> * Delete extensive debug infrastructure and replace it with calls to dev_dbg. * Allocate I/O buffer separately from device structure to obey requirements for non-coherant architectures. * Initialize mutexes before registering device to ensure that open cannot be invoked before the device is ready to proceed. * Return number of bytes read instead of -EINTR when partial read operation is aborted due to a signal. * Make sure device mutex is unlocked in read error paths. * Add MAINTAINERS entry for the driver Signed-off-by: Keith Packard <keithp@keithp.com> Cc: Oliver Neukum <oneukum@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
1fcefbdf06
commit
66e3e59189
@@ -10129,6 +10129,12 @@ S: Maintained
|
||||
F: drivers/net/usb/cdc_*.c
|
||||
F: include/uapi/linux/usb/cdc.h
|
||||
|
||||
USB CHAOSKEY DRIVER
|
||||
M: Keith Packard <keithp@keithp.com>
|
||||
L: linux-usb@vger.kernel.org
|
||||
S: Maintained
|
||||
F: drivers/usb/misc/chaoskey.c
|
||||
|
||||
USB CYPRESS C67X00 DRIVER
|
||||
M: Peter Korsgaard <jacmet@sunsite.dk>
|
||||
L: linux-usb@vger.kernel.org
|
||||
|
||||
@@ -255,3 +255,15 @@ config USB_LINK_LAYER_TEST
|
||||
This driver is for generating specific traffic for Super Speed Link
|
||||
Layer Test Device. Say Y only when you want to conduct USB Super Speed
|
||||
Link Layer Test for host controllers.
|
||||
|
||||
config USB_CHAOSKEY
|
||||
tristate "ChaosKey random number generator driver support"
|
||||
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
|
||||
|
||||
To compile this driver as a module, choose M here: the
|
||||
module will be called chaoskey.
|
||||
|
||||
@@ -25,6 +25,7 @@ obj-$(CONFIG_USB_USS720) += uss720.o
|
||||
obj-$(CONFIG_USB_SEVSEG) += usbsevseg.o
|
||||
obj-$(CONFIG_USB_YUREX) += yurex.o
|
||||
obj-$(CONFIG_USB_HSIC_USB3503) += usb3503.o
|
||||
obj-$(CONFIG_USB_CHAOSKEY) += chaoskey.o
|
||||
|
||||
obj-$(CONFIG_USB_SISUSBVGA) += sisusbvga/
|
||||
obj-$(CONFIG_USB_LINK_LAYER_TEST) += lvstest.o
|
||||
|
||||
530
drivers/usb/misc/chaoskey.c
Normal file
530
drivers/usb/misc/chaoskey.c
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user