summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShaun Ruffell <sruffell@digium.com>2010-03-01 05:27:48 +0000
committerShaun Ruffell <sruffell@digium.com>2010-03-01 05:27:48 +0000
commit214210cc1a8396ec59a283e7d2da3c1aa3186a01 (patch)
treec66e2cdb6b451e927ff717d878b71b097f53754e
parent09a295066257ed53110f0beb5f0181a88b94d403 (diff)
wctdm24xxp: Automatically fetch Hx8 firmware.
Basically, fetch the Hx8 firmware like many of the other firmwares. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8171 a0bf4364-ded3-4de4-8d8a-66a801d63aff
-rw-r--r--drivers/dahdi/firmware/Makefile18
-rw-r--r--drivers/dahdi/wctdm24xxp/base.c6
2 files changed, 18 insertions, 6 deletions
diff --git a/drivers/dahdi/firmware/Makefile b/drivers/dahdi/firmware/Makefile
index 8c65ead..b90b1a6 100644
--- a/drivers/dahdi/firmware/Makefile
+++ b/drivers/dahdi/firmware/Makefile
@@ -3,7 +3,7 @@
#
# Makefile for firmware downloading/installation
#
-# Copyright (C) 2007-2009, Digium, Inc.
+# Copyright (C) 2007-2010, Digium, Inc.
#
# Joshua Colp <jcolp@digium.com>
#
@@ -26,10 +26,11 @@ OCT6114_064_VERSION:=1.05.01
OCT6114_128_VERSION:=1.05.01
TC400M_VERSION:=MR6.12
VPMADT032_VERSION:=1.20.0
+HX8_VERSION:=2.06
FIRMWARE_URL:=http://downloads.digium.com/pub/telephony/firmware/releases
-ALL_FIRMWARE=FIRMWARE-OCT6114-064 FIRMWARE-OCT6114-128 FIRMWARE-TC400M
+ALL_FIRMWARE=FIRMWARE-OCT6114-064 FIRMWARE-OCT6114-128 FIRMWARE-TC400M FIRMWARE-HX8
# Firmware files should use the naming convention: dahdi-fw-<base name>-<sub name>-<version> or dahdi-fw-<base name>-<version>
# First example: dahdi-fw-oct6114-064-1.05.01
@@ -41,6 +42,7 @@ ALL_FIRMWARE=FIRMWARE-OCT6114-064 FIRMWARE-OCT6114-128 FIRMWARE-TC400M
FIRMWARE:=$(ALL_FIRMWARE:FIRMWARE-OCT6114-064=dahdi-fw-oct6114-064-$(OCT6114_064_VERSION).tar.gz)
FIRMWARE:=$(FIRMWARE:FIRMWARE-OCT6114-128=dahdi-fw-oct6114-128-$(OCT6114_128_VERSION).tar.gz)
FIRMWARE:=$(FIRMWARE:FIRMWARE-TC400M=dahdi-fw-tc400m-$(TC400M_VERSION).tar.gz)
+FIRMWARE:=$(FIRMWARE:FIRMWARE-HX8=dahdi-fw-hx8-$(HX8_VERSION).tar.gz)
FWLOADERS:=dahdi-fwload-vpmadt032-$(VPMADT032_VERSION).tar.gz
@@ -48,6 +50,7 @@ FWLOADERS:=dahdi-fwload-vpmadt032-$(VPMADT032_VERSION).tar.gz
OBJECT_FILES:=$(ALL_FIRMWARE:FIRMWARE-OCT6114-064=dahdi-fw-oct6114-064.o)
OBJECT_FILES:=$(OBJECT_FILES:FIRMWARE-OCT6114-128=dahdi-fw-oct6114-128.o)
OBJECT_FILES:=$(OBJECT_FILES:FIRMWARE-TC400M=dahdi-fw-tc400m.o)
+OBJECT_FILES:=$(OBJECT_FILES:FIRMWARE-HX8=dahdi-fw-hx8.o)
# Force usage of wget, for now
DOWNLOAD=wget
@@ -129,6 +132,17 @@ ifeq ($(shell if ( [ -f $(DESTDIR)/usr/lib/hotplug/firmware/.dahdi-fw-tc400m-$(T
else
@echo "Firmware dahdi-fw-tc400m.bin is already installed with required version $(TC400M_VERSION)"
endif
+ifeq ($(shell if ( [ -f $(DESTDIR)/usr/lib/hotplug/firmware/.dahdi-fw-hx8-$(HX8_VERSION) ] ) && ( [ -f $(DESTDIR)/lib/firmware/.dahdi-fw-hx8-$(HX8_VERSION) ] ); then echo "no"; else echo "yes"; fi),yes)
+ @echo "Installing dahdi-fw-hx8.bin to hotplug firmware directories"
+ @install -m 644 dahdi-fw-hx8.bin $(DESTDIR)/usr/lib/hotplug/firmware
+ @rm -rf $(DESTDIR)/usr/lib/hotplug/firmware/.dahdi-fw-hx8-*
+ @touch $(DESTDIR)/usr/lib/hotplug/firmware/.dahdi-fw-hx8-$(HX8_VERSION)
+ @install -m 644 dahdi-fw-hx8.bin $(DESTDIR)/lib/firmware
+ @rm -rf $(DESTDIR)/lib/firmware/.dahdi-fw-hx8-*
+ @touch $(DESTDIR)/lib/firmware/.dahdi-fw-hx8-$(HX8_VERSION)
+else
+ @echo "Firmware dahdi-fw-hx8.bin is already installed with required version $(HX8_VERSION)"
+endif
# Uninstall any installed dahdi firmware images from hotplug firmware directories
hotplug-uninstall:
diff --git a/drivers/dahdi/wctdm24xxp/base.c b/drivers/dahdi/wctdm24xxp/base.c
index fcdfa55..e678b8e 100644
--- a/drivers/dahdi/wctdm24xxp/base.c
+++ b/drivers/dahdi/wctdm24xxp/base.c
@@ -37,8 +37,6 @@ Tx Gain - No Pre-Emphasis: -35.99 to 12.00 db
Tx Gain - W/Pre-Emphasis: -23.99 to 0.00 db
*/
-#define DEBUG
-
#include <linux/version.h>
#include <linux/kernel.h>
#include <linux/errno.h>
@@ -4466,7 +4464,6 @@ static int hx8_reload_application(struct wctdm *wc, const struct ha80000_firmwar
return ret;
for (cur_page = 0; cur_page < HYBRID_PAGE_COUNT; ++cur_page) {
- /* dev_dbg(&wc->vb.pdev->dev, "PAGE: %d\n", cur_page); */
ret = hx8_write_buffer(wc, data, HYBRID_PAGE_SIZE);
if (ret)
return ret;
@@ -4540,7 +4537,7 @@ static int hx8_check_firmware(struct wctdm *wc)
dev_dbg(dev, "FPGA VERSION: %02x.%02x\n", major, minor);
- ret = request_firmware(&fw, "dahdi-fw-ha80000.bin", dev);
+ ret = request_firmware(&fw, "dahdi-fw-hx8.bin", dev);
if (ret) {
dev_warn(dev, "Failed to load firmware from userspace, skipping "
"check. (%d)\n", ret);
@@ -4594,6 +4591,7 @@ static int hx8_check_firmware(struct wctdm *wc)
cleanup:
release_firmware(fw);
+ dev_info(dev, "Hx8 firmware version: %d.%02d\n", major, minor);
return ret;
}