From patchwork Tue Jun 26 08:10:49 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Dawson X-Patchwork-Id: 167335 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from fraxinus.osuosl.org (fraxinus.osuosl.org [140.211.166.137]) by ozlabs.org (Postfix) with ESMTP id C2B471007DB for ; Tue, 26 Jun 2012 18:11:04 +1000 (EST) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 39E69101A5C; Tue, 26 Jun 2012 08:11:03 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id em2Op+z80s1W; Tue, 26 Jun 2012 08:10:59 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by fraxinus.osuosl.org (Postfix) with ESMTP id 58212100E9A; Tue, 26 Jun 2012 08:10:59 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (whitealder.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 9C5ED8F75B for ; Tue, 26 Jun 2012 08:10:57 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 8FCCA8BCF3 for ; Tue, 26 Jun 2012 08:10:57 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id tttiGQtimt+m for ; Tue, 26 Jun 2012 08:10:56 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-ee0-f43.google.com (mail-ee0-f43.google.com [74.125.83.43]) by whitealder.osuosl.org (Postfix) with ESMTPS id 848EB8BC3B for ; Tue, 26 Jun 2012 08:10:55 +0000 (UTC) Received: by eeke50 with SMTP id e50so2605567eek.16 for ; Tue, 26 Jun 2012 01:10:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:subject:date:message-id:x-mailer; bh=GQOXHZnxM18AFAZwuKEMrNGlUMMqondsjlT3MSfV7S0=; b=pLGHDIvh6p4AeTJj5ahs+JOJmdpAhQzxfh5OpK7kOKk9FOLrNN6xn3M0nbpOzbCq0R LOXqJ51w2z45lTHirCz3p/QFjlRRZQ9Cq5Ye28iYduyE8sNPAalnYj++0bg1LoILkrQV h4VGJhyfaW5P/bGs7vsDce5RWiQnTxc7Ilfe1anZ2JzDOLdEZvcSu+8ta6NBoNc89jP0 K5nqivleVWYEIPvnXKfGHjtHZeQ+qkQNT83MHxdV+y3fS4VQVkNiUI75BwyuC9i5vVC+ ERsOjd1atjhvnw5k/5cYZuyfW+iuqMnoLVLDIaALhqR0MovywbInJN2AkpkbEri07XyU opiA== Received: by 10.14.127.133 with SMTP id d5mr1544059eei.173.1340698253696; Tue, 26 Jun 2012 01:10:53 -0700 (PDT) Received: from percy.train.local ([213.170.149.177]) by mx.google.com with ESMTPS id f56sm2756152eea.16.2012.06.26.01.10.51 (version=SSLv3 cipher=OTHER); Tue, 26 Jun 2012 01:10:52 -0700 (PDT) From: spdawson@gmail.com To: buildroot@busybox.net Date: Tue, 26 Jun 2012 09:10:49 +0100 Message-Id: <1340698249-6938-1-git-send-email-spdawson@gmail.com> X-Mailer: git-send-email 1.7.9.5 Subject: [Buildroot] [PATCH resend v2] owl-linux: new package X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: buildroot-bounces@busybox.net From: Simon Dawson Signed-off-by: Simon Dawson --- v2: Added Signed-off-by lines to patches, make configuration menu commentary less intrusive for non-ARM setups. package/Config.in | 1 + package/owl-linux/Config.in | 17 +++++++++++++++ ...1.0.6-fix-CROSS_COMPILE-usage-in-Makefile.patch | 16 ++++++++++++++ .../owl-linux-1.0.6-fix-for-linux-3.3.x.patch | 23 ++++++++++++++++++++ package/owl-linux/owl-linux.mk | 20 +++++++++++++++++ 5 files changed, 77 insertions(+) create mode 100644 package/owl-linux/Config.in create mode 100644 package/owl-linux/owl-linux-1.0.6-fix-CROSS_COMPILE-usage-in-Makefile.patch create mode 100644 package/owl-linux/owl-linux-1.0.6-fix-for-linux-3.3.x.patch create mode 100644 package/owl-linux/owl-linux.mk diff --git a/package/Config.in b/package/Config.in index 99257b4..cb8771d 100644 --- a/package/Config.in +++ b/package/Config.in @@ -216,6 +216,7 @@ source "package/ntfs-3g/Config.in" source "package/ofono/Config.in" source "package/open2300/Config.in" source "package/openocd/Config.in" +source "package/owl-linux/Config.in" source "package/parted/Config.in" source "package/pciutils/Config.in" source "package/picocom/Config.in" diff --git a/package/owl-linux/Config.in b/package/owl-linux/Config.in new file mode 100644 index 0000000..ce677b2 --- /dev/null +++ b/package/owl-linux/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_OWL_LINUX + bool "H&D Wireless SPB104 SD-card WiFi SIP" + depends on BR2_LINUX_KERNEL + depends on (BR2_arm920t || BR2_arm922t || BR2_arm926t) + depends on BR2_ARM_EABI + help + Linux kernel driver for the H&D Wireless SPB104 SD-card WiFi SIP. + + http://linux.hd-wireless.se/bin/view/Linux/GettingStarted + +comment "owl-linux requires a Linux kernel" + depends on !BR2_LINUX_KERNEL + depends on BR2_arm || BR2_armeb + +comment "owl-linux is only supported on ARM9 architecture with EABI" + depends on !(BR2_arm920t || BR2_arm922t || BR2_arm926t) || !BR2_ARM_EABI + depends on BR2_arm || BR2_armeb diff --git a/package/owl-linux/owl-linux-1.0.6-fix-CROSS_COMPILE-usage-in-Makefile.patch b/package/owl-linux/owl-linux-1.0.6-fix-CROSS_COMPILE-usage-in-Makefile.patch new file mode 100644 index 0000000..5dc54a7 --- /dev/null +++ b/package/owl-linux/owl-linux-1.0.6-fix-CROSS_COMPILE-usage-in-Makefile.patch @@ -0,0 +1,16 @@ +Fix the owl-linux Makefile so that it protects spaces in the CROSS_COMPILE +variable. For example, this variable will contain spaces if ccache is used. + +Signed-off-by: Simon Dawson +diff -Nur a/Makefile b/Makefile +--- a/Makefile 2011-09-15 12:20:37.000000000 +0100 ++++ b/Makefile 2012-05-10 08:53:55.727706424 +0100 +@@ -35,7 +35,7 @@ + PWD := $(shell pwd) + + default: +- $(MAKE) -C $(KERNELDIR) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) M=$(PWD) MODE=$(MODE) modules ++ $(MAKE) -C $(KERNELDIR) ARCH=$(ARCH) CROSS_COMPILE="$(CROSS_COMPILE)" M=$(PWD) MODE=$(MODE) modules + + clean: + -rm -f *.o *.mod.c *.ko modules.order Module.symvers diff --git a/package/owl-linux/owl-linux-1.0.6-fix-for-linux-3.3.x.patch b/package/owl-linux/owl-linux-1.0.6-fix-for-linux-3.3.x.patch new file mode 100644 index 0000000..15707c8 --- /dev/null +++ b/package/owl-linux/owl-linux-1.0.6-fix-for-linux-3.3.x.patch @@ -0,0 +1,23 @@ +Kernel commit b81693d9149c598302e8eb9c20cb20330d922c8e changed the +net_device_ops structure, removing the ndo_set_multicast_list callback. The +ndo_set_rx_mode has also been added to this structure. + +The upshot of these changes is that owl-linux fails to compile with 3.3.x +and later kernels. + +Signed-off-by: Simon Dawson +diff -Nurp a/owl_net.c b/owl_net.c +--- a/owl_net.c 2011-09-15 12:20:37.000000000 +0100 ++++ b/owl_net.c 2012-06-05 07:42:47.839807834 +0100 +@@ -376,7 +376,11 @@ static const struct net_device_ops netde + #endif /* OWL_CONFIG_IFUPDOWN */ + .ndo_start_xmit = owl_net_tx, + .ndo_get_stats = owl_net_get_stats, ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0) + .ndo_set_multicast_list = NULL, ++#else ++ .ndo_set_rx_mode = NULL, ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0) */ + .ndo_tx_timeout = owl_net_tx_timeout, + .ndo_set_mac_address = NULL, + }; diff --git a/package/owl-linux/owl-linux.mk b/package/owl-linux/owl-linux.mk new file mode 100644 index 0000000..8aa8709 --- /dev/null +++ b/package/owl-linux/owl-linux.mk @@ -0,0 +1,20 @@ +############################################################# +# +# owl-linux +# +############################################################# +OWL_LINUX_VERSION = 1.0.6 +OWL_LINUX_SITE = http://linux.hd-wireless.se/pub/Linux/DownloadDrivers +OWL_LINUX_SOURCE = owl-linux-$(OWL_LINUX_VERSION).tar.gz + +OWL_LINUX_DEPENDENCIES = linux + +define OWL_LINUX_BUILD_CMDS + $(MAKE) -C $(@D) $(LINUX_MAKE_FLAGS) KERNELDIR=$(LINUX_DIR) +endef + +define OWL_LINUX_INSTALL_TARGET_CMDS + $(MAKE) -C $(LINUX_DIR) $(LINUX_MAKE_FLAGS) M="$(@D)" modules_install +endef + +$(eval $(call GENTARGETS))