Your message dated Fri, 1 Feb 2013 17:15:48 +0100 with message-id <20130201161548.GA8837@radis.cristau.org> and subject line Re: Bug#699295: pre-approval for unblock: dahdi-linux/1:2.6.1+dfsg-2 has caused the Debian Bug report #699295, regarding pre-approval for unblock: dahdi-linux/1:2.6.1+dfsg-2 to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact owner@bugs.debian.org immediately.) -- 699295: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=699295 Debian Bug Tracking System Contact owner@bugs.debian.org with problems
--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: pre-approval for unblock: dahdi-linux/1:2.6.1+dfsg-2
- From: Tzafrir Cohen <tzafrir@cohens.org.il>
- Date: Wed, 30 Jan 2013 00:07:29 +0100
- Message-id: <20130129230729.GA15267@lemon.cohens.org.il>
Package: release.debian.org Severity: normal User: release.debian.org@packages.debian.org Usertags: unblock Please consider pre-approving dahdi-linux/1:2.6.1+dfsg-2 (not yet uploaded, would go via unstable) As explained in #693666, two of the older drivers in DAHDI include hardwired firmware. Ben Hutchings recently converted them as well to use loadable firmwares. The second part of the fix is (#699104) is to include those firmware files in the existing package dahdi-firmware-nonfree. Should I file a separate unblock request for dahdi-firmware 2.6.1-2? As there is a new upload, I figured I'll include some of the fixes accumulated in the recent monthes: * Patch fix_define_dev: fix building with kernel 3.8. (Build: building a modules package for dahdi-linux) * Patch fix_xpp_usermode: fixes odd xpp behaviour with later kernels. (not panic, but this is a low-risk fix for an odd-looking bug) * Patch fix_xpp_post_unregister: fixes a panic with manual 'dahdi_registration off'. All of them are low-risk and included in the recently-tagged 2.6.2-rc1. Packages could be found for now at: http://anonscm.debian.org/viewvc/pkg-voip/dahdi-linux/trunk/ http://anonscm.debian.org/viewvc/pkg-voip/dahdi-firmware/trunk/ debdiff (for dahdi-linux) The deleted files are noted in the debdiff as just '[deleted]'. diff -Nru dahdi-linux-2.6.1+dfsg/debian/changelog dahdi-linux-2.6.1+dfsg2/debian/changelog --- dahdi-linux-2.6.1+dfsg/debian/changelog 2012-04-23 13:26:35.000000000 +0300 +++ dahdi-linux-2.6.1+dfsg2/debian/changelog 2013-01-29 23:39:57.000000000 +0200 @@ -1,3 +1,14 @@ +dahdi-linux (1:2.6.1+dfsg2-1) UNRELEASED; urgency=low + + * Patch fix_define_dev: fix building with kernel 3.8. + * Remove non-free FPGA bitfiles and patch drivers to load them + (Closes: #693666) (Ben Hutchings). + * Patch fix_xpp_usermode: fixes odd xpp behaviour with later kernels. + * Patch fix_xpp_post_unregister: fixes a crash with manual + 'dahdi_registration off' + + -- Tzafrir Cohen <tzafrir@debian.org> Mon, 28 Jan 2013 14:23:01 +0200 + dahdi-linux (1:2.6.1+dfsg-1) unstable; urgency=low * New upstream release candidate: diff -Nru dahdi-linux-2.6.1+dfsg/debian/patches/fix_define_dev dahdi-linux-2.6.1+dfsg2/debian/patches/fix_define_dev --- dahdi-linux-2.6.1+dfsg/debian/patches/fix_define_dev 1970-01-01 02:00:00.000000000 +0200 +++ dahdi-linux-2.6.1+dfsg2/debian/patches/fix_define_dev 2013-01-28 16:08:17.000000000 +0200 @@ -0,0 +1,35 @@ +From: Tzafrir Cohen <tzafrir.cohen@xorcom.com> +Date: Mon, 28 Jan 2013 15:22:13 +0200 +Subject: [PATCH] Redefine the removed __dev* for now + +The __dev* directives and functions were removed in 3.8, as they +are no-ops. We still have use of them for older versions, thus +we should define them (as noops) if they don't exist. + +Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com> +--- + include/dahdi/kernel.h | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/include/dahdi/kernel.h b/include/dahdi/kernel.h +index 13bbb20..4a98af5 100644 +--- a/include/dahdi/kernel.h ++++ b/include/dahdi/kernel.h +@@ -120,6 +120,14 @@ + # endif + #endif + ++/* __dev* were removed in 3.8. They still have effect in 2.6.18. */ ++#ifndef __devinit ++# define __devinit ++# define __devinitdata ++# define __devexit ++# define __devexit_p(x) x ++#endif ++ + /*! Default chunk size for conferences and such -- static right now, might make + variable sometime. 8 samples = 1 ms = most frequent service interval possible + for a USB device */ +-- +1.7.10.4 + diff -Nru dahdi-linux-2.6.1+dfsg/debian/patches/fix_xpp_post_unregister dahdi-linux-2.6.1+dfsg2/debian/patches/fix_xpp_post_unregister --- dahdi-linux-2.6.1+dfsg/debian/patches/fix_xpp_post_unregister 1970-01-01 02:00:00.000000000 +0200 +++ dahdi-linux-2.6.1+dfsg2/debian/patches/fix_xpp_post_unregister 2013-01-29 23:38:53.000000000 +0200 @@ -0,0 +1,41 @@ +From: Tzafrir Cohen <tzafrir.cohen@xorcom.com> +Date: Thu, 15 Nov 2012 15:15:48 +0000 +Subject: xpp: pre/post_unregister: not for the EC +Origin: http://git.asterisk.org/gitweb/?p=dahdi/linux.git;a=commit;h=c0eebd73bb29f1187b38cc3a41f1a86579e481ac + +Don't run the pre- and post-unregister hooks on a non-phone XPD +(practically: the echo canceller). This fixes a panic with manual +'dahdi_registertion off' as it is now called for the whole device +(regression of 2.6.x). + +Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com> + +--- + drivers/dahdi/xpp/xpp_dahdi.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/drivers/dahdi/xpp/xpp_dahdi.c b/drivers/dahdi/xpp/xpp_dahdi.c +index b9fa49a..b2f7008 100644 +--- a/drivers/dahdi/xpp/xpp_dahdi.c ++++ b/drivers/dahdi/xpp/xpp_dahdi.c +@@ -1083,7 +1083,7 @@ int xpd_dahdi_postregister(xpd_t *xpd) + */ + void xpd_dahdi_preunregister(xpd_t *xpd) + { +- if (!xpd) ++ if (!xpd || !IS_PHONEDEV(xpd)) + return; + XPD_DBG(DEVICES, xpd, "\n"); + update_xpd_status(xpd, DAHDI_ALARM_NOTOPEN); +@@ -1103,7 +1103,7 @@ void xpd_dahdi_preunregister(xpd_t *xpd) + + void xpd_dahdi_postunregister(xpd_t *xpd) + { +- if (!xpd) ++ if (!xpd || !IS_PHONEDEV(xpd)) + return; + atomic_dec(&PHONEDEV(xpd).dahdi_registered); + atomic_dec(&num_registered_spans); +-- +1.7.10.4 + diff -Nru dahdi-linux-2.6.1+dfsg/debian/patches/fix_xpp_usermode dahdi-linux-2.6.1+dfsg2/debian/patches/fix_xpp_usermode --- dahdi-linux-2.6.1+dfsg/debian/patches/fix_xpp_usermode 1970-01-01 02:00:00.000000000 +0200 +++ dahdi-linux-2.6.1+dfsg2/debian/patches/fix_xpp_usermode 2013-01-29 23:31:13.000000000 +0200 @@ -0,0 +1,60 @@ +From c0eebd73bb29f1187b38cc3a41f1a86579e481ac Mon Sep 17 00:00:00 2001 +From: Oron Peled <oron.peled@xorcom.com> +Date: Thu, 21 Jun 2012 17:53:33 +0000 +Subject: xpp: usermode_helper() bugfix for kernels >= 3.3.0 +Origin: http://git.asterisk.org/gitweb/?p=dahdi/linux.git;a=commit;h=c0eebd73bb29f1187b38cc3a41f1a86579e481ac + +Respective kernels fail to run the initialization script but report it +was run, and thus the device behaves in an odd way. + +* UMH_WAIT_PROC semantics (and value) was changed from enum to + a bitmask (via #define) +* This constant was missing from kernels older than 2.6.23 + +Signed-off-by: Oron Peled <oron.peled@xorcom.com> +Acked-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com> + +--- + drivers/dahdi/xpp/card_global.c | 12 +++++++++++- + 1 file changed, 11 insertions(+), 1 deletion(-) + +diff --git a/drivers/dahdi/xpp/card_global.c b/drivers/dahdi/xpp/card_global.c +index 29c43f0..dca5aee 100644 +--- a/drivers/dahdi/xpp/card_global.c ++++ b/drivers/dahdi/xpp/card_global.c +@@ -22,6 +22,7 @@ + + #include <linux/module.h> + #include <linux/delay.h> ++#include <linux/kmod.h> + #include "xdefs.h" + #include "xpd.h" + #include "xpp_dahdi.h" +@@ -655,6 +656,15 @@ static void global_packet_dump(const char *msg, xpacket_t *pack) + + #define MAX_PATH_STR 128 + ++#ifndef UMH_WAIT_PROC ++/* ++ * - UMH_WAIT_PROC was introduced as enum in 2.6.23 ++ * with a value of 1 ++ * - It was changed to a macro (and it's value was modified) in 3.3.0 ++ */ ++#define UMH_WAIT_PROC 1 ++#endif ++ + int run_initialize_registers(xpd_t *xpd) + { + int ret; +@@ -737,7 +747,7 @@ int run_initialize_registers(xpd_t *xpd) + } + XPD_DBG(DEVICES, xpd, "running '%s' for type=%d revision=%d\n", + init_card, xpd->type, xbus->revision); +- ret = call_usermodehelper(init_card, argv, envp, 1); ++ ret = call_usermodehelper(init_card, argv, envp, UMH_WAIT_PROC); + /* + * Carefully report results + */ +-- +1.7.10.4 + diff -Nru dahdi-linux-2.6.1+dfsg/debian/patches/pciradio-request_firmware dahdi-linux-2.6.1+dfsg2/debian/patches/pciradio-request_firmware --- dahdi-linux-2.6.1+dfsg/debian/patches/pciradio-request_firmware 1970-01-01 02:00:00.000000000 +0200 +++ dahdi-linux-2.6.1+dfsg2/debian/patches/pciradio-request_firmware 2013-01-28 16:40:40.000000000 +0200 @@ -0,0 +1,135 @@ +Author: Ben Hutchings <ben@decadent.org.uk> +Description: pciradio: Use request_firmware() to load bitfile +Bug-Debian: http://bugs.debian.org/693666 + +Non-free bits belong in separate (source & binary) packages. +This driver must use request_firmware() to load the FPGA bitfile. + +--- +--- a/drivers/dahdi/pciradio.c ++++ b/drivers/dahdi/pciradio.c +@@ -51,6 +51,7 @@ With driver: 303826 (1.5 %) + #include <linux/interrupt.h> + #include <linux/moduleparam.h> + #include <linux/sched.h> ++#include <linux/firmware.h> + #include <asm/io.h> + #include <asm/delay.h> + +@@ -220,8 +221,6 @@ struct tonedef { + unsigned char b2; + } ; + +-#include "radfw.h" +- + static struct tonedef cttable_tx [] = { + {0,0,0}, + {670,0xE,0xB1}, +@@ -1505,9 +1504,18 @@ static void wait_just_a_bit(int foo) + + static int pciradio_hardware_init(struct pciradio *rad) + { ++const struct firmware *bitfile; + unsigned char byte1,byte2; + int x; + unsigned long endjif; ++int res; ++ ++ res = request_firmware(&bitfile, "dahdi-fw-pciradio.bin", ++ &rad->dev->dev); ++ if (res) ++ return res; ++ ++ res = -EIO; + + /* Signal Reset */ + outb(0x01, rad->ioaddr + RAD_CNTL); +@@ -1539,7 +1547,7 @@ unsigned long endjif; + while (inb(rad->ioaddr + RAD_AUXR) & (XINIT | XDONE) && (jiffies <= endjif)); + if (endjif < jiffies) { + printk(KERN_DEBUG "Timeout waiting for INIT and DONE to go low\n"); +- return -1; ++ goto out; + } + if (debug) printk(KERN_DEBUG "fwload: Init and done gone to low\n"); + /* De-assert PGM */ +@@ -1550,16 +1558,16 @@ unsigned long endjif; + while (!(inb(rad->ioaddr + RAD_AUXR) & XINIT) && (jiffies <= endjif)); + if (endjif < jiffies) { + printk(KERN_DEBUG "Timeout waiting for INIT to go high\n"); +- return -1; ++ goto out; + } + if (debug) printk(KERN_DEBUG "fwload: Init went high (clearing done)\nNow loading...\n"); + /* Assert CS+Write */ + rad->ios &= ~XCS; + outb(rad->ios, rad->ioaddr + RAD_AUXD); +- for (x = 0; x < sizeof(radfw); x++) ++ for (x = 0; x < bitfile->size; x++) + { + /* write the byte */ +- outb(radfw[x],rad->ioaddr + RAD_REGBASE); ++ outb(bitfile->data[x], rad->ioaddr + RAD_REGBASE); + /* if DONE signal, we're done, exit */ + if (inb(rad->ioaddr + RAD_AUXR) & XDONE) break; + /* if INIT drops, we're screwed, exit */ +@@ -1580,12 +1588,12 @@ unsigned long endjif; + if (!(inb(rad->ioaddr + RAD_AUXR) & XINIT)) + { + printk(KERN_NOTICE "Drove Init low!! CRC Error!!!\n"); +- return -1; ++ goto out; + } + if (!(inb(rad->ioaddr + RAD_AUXR) & XDONE)) + { + printk(KERN_INFO "Did not get DONE signal. Short file maybe??\n"); +- return -1; ++ goto out; + } + wait_just_a_bit(2); + /* get the thingy started */ +@@ -1646,7 +1654,10 @@ unsigned long endjif; + /* Wait 1/4 of a sec */ + wait_just_a_bit(HZ/4); + +- return 0; ++ res = 0; ++out: ++ release_firmware(bitfile); ++ return res; + } + + static void pciradio_enable_interrupts(struct pciradio *rad) +@@ -1765,7 +1776,8 @@ static int __devinit pciradio_init_one(s + /* Keep track of which device we are */ + pci_set_drvdata(pdev, rad); + +- if (pciradio_hardware_init(rad)) { ++ res = pciradio_hardware_init(rad); ++ if (res) { + /* Set Reset Low */ + x=inb(rad->ioaddr + RAD_CNTL); + outb((~0x1)&x, rad->ioaddr + RAD_CNTL); +@@ -1780,7 +1792,7 @@ static int __devinit pciradio_init_one(s + pci_set_drvdata(pdev, NULL); + dahdi_free_device(rad->ddev); + kfree(rad); +- return -EIO; ++ return res; + + } + +--- a/drivers/dahdi/Kbuild ++++ b/drivers/dahdi/Kbuild +@@ -141,11 +141,4 @@ ifeq ($(HPEC_PRESENT),yes) + obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECHOCAN_HPEC) += dahdi_echocan_hpec.o + endif + +-$(obj)/pciradio.o: $(obj)/radfw.h +- + hostprogs-y := makefw +- +-$(obj)/radfw.h: $(src)/pciradio.rbt $(obj)/makefw +- $(obj)/makefw $< radfw > $@ +- +-clean-files := radfw.h diff -Nru dahdi-linux-2.6.1+dfsg/debian/patches/series dahdi-linux-2.6.1+dfsg2/debian/patches/series --- dahdi-linux-2.6.1+dfsg/debian/patches/series 2012-04-23 12:32:49.000000000 +0300 +++ dahdi-linux-2.6.1+dfsg2/debian/patches/series 2013-01-29 23:40:15.000000000 +0200 @@ -3,3 +3,8 @@ no_firmware_download chanmute notest +fix_define_dev +tor2-request_firmware +pciradio-request_firmware +fix_xpp_usermode +fix_xpp_post_unregister diff -Nru dahdi-linux-2.6.1+dfsg/debian/patches/tor2-request_firmware dahdi-linux-2.6.1+dfsg2/debian/patches/tor2-request_firmware --- dahdi-linux-2.6.1+dfsg/debian/patches/tor2-request_firmware 1970-01-01 02:00:00.000000000 +0200 +++ dahdi-linux-2.6.1+dfsg2/debian/patches/tor2-request_firmware 2013-01-28 16:40:40.000000000 +0200 @@ -0,0 +1,87 @@ +Author: Ben Hutchings <ben@decadent.org.uk> +Description: tor2: Use request_firmware() to load bitfile +Bug-Debian: http://bugs.debian.org/693666 + +Non-free bits belong in separate (source & binary) packages. +This driver must use request_firmware() to load the FPGA bitfile. + +--- +--- a/drivers/dahdi/tor2.c ++++ b/drivers/dahdi/tor2.c +@@ -31,11 +31,11 @@ + #include <linux/sched.h> + #include <linux/interrupt.h> + #include <linux/moduleparam.h> ++#include <linux/firmware.h> + + #include <dahdi/kernel.h> + #define NEED_PCI_IDS + #include "tor2-hw.h" +-#include "tor2fw.h" + + /* + * Tasklets provide better system interactive response at the cost of the +@@ -379,6 +379,7 @@ static int __devinit tor2_probe(struct p + unsigned long endjif; + __iomem volatile unsigned long *gpdata_io, *lasdata_io; + unsigned long gpdata,lasdata; ++ const struct firmware *bitfile; + + res = pci_enable_device(pdev); + if (res) +@@ -439,6 +440,11 @@ static int __devinit tor2_probe(struct p + tor->xilinx8_len, tor->xilinx8_region); + goto err_out_release_plx_region; + } ++ res = request_firmware(&bitfile, "dahdi-fw-tor2.bin", &pdev->dev); ++ if (res) { ++ ret = res; ++ goto err_out_release_all_regions; ++ } + pci_set_drvdata(pdev, tor); + printk(KERN_INFO "Detected %s at 0x%lx/0x%lx irq %d\n", tor->type, + tor->xilinx32_region, tor->xilinx8_region,tor->irq); +@@ -490,10 +496,10 @@ static int __devinit tor2_probe(struct p + /* assert WRITE signal */ + gpdata &= ~GPIO_WRITE; + writel(gpdata, gpdata_io); +- for (x = 0; x < sizeof(tor2fw); x++) ++ for (x = 0; x < bitfile->size; x++) + { + /* write the byte */ +- writeb(tor2fw[x], tor->mem8); ++ writeb(bitfile->data[x], tor->mem8); + /* if DONE signal, we're done, exit */ + if (readl(gpdata_io) & GPIO_DONE) + break; +@@ -612,9 +618,12 @@ static int __devinit tor2_probe(struct p + break; + } + ++ release_firmware(bitfile); + return 0; + + err_out_release_all: ++ release_firmware(bitfile); ++err_out_release_all_regions: + release_mem_region(tor->xilinx32_region, tor->xilinx32_len); + release_mem_region(tor->xilinx8_region, tor->xilinx8_len); + err_out_release_plx_region: +--- a/drivers/dahdi/Kbuild ++++ b/drivers/dahdi/Kbuild +@@ -142,14 +142,10 @@ obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_ECH + endif + + $(obj)/pciradio.o: $(obj)/radfw.h +-$(obj)/tor2.o: $(obj)/tor2fw.h + + hostprogs-y := makefw + +-$(obj)/tor2fw.h: $(src)/tormenta2.rbt $(obj)/makefw +- $(obj)/makefw $< tor2fw > $@ +- + $(obj)/radfw.h: $(src)/pciradio.rbt $(obj)/makefw + $(obj)/makefw $< radfw > $@ + +-clean-files := radfw.h tor2fw.h ++clean-files := radfw.h diff -Nru dahdi-linux-2.6.1+dfsg/debian/rules dahdi-linux-2.6.1+dfsg2/debian/rules --- dahdi-linux-2.6.1+dfsg/debian/rules 2012-04-23 12:32:49.000000000 +0300 +++ dahdi-linux-2.6.1+dfsg2/debian/rules 2013-01-28 16:40:40.000000000 +0200 @@ -25,7 +25,7 @@ DEBVERSION:=$(shell head -n 1 debian/changelog \ | sed -e 's/^[^(]*(\([^)]*\)).*/\1/') DEB_BASE_VERSION:=$(shell echo $(DEBVERSION) | sed -e 's/^.*://' -e 's/-[0-9~.a-z]*$$//') -UPVERSION:=$(shell echo $(DEB_BASE_VERSION) | sed -e 's/[~+]dfsg\(~\|$$\)/\1/' -e 's/~\(rc\|beta\)/-\1/') +UPVERSION:=$(shell echo $(DEB_BASE_VERSION) | sed -e 's/[~+]dfsg[0-9]*\(~\|$$\)/\1/' -e 's/~\(rc\|beta\)/-\1/') UPFILENAME := $(PACKAGE_SRC)_$(UPVERSION).orig.tar.gz FILENAME := $(PACKAGE_SRC)_$(DEB_BASE_VERSION).orig.tar.gz @@ -117,6 +117,7 @@ @@cd $(TARBALL_DIR) ; \ tar xfz ../$(UPFILENAME) @@rm -rf $(TARBALL_DIR)/$(PACKAGE_SRC)-$(UPVERSION)/drivers/dahdi/xpp/firmwares/*.hex + @@rm -f $(TARBALL_DIR)/$(PACKAGE_SRC)-$(UPVERSION)/drivers/dahdi/*.rbt @@cd $(TARBALL_DIR) ; \ tar cfz ../$(FILENAME) * @@echo Cleaning up... diff -Nru dahdi-linux-2.6.1+dfsg/drivers/dahdi/pciradio.rbt dahdi-linux-2.6.1+dfsg2/drivers/dahdi/pciradio.rbt --- dahdi-linux-2.6.1+dfsg/drivers/dahdi/pciradio.rbt 2008-05-21 18:11:48.000000000 +0300 +++ dahdi-linux-2.6.1+dfsg2/drivers/dahdi/pciradio.rbt 1970-01-01 02:00:00.000000000 +0200 [deleted] diff -Nru dahdi-linux-2.6.1+dfsg/drivers/dahdi/tormenta2.rbt dahdi-linux-2.6.1+dfsg2/drivers/dahdi/tormenta2.rbt --- dahdi-linux-2.6.1+dfsg/drivers/dahdi/tormenta2.rbt 2008-05-21 18:11:48.000000000 +0300 +++ dahdi-linux-2.6.1+dfsg2/drivers/dahdi/tormenta2.rbt 1970-01-01 02:00:00.000000000 +0200 [deleted] debdiff for dahdi-firmware: diff -Nru dahdi-firmware-2.6.1/debian/changelog dahdi-firmware-2.6.1/debian/changelog --- dahdi-firmware-2.6.1/debian/changelog 2012-06-10 12:52:32.000000000 +0300 +++ dahdi-firmware-2.6.1/debian/changelog 2013-01-28 17:42:48.000000000 +0200 @@ -1,6 +1,12 @@ -dahdi-firmware (2.6.1-1) UNRELEASED; urgency=low +dahdi-firmware (2.6.1-2) UNRELEASED; urgency=low * NOT RELEASED YET + * Move old Zapata bitfiles (*.rbt) to this package (Closes: #699104). + + -- Tzafrir Cohen <tzafrir@debian.org> Sun, 10 Jun 2012 13:38:32 +0300 + +dahdi-firmware (2.6.1-1) unstable; urgency=low + * New upstream release. * Standards version 3.9.3 (no change needed). * Include the Octasic firmware for the Xorcom Astribank. diff -Nru dahdi-firmware-2.6.1/debian/install dahdi-firmware-2.6.1/debian/install --- dahdi-firmware-2.6.1/debian/install 2012-05-01 20:06:59.000000000 +0300 +++ dahdi-firmware-2.6.1/debian/install 2013-01-28 17:42:48.000000000 +0200 @@ -2,3 +2,4 @@ drivers/dahdi/firmware/Makefile var/lib/dahdi/digium-firm debian/get-digium-firmware usr/share/dahdi debian/OCT6104E-256D.ima usr/share/dahdi +drivers/dahdi/dahdi-fw-*.bin lib/firmware/ diff -Nru dahdi-firmware-2.6.1/debian/patches/make-binary-bitfiles dahdi-firmware-2.6.1/debian/patches/make-binary-bitfiles --- dahdi-firmware-2.6.1/debian/patches/make-binary-bitfiles 1970-01-01 02:00:00.000000000 +0200 +++ dahdi-firmware-2.6.1/debian/patches/make-binary-bitfiles 2013-01-28 17:30:32.000000000 +0200 @@ -0,0 +1,73 @@ +Author: Ben Hutchings <ben@decadent.org.uk> +Description: Add makefw -b option to enable binary output +Bug-Debian: http://bugs.debian.org/699104 + +We can't compile these bitfiles into the drivers in the free +dahdi-source package. Add the -b option to write a binary +instead of a C array. + +--- +--- a/drivers/dahdi/makefw.c ++++ b/drivers/dahdi/makefw.c +@@ -1,6 +1,7 @@ + /* Xilinx firmware convertor program. + * + * Written by Jim Dixon <jim@lambdatel.com>. ++ * Binary output adde by Ben Hutchings <ben@decadent.org.uk>. + * + * Copyright (C) 2001 Jim Dixon / Zapata Telephony. + * Copyright (C) 2001-2008 Digium, Inc. +@@ -34,10 +35,12 @@ FILE *fp; + int i,j,nbytes; + unsigned char c; + char buf[300]; ++int bin; + + if (argc < 3) + { + puts("Usage... makefw filename.rbt array_name"); ++ puts(" makefw filename.rbt -b"); + exit(1); + } + +@@ -47,8 +50,10 @@ char buf[300]; + perror("bit file open"); + exit(1); + } ++ bin = !strcmp(argv[2], "-b"); + nbytes = 0; +- printf("static unsigned char %s[] = {\n",argv[2]); ++ if (!bin) ++ printf("static unsigned char %s[] = {\n",argv[2]); + i = 0; + while(fgets(buf,sizeof(buf) - 1,fp)) + { +@@ -66,17 +71,22 @@ char buf[300]; + if ((j & 7) == 7) + { + nbytes++; +- if (i) printf(","); +- printf("0x%02x",c); +- if (i++ == SWATH) { +- printf(",\n"); +- i = 0; ++ if (bin) { ++ putchar(c); ++ } else { ++ if (i) printf(","); ++ printf("0x%02x",c); ++ if (i++ == SWATH) { ++ printf(",\n"); ++ i = 0; ++ } + } + c = 0; + } + } + } +- printf("\n};\n\n"); ++ if (!bin) ++ printf("\n};\n\n"); + fprintf(stderr,"Loaded %d bytes from file\n",nbytes); + fclose(fp); + exit(0); diff -Nru dahdi-firmware-2.6.1/debian/patches/series dahdi-firmware-2.6.1/debian/patches/series --- dahdi-firmware-2.6.1/debian/patches/series 1970-01-01 02:00:00.000000000 +0200 +++ dahdi-firmware-2.6.1/debian/patches/series 2013-01-30 00:02:39.000000000 +0200 @@ -0,0 +1 @@ +make-binary-bitfiles diff -Nru dahdi-firmware-2.6.1/debian/rules dahdi-firmware-2.6.1/debian/rules --- dahdi-firmware-2.6.1/debian/rules 2010-04-15 13:02:53.000000000 +0300 +++ dahdi-firmware-2.6.1/debian/rules 2013-01-28 17:53:59.000000000 +0200 @@ -12,8 +12,19 @@ # included in the tarball. The same tarball is properly built in # dahdi-linux -install/dahdi-firmware:: - chmod +x $(CURDIR)/debian/dahdi-firmware/usr/share/dahdi/get-digium-firmware +drivers/dahdi/makefw: drivers/dahdi/makefw.c + $(CC) $(CFLAGS) -Wall -Wextra -o $@ $< + +drivers/dahdi/dahdi-fw-tor2.bin: drivers/dahdi/tormenta2.rbt drivers/dahdi/makefw + drivers/dahdi/makefw $< -b > $@ + +drivers/dahdi/dahdi-fw-pciradio.bin: drivers/dahdi/pciradio.rbt drivers/dahdi/makefw + drivers/dahdi/makefw $< -b > $@ + +build/dahdi-firmware-nonfree:: drivers/dahdi/dahdi-fw-tor2.bin drivers/dahdi/dahdi-fw-pciradio.bin + +clean:: + rm -f drivers/dahdi/makefw drivers/dahdi/dahdi-fw-*.bin get-orig-source: @@dh_testdir unblock dahdi-linux/1:2.6.1+dfsg-2 -- System Information: Debian Release: 7.0 APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 3.2.0-4-amd64 (SMP w/2 CPU cores) Locale: LANG=he_IL.UTF-8, LC_CTYPE=he_IL.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash -- Tzafrir Cohen | tzafrir@jabber.org | VIM is http://tzafrir.org.il | | a Mutt's tzafrir@cohens.org.il | | best tzafrir@debian.org | | friend -- Tzafrir Cohen | tzafrir@jabber.org | VIM is http://tzafrir.org.il | | a Mutt's tzafrir@cohens.org.il | | best tzafrir@debian.org | | friend
--- End Message ---
--- Begin Message ---
- To: Tzafrir Cohen <tzafrir@cohens.org.il>, 699295-done@bugs.debian.org
- Subject: Re: Bug#699295: pre-approval for unblock: dahdi-linux/1:2.6.1+dfsg-2
- From: Julien Cristau <jcristau@debian.org>
- Date: Fri, 1 Feb 2013 17:15:48 +0100
- Message-id: <20130201161548.GA8837@radis.cristau.org>
- In-reply-to: <20130129230729.GA15267@lemon.cohens.org.il>
- References: <20130129230729.GA15267@lemon.cohens.org.il>
On Wed, Jan 30, 2013 at 00:07:29 +0100, Tzafrir Cohen wrote: > Package: release.debian.org > Severity: normal > User: release.debian.org@packages.debian.org > Usertags: unblock > > Please consider pre-approving dahdi-linux/1:2.6.1+dfsg-2 > (not yet uploaded, would go via unstable) > Unblocked. Cheers, JulienAttachment: signature.asc
Description: Digital signature
--- End Message ---