--- Begin Message ---
Package: ipheth-dkms
Version: 1.0-1
Severity: important
usb_buffer_free/alloc are renamed in 2.6.34 and the compatibility functions
dropped in 2.6.35 causing the module to fail to build on 2.6.35. Attached is a
patch that allows for this.
-- System Information:
Debian Release: squeeze/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.6.32-5-686 (SMP w/1 CPU core)
Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages ipheth-dkms depends on:
ii dkms 2.1.1.2-5 Dynamic Kernel Module Support Fram
ipheth-dkms recommends no packages.
ipheth-dkms suggests no packages.
-- no debconf information
Author: Niall Creech <[email protected]>
Description: Rename calls to usb_buffer_free and usb_buffer_alloc to
usb_free_coherent and usb_alloc_coherent for >= 2.6.35 kernels
Ubuntu-Bug: https://bugs.launchpad.net/ubuntu/+source/ipheth/+bug/605740
Index: ipheth-1.0/ipheth-driver/ipheth.c
===================================================================
--- ipheth-1.0.orig/ipheth-driver/ipheth.c 2010-09-17 07:21:58.392165306 +0100
+++ ipheth-1.0/ipheth-driver/ipheth.c 2010-09-17 07:36:04.331050774 +0100
@@ -54,6 +54,14 @@
#include <asm/uaccess.h>
#include <linux/usb.h>
#include <linux/workqueue.h>
+#include <linux/version.h>
+
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34)
+# define usb_alloc_coherent(dev, size, mem_flags, dma) \
+ usb_buffer_alloc(dev, size, mem_flags, dma)
+# define usb_free_coherent(dev, size, addr, dma) \
+ usb_buffer_free(dev, size, addr, dma)
+#endif
#define USB_VENDOR_APPLE 0x05ac
#define USB_PRODUCT_IPHETH 0x1290
@@ -120,14 +128,14 @@
if (rx_urb == NULL)
goto error;
- tx_buf = usb_buffer_alloc(iphone->udev,
+ tx_buf = usb_alloc_coherent(iphone->udev,
IPHETH_BUF_SIZE,
GFP_KERNEL,
&tx_urb->transfer_dma);
if (tx_buf == NULL)
goto error;
- rx_buf = usb_buffer_alloc(iphone->udev,
+ rx_buf = usb_alloc_coherent(iphone->udev,
IPHETH_BUF_SIZE,
GFP_KERNEL,
&rx_urb->transfer_dma);
@@ -142,9 +150,9 @@
return 0;
error:
- usb_buffer_free(iphone->udev, IPHETH_BUF_SIZE, rx_buf,
+ usb_free_coherent(iphone->udev, IPHETH_BUF_SIZE, rx_buf,
rx_urb->transfer_dma);
- usb_buffer_free(iphone->udev, IPHETH_BUF_SIZE, tx_buf,
+ usb_free_coherent(iphone->udev, IPHETH_BUF_SIZE, tx_buf,
tx_urb->transfer_dma);
usb_free_urb(rx_urb);
usb_free_urb(tx_urb);
@@ -153,9 +161,9 @@
static void ipheth_free_urbs (struct ipheth_device *iphone)
{
- usb_buffer_free(iphone->udev, IPHETH_BUF_SIZE, iphone->rx_buf,
+ usb_free_coherent(iphone->udev, IPHETH_BUF_SIZE, iphone->rx_buf,
iphone->rx_urb->transfer_dma);
- usb_buffer_free(iphone->udev, IPHETH_BUF_SIZE, iphone->tx_buf,
+ usb_free_coherent(iphone->udev, IPHETH_BUF_SIZE, iphone->tx_buf,
iphone->tx_urb->transfer_dma);
usb_free_urb(iphone->rx_urb);
usb_free_urb(iphone->tx_urb);
Author: Niall Creech <[email protected]>
Description: Rename calls to usb_buffer_free and usb_buffer_alloc to
usb_free_coherent and usb_alloc_coherent for >= 2.6.35 kernels
Ubuntu-Bug: https://bugs.launchpad.net/ubuntu/+source/ipheth/+bug/605740
Index: ipheth-1.0/ipheth-driver/ipheth.c
===================================================================
--- ipheth-1.0.orig/ipheth-driver/ipheth.c 2010-09-17 07:21:58.392165306 +0100
+++ ipheth-1.0/ipheth-driver/ipheth.c 2010-09-17 07:36:04.331050774 +0100
@@ -54,6 +54,14 @@
#include <asm/uaccess.h>
#include <linux/usb.h>
#include <linux/workqueue.h>
+#include <linux/version.h>
+
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34)
+# define usb_alloc_coherent(dev, size, mem_flags, dma) \
+ usb_buffer_alloc(dev, size, mem_flags, dma)
+# define usb_free_coherent(dev, size, addr, dma) \
+ usb_buffer_free(dev, size, addr, dma)
+#endif
#define USB_VENDOR_APPLE 0x05ac
#define USB_PRODUCT_IPHETH 0x1290
@@ -120,14 +128,14 @@
if (rx_urb == NULL)
goto error;
- tx_buf = usb_buffer_alloc(iphone->udev,
+ tx_buf = usb_alloc_coherent(iphone->udev,
IPHETH_BUF_SIZE,
GFP_KERNEL,
&tx_urb->transfer_dma);
if (tx_buf == NULL)
goto error;
- rx_buf = usb_buffer_alloc(iphone->udev,
+ rx_buf = usb_alloc_coherent(iphone->udev,
IPHETH_BUF_SIZE,
GFP_KERNEL,
&rx_urb->transfer_dma);
@@ -142,9 +150,9 @@
return 0;
error:
- usb_buffer_free(iphone->udev, IPHETH_BUF_SIZE, rx_buf,
+ usb_free_coherent(iphone->udev, IPHETH_BUF_SIZE, rx_buf,
rx_urb->transfer_dma);
- usb_buffer_free(iphone->udev, IPHETH_BUF_SIZE, tx_buf,
+ usb_free_coherent(iphone->udev, IPHETH_BUF_SIZE, tx_buf,
tx_urb->transfer_dma);
usb_free_urb(rx_urb);
usb_free_urb(tx_urb);
@@ -153,9 +161,9 @@
static void ipheth_free_urbs (struct ipheth_device *iphone)
{
- usb_buffer_free(iphone->udev, IPHETH_BUF_SIZE, iphone->rx_buf,
+ usb_free_coherent(iphone->udev, IPHETH_BUF_SIZE, iphone->rx_buf,
iphone->rx_urb->transfer_dma);
- usb_buffer_free(iphone->udev, IPHETH_BUF_SIZE, iphone->tx_buf,
+ usb_free_coherent(iphone->udev, IPHETH_BUF_SIZE, iphone->tx_buf,
iphone->tx_urb->transfer_dma);
usb_free_urb(iphone->rx_urb);
usb_free_urb(iphone->tx_urb);
--- End Message ---