From 3c762c88e6afc1155e8e9fd32121f758b6335029 Mon Sep 17 00:00:00 2001 From: Hadaq Date: Thu, 8 Mar 2018 14:23:05 +0100 Subject: [PATCH] renamed script, IF --- tools/dirich_thresholds.pl | 187 ------------------------------------- 1 file changed, 187 deletions(-) delete mode 100755 tools/dirich_thresholds.pl diff --git a/tools/dirich_thresholds.pl b/tools/dirich_thresholds.pl deleted file mode 100755 index 84e05e5..0000000 --- a/tools/dirich_thresholds.pl +++ /dev/null @@ -1,187 +0,0 @@ -#!/usr/bin/perl -w -use warnings; -use FileHandle; -use Time::HiRes qw( usleep ); -use Data::Dumper; -use HADES::TrbNet; -use Date::Format; -use Dmon; - - -if (!defined $ENV{'DAQOPSERVER'}) { - die "DAQOPSERVER not set in environment"; -} - -if (!defined &trb_init_ports()) { - die("can not connect to trbnet-daemon on the $ENV{'DAQOPSERVER'}"); -} - - -if (!(defined $ARGV[0]) || !(defined $ARGV[1]) || !(defined $ARGV[2])) { - print "usage: dirich_threshold.pl \$FPGA \$chain \$command \$options - -\t readreg \t Read content of an arbitrary register, options: \$address - -"; - exit; -} -my $board, my $value, my $mask; - -($board) = $ARGV[0] =~ /^0?x?(\w+)/; -$board = hex($board); - -my $chain = hex($ARGV[1]); - -sub sendcmd16 { - my @cmd = @_; - my $c = [@cmd,1<<$chain,16+0x80]; - # print Dumper $c; - trb_register_write_mem($board,0xd400,0,$c,scalar @{$c}); - usleep(1000); -} - -sub sendcmd { - my ($cmd) = @_; - return Dmon::PadiwaSendCmd($cmd,$board,$chain); - # my $c = [$cmd,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1<<$chain,1]; - # trb_register_write_mem($board,0xd400,0,$c,scalar @{$c}); - # trb_register_write($board,0xd410,1<<$chain) or die "trb_register_write: ", trb_strerror(); - # trb_register_write($board,0xd411,1); - # usleep(1000); - # return trb_register_read($board,0xd412); -} - -sub flash_is_busy { - sendcmd(0x50800000); - my $b = sendcmd(0x40000000); - return (($b->{$board} >> 15) & 0x1); -} - -if ($ARGV[2] eq "readreg") { - my $b = sendcmd(hex($ARGV[3])<<24); - printf("0x%x\n", hex($ARGV[3])<<24); - foreach my $e (sort keys %$b) { - printf("0x%x\n", ($b->{$e}) & 0xffff); - } -} - -if ($ARGV[2] eq "writereg" && defined $ARGV[4]) { - my $b = sendcmd(0x00800000+(hex($ARGV[3])<<24) + hex($ARGV[4])); -} - -if ($ARGV[2] eq "dumpcfg") { - for (my $p = 0; $p<5760; $p++) { #5758 - sendcmd(0x50800000 + $p); - printf("0x%04x:\t",$p); - for (my $i=0;$i<16;$i++) { - my $b = sendcmd(0x40000000 + ($i << 24)); - foreach my $e (sort keys %$b) { - printf(" %02x ",$b->{$e}&0xff); - } - } - printf("\n"); - printf(STDERR "\r%d / 5760",$p) if(!($p%10)); - } -} - -if ($ARGV[2] eq "erasecfg") { - while (flash_is_busy()) { - printf(" busy - try again\n"); - usleep(300000); - }; - sendcmd(0x5080E000); - printf("Sent Erase command.\n"); -} - - -if ($ARGV[2] eq "writecfg" && defined $ARGV[3]) { - - while (flash_is_busy()) { - printf(" busy - try again\n"); - usleep(300000); - }; - sendcmd(0x5080E000); - printf("Sent Erase command.\n"); - - open(INF,$ARGV[3]) or die "Couldn't read file : $!\n"; - while (flash_is_busy()) { - printf(" busy - try again\n"); - usleep(300000); - }; - my $p = 0; - while (my $s = ) { - my @t = split(' ',$s); - my @a; - for (my $i=0;$i<16;$i++) { - if ($p eq 0x167e && $i eq 11) { - # adds the magic 09 the last page of the config flash, 0x167e - push(@a,0x40800000 + (0x09) + ($i << 24)); - } else { - push(@a,0x40800000 + (hex($t[$i+1]) & 0xff) + ($i << 24)); - } - } - sendcmd16(@a); - sendcmd(0x50804000 + $p); - - - - $p++; - printf(STDERR "\r%d / 5760",$p) if(!($p%10)); - } - -####### File is shorter.... - for (my $i=0;$i<16;$i++) { - if ($i eq 11) { - # adds the magic 09 the last page of the config flash, 0x167e - push(@a,0x40800000 + (0x09) + ($i << 24)); - } else { - push(@a,0x40800000 + (0x00) + ($i << 24)); - } - } - sendcmd16(@a); - sendcmd(0x50804000 + 0x167e); -} - -if ($ARGV[2] eq "writeflash" && defined $ARGV[3]) { - - sendcmd(0x5C800000); #cfg flash disabled - while (flash_is_busy()) { - printf(" busy - try again\n"); - usleep(300000); - }; - sendcmd(0x5080FC00); - printf("Sent Erase command.\n"); - - open(INF,$ARGV[3]) or die "Couldn't read file : $!\n"; - while (flash_is_busy()) { - printf(" busy - try again\n"); - usleep(300000); - }; - my $p = 0x1C00; - while (my $s = ) { - my @t = split(' ',$s); - my @a; - for (my $i=0;$i<16;$i++) { - push(@a,0x40800000 + (hex($t[$i+1]) & 0xff) + ($i << 24)); - } - sendcmd16(@a); - sendcmd(0x50804000 + $p); - - $p++; - } -} - -if ($ARGV[2] eq "dumpflash") { - for (my $p = 0x1c00; $p < 0x1c10; $p++) { - sendcmd(0x50800000 + $p); - printf("0x%04x:\t",$p); - for (my $i=0;$i<16;$i++) { - my $b = sendcmd(0x40000000 + ($i << 24)); - foreach my $e (sort keys %$b) { - printf(" %02x ",$b->{$e}&0xff); - } - } - printf("\n"); - ##printf(STDERR "\r%d / 5760",$p) if(!($p%10)); - } -} -- 2.43.0