summaryrefslogtreecommitdiff
path: root/x11/kdebase3/files/extrapatch-libusb20
diff options
context:
space:
mode:
Diffstat (limited to 'x11/kdebase3/files/extrapatch-libusb20')
-rw-r--r--x11/kdebase3/files/extrapatch-libusb20169
1 files changed, 0 insertions, 169 deletions
diff --git a/x11/kdebase3/files/extrapatch-libusb20 b/x11/kdebase3/files/extrapatch-libusb20
deleted file mode 100644
index 4a1782fdbb7c..000000000000
--- a/x11/kdebase3/files/extrapatch-libusb20
+++ /dev/null
@@ -1,169 +0,0 @@
---- kcontrol/usbview/usbdevices.h.orig 2006-07-22 10:15:22.000000000 +0200
-+++ kcontrol/usbview/usbdevices.h 2009-06-20 13:19:42.000000000 +0200
-@@ -17,7 +17,9 @@
- #include <qptrlist.h>
-
- #ifdef Q_OS_FREEBSD
--#include <dev/usb/usb.h>
-+#include <libusb20.h>
-+#include <dev/usb/usb_ioctl.h>
-+#include <dev/usb/usb_revision.h>
- #endif
-
- class USBDB;
-@@ -66,7 +68,7 @@
- unsigned int _vendorID, _prodID, _revMajor, _revMinor;
-
- #ifdef Q_OS_FREEBSD
-- void collectData( int fd, int level, usb_device_info &di, int parent );
-+ void collectData(struct libusb20_backend *, struct libusb20_device *);
- QStringList _devnodes;
- #endif
- };
---- kcontrol/usbview/usbdevices.cpp.orig 2006-07-22 04:15:22.000000000 -0400
-+++ kcontrol/usbview/usbdevices.cpp 2009-07-06 11:47:28.000000000 -0400
-@@ -318,17 +318,25 @@
-
- /*
- * FreeBSD support by Markus Brueffer <markus@brueffer.de>
-+ * libusb20 support by Hans Petter Selasky <hselasky@freebsd.org>
- *
- * Basic idea and some code fragments were taken from FreeBSD's usbdevs(8),
- * originally developed for NetBSD, so this code should work with no or
- * only little modification on NetBSD.
- */
-
--void USBDevice::collectData( int fd, int level, usb_device_info &di, int parent)
-+void USBDevice::collectData(struct libusb20_backend *pbe,
-+ struct libusb20_device *pdev)
- {
-+ char tempbuf[32];
-+ struct usb_device_info di;
-+
-+ if (libusb20_dev_get_info(pdev, &di))
-+ memset(&di, 0, sizeof(di));
-+
- // determine data for this device
-- _level = level;
-- _parent = parent;
-+ _level = 0;
-+ _parent = 0;
-
- _bus = di.udi_bus;
- _device = di.udi_addr;
-@@ -345,87 +353,49 @@
- _channels = di.udi_nports;
-
- // determine the speed
--#if __FreeBSD_version > 490102
- switch (di.udi_speed) {
-- case USB_SPEED_LOW: _speed = 1.5; break;
-- case USB_SPEED_FULL: _speed = 12.0; break;
-- case USB_SPEED_HIGH: _speed = 480.0; break;
-+ case LIBUSB20_SPEED_LOW: _speed = 1.5; break;
-+ case LIBUSB20_SPEED_FULL: _speed = 12.0; break;
-+ case LIBUSB20_SPEED_HIGH: _speed = 480.0; break;
-+ case LIBUSB20_SPEED_VARIABLE: _speed = 480.0; break;
-+ case LIBUSB20_SPEED_SUPER: _speed = 4800.0; break;
-+ default: _speed = 480.0; break;
- }
--#else
-- _speed = di.udi_lowspeed ? 1.5 : 12.0;
--#endif
-
- // Get all attached devicenodes
-- for ( int i = 0; i < USB_MAX_DEVNAMES; ++i )
-- if ( di.udi_devnames[i][0] )
-- _devnodes << di.udi_devnames[i];
-+ for (int i = 0; i < 32; ++i) {
-+ if (libusb20_dev_get_iface_desc(pdev, i, tempbuf, sizeof(tempbuf)) == 0) {
-+ _devnodes << tempbuf;
-+ } else {
-+ break;
-+ }
-+ }
-
- // For compatibility, split the revision number
- sscanf( di.udi_release, "%x.%x", &_revMajor, &_revMinor );
-
-- // Cycle through the attached devices if there are any
-- for ( int p = 0; p < di.udi_nports; ++p ) {
-- // Get data for device
-- struct usb_device_info di2;
--
-- di2.udi_addr = di.udi_ports[p];
--
-- if ( di2.udi_addr >= USB_MAX_DEVICES )
-- continue;
--
-- if ( ioctl(fd, USB_DEVICEINFO, &di2) == -1 )
-- continue;
--
-- // Only add the device if we didn't detect it, yet
-- if (!find( di2.udi_bus, di2.udi_addr ) )
-- {
-- USBDevice *device = new USBDevice();
-- device->collectData( fd, level + 1, di2, di.udi_addr );
-- }
-- }
- }
-
--
--
- bool USBDevice::parse(QString fname)
- {
-- static bool showErrorMessage = true;
-- bool error = false;
-+ struct libusb20_backend *pbe;
-+ struct libusb20_device *pdev;
-+
- _devices.clear();
-
-- QFile controller("/dev/usb0");
-- int i = 1;
-- while ( controller.exists() )
-- {
-- // If the devicenode exists, continue with further inspection
-- if ( controller.open(IO_ReadOnly) )
-- {
-- for ( int addr = 1; addr < USB_MAX_DEVICES; ++addr )
-- {
-- struct usb_device_info di;
--
-- di.udi_addr = addr;
-- if ( ioctl(controller.handle(), USB_DEVICEINFO, &di) != -1 )
-- {
-- if (!find( di.udi_bus, di.udi_addr ) )
-- {
-- USBDevice *device = new USBDevice();
-- device->collectData( controller.handle(), 0, di, 0);
-- }
-- }
-- }
-- controller.close();
-- } else {
-- error = true;
-- }
-- controller.setName( QString::fromLocal8Bit("/dev/usb%1").arg(i++) );
-- }
--
-- if ( showErrorMessage && error ) {
-- showErrorMessage = false;
-- KMessageBox::error( 0, i18n("Could not open one or more USB controller. Make sure, you have read access to all USB controllers that should be listed here."));
-+ pbe = libusb20_be_alloc_default();
-+ if (pbe == NULL)
-+ return (false);
-+
-+ pdev = NULL;
-+
-+ while ((pdev = libusb20_be_device_foreach(pbe, pdev))) {
-+ USBDevice *device = new USBDevice();
-+ device->collectData(pbe, pdev);
- }
--
-+
-+ libusb20_be_free(pbe);
-+
- return true;
- }
- #endif