Tag Archives

2 Articles
Driver for U.r.U 4500 in Kernel 2.6.36

Driver for U.r.U 4500 in Kernel 2.6.36

It seems the Linux kernel getting another ABI change for USB in 2.6.36. function


is being deprecated for a while and now being removed. It is changed with function 


. The parameter also changed.

Here’s the chunk of changes that would gives you idea of what changed:

<2.6.36 2.6.36+
ioctl   = usbdpfp_ioctl
.unlocked_ioctl   = usbdpfp_ioctl
usbdpfp_ioctl(struct inode *inode, struct file *file, unsigned int cmd, usbdpfp_ioctl(struct file *file, unsigned int cmd,
static int usbdpfp_ioctl( static long usbdpfp_ioctl(

That’s not all of the code, but you get the idea. The


is changed. Every


calling is having one less parameter. The return is no longer





According to Alex comment in my previous post, the UDEV rule also changing. Every USB device is default installed in /dev/usb directory. That’s why we have to make an adjustment in udev rule. As usual, I’m uploading the whole code here. As usual, remove the .pdf extension.

Getting Omnikey 5321 To Work On Maverick

Getting Omnikey 5321 To Work On Maverick

It didn’t work with the


package. I have reinstalled the


package with compiling from source. I’ve configured with

"--enable-libusb --disable-libhal"

to use libusb instead of HAL. Those failed.

Then it turned out I have to install the driver from HID Global (the producer of the said card reader) and installed it. The way:

  1. Download driver from: http://www.hidglobal.com/driverDownloads.php?techCat=19&prod_id=171#
  2. Untar the driver to a directory and cd to it.
  3. $ sudo ./install -d /usr/lib/pcsc/drivers/
  4. Restart pcscd:
    $ sudo invoke-rc.d pcscd restart
  5. Done.

Then we have the Omnikey back.