[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#699295: marked as done (pre-approval for unblock: dahdi-linux/1:2.6.1+dfsg-2)



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 ---
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 ---
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,
Julien

Attachment: signature.asc
Description: Digital signature


--- End Message ---

Reply to: