diff options
Diffstat (limited to 'tools/scripts/ppeParseProcSbeFixed.pl')
-rwxr-xr-x | tools/scripts/ppeParseProcSbeFixed.pl | 90 |
1 files changed, 50 insertions, 40 deletions
diff --git a/tools/scripts/ppeParseProcSbeFixed.pl b/tools/scripts/ppeParseProcSbeFixed.pl index e963bb50..ddcd5558 100755 --- a/tools/scripts/ppeParseProcSbeFixed.pl +++ b/tools/scripts/ppeParseProcSbeFixed.pl @@ -36,6 +36,11 @@ my $xml = new XML::Simple (KeyAttr=>[]); #------------------------------------------------------------------------------ # Open output file for writing #------------------------------------------------------------------------------ +my $sysFile = $ARGV[0]; +$sysFile .= "/"; +$sysFile .= "proc_sbe_fixed_system.H"; +open(SYFILE, ">", $sysFile); + my $chipFile = $ARGV[0]; $chipFile .= "/"; $chipFile .= "proc_sbe_fixed_proc_chip.H"; @@ -66,6 +71,7 @@ open(PEFILE, ">", $pervFile); my $xmlFiles = 0; my $attCount = 0; my $numIfAttrFiles = 0; +my @attrSystemIds; my @attrChipIds; my @attrExIds; my @attrCoreIds; @@ -108,55 +114,65 @@ foreach my $entr (@{$entries->{entry}}) { if($attr->{id} eq $inname) { - #------------------------------------------------------------------ - # Check that the AttributeId exists - #------------------------------------------------------------------ - if (! exists $attr->{id}) - { - print ("fapiParseAttributeInfo.pl ERROR. Att 'id' missing\n"); - exit(1); - } + #------------------------------------------------------------------ + # Check that the AttributeId exists + #------------------------------------------------------------------ + if (! exists $attr->{id}) + { + print ("fapiParseAttributeInfo.pl ERROR. Att 'id' missing\n"); + exit(1); + } + if ($attr->{targetType} eq "TARGET_TYPE_SYSTEM") { - if($attr->{targetType} eq "TARGET_TYPE_PROC_CHIP") { + push(@attrSystemIds, $attr); - #push(@attrChipIds, $attr->{id}); - push(@attrChipIds, $attr); + } elsif ($attr->{targetType} eq "TARGET_TYPE_PROC_CHIP") { - } elsif($attr->{targetType} eq "TARGET_TYPE_CORE") { + push(@attrChipIds, $attr); - # push(@attrCoreIds, $attr->{id}); - push(@attrCoreIds, $attr); - - } elsif($attr->{targetType} eq "TARGET_TYPE_EQ") { + } elsif ($attr->{targetType} eq "TARGET_TYPE_CORE") { - # push(@attrEqIds, $attr->{id}); - push(@attrEqIds, $attr); + push(@attrCoreIds, $attr); - } elsif($attr->{targetType} eq "TARGET_TYPE_EX") { + } elsif ($attr->{targetType} eq "TARGET_TYPE_EQ") { - # push(@attrExIds, $attr->{id}); - push(@attrExIds, $attr); + push(@attrEqIds, $attr); - } elsif($attr->{targetType} eq "TARGET_TYPE_PERV") { + } elsif ($attr->{targetType} eq "TARGET_TYPE_EX") { -# push(@attrPervIds, $attr->{id}); - push(@attrPervIds, $attr); + push(@attrExIds, $attr); - } else { + } elsif ($attr->{targetType} eq "TARGET_TYPE_PERV") { - print ("ppeParseProcSbeFixed.pl ERROR. Wrong attribute type: $attr->{targetType} for attribute $attr->{id} in $infile\n"); - exit(1); + push(@attrPervIds, $attr); - } + } else { + print ("ppeParseProcSbeFixed.pl ERROR. Wrong attribute type: $attr->{targetType} for attribute $attr->{id} in $infile\n"); + exit(1); + + } } } } - } +print SYFILE "// proc_sbe_fixed_system.H\n"; +print SYFILE "// This file is generated by perl script ppeParseProcSbeFixed.pl\n\n"; +print SYFILE "#ifndef __PROC_SBE_FIXED_SYSTEM_H__\n"; +print SYFILE "#define __PROC_SBE_FIXED_SYSTEM_H__\n\n"; +foreach my $attr (@attrSystemIds) +{ + + my $value = uc $attr->{valueType}; + print SYFILE "PROC_SBE_FIXED_$value($attr->{id});\n" + + +} +print SYFILE "\n#endif // __PROC_SBE_FIXED_SYSTEM_H__"; + print CHFILE "// proc_sbe_fixed_proc_chip.H\n"; print CHFILE "// This file is generated by perl script ppeParseProcSbeFixed.pl\n\n"; print CHFILE "#ifndef __PROC_SBE_FIXED_PROC_CHIP_H__\n"; @@ -166,7 +182,7 @@ foreach my $attr (@attrChipIds) my $value = uc $attr->{valueType}; print CHFILE "PROC_SBE_FIXED_$value($attr->{id});\n" - + } print CHFILE "\n#endif // __PROC_SBE_FIXED_PROC_CHIP_H__"; @@ -180,7 +196,7 @@ foreach my $attr (@attrExIds) my $value = uc $attr->{valueType}; print EXFILE "PROC_SBE_FIXED_TARGET_$value($attr->{id}, EX_TARGET_COUNT);\n" - + } print EXFILE "\n#endif // __PROC_SBE_FIXED_EX_H__"; @@ -195,7 +211,7 @@ foreach my $attr (@attrCoreIds) my $value = uc $attr->{valueType}; print COFILE "PROC_SBE_FIXED_TARGET_$value($attr->{id}, CORE_TARGET_COUNT);\n" - + } print COFILE "\n#endif // __PROC_SBE_FIXED_CO_H__"; @@ -211,7 +227,7 @@ foreach my $attr (@attrEqIds) my $value = uc $attr->{valueType}; print EQFILE "PROC_SBE_FIXED_TARGET_$value($attr->{id}, EQ_TARGET_COUNT);\n" - + } print EQFILE "\n#endif // __PROC_SBE_FIXED_EQ_H__"; @@ -227,18 +243,12 @@ foreach my $attr (@attrPervIds) my $value = uc $attr->{valueType}; print PEFILE "PROC_SBE_FIXED_TARGET_$value($attr->{id}, PERV_TARGET_COUNT);\n" - + } print PEFILE "\n#endif // __PROC_SBE_FIXED_PERV_H__"; - - - - - - #print ASFILE "#endif // __PROC_SBE_FIXED_H__"; |