linux/drivers/usb/misc
Keith Packard 66e3e59189 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>
2015-03-26 10:47:11 +01:00
..
sisusbvga USB-SIS: Deletion of an unnecessary check before the function call "usb_put_dev" 2014-11-24 17:24:31 -08:00
adutux.c USB: adutux: NULL dereferences on disconnect 2014-11-26 19:50:15 -08:00
appledisplay.c USB: appledisplay: Deletion of a check before backlight_device_unregister() 2015-03-18 16:56:40 +01:00
chaoskey.c usb: Add driver for Altus Metrum ChaosKey device (v2) 2015-03-26 10:47:11 +01:00
cypress_cy7c63.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
cytherm.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
ehset.c usb: ehci: Add support for SINGLE_STEP_SET_FEATURE test of EHSET 2013-08-12 13:13:32 -07:00
emi26.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
emi62.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
ezusb.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
ftdi-elan.c usb: ftdi-elan: Use pr_<level> 2014-04-24 13:13:59 -07:00
idmouse.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
iowarrior.c USB: iowarrior: Convert local dbg macro to dev_dbg 2014-05-27 15:00:22 -07:00
isight_firmware.c Merge branch 'usb-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb 2012-01-09 12:09:47 -08:00
Kconfig usb: Add driver for Altus Metrum ChaosKey device (v2) 2015-03-26 10:47:11 +01:00
ldusb.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
legousbtower.c USB: legotower: use msecs_to_jiffies for time conversion 2015-03-18 16:20:34 +01:00
lvstest.c usb: rename phy to usb_phy in HCD 2014-09-29 11:52:59 -04:00
Makefile usb: Add driver for Altus Metrum ChaosKey device (v2) 2015-03-26 10:47:11 +01:00
rio500.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
rio500_usb.h
trancevibrator.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
usb3503.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
usb_u132.h
usblcd.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
usbled.c usb/misc/usbled: Add Riso Kagaku Webmail Notifier 2014-02-11 14:00:16 -08:00
usbsevseg.c usb: delete non-required instances of include <linux/init.h> 2014-01-08 15:01:39 -08:00
usbtest.c usb: hub: rename khubd to hub_wq in documentation and comments 2014-09-23 22:33:19 -07:00
uss720.c USB: use %*ph specifier in uss720 driver 2015-01-09 11:37:18 -08:00
yurex.c usb: yurex: fixed sparse warning of incorrect type 2014-11-03 15:34:00 -08:00