summaryrefslogtreecommitdiff
path: root/recipes/ark3116
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/ark3116')
-rw-r--r--recipes/ark3116/ark3116-0.4.1/Makefile.patch19
-rw-r--r--recipes/ark3116/ark3116-0.4.1/ark3116.c.patch17
-rw-r--r--recipes/ark3116/ark3116_0.4.1.bb37
3 files changed, 73 insertions, 0 deletions
diff --git a/recipes/ark3116/ark3116-0.4.1/Makefile.patch b/recipes/ark3116/ark3116-0.4.1/Makefile.patch
new file mode 100644
index 0000000000..427d970227
--- /dev/null
+++ b/recipes/ark3116/ark3116-0.4.1/Makefile.patch
@@ -0,0 +1,19 @@
+*** ark3116/Makefile.orig 2006-04-29 15:42:08.000000000 +0200
+--- ark3116/Makefile 2006-04-29 15:43:26.000000000 +0200
+***************
+*** 7,13 ****
+ EXTRA_CFLAGS += -I/usr/src/linux/drivers/usb/serial
+
+ modules:
+! $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) -I/usr/src/linux/drivers/usb/serial modules
+
+ install: modules
+ install -d $(KMISC)
+--- 7,13 ----
+ EXTRA_CFLAGS += -I/usr/src/linux/drivers/usb/serial
+
+ modules:
+! $(MAKE) -C $(KERNEL_SOURCE) M=$(PWD) -I/usr/src/linux/drivers/usb/serial modules
+
+ install: modules
+ install -d $(KMISC)
diff --git a/recipes/ark3116/ark3116-0.4.1/ark3116.c.patch b/recipes/ark3116/ark3116-0.4.1/ark3116.c.patch
new file mode 100644
index 0000000000..6080abefaa
--- /dev/null
+++ b/recipes/ark3116/ark3116-0.4.1/ark3116.c.patch
@@ -0,0 +1,17 @@
+*** ark3116/ark3116.c.orig 2006-04-29 16:00:34.000000000 +0200
+--- ark3116/ark3116.c 2006-04-29 16:00:27.000000000 +0200
+***************
+*** 443,452 ****
+--- 443,454 ----
+ tty = port->tty;
+ if (tty && urb->actual_length) {
+ for (i = 0; i < urb->actual_length ; ++i) {
++ #if 0
+ /* if we insert more than TTY_FLIPBUF_SIZE characters, we drop them. */
+ if(tty->flip.count >= TTY_FLIPBUF_SIZE) {
+ tty_flip_buffer_push(tty);
+ }
++ #endif
+ /* this doesn't actually push the data through unless tty->low_latency is set */
+ tty_insert_flip_char(tty, data[i], 0);
+ }
diff --git a/recipes/ark3116/ark3116_0.4.1.bb b/recipes/ark3116/ark3116_0.4.1.bb
new file mode 100644
index 0000000000..add4e45f97
--- /dev/null
+++ b/recipes/ark3116/ark3116_0.4.1.bb
@@ -0,0 +1,37 @@
+# FIXME, consider using kernel staging directory instead of KERNEL_SOURCE which is
+# located in the work directory. see module.bbclass
+
+DESCRIPTION = "Driver for usb serial cables based upon ArkMicroChips 3116s chip"
+HOMEPAGE = "http://avr.auctionant.de/ark3116_linux_driver/"
+PRIORITY = "optional"
+SECTION = "kernel/modules"
+LICENSE = "GPL"
+PR = "r2"
+RRECOMMENDS = "kernel-module-usbserial"
+
+SRC_URI = "http://avr.auctionant.de/ark3116_linux_driver/releases/ark3116-0.4.1.tgz \
+ file://ark3116.c.patch;patch=1 \
+ file://Makefile.patch;patch=1"
+
+S = "${WORKDIR}/ark3116"
+
+inherit module
+
+CFLAGS = "'-I${KERNEL_SOURCE}/include'"
+
+CFLAGS_append_arm = " '-D__LINUX_ARM_ARCH__=5' "
+
+CFLAGS_append_armeb = " '-D__LINUX_ARM_ARCH__=5' "
+
+EXTRA_OEMAKE = "'V=1' 'CFLAGS=${CFLAGS}' \
+ 'CC=${KERNEL_CC}' \
+ 'LD=${KERNEL_LD}' \
+ 'KDIR=${STAGING_KERNEL_DIR}'"
+
+export TARGET_LDFLAGS = "-L${STAGING_DIR_TARGET}${layout_libdir} \
+ -Wl,-rpath-link,${STAGING_DIR_TARGET}${layout_libdir}"
+
+do_install() {
+ install -d ${D}${base_libdir}/modules/${KERNEL_VERSION}/kernel/drivers/usb/serial
+ install -m 0644 *${KERNEL_OBJECT_SUFFIX} ${D}${base_libdir}/modules/${KERNEL_VERSION}/kernel/drivers/usb/serial
+}