Commit 7c35ab96 authored by Simon Dawson's avatar Simon Dawson Committed by Thomas Petazzoni
Browse files

owl-linux: new package

parent 594610a3
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -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"
+17 −0
Original line number Diff line number Diff line
config BR2_PACKAGE_OWL_LINUX
	bool "owl-linux"
	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
+16 −0
Original line number Diff line number Diff line
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 <spdawson@gmail.com>
diff -Nurp a/Makefile b/Makefile
--- a/Makefile	2012-06-14 10:51:45.000000000 +0100
+++ b/Makefile	2012-07-20 10:46:41.636752148 +0100
@@ -35,7 +35,7 @@ else
 	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
+21 −0
Original line number Diff line number Diff line
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 <spdawson@gmail.com>
diff -Nurp a/owl_net.c b/owl_net.c
--- a/owl_net.c	2012-06-14 10:51:45.000000000 +0100
+++ b/owl_net.c	2012-07-20 13:16:28.772351464 +0100
@@ -384,7 +384,9 @@ 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,
+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0) */
         .ndo_tx_timeout         = owl_net_tx_timeout,
         .ndo_set_mac_address    = NULL,
 };
+19 −0
Original line number Diff line number Diff line
#############################################################
#
# owl-linux
#
#############################################################
OWL_LINUX_VERSION = 1.0.7
OWL_LINUX_SITE = http://linux.hd-wireless.se/pub/Linux/DownloadDrivers

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 $(generic-package))