Line 1... |
Line 1... |
#!/usr/bin/perl -w
|
#!/usr/bin/perl -w
|
# $Id: config_wrapper 467 2013-01-02 19:49:05Z mueller $
|
# $Id: config_wrapper 534 2013-09-22 21:37:24Z mueller $
|
#
|
#
|
# Copyright 2010-2013 by Walter F.J. Mueller
|
# Copyright 2010-2013 by Walter F.J. Mueller
|
#
|
#
|
# This program is free software; you may redistribute and/or modify it under
|
# This program is free software; you may redistribute and/or modify it under
|
# the terms of the GNU General Public License as published by the Free
|
# the terms of the GNU General Public License as published by the Free
|
Line 12... |
Line 12... |
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
# for complete details.
|
# for complete details.
|
#
|
#
|
# Revision History:
|
# Revision History:
|
# Date Rev Version Comment
|
# Date Rev Version Comment
|
|
# 2013-09-21 534 1.1.8 add nexys4 support
|
# 2013-01-02 467 1.1.7 jconfig: prepend '0x' to support 'jtag #2007'
|
# 2013-01-02 467 1.1.7 jconfig: prepend '0x' to support 'jtag #2007'
|
# 2012-02-11 457 1.1.6 jconfig: use RETRO_FX2_VID/PID for USB VID/PID
|
# 2012-02-11 457 1.1.6 jconfig: use RETRO_FX2_VID/PID for USB VID/PID
|
# 2011-12-03 435 1.1.5 add nexys3 support;
|
# 2011-12-03 435 1.1.5 add nexys3 support;
|
# 2011-08-04 402 1.1.4 add atlys support;
|
# 2011-08-04 402 1.1.4 add atlys support;
|
# 2011-07-25 399 1.1.3 add nexys2-500 support; bsdl path for sp605
|
# 2011-07-25 399 1.1.3 add nexys2-500 support; bsdl path for sp605
|
Line 45... |
Line 46... |
}
|
}
|
if (not defined $opts{path}) {
|
if (not defined $opts{path}) {
|
$opts{path} = "xc3s1000" if $opts{board} eq "s3board";
|
$opts{path} = "xc3s1000" if $opts{board} eq "s3board";
|
$opts{path} = "xc3s1200e" if $opts{board} eq "nexys2";
|
$opts{path} = "xc3s1200e" if $opts{board} eq "nexys2";
|
$opts{path} = "xc6slx16" if $opts{board} eq "nexys3";
|
$opts{path} = "xc6slx16" if $opts{board} eq "nexys3";
|
|
$opts{path} = "xc7a100t" if $opts{board} eq "nexys4";
|
$opts{path} = "xc6slx45" if $opts{board} eq "atlys";
|
$opts{path} = "xc6slx45" if $opts{board} eq "atlys";
|
$opts{path} = "xc6slx45t" if $opts{board} eq "sp605";
|
$opts{path} = "xc6slx45t" if $opts{board} eq "sp605";
|
}
|
}
|
|
|
sub print_help;
|
sub print_help;
|
Line 91... |
Line 93... |
|
|
} elsif ($board eq "nexys3" && $ipath eq "xc6slx16") { # nexys3
|
} elsif ($board eq "nexys3" && $ipath eq "xc6slx16") { # nexys3
|
@plist = ($ipath);
|
@plist = ($ipath);
|
$pfpga = 1;
|
$pfpga = 1;
|
|
|
|
} elsif ($board eq "nexys4" && $ipath eq "xc7a100t") { # nexys4
|
|
@plist = ($ipath);
|
|
$pfpga = 1;
|
|
|
} elsif ($board eq "atlys" && $ipath eq "xc6slx45") { # atlys
|
} elsif ($board eq "atlys" && $ipath eq "xc6slx45") { # atlys
|
@plist = ($ipath);
|
@plist = ($ipath);
|
$pfpga = 1;
|
$pfpga = 1;
|
|
|
} elsif ($board eq "sp605" && $ipath eq "xc6slx45t") { # sp605
|
} elsif ($board eq "sp605" && $ipath eq "xc6slx45t") { # sp605
|
Line 110... |
Line 116... |
foreach my $part (@plist) {
|
foreach my $part (@plist) {
|
if ($part =~ m/^xcf/) { push @blist, "xcf/data" } # proms
|
if ($part =~ m/^xcf/) { push @blist, "xcf/data" } # proms
|
elsif ($part =~ m/^xc3s\d*$/) { push @blist, "spartan3/data" } # s-3
|
elsif ($part =~ m/^xc3s\d*$/) { push @blist, "spartan3/data" } # s-3
|
elsif ($part =~ m/^xc3s\d*e$/) { push @blist, "spartan3e/data" } # s-3e
|
elsif ($part =~ m/^xc3s\d*e$/) { push @blist, "spartan3e/data" } # s-3e
|
elsif ($part =~ m/^xc6slx\d*t?$/) { push @blist, "spartan6/data" }# s-6 lx
|
elsif ($part =~ m/^xc6slx\d*t?$/) { push @blist, "spartan6/data" }# s-6 lx
|
|
elsif ($part =~ m/^xc7a\d*t?$/) { push @blist, "artix7/data" } # 7-a
|
elsif ($part =~ m/^xccace$/) { push @blist, "acempm/data" } # sys-ace
|
elsif ($part =~ m/^xccace$/) { push @blist, "acempm/data" } # sys-ace
|
else {
|
else {
|
print STDERR "config_wrapper-E: no bsdl path known for $part\n";
|
print STDERR "config_wrapper-E: no bsdl path known for $part\n";
|
exit 1;
|
exit 1;
|
}
|
}
|