summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAloisio Almeida Jr <aloisio.almeida@openbosssa.org>2008-10-23 18:03:06 -0300
committerRodrigo Vivi <rodrigo.vivi@openbossa.org>2008-10-23 18:03:14 -0300
commitbe4896c302aff240686aa37c8717cfa1b2b348a4 (patch)
tree933bcfffda8d16babf3ba312d3851df37aacb370
parent0dd26a606bc966979bc6b2cebc163f9ce1838a11 (diff)
cx3110x: Rearranging completely the cx3110x driver build
1. Different package names to each kernel. Now we can provide packages to more than one kernel at the same repository. 2. Creating inc file. 3. Including init.d script to configure the right module. 4. Adapting task-mamona to these changes Signed-off-by: Rodrigo Vivi <rodrigo.vivi@openbossa.org>
-rw-r--r--conf/distro/mamona.conf1
-rw-r--r--packages/mamona/cx3110x-770he-0.8.1/770_performance_improvements.patch (renamed from packages/mamona/cx3110x-0.8.1/770_performance_improvements.patch)0
-rw-r--r--packages/mamona/cx3110x-770he-0.8.1/create_sysfs_link_for_wlan0.patch (renamed from packages/mamona/cx3110x-0.8.1/create_sysfs_link_for_wlan0.patch)0
-rwxr-xr-xpackages/mamona/cx3110x-770he-0.8.1/cx3110x36
-rw-r--r--packages/mamona/cx3110x-770he-0.8.1/cx3110x.patch (renamed from packages/mamona/cx3110x-0.8.1/cx3110x.patch)0
-rw-r--r--packages/mamona/cx3110x-770he-0.8.1/defconfig (renamed from packages/mamona/cx3110x-0.8.1/defconfig)0
-rw-r--r--packages/mamona/cx3110x-770he-0.8.1/fix_cross_makefile.patch (renamed from packages/mamona/cx3110x-0.8.1/fix_cross_makefile.patch)0
-rw-r--r--packages/mamona/cx3110x-770he-0.8.1/fix_mem_allign.patch (renamed from packages/mamona/cx3110x-0.8.1/fix_mem_allign.patch)0
-rw-r--r--packages/mamona/cx3110x-770he-0.8.1/fix_mem_corruption.patch (renamed from packages/mamona/cx3110x-0.8.1/fix_mem_corruption.patch)0
-rw-r--r--packages/mamona/cx3110x-770he-0.8.1/fix_ssid_data_length.patch (renamed from packages/mamona/cx3110x-0.8.1/fix_ssid_data_length.patch)0
-rw-r--r--packages/mamona/cx3110x-770he-0.8.1/series (renamed from packages/mamona/cx3110x-0.8.1/series)0
-rw-r--r--packages/mamona/cx3110x-770he_0.8.1.bb29
-rw-r--r--packages/mamona/cx3110x-chinooke-2.0.15/create_sysfs_link_for_wlan0.patch (renamed from packages/mamona/cx3110x-2.0.15/create_sysfs_link_for_wlan0.patch)0
-rwxr-xr-xpackages/mamona/cx3110x-chinooke-2.0.15/cx3110x36
-rw-r--r--packages/mamona/cx3110x-chinooke-2.0.15/cx3110x.patch (renamed from packages/mamona/cx3110x-2.0.15/cx3110x.patch)0
-rw-r--r--packages/mamona/cx3110x-chinooke-2.0.15/fix_old_include.patch (renamed from packages/mamona/cx3110x-2.0.15/fix_old_include.patch)0
-rw-r--r--packages/mamona/cx3110x-chinooke_2.0.15.bb25
-rw-r--r--packages/mamona/cx3110x.inc29
-rw-r--r--packages/mamona/cx3110x_0.8.1.bb44
-rw-r--r--packages/mamona/cx3110x_2.0.15.bb42
-rw-r--r--packages/tasks/task-mamona.bb4
21 files changed, 157 insertions, 89 deletions
diff --git a/conf/distro/mamona.conf b/conf/distro/mamona.conf
index 3df0cd4343..83e102663c 100644
--- a/conf/distro/mamona.conf
+++ b/conf/distro/mamona.conf
@@ -88,7 +88,6 @@ PREFERRED_VERSION_apt = "0.7.6"
PREFERRED_VERSION_gpsd ?= "2.33"
PREFERRED_VERSION_hal_nokia770 = "0.5.7"
PREFERRED_VERSION_networkmanager ?= "0.6.6"
-PREFERRED_VERSION_cx3110x = "0.8.1"
# Mplayer
PREFERRED_VERSION_mplayer_nokia770 ?= "1.0maemo0"
diff --git a/packages/mamona/cx3110x-0.8.1/770_performance_improvements.patch b/packages/mamona/cx3110x-770he-0.8.1/770_performance_improvements.patch
index be9be86b82..be9be86b82 100644
--- a/packages/mamona/cx3110x-0.8.1/770_performance_improvements.patch
+++ b/packages/mamona/cx3110x-770he-0.8.1/770_performance_improvements.patch
diff --git a/packages/mamona/cx3110x-0.8.1/create_sysfs_link_for_wlan0.patch b/packages/mamona/cx3110x-770he-0.8.1/create_sysfs_link_for_wlan0.patch
index cf4fa1e96a..cf4fa1e96a 100644
--- a/packages/mamona/cx3110x-0.8.1/create_sysfs_link_for_wlan0.patch
+++ b/packages/mamona/cx3110x-770he-0.8.1/create_sysfs_link_for_wlan0.patch
diff --git a/packages/mamona/cx3110x-770he-0.8.1/cx3110x b/packages/mamona/cx3110x-770he-0.8.1/cx3110x
new file mode 100755
index 0000000000..93e59afa55
--- /dev/null
+++ b/packages/mamona/cx3110x-770he-0.8.1/cx3110x
@@ -0,0 +1,36 @@
+#!/bin/sh
+
+MODULE="/lib/modules/`uname -r`/cx3110x.ko"
+
+swap_module () {
+ if [ -e $MODULE ]; then
+ # Removing builtin driver
+ rmmod cx3110x
+ # Inserting the new one
+ insmod $MODULE
+ # Getting up the interface to make the firmware being loaded (stupid, i know)
+ ifconfig wlan0 up
+ else
+ echo "OOPS: $MODULE not found, the switch is not possible" 1>&2
+ fi
+}
+
+case "$1" in
+ start)
+ swap_module
+ ;;
+ stop)
+ ifconfig $IFACE down
+ rmmod cx3110x
+ ;;
+ force-reload | restart)
+ swap_module
+ ;;
+ *)
+ echo "Usage: /etc/init.d/cx3110x {start|stop|restart|force-reload}"
+ exit 1
+ ;;
+esac
+
+exit 0
+
diff --git a/packages/mamona/cx3110x-0.8.1/cx3110x.patch b/packages/mamona/cx3110x-770he-0.8.1/cx3110x.patch
index 06340581d1..06340581d1 100644
--- a/packages/mamona/cx3110x-0.8.1/cx3110x.patch
+++ b/packages/mamona/cx3110x-770he-0.8.1/cx3110x.patch
diff --git a/packages/mamona/cx3110x-0.8.1/defconfig b/packages/mamona/cx3110x-770he-0.8.1/defconfig
index 7119b50f34..7119b50f34 100644
--- a/packages/mamona/cx3110x-0.8.1/defconfig
+++ b/packages/mamona/cx3110x-770he-0.8.1/defconfig
diff --git a/packages/mamona/cx3110x-0.8.1/fix_cross_makefile.patch b/packages/mamona/cx3110x-770he-0.8.1/fix_cross_makefile.patch
index 1f75f094b8..1f75f094b8 100644
--- a/packages/mamona/cx3110x-0.8.1/fix_cross_makefile.patch
+++ b/packages/mamona/cx3110x-770he-0.8.1/fix_cross_makefile.patch
diff --git a/packages/mamona/cx3110x-0.8.1/fix_mem_allign.patch b/packages/mamona/cx3110x-770he-0.8.1/fix_mem_allign.patch
index 6c452196aa..6c452196aa 100644
--- a/packages/mamona/cx3110x-0.8.1/fix_mem_allign.patch
+++ b/packages/mamona/cx3110x-770he-0.8.1/fix_mem_allign.patch
diff --git a/packages/mamona/cx3110x-0.8.1/fix_mem_corruption.patch b/packages/mamona/cx3110x-770he-0.8.1/fix_mem_corruption.patch
index ae3e87f427..ae3e87f427 100644
--- a/packages/mamona/cx3110x-0.8.1/fix_mem_corruption.patch
+++ b/packages/mamona/cx3110x-770he-0.8.1/fix_mem_corruption.patch
diff --git a/packages/mamona/cx3110x-0.8.1/fix_ssid_data_length.patch b/packages/mamona/cx3110x-770he-0.8.1/fix_ssid_data_length.patch
index a9e36ce6dd..a9e36ce6dd 100644
--- a/packages/mamona/cx3110x-0.8.1/fix_ssid_data_length.patch
+++ b/packages/mamona/cx3110x-770he-0.8.1/fix_ssid_data_length.patch
diff --git a/packages/mamona/cx3110x-0.8.1/series b/packages/mamona/cx3110x-770he-0.8.1/series
index fa690cb729..fa690cb729 100644
--- a/packages/mamona/cx3110x-0.8.1/series
+++ b/packages/mamona/cx3110x-770he-0.8.1/series
diff --git a/packages/mamona/cx3110x-770he_0.8.1.bb b/packages/mamona/cx3110x-770he_0.8.1.bb
new file mode 100644
index 0000000000..2cee32b9cc
--- /dev/null
+++ b/packages/mamona/cx3110x-770he_0.8.1.bb
@@ -0,0 +1,29 @@
+PR = "r0"
+
+KERVER = "2.6.16"
+
+COMPATIBLE_MACHINE = "(nokia770)"
+
+S = "${WORKDIR}/cx3110x-0.8.1"
+SKERNEL = "${WORKDIR}/kernel-source-${KERVER}"
+
+# The following require must be after S{S}, ${SKERNEL}, ${KERVER}
+require cx3110x.inc
+
+SRC_URI += "https://garage.maemo.org/frs/download.php/2443/cx3110x-0.8.1.tar.gz \
+ http://www.codesourcery.com/public/gnu_toolchain/arm-none-eabi/arm-2005q3-2-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 \
+ http://dev.openbossa.org/mamona/sources/kernel-source-${KERVER}.tar.gz \
+ file://defconfig \
+ file://fix_mem_corruption.patch;patch=1 \
+ file://fix_mem_allign.patch;patch=1 \
+ file://cx3110x.patch;patch=1 \
+ file://fix_cross_makefile.patch;patch=1 \
+ file://fix_ssid_data_length.patch;patch=1 \
+ file://770_performance_improvements.patch;patch=1 \
+ file://create_sysfs_link_for_wlan0.patch;patch=1 \
+"
+
+do_compile() {
+ cp ${WORKDIR}/defconfig ${SKERNEL}/.config
+ KERNEL_SRC_DIR=${SKERNEL} PATH=${WORKDIR}/bin/:$PATH CROSS_COMPILE=arm-none-eabi- make modules
+}
diff --git a/packages/mamona/cx3110x-2.0.15/create_sysfs_link_for_wlan0.patch b/packages/mamona/cx3110x-chinooke-2.0.15/create_sysfs_link_for_wlan0.patch
index cf4fa1e96a..cf4fa1e96a 100644
--- a/packages/mamona/cx3110x-2.0.15/create_sysfs_link_for_wlan0.patch
+++ b/packages/mamona/cx3110x-chinooke-2.0.15/create_sysfs_link_for_wlan0.patch
diff --git a/packages/mamona/cx3110x-chinooke-2.0.15/cx3110x b/packages/mamona/cx3110x-chinooke-2.0.15/cx3110x
new file mode 100755
index 0000000000..93e59afa55
--- /dev/null
+++ b/packages/mamona/cx3110x-chinooke-2.0.15/cx3110x
@@ -0,0 +1,36 @@
+#!/bin/sh
+
+MODULE="/lib/modules/`uname -r`/cx3110x.ko"
+
+swap_module () {
+ if [ -e $MODULE ]; then
+ # Removing builtin driver
+ rmmod cx3110x
+ # Inserting the new one
+ insmod $MODULE
+ # Getting up the interface to make the firmware being loaded (stupid, i know)
+ ifconfig wlan0 up
+ else
+ echo "OOPS: $MODULE not found, the switch is not possible" 1>&2
+ fi
+}
+
+case "$1" in
+ start)
+ swap_module
+ ;;
+ stop)
+ ifconfig $IFACE down
+ rmmod cx3110x
+ ;;
+ force-reload | restart)
+ swap_module
+ ;;
+ *)
+ echo "Usage: /etc/init.d/cx3110x {start|stop|restart|force-reload}"
+ exit 1
+ ;;
+esac
+
+exit 0
+
diff --git a/packages/mamona/cx3110x-2.0.15/cx3110x.patch b/packages/mamona/cx3110x-chinooke-2.0.15/cx3110x.patch
index b280815efc..b280815efc 100644
--- a/packages/mamona/cx3110x-2.0.15/cx3110x.patch
+++ b/packages/mamona/cx3110x-chinooke-2.0.15/cx3110x.patch
diff --git a/packages/mamona/cx3110x-2.0.15/fix_old_include.patch b/packages/mamona/cx3110x-chinooke-2.0.15/fix_old_include.patch
index 61549fdaff..61549fdaff 100644
--- a/packages/mamona/cx3110x-2.0.15/fix_old_include.patch
+++ b/packages/mamona/cx3110x-chinooke-2.0.15/fix_old_include.patch
diff --git a/packages/mamona/cx3110x-chinooke_2.0.15.bb b/packages/mamona/cx3110x-chinooke_2.0.15.bb
new file mode 100644
index 0000000000..17bb1f4412
--- /dev/null
+++ b/packages/mamona/cx3110x-chinooke_2.0.15.bb
@@ -0,0 +1,25 @@
+PR = "r0"
+
+KERVER = "2.6.21"
+
+COMPATIBLE_MACHINE = "(nokia800|nokia810)"
+
+S = "${WORKDIR}/cx3110x-module-src-2.0.15"
+SKERNEL = "${WORKDIR}/kernel-source-diablo-${KERVER}/kernel-source"
+
+# The following require must be after S{S}, ${SKERNEL}, ${KERVER}
+require cx3110x.inc
+
+SRC_URI += "\
+ http://repository.maemo.org/pool/maemo4.1/free/c/cx3110x-module-src/cx3110x-module-src_2.0.15-1.tar.gz \
+ http://www.codesourcery.com/public/gnu_toolchain/arm-none-eabi/arm-2005q3-2-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 \
+ http://repository.maemo.org/pool/maemo4.1/free/k/kernel-source-diablo/kernel-source-diablo_2.6.21-200823maemo6.tar.gz \
+ file://cx3110x.patch;patch=1 \
+ file://create_sysfs_link_for_wlan0.patch;patch=1 \
+ file://fix_old_include.patch;patch=1 \
+"
+
+do_compile() {
+ PATH=${WORKDIR}/bin/:$PATH make -C ${SKERNEL} CROSS_COMPILE=arm-none-eabi- nokia_2420_defconfig prepare scripts
+ KERNEL_SRC_DIR=${SKERNEL} PATH=${WORKDIR}/bin/:$PATH CROSS_COMPILE=arm-none-eabi- make modules
+}
diff --git a/packages/mamona/cx3110x.inc b/packages/mamona/cx3110x.inc
new file mode 100644
index 0000000000..0dea679d29
--- /dev/null
+++ b/packages/mamona/cx3110x.inc
@@ -0,0 +1,29 @@
+DESCRIPTION = "cx3110x wifi support to Nokia IT"
+SECTION = "kernel/modules"
+LICENSE = "GPL"
+
+INITSCRIPT_NAME = "cx3110x"
+INITSCRIPT_PARAMS = "defaults 10"
+SRC_URI += "file://cx3110x"
+inherit update-rc.d
+
+PACKAGES = "${PN}"
+
+FILES_${PN} += "/lib/modules"
+
+LDFLAGS=""
+BUILD_LDFLAGS=""
+CFLAGS=""
+BUILD_CFLAGS=""
+TARGET_LDFLAGS=""
+
+do_configure() {
+}
+
+do_install() {
+ UNAME_R=`grep "Linux kernel version:" ${SKERNEL}/.config | sed 's/.*: //'`
+ install -d ${D}/lib/modules/${UNAME_R}
+ install -m 0644 ${S}/src/cx3110x.ko ${D}/lib/modules/${UNAME_R}
+ install -d ${D}/${sysconfdir}/init.d
+ install -m 755 ${WORKDIR}/${INITSCRIPT_NAME} ${D}/${sysconfdir}/init.d
+}
diff --git a/packages/mamona/cx3110x_0.8.1.bb b/packages/mamona/cx3110x_0.8.1.bb
deleted file mode 100644
index 2dbdc985f1..0000000000
--- a/packages/mamona/cx3110x_0.8.1.bb
+++ /dev/null
@@ -1,44 +0,0 @@
-DESCRIPTION = "cx3110x wifi support as found in the Nokia 770"
-SECTION = "kernel/modules"
-LICENSE = "GPL"
-PR = "r0"
-
-PACKAGES = "${PN}"
-
-FILES_${PN} += "/lib/modules/cx3110x.ko"
-
-COMPATIBLE_MACHINE = "(nokia770)"
-
-SRC_URI = "https://garage.maemo.org/frs/download.php/2443/cx3110x-0.8.1.tar.gz \
- http://www.codesourcery.com/public/gnu_toolchain/arm-none-eabi/arm-2005q3-2-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 \
- http://dev.openbossa.org/mamona/sources/kernel-source-2.6.16.tar.gz \
- file://defconfig \
- file://fix_mem_corruption.patch;patch=1 \
- file://fix_mem_allign.patch;patch=1 \
- file://cx3110x.patch;patch=1 \
- file://fix_cross_makefile.patch;patch=1 \
- file://fix_ssid_data_length.patch;patch=1 \
- file://770_performance_improvements.patch;patch=1 \
- file://create_sysfs_link_for_wlan0.patch;patch=1 \
-"
-# add service file
-
-LDFLAGS=""
-BUILD_LDFLAGS=""
-CFLAGS=""
-BUILD_CFLAGS=""
-TARGET_LDFLAGS=""
-
-do_configure() {
-}
-
-do_compile() {
- export KERNEL_SRC_DIR=${WORKDIR}/kernel-source-2.6.16
- cp ${WORKDIR}/defconfig ${KERNEL_SRC_DIR}/.config
- KERNEL_SRC_DIR=${WORKDIR}/kernel-source-2.6.16 PATH=${WORKDIR}/bin/:$PATH CROSS_COMPILE=arm-none-eabi- make modules
-}
-
-do_install() {
- install -d ${D}/lib/modules/
- install -m 0644 ${S}/src/cx3110x.ko ${D}/lib/modules/
-}
diff --git a/packages/mamona/cx3110x_2.0.15.bb b/packages/mamona/cx3110x_2.0.15.bb
deleted file mode 100644
index fcc4ce2cbc..0000000000
--- a/packages/mamona/cx3110x_2.0.15.bb
+++ /dev/null
@@ -1,42 +0,0 @@
-DESCRIPTION = "cx3110x wifi support as found in the Nokia 800/810"
-SECTION = "kernel/modules"
-LICENSE = "GPL"
-PR = "r0"
-
-PACKAGES = "${PN}"
-
-FILES_${PN} += "/lib/modules/cx3110x.ko"
-
-COMPATIBLE_MACHINE = "(nokia800|nokia810)"
-
-S = "${WORKDIR}/cx3110x-module-src-${PV}"
-
-SRC_URI = " \
- http://repository.maemo.org/pool/maemo4.1/free/c/cx3110x-module-src/cx3110x-module-src_2.0.15-1.tar.gz \
- http://www.codesourcery.com/public/gnu_toolchain/arm-none-eabi/arm-2005q3-2-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 \
- http://repository.maemo.org/pool/maemo4.1/free/k/kernel-source-diablo/kernel-source-diablo_2.6.21-200823maemo6.tar.gz \
- file://cx3110x.patch;patch=1 \
- file://create_sysfs_link_for_wlan0.patch;patch=1 \
- file://fix_old_include.patch;patch=1 \
-"
-# add service file
-
-LDFLAGS=""
-BUILD_LDFLAGS=""
-CFLAGS=""
-BUILD_CFLAGS=""
-TARGET_LDFLAGS=""
-
-do_configure() {
-}
-
-do_compile() {
- export KERNEL_SRC_DIR=${WORKDIR}/kernel-source-diablo-2.6.21/kernel-source/
- PATH=${WORKDIR}/bin/:$PATH make -C ${KERNEL_SRC_DIR} CROSS_COMPILE=arm-none-eabi- nokia_2420_defconfig prepare scripts
- KERNEL_SRC_DIR=${WORKDIR}/kernel-source-diablo-2.6.21/kernel-source/ PATH=${WORKDIR}/bin/:$PATH CROSS_COMPILE=arm-none-eabi- make modules
-}
-
-do_install() {
- install -d ${D}/lib/modules/
- install -m 0644 ${S}/src/cx3110x.ko ${D}/lib/modules/
-}
diff --git a/packages/tasks/task-mamona.bb b/packages/tasks/task-mamona.bb
index c12ce9e4cb..fd4e12a9da 100644
--- a/packages/tasks/task-mamona.bb
+++ b/packages/tasks/task-mamona.bb
@@ -54,14 +54,14 @@ RDEPENDS = "\
"
RDEPENDS_append_nokia770 = " \
- cx3110x \
+ cx3110x-770he \
libasound-module-ctl-dsp-ctl \
libasound-module-pcm-alsa-dsp \
mamona-sound-n770 \
"
RDEPENDS_append_nokia800 = " \
- cx3110x \
+ cx3110x-chinooke \
libasound-module-ctl-dsp-ctl \
libasound-module-pcm-alsa-dsp \
mamona-sound-n800 \