Home | History | Annotate | Download | only in tests
      1 #!/usr/bin/perl
      2 
      3 my $dtc_old = "/home/jdl/FSL/dtc/dtc-old";
      4 my $dtc_new = "/home/jdl/FSL/dtc/dtc-new";
      5 
      6 my $basic_options = "-b 0 -f -I dts -O dtb";
      7 
      8 my $linux_dts_dir = "/usr/src/linux-2.6/arch/powerpc/boot/dts";
      9 
     10 # Yeah, sure, we could, like, readdir() this instead...
     11 my @boards = (
     12 	      "bamboo",
     13 	      "ebony",
     14 	      "ep88xc",
     15 	      "holly",
     16 	      "kilauea",
     17 	      "kuroboxHD",
     18 	      "kuroboxHG",
     19 	      "lite5200",
     20 	      "lite5200b",
     21 	      "mpc7448hpc2",
     22 	      "mpc8272ads",
     23 	      "mpc8313erdb",
     24 	      "mpc832x_mds",
     25 	      "mpc832x_rdb",
     26 	      "mpc8349emitx",
     27 	      "mpc8349emitxgp",
     28 	      "mpc834x_mds",
     29 	      "mpc836x_mds",
     30 	      "mpc8540ads",
     31 	      "mpc8541cds",
     32 	      "mpc8544ds",
     33 	      "mpc8548cds",
     34 	      "mpc8555cds",
     35 	      "mpc8560ads",
     36 	      "mpc8568mds",
     37 	      "mpc8572ds",
     38 	      "mpc8610_hpcd",
     39 	      "mpc8641_hpcn",
     40 	      "mpc866ads",	# Feh.  Bad node references...
     41 	      "mpc885ads",
     42 	      "pq2fads",
     43 	      "prpmc2800",
     44 	      "ps3",
     45 	      "sequoia",
     46 	      "walnut",
     47 );
     48 
     49 foreach my $board (@boards) {
     50 	my $dts_file = "$linux_dts_dir/$board.dts";
     51 
     52 	my $old_dtb_file = "/tmp/$board.dtb.old";
     53 	my $new_dtb_file = "/tmp/$board.dtb.new";
     54 
     55 	my $cmd_old = "$dtc_old $basic_options -o $old_dtb_file $dts_file";
     56 	my $cmd_new = "$dtc_new $basic_options -o $new_dtb_file $dts_file";
     57 	my $cmd_cmp = "cmp $old_dtb_file $new_dtb_file";
     58 
     59 	print "------------------------------------------------\n";
     60 	print "OLD: $cmd_old\n";
     61 	unlink($old_dtb_file) if (-f $old_dtb_file);
     62 	system("$cmd_old >& /dev/null");
     63 	my $status = $?;
     64 	if ($status) {
     65 		print "    FAILED to run old DTC on $board\n";
     66 	}
     67 
     68 	print "NEW: $cmd_new\n";
     69 	unlink($new_dtb_file) if (-f $new_dtb_file);
     70 	system("$cmd_new >& /dev/null");
     71 	$status = $?;
     72 	if ($status) {
     73 		print "    FAILED to run new DTC on $board\n";
     74 	}
     75 
     76 	if (-f $old_dtb_file && -f $new_dtb_file) {
     77 	    print "CMP: $cmd_cmp\n";
     78 	    system($cmd_cmp);
     79 	    $status = $?;
     80 	    if ($status) {
     81 		print "    FAILED $board\n";
     82 	    }
     83 	} else {
     84 	    printf "    FAILED: Missing dtb file\n";
     85 	}
     86 }
     87