]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/commitdiff
Add Davicom DM9601 (2nd try, now working)
authorArne Fitzenreiter <arne_f@ipfire.org>
Fri, 4 Apr 2008 16:14:38 +0000 (18:14 +0200)
committerArne Fitzenreiter <arne_f@ipfire.org>
Fri, 4 Apr 2008 16:14:38 +0000 (18:14 +0200)
lfs/dm9601 [new file with mode: 0644]
make.sh
src/patches/dm9601-make+ids.patch [new file with mode: 0644]

diff --git a/lfs/dm9601 b/lfs/dm9601
new file mode 100644 (file)
index 0000000..1af9a2f
--- /dev/null
@@ -0,0 +1,92 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = 2.6
+
+THISAPP    = dm9601-$(VER)
+DL_FILE    = $(THISAPP).tgz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+ifeq "$(SMP)" "1"
+       TARGET     = $(DIR_INFO)/$(THISAPP)-smp
+else
+       TARGET     = $(DIR_INFO)/$(THISAPP)
+endif
+
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = e041c02477d8e19d79ae07d168ab3f73
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+dist: 
+       $(PAK)
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/dm9601-make+ids.patch
+ifeq "$(SMP)" "1"
+       cd $(DIR_APP) && make clean
+       cd $(DIR_APP) && make -C /lib/modules/$(KVER)-ipfire-smp/build/ SUBDIRS=$(DIR_APP) modules
+       cd $(DIR_APP) && install -m 644 dm9601.ko /lib/modules/$(KVER)-ipfire-smp/kernel/drivers/usb/net 
+else
+       cd $(DIR_APP) && make clean
+       cd $(DIR_APP) && make -C /lib/modules/$(KVER)-ipfire/build/ SUBDIRS=$(DIR_APP) modules
+       cd $(DIR_APP) && install -m 644 dm9601.ko /lib/modules/$(KVER)-ipfire/kernel/drivers/usb/net 
+endif
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/make.sh b/make.sh
index 052c7f8071ba6e692128191e99abad42aa7ff0ef..821e36e85e97a0d649fbab8926e498e6aaaf54e3 100755 (executable)
--- a/make.sh
+++ b/make.sh
@@ -328,6 +328,7 @@ buildipfire() {
   ipfiremake r8168                     SMP=1
   ipfiremake mcs7830                   SMP=1
   ipfiremake atl1                      SMP=1
+  ipfiremake dm9601                    SMP=1
   ipfiremake kqemu                     SMP=1
   ipfiremake sane              KMOD=1  SMP=1
   ipfiremake linux
@@ -337,6 +338,7 @@ buildipfire() {
   ipfiremake r8168
   ipfiremake mcs7830
   ipfiremake atl1
+  ipfiremake dm9601
   ipfiremake kqemu
   ipfiremake sane              KMOD=1
   ipfiremake pkg-config
diff --git a/src/patches/dm9601-make+ids.patch b/src/patches/dm9601-make+ids.patch
new file mode 100644 (file)
index 0000000..9d27d6d
--- /dev/null
@@ -0,0 +1,77 @@
+diff -Naur dm9601-2.6.org/dm9601.h dm9601-2.6/dm9601.h
+--- dm9601-2.6.org/dm9601.h    2006-11-24 10:06:02.000000000 +0100
++++ dm9601-2.6/dm9601.h        2008-04-04 09:54:06.000000000 +0200
+@@ -162,6 +162,8 @@
+               DEFAULT_GPIO_RESET )\r
+ DM9601_DEV( "Davicom USB-100", 0x3334, 0x1701,\r
+               DEFAULT_GPIO_RESET )\r
++DM9601_DEV( "ShanTou ST268 USB", 0x0a46, 0x0268,\r
++              DEFAULT_GPIO_RESET )\r
+ DM9601_DEV( "Billionton USB-100", VENDOR_BILLIONTON, 0x0986,\r
+               DEFAULT_GPIO_RESET )\r
+ DM9601_DEV( "Billionton USBLP-100", VENDOR_BILLIONTON, 0x0987,\r
+diff -Naur dm9601-2.6.org/Makefile dm9601-2.6/Makefile
+--- dm9601-2.6.org/Makefile    2006-11-24 10:06:04.000000000 +0100
++++ dm9601-2.6/Makefile        2008-04-03 22:34:04.000000000 +0200
+@@ -1,51 +1,17 @@
+-##================================================================
+-##     Davicom Semiconductor Inc.     For DM9601 V0.00
+-##   --------------------------------------------------------
+-## Description:
+-##              Compile driver dm9601.c to dm9601.o
+-##
+-## Modification List:
+-## 09/05/2000 Fixed SMPFALGS wrong on smp & smp_mod
+-## 08/02/2000 Changed some description string & include file path
+-## 07/25/2000 Append smp_mod and changed some descriptions
+-## 01/25/2000 by Sten Wang
+-##================================================================
+-# Comment/uncomment the following line to disable/enable debugging
+-#DEBUG = y
++obj-m    := dm9601.o
+-# Add your debugging flag (or not) to CFLAGS
+-ifeq ($(DEBUG),y)
+-  DEBFLAGS = -O -g # "-O" is needed to expand inlines
+-else
+-  DEBFLAGS = -O2
+-endif
+-
+-CFLAGS += $(DEBFLAGS) -I$(LDDINCDIR)
+-
+-ifneq ($(KERNELRELEASE),)
+-# call from kernel build system
+-
+-obj-m := dm9601.o
+-
+-else
+-
+-KERNELDIR ?= /lib/modules/$(shell uname -r)/build
+-PWD       := $(shell pwd)
++KDIR    := /lib/modules/$(shell uname -r)/build
++PWD    := $(shell pwd)
+ default:
+-      $(MAKE) -C $(KERNELDIR) M=$(PWD) LDDINCDIR=$(PWD)/../include modules
+-
+-endif
+-
+-
++      $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules;
++install:
++      insmod dm9601.ko
++remove:
++      rmmod dm9601                                                                                                                             
+ clean:
+-      rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions
+-
+-depend .depend dep:
+-      $(CC) $(CFLAGS) -M *.c > .depend
++      rm -rf .tmp_versions Modules.symvers *.mod.c *.o *.ko .*.cmd
++      
+-ifeq (.depend,$(wildcard .depend))
+-include .depend
+-endif