[svn-commits] kpfleming: branch linux/kpfleming/modular_ec r4411 - in /linux/team/kpfleming...
SVN commits to the Digium repositories
svn-commits at lists.digium.com
Thu Jun 19 09:02:44 CDT 2008
Author: kpfleming
Date: Thu Jun 19 09:02:44 2008
New Revision: 4411
URL: http://svn.digium.com/view/dahdi?view=rev&rev=4411
Log:
Merged revisions 4404,4407-4408 via svnmerge from
https://origsvn.digium.com/svn/dahdi/linux/trunk
........
r4404 | tzafrir | 2008-06-19 08:13:44 -0500 (Thu, 19 Jun 2008) | 2 lines
Delete generated pciradio and tor2 firmware files on 'make clean'.
........
r4407 | tzafrir | 2008-06-19 08:24:41 -0500 (Thu, 19 Jun 2008) | 4 lines
Remove some unused magic intended to build MMX automatically.
Reimplement this with Kconfig if you really want it.
........
r4408 | tzafrir | 2008-06-19 08:36:15 -0500 (Thu, 19 Jun 2008) | 7 lines
Further XPP driver adjustments:
* More complete Kconfig.
* Verification of FXO init script moved here from tools.
* Perl init scripts are verified.
* Correct name XppConf*ig*.
* Add the files for xpp_mmap .
........
Added:
linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/mmapbus.c
- copied unchanged from r4408, linux/trunk/drivers/dahdi/xpp/mmapbus.c
linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/mmapbus.h
- copied unchanged from r4408, linux/trunk/drivers/dahdi/xpp/mmapbus.h
linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/mmapdrv.c
- copied unchanged from r4408, linux/trunk/drivers/dahdi/xpp/mmapdrv.c
linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/print_fxo_modes.c
- copied unchanged from r4408, linux/trunk/drivers/dahdi/xpp/print_fxo_modes.c
Modified:
linux/team/kpfleming/modular_ec/ (props changed)
linux/team/kpfleming/modular_ec/drivers/dahdi/Kbuild
linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/ (props changed)
linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/Kbuild
linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/Kconfig
linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/XppConfig.pm
linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_1_30
linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_2_30
linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_3_30
linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_4_30
Propchange: linux/team/kpfleming/modular_ec/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Thu Jun 19 09:02:44 2008
@@ -1,1 +1,1 @@
-/linux/trunk:1-4388
+/linux/trunk:1-4410
Modified: linux/team/kpfleming/modular_ec/drivers/dahdi/Kbuild
URL: http://svn.digium.com/view/dahdi/linux/team/kpfleming/modular_ec/drivers/dahdi/Kbuild?view=diff&rev=4411&r1=4410&r2=4411
==============================================================================
--- linux/team/kpfleming/modular_ec/drivers/dahdi/Kbuild (original)
+++ linux/team/kpfleming/modular_ec/drivers/dahdi/Kbuild Thu Jun 19 09:02:44 2008
@@ -81,22 +81,4 @@
$(obj)/makefw: $(src)/makefw.c
$(HOSTCC) -o $@ $^
-# set CONFIG_DAHDI_MMX for a number of CPU types.
-# Right now this part is not enabled, unless you build with
-# DAHDI_MMX_AUTO=something .
-DAHDIMMX_WHITELIST_i386 = M586MMX M686 MPENTIUMII MPENTIUMIII MPENTIUMM \
- MPENTIUM4 MVIAC3_2
-
-DAHDIMMX_WHITELIST_x86_64 =
-
-# A list of configuration variables to test: CONFIG_M686 , etc.
-DAHDIMMX_CONFIG_VARS := $(DAHDIMMX_WHITELIST_$(ARCH):%=CONFIG_%)
-
-# expand them:
-DAHDIMMX_CONFIG_VALS := $(strip $(foreach var,$(DAHDIMMX_CONFIG_VARS),$(var)) )
-ifdef DAHDI_MMX_AUTO
- ifdef DAHDIMMX_CONFIG_VALS
- # TODO: make that
- CFLAGS_dahdi-base.o += -DCONFIG_DAHDI_MMX
- endif
-endif
+clean-files := radfw.h tor2fw.h
Propchange: linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Thu Jun 19 09:02:44 2008
@@ -1,9 +1,11 @@
*.o
*.ko
-*.o.cmd
-*.ko.cmd
+*.cmd
*.mod.c
.tmp_versions
.*.swp
+*.verified
xpp_version.h
README.Astribank.html
+print_fxo_modes
+init_fxo_modes
Modified: linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/Kbuild
URL: http://svn.digium.com/view/dahdi/linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/Kbuild?view=diff&rev=4411&r1=4410&r2=4411
==============================================================================
--- linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/Kbuild (original)
+++ linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/Kbuild Thu Jun 19 09:02:44 2008
@@ -1,9 +1,3 @@
-ifdef SUBDIRS
- ZAP_KERNEL = $(SUBDIRS)
-else
- ZAP_KERNEL = $(M)
-endif
-
EXTRA_CFLAGS = $(XPP_LOCAL_CFLAGS) \
-DDEBUG \
-DPOLL_DIGITAL_INPUTS \
@@ -13,20 +7,22 @@
-g
#
+WITH_BRISTUFF := $(shell grep '^[[:space:]]*\#[[:space:]]*define[[:space:]]\+CONFIG_ZAPATA_BRI_DCHANS\>' $(src)/../dahdi_config.h)
+
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_XPP) += xpp.o
-obj-$(CONFIG_DAHDI_XPP_USB) += xpp_usb.o
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_XPD_FXS) += xpd_fxs.o
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_XPD_FXO) += xpd_fxo.o
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_XPD_PRI) += xpd_pri.o
-
-HAS_BRISTUFF := $(shell grep '^[[:space:]]*\#[[:space:]]*define[[:space:]]\+CONFIG_ZAPATA_BRI_DCHANS\>' $(ZAP_KERNEL)/dahdi_config.h)
+ifneq (,$(WITH_BRISTUFF))
+obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_XPD_BRI) += xpd_bri.o
+endif
# Build only supported modules
ifneq (,$(filter y m,$(CONFIG_USB)))
-obj-m += xpp_usb.o
+obj-$(DAHDI_BUILD_ALL)$(CONFIG_XPP_USB) += xpp_usb.o
endif
-ifneq (,$(HAS_BRISTUFF))
-obj-m += xpd_bri.o
+ifneq (,$(filter y m,$(CONFIG_BF537)))
+obj-$(DAHDI_BUILD_ALL)$(CONFIG_XPP_MMAP) += xpp_mmap.o
endif
xpp-objs += xbus-core.o xbus-sysfs.o xbus-pcm.o xframe_queue.o xpp_zap.o xproto.o card_global.o zap_debug.o
@@ -34,6 +30,7 @@
xpd_fxo-objs += card_fxo.o
xpd_bri-objs += card_bri.o
xpd_pri-objs += card_pri.o
+xpp_mmap-objs += mmapbus.o mmapdrv.o
ifeq (y,$(PARPORT_DEBUG))
EXTRA_CFLAGS += -DDEBUG_SYNC_PARPORT
@@ -42,7 +39,7 @@
# Handle versioning
XPP_VERSION_STR ?= $(shell if [ -r $(obj)/.version ]; then echo "\"`cat $(obj)/.version`\""; else echo '"Unknown"'; fi)
-clean-files := xpp_version.h
+clean-files += xpp_version.h
$(obj)/card_fxs.o $(obj)/card_fxo.o $(obj)/card_bri.o $(obj)/card_pri.o $(obj)/xpp_usb.o $(obj)/xpp.o: $(obj)/xpp_version.h
@@ -53,5 +50,42 @@
fi
$(Q)rm -f $@.tmp
+# Validations:
+# - Syntactic verification of perl scripts
+# - Handle country table validation for init_card_2_*
+
+XPP_PROTOCOL_VERSION := $(shell grep XPP_PROTOCOL_VERSION $(src)/xproto.h | sed -e 's/^.*XPP_PROTOCOL_VERSION[ \t]*//')
+
+xpp_verifications = \
+ init_card_1_$(XPP_PROTOCOL_VERSION) \
+ init_card_2_$(XPP_PROTOCOL_VERSION) \
+ init_card_3_$(XPP_PROTOCOL_VERSION) \
+ init_card_4_$(XPP_PROTOCOL_VERSION) \
+ init_fxo_modes
+
+xpp_verified = $(foreach file, $(xpp_verifications), $(file).verified)
+
+FXO_MODES = $(src)/../fxo_modes.h
+FXO_VERIFY = $(obj)/init_card_2_$(XPP_PROTOCOL_VERSION) -v $(obj)/init_fxo_modes
+
+hostprogs-y := print_fxo_modes
+always := $(xpp_verified)
+print_fxo_modes-objs := print_fxo_modes.o
+HOSTCFLAGS_print_fxo_modes.o += -include $(FXO_MODES)
+
+clean-files += print_fxo_modes init_fxo_modes $(xpp_verified)
+
+$(obj)/init_fxo_modes: $(obj)/print_fxo_modes
+ @echo ' GEN $@'
+ $(Q)$(obj)/print_fxo_modes >$@ || (rm -f $@; exit 1)
+
+$(obj)/init_fxo_modes.verified: $(obj)/init_card_2_$(XPP_PROTOCOL_VERSION) $(obj)/init_fxo_modes
+ @echo ' CHECK $(obj)/init_card_2_$(XPP_PROTOCOL_VERSION)'
+ $(Q)$(FXO_VERIFY) && touch $@ || (rm -f $@; exit 1)
+
+$(obj)/init_card_%_$(XPP_PROTOCOL_VERSION).verified: $(src)/init_card_%_$(XPP_PROTOCOL_VERSION)
+ @echo ' VERIFY $<'
+ $(Q)perl -c $< 2> $@ || (cat $@; rm -f $@; exit 1)
+
.PHONY: FORCE
FORCE:
Modified: linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/Kconfig
URL: http://svn.digium.com/view/dahdi/linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/Kconfig?view=diff&rev=4411&r1=4410&r2=4411
==============================================================================
--- linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/Kconfig (original)
+++ linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/Kconfig Thu Jun 19 09:02:44 2008
@@ -4,7 +4,7 @@
menuconfig DAHDI_XPP
tristate "Xorcom Astribank Support"
- depends on DAHDI && USB
+ depends on DAHDI
default DAHDI
---help---
Infrastructure support for Xorcom Astribank products.
@@ -14,16 +14,32 @@
If unsure, say Y.
-if DAHDI_XPP
+config DAHDI_XPP_USB
+ tristate "Astribank USB transport"
+ depends on DAHDI_XPP && USB
+ default DAHDI_XPP
+ ---help---
+ To compile this driver as a module, choose M here: the
+ module will be called xpp_usb.
-config DAHDI_XPP_USB
- tristate
- depends on DAHDI_XPP
+ If unsure, say Y.
+
+config DAHDI_XPP_MMAP
+ tristate "Astribank Blackfin transport"
+ depends on DAHDI_XPP && BF537
default DAHDI_XPP
+ ---help---
+ To compile this driver as a module, choose M here: the
+ module will be called xpp_mmap.
+
+ This module can be compiled only on Blackfin architecture
+ (with uClinux).
+
+ If unsure, say N.
config DAHDI_XPD_FXS
tristate "FXS port Support"
- depends on DAHDI_XPP
+ depends on DAHDI_XPP && (DAHDI_XPP_USB || DAHDI_XPP_MMAP)
default DAHDI_XPP
---help---
To compile this driver as a module, choose M here: the
@@ -33,7 +49,7 @@
config DAHDI_XPD_FXO
tristate "FXO port Support"
- depends on DAHDI_XPP
+ depends on DAHDI_XPP && (DAHDI_XPP_USB || DAHDI_XPP_MMAP)
default DAHDI_XPP
---help---
To compile this driver as a module, choose M here: the
@@ -41,14 +57,26 @@
If unsure, say Y.
+config DAHDI_XPD_BRI
+ tristate "BRI port Support"
+ depends on DAHDI_XPP && (DAHDI_XPP_USB || DAHDI_XPP_MMAP)
+ default DAHDI_XPP
+ ---help---
+ To compile this driver as a module, choose M here: the
+ module will be called xpd_pri.
+
+ Note: this driver will be automatically excluded
+ from compilation if dahdi driver does not
+ contain the "bristuff" patch.
+
+ If unsure, say Y.
+
config DAHDI_XPD_PRI
tristate "PRI port Support"
- depends on DAHDI_XPP
+ depends on DAHDI_XPP && (DAHDI_XPP_USB || DAHDI_XPP_MMAP)
default DAHDI_XPP
---help---
To compile this driver as a module, choose M here: the
module will be called xpd_pri.
If unsure, say Y.
-
-endif # DAHDI_XPP
Modified: linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/XppConfig.pm
URL: http://svn.digium.com/view/dahdi/linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/XppConfig.pm?view=diff&rev=4411&r1=4410&r2=4411
==============================================================================
--- linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/XppConfig.pm (original)
+++ linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/XppConfig.pm Thu Jun 19 09:02:44 2008
@@ -1,4 +1,4 @@
-package XppConf;
+package XppConfig;
#
# Written by Oron Peled <oron at actcom.co.il>
# Copyright (C) 2008, Xorcom
@@ -10,8 +10,6 @@
use strict;
my $conf_file = "/etc/dahdi/xpp.conf";
-
-$conf_file = $ENV{XPP_CONFIG} if $ENV{XPP_CONFIG};
sub subst_var($$) {
my $lookup = shift;
@@ -55,7 +53,13 @@
return %xpp_config;
}
-my %x = read_config($conf_file);
+sub import {
+ my $pack = shift || die "Import without package?";
+ my $init_dir = shift || die "$pack::import -- missing init_dir parameter";
+ my $local_conf = "$init_dir/xpp.conf";
+ $conf_file = $local_conf if -r $local_conf;
+ my %x = read_config($conf_file);
+}
sub show_vars {
my $assoc = shift;
@@ -79,6 +83,5 @@
return ($conf_file, %result);
}
-source_vars(qw(XPP_PRI_SETUP opermode));
1;
Modified: linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_1_30
URL: http://svn.digium.com/view/dahdi/linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_1_30?view=diff&rev=4411&r1=4410&r2=4411
==============================================================================
--- linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_1_30 (original)
+++ linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_1_30 Thu Jun 19 09:02:44 2008
@@ -45,7 +45,7 @@
my $program = basename("$0");
my $init_dir = dirname("$0");
BEGIN { $init_dir = dirname($0); unshift(@INC, "$init_dir", "$init_dir/zconf"); }
-use XppConfig;
+use XppConfig $init_dir;
my $unit_id;
my %opts;
$ENV{XPP_BASE} = '/proc/xpp';
Modified: linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_2_30
URL: http://svn.digium.com/view/dahdi/linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_2_30?view=diff&rev=4411&r1=4410&r2=4411
==============================================================================
--- linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_2_30 (original)
+++ linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_2_30 Thu Jun 19 09:02:44 2008
@@ -45,12 +45,12 @@
my $program = basename("$0");
my $init_dir = dirname("$0");
BEGIN { $init_dir = dirname($0); unshift(@INC, "$init_dir", "$init_dir/zconf", "$init_dir/utils/zconf"); }
-use XppConfig;
+use XppConfig $init_dir;
my $unit_id;
my %opts;
$ENV{XPP_BASE} = '/proc/xpp';
-getopts('o:', \%opts);
+getopts('o:v:', \%opts);
my $debug;
@@ -127,9 +127,9 @@
CANADA reg16=00 reg26=C0 reg30=00 reg31=20
CHILE reg16=00 reg26=C0 reg30=00 reg31=20
CHINA reg16=00 reg26=30 reg30=0F reg31=20
-COLUMBIA reg16=00 reg26=C0 reg30=00 reg31=20
+COLOMBIA reg16=00 reg26=C0 reg30=00 reg31=20
CROATIA reg16=00 reg26=C2 reg30=02 reg31=20
-CYRPUS reg16=00 reg26=C2 reg30=02 reg31=20
+CYPRUS reg16=00 reg26=C2 reg30=02 reg31=20
CZECH reg16=00 reg26=C2 reg30=02 reg31=20
DENMARK reg16=00 reg26=C2 reg30=02 reg31=28
ECUADOR reg16=00 reg26=C0 reg30=00 reg31=20
@@ -263,6 +263,7 @@
sub opermode_verify($) {
my $input = shift or die;
my %verification_table;
+ my $mismatches = 0;
open(F, $input) or die "$0: Failed opening '$input': $!\n";
while(<F>) {
@@ -281,7 +282,8 @@
foreach my $location (sort keys %verification_table) {
my $mode = $opermode_table{$location};
if(! defined $mode) {
- printf STDERR "Missing $location\n";
+ printf STDERR "Missing from $0: '$location'\n";
+ $mismatches++;
next;
}
my $verify_mode = $verification_table{$location};
@@ -291,16 +293,20 @@
print STDERR "DIFF: $location:\n";
printf STDERR "\t%-20s: %s\n", "program", $str1;
printf STDERR "\t%-20s: %s\n", "verify", $str2;
+ $mismatches++;
}
}
# Second test: check for extra data in our program
foreach my $location (sort keys %opermode_table) {
my $mode = $verification_table{$location};
if(! defined $mode) {
- printf STDERR "Extra $location\n";
+ printf STDERR "Extra in $0 '$location'\n";
+ $mismatches++;
next;
}
}
+ print STDERR "Total $mismatches mismatches\n" if $mismatches;
+ return $mismatches;
}
sub read_defaults() {
@@ -331,11 +337,12 @@
FXO::opermode_preprocess; # Must be first
-if(@ARGV and $ARGV[0] =~ /^verify(.*)/) {
- my $verify_file = $1;
- die "Usage: $0 verify=filename\n" unless $verify_file =~ s/^=//;
+if($opts{v}) {
+ my $verify_file = $opts{v};
+ die "Usage: $0 [-v verify_filename]\n" unless $verify_file;
main::debug "$0: opermode verification (input='$verify_file')";
- FXO::opermode_verify($verify_file);
+ my $mismatches = FXO::opermode_verify($verify_file);
+ die "$0: Verification against $verify_file failed\n" if $mismatches != 0;
exit 0;
}
Modified: linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_3_30
URL: http://svn.digium.com/view/dahdi/linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_3_30?view=diff&rev=4411&r1=4410&r2=4411
==============================================================================
--- linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_3_30 (original)
+++ linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_3_30 Thu Jun 19 09:02:44 2008
@@ -57,6 +57,8 @@
my $program = basename("$0");
my $init_dir = dirname("$0");
+BEGIN { $init_dir = dirname($0); unshift(@INC, "$init_dir", "$init_dir/zconf"); }
+use XppConfig $init_dir;
my $unit_id;
my %opts;
$ENV{XPP_BASE} = '/proc/xpp';
Modified: linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_4_30
URL: http://svn.digium.com/view/dahdi/linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_4_30?view=diff&rev=4411&r1=4410&r2=4411
==============================================================================
--- linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_4_30 (original)
+++ linux/team/kpfleming/modular_ec/drivers/dahdi/xpp/init_card_4_30 Thu Jun 19 09:02:44 2008
@@ -54,6 +54,8 @@
my $program = basename("$0");
my $init_dir = dirname("$0");
+BEGIN { $init_dir = dirname($0); unshift(@INC, "$init_dir", "$init_dir/zconf"); }
+use XppConfig $init_dir;
my $unit_id;
my %opts;
$ENV{XPP_BASE} = '/proc/xpp';
@@ -344,8 +346,6 @@
}
package main;
-BEGIN { my $dir = dirname($0); unshift(@INC, "$dir", "$dir/zconf"); }
-use XppConfig;
logit "Starting '$0'";
More information about the svn-commits
mailing list