* [Buildroot] [PATCH resend] owl-linux: new package
@ 2012-05-25 21:07 spdawson at gmail.com
2012-06-04 23:16 ` Arnout Vandecappelle
0 siblings, 1 reply; 12+ messages in thread
From: spdawson at gmail.com @ 2012-05-25 21:07 UTC (permalink / raw)
To: buildroot
From: Simon Dawson <spdawson@gmail.com>
Signed-off-by: Simon Dawson <spdawson@gmail.com>
---
package/Config.in | 1 +
package/owl-linux/Config.in | 18 ++++++++++++++++++
...1.0.6-fix-CROSS_COMPILE-usage-in-Makefile.patch | 15 +++++++++++++++
.../owl-linux-1.0.6-fix-for-linux-3.3.x.patch | 19 +++++++++++++++++++
package/owl-linux/owl-linux.mk | 20 ++++++++++++++++++++
5 files changed, 73 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 fb1b08f..971b106 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -208,6 +208,7 @@ source "package/mtd/Config.in"
source "package/ntfs-3g/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..a5ab8e8
--- /dev/null
+++ b/package/owl-linux/Config.in
@@ -0,0 +1,18 @@
+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
+
+comment "owl-linux is only supported on the ARM9 architecture"
+ depends on !(BR2_arm920t || BR2_arm922t || BR2_arm926t)
+
+comment "owl-linux requires the ARM EABI"
+ depends on !BR2_ARM_EABI
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..a644406
--- /dev/null
+++ b/package/owl-linux/owl-linux-1.0.6-fix-CROSS_COMPILE-usage-in-Makefile.patch
@@ -0,0 +1,15 @@
+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.
+
+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..2d4ea48
--- /dev/null
+++ b/package/owl-linux/owl-linux-1.0.6-fix-for-linux-3.3.x.patch
@@ -0,0 +1,19 @@
+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
+kernels.
+
+diff -Nur 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-05-01 11:39:14.617658349 +0100
+@@ -376,7 +376,7 @@
+ #endif /* OWL_CONFIG_IFUPDOWN */
+ .ndo_start_xmit = owl_net_tx,
+ .ndo_get_stats = owl_net_get_stats,
+- .ndo_set_multicast_list = NULL,
++ .ndo_set_rx_mode = NULL,
+ .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))
--
1.7.9.5
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [Buildroot] [PATCH resend] owl-linux: new package
2012-05-25 21:07 [Buildroot] [PATCH resend] owl-linux: new package spdawson at gmail.com
@ 2012-06-04 23:16 ` Arnout Vandecappelle
2012-06-05 6:36 ` Simon Dawson
0 siblings, 1 reply; 12+ messages in thread
From: Arnout Vandecappelle @ 2012-06-04 23:16 UTC (permalink / raw)
To: buildroot
On 05/25/12 23:07, spdawson at gmail.com wrote:
> +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
> +kernels.
Won't this patch break the build on pre-3.3 kernels? I think there should
be an #if LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0) around it.
Regards,
Arnout
--
Arnout Vandecappelle arnout@mind be
Senior Embedded Software Architect +32-16-286540
Essensium/Mind http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Buildroot] [PATCH resend] owl-linux: new package
@ 2012-06-25 19:09 spdawson at gmail.com
2012-06-26 7:35 ` Thomas Petazzoni
0 siblings, 1 reply; 12+ messages in thread
From: spdawson at gmail.com @ 2012-06-25 19:09 UTC (permalink / raw)
To: buildroot
From: Simon Dawson <spdawson@gmail.com>
Signed-off-by: Simon Dawson <spdawson@gmail.com>
---
package/Config.in | 1 +
package/owl-linux/Config.in | 18 ++++++++++++++++
...1.0.6-fix-CROSS_COMPILE-usage-in-Makefile.patch | 15 +++++++++++++
.../owl-linux-1.0.6-fix-for-linux-3.3.x.patch | 22 ++++++++++++++++++++
package/owl-linux/owl-linux.mk | 20 ++++++++++++++++++
5 files changed, 76 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..a5ab8e8
--- /dev/null
+++ b/package/owl-linux/Config.in
@@ -0,0 +1,18 @@
+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
+
+comment "owl-linux is only supported on the ARM9 architecture"
+ depends on !(BR2_arm920t || BR2_arm922t || BR2_arm926t)
+
+comment "owl-linux requires the ARM EABI"
+ depends on !BR2_ARM_EABI
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..a644406
--- /dev/null
+++ b/package/owl-linux/owl-linux-1.0.6-fix-CROSS_COMPILE-usage-in-Makefile.patch
@@ -0,0 +1,15 @@
+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.
+
+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..a474d4f
--- /dev/null
+++ b/package/owl-linux/owl-linux-1.0.6-fix-for-linux-3.3.x.patch
@@ -0,0 +1,22 @@
+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.
+
+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))
--
1.7.9.5
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [Buildroot] [PATCH resend] owl-linux: new package
2012-06-25 19:09 spdawson at gmail.com
@ 2012-06-26 7:35 ` Thomas Petazzoni
2012-06-26 8:07 ` Simon Dawson
0 siblings, 1 reply; 12+ messages in thread
From: Thomas Petazzoni @ 2012-06-26 7:35 UTC (permalink / raw)
To: buildroot
Le Mon, 25 Jun 2012 20:09:49 +0100,
spdawson at gmail.com a ?crit :
> From: Simon Dawson <spdawson@gmail.com>
>
> Signed-off-by: Simon Dawson <spdawson@gmail.com>
This looks pretty good. The patches of the package should have a
Signed-off-by line, but otherwise, I'm not seeing any other issue.
I am also a bit worried about all the comment "owl-linux is only
supported blabla", because those warnings will also appear for anyone
not even doing something for ARM, and there will be two of such
warnings.
Maybe group the ARM9 and EABI checks into one comment? And maybe make
it visible only on ARM?
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
or something like that.
> +define OWL_LINUX_INSTALL_TARGET_CMDS
> + $(MAKE) -C $(LINUX_DIR) $(LINUX_MAKE_FLAGS) M="$(@D)" modules_install
> +endef
At some point in the discussion, it was mentioned that this driver
might only work with one particular CodeSourcery toolchain, which would
suggest that it uses the C library, and therefore contain userspace
code. But here you're only installing the kernel module itself. Could
you clarify this point, just for our (my?) knowledge?
Thanks!
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Buildroot] [PATCH resend] owl-linux: new package
2012-06-26 7:35 ` Thomas Petazzoni
@ 2012-06-26 8:07 ` Simon Dawson
2012-06-26 8:37 ` Thomas Petazzoni
0 siblings, 1 reply; 12+ messages in thread
From: Simon Dawson @ 2012-06-26 8:07 UTC (permalink / raw)
To: buildroot
Thanks for the feedback Thomas.
On 26 June 2012 08:35, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> The patches of the package should have a
> Signed-off-by line, but otherwise, I'm not seeing any other issue.
Okay; I'll fix that and resubmit.
> Maybe group the ARM9 and EABI checks into one comment? And maybe make
> it visible only on ARM?
>
> 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
>
> or something like that.
Good idea; I will do this.
> At some point in the discussion, it was mentioned that this driver
> might only work with one particular CodeSourcery toolchain, which would
> suggest that it uses the C library, and therefore contain userspace
> code. But here you're only installing the kernel module itself. Could
> you clarify this point, just for our (my?) knowledge?
I'm using the Buildroot-generated uClibc-based toolchain, and have had
no problems so far. The kernel module installed by this package is all
that is required to make the H&D Wireless hardware work.
Simon.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Buildroot] [PATCH resend] owl-linux: new package
2012-06-26 8:07 ` Simon Dawson
@ 2012-06-26 8:37 ` Thomas Petazzoni
0 siblings, 0 replies; 12+ messages in thread
From: Thomas Petazzoni @ 2012-06-26 8:37 UTC (permalink / raw)
To: buildroot
Le Tue, 26 Jun 2012 09:07:46 +0100,
Simon Dawson <spdawson@gmail.com> a ?crit :
> > Maybe group the ARM9 and EABI checks into one comment? And maybe make
> > it visible only on ARM?
> >
> > 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
> >
> > or something like that.
>
> Good idea; I will do this.
Thanks!
> > At some point in the discussion, it was mentioned that this driver
> > might only work with one particular CodeSourcery toolchain, which would
> > suggest that it uses the C library, and therefore contain userspace
> > code. But here you're only installing the kernel module itself. Could
> > you clarify this point, just for our (my?) knowledge?
>
> I'm using the Buildroot-generated uClibc-based toolchain, and have had
> no problems so far. The kernel module installed by this package is all
> that is required to make the H&D Wireless hardware work.
Ok, if there's only kernel code, then I guess the only problem is the
ABI, which you've already handled by requiring EABI, so that looks good.
Thanks!
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Buildroot] [PATCH resend] owl-linux: new package
@ 2012-06-05 6:47 spdawson at gmail.com
0 siblings, 0 replies; 12+ messages in thread
From: spdawson at gmail.com @ 2012-06-05 6:47 UTC (permalink / raw)
To: buildroot
From: Simon Dawson <spdawson@gmail.com>
Signed-off-by: Simon Dawson <spdawson@gmail.com>
---
package/Config.in | 1 +
package/owl-linux/Config.in | 18 ++++++++++++++++
...1.0.6-fix-CROSS_COMPILE-usage-in-Makefile.patch | 15 +++++++++++++
.../owl-linux-1.0.6-fix-for-linux-3.3.x.patch | 22 ++++++++++++++++++++
package/owl-linux/owl-linux.mk | 20 ++++++++++++++++++
5 files changed, 76 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 dde5800..0df2952 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -210,6 +210,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..a5ab8e8
--- /dev/null
+++ b/package/owl-linux/Config.in
@@ -0,0 +1,18 @@
+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
+
+comment "owl-linux is only supported on the ARM9 architecture"
+ depends on !(BR2_arm920t || BR2_arm922t || BR2_arm926t)
+
+comment "owl-linux requires the ARM EABI"
+ depends on !BR2_ARM_EABI
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..a644406
--- /dev/null
+++ b/package/owl-linux/owl-linux-1.0.6-fix-CROSS_COMPILE-usage-in-Makefile.patch
@@ -0,0 +1,15 @@
+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.
+
+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..a474d4f
--- /dev/null
+++ b/package/owl-linux/owl-linux-1.0.6-fix-for-linux-3.3.x.patch
@@ -0,0 +1,22 @@
+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.
+
+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))
--
1.7.9.5
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [Buildroot] [PATCH resend] owl-linux: new package
@ 2012-05-25 12:51 spdawson at gmail.com
2012-05-25 20:08 ` Peter Korsgaard
0 siblings, 1 reply; 12+ messages in thread
From: spdawson at gmail.com @ 2012-05-25 12:51 UTC (permalink / raw)
To: buildroot
From: Simon Dawson <spdawson@gmail.com>
Signed-off-by: Simon Dawson <spdawson@gmail.com>
---
package/Config.in | 1 +
package/owl-linux/Config.in | 10 ++++++++++
...1.0.6-fix-CROSS_COMPILE-usage-in-Makefile.patch | 15 +++++++++++++++
.../owl-linux-1.0.6-fix-for-linux-3.3.x.patch | 19 +++++++++++++++++++
package/owl-linux/owl-linux.mk | 20 ++++++++++++++++++++
5 files changed, 65 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 fb1b08f..971b106 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -208,6 +208,7 @@ source "package/mtd/Config.in"
source "package/ntfs-3g/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..6ee0f95
--- /dev/null
+++ b/package/owl-linux/Config.in
@@ -0,0 +1,10 @@
+config BR2_PACKAGE_OWL_LINUX
+ bool "H&D Wireless SPB104 SD-card WiFi SIP"
+ depends on BR2_LINUX_KERNEL
+ 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
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..a644406
--- /dev/null
+++ b/package/owl-linux/owl-linux-1.0.6-fix-CROSS_COMPILE-usage-in-Makefile.patch
@@ -0,0 +1,15 @@
+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.
+
+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..2d4ea48
--- /dev/null
+++ b/package/owl-linux/owl-linux-1.0.6-fix-for-linux-3.3.x.patch
@@ -0,0 +1,19 @@
+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
+kernels.
+
+diff -Nur 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-05-01 11:39:14.617658349 +0100
+@@ -376,7 +376,7 @@
+ #endif /* OWL_CONFIG_IFUPDOWN */
+ .ndo_start_xmit = owl_net_tx,
+ .ndo_get_stats = owl_net_get_stats,
+- .ndo_set_multicast_list = NULL,
++ .ndo_set_rx_mode = NULL,
+ .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..6cf8e96
--- /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))
--
1.7.9.5
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [Buildroot] [PATCH resend] owl-linux: new package
2012-05-25 12:51 spdawson at gmail.com
@ 2012-05-25 20:08 ` Peter Korsgaard
[not found] ` <CAC1BbcRi_0KzkKP7Pfi6e407kp3QGyiWj+mVEA355z_HeC1qvg@mail.gmail.com>
0 siblings, 1 reply; 12+ messages in thread
From: Peter Korsgaard @ 2012-05-25 20:08 UTC (permalink / raw)
To: buildroot
>>>>> "spdawson" == spdawson <spdawson@gmail.com> writes:
Hi,
spdawson> diff --git a/package/owl-linux/Config.in b/package/owl-linux/Config.in
spdawson> new file mode 100644
spdawson> index 0000000..6ee0f95
spdawson> --- /dev/null
spdawson> +++ b/package/owl-linux/Config.in
spdawson> @@ -0,0 +1,10 @@
spdawson> +config BR2_PACKAGE_OWL_LINUX
spdawson> + bool "H&D Wireless SPB104 SD-card WiFi SIP"
spdawson> + depends on BR2_LINUX_KERNEL
spdawson> + help
spdawson> + Linux kernel driver for the H&D Wireless SPB104 SD-card WiFi SIP.
spdawson> +
spdawson> + http://linux.hd-wireless.se/bin/view/Linux/GettingStarted
I don't know anything about this non-mainline driver, but a quick look
from that page shows me:
The driver is split into a binary part and a source part. The binary
part is a kernel-version and kernel-configuration independent
kernel-space library which also holds the device firmware. The source
part is basically the implementation of the adaptation layers
interfacing the SDIO stack, the TCP/IP stack and the wireless
extensions. This code is dependent on kernel version and configuration,
so it must be compiled for a particular kernel.
Currently, the included library has been compiled for ARM architectures
only. In version 1.0.6 and later, the library has been compiled with the
CodeSourcery GNU EABI toolchain 2011.03-42
So it seems like this should depend on atleast ARM, maybe some processor
variants and perhaps even the codesourcery 2011.03 toolchain?
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2012-06-26 8:37 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-05-25 21:07 [Buildroot] [PATCH resend] owl-linux: new package spdawson at gmail.com
2012-06-04 23:16 ` Arnout Vandecappelle
2012-06-05 6:36 ` Simon Dawson
-- strict thread matches above, loose matches on Subject: below --
2012-06-25 19:09 spdawson at gmail.com
2012-06-26 7:35 ` Thomas Petazzoni
2012-06-26 8:07 ` Simon Dawson
2012-06-26 8:37 ` Thomas Petazzoni
2012-06-05 6:47 spdawson at gmail.com
2012-05-25 12:51 spdawson at gmail.com
2012-05-25 20:08 ` Peter Korsgaard
[not found] ` <CAC1BbcRi_0KzkKP7Pfi6e407kp3QGyiWj+mVEA355z_HeC1qvg@mail.gmail.com>
2012-05-25 20:33 ` Bernhard Reutner-Fischer
2012-05-25 21:01 ` Simon Dawson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox