Updated romparse utility to specify device address
authorMike Line <m-line1@ti.com>
Wed, 20 Oct 2010 22:52:17 +0000 (18:52 -0400)
committerMike Line <m-line1@ti.com>
Wed, 20 Oct 2010 22:52:17 +0000 (18:52 -0400)
The romparse utility was updated to handle the c6455 case. Here the i2c
parameter table always lives at i2c address 0x50, the little endian image
lives at 0x50, but the big endian image lives at 0x51. The change allows the
specification of the i2c device address instead of a file name, so
manual placement of the image can be done.

12 files changed:
src/make/ibl_c6455/i2crom_be.map
src/make/ibl_c6455/i2crom_le.map
src/make/ibl_c6472/i2crom_be.map
src/make/ibl_c6472/i2crom_le.map
src/make/ibl_c6474/i2crom_be.map
src/make/ibl_c6474/i2crom_le.map
src/make/makestg2
src/util/romparse/romparse.c
src/util/romparse/rparse.flex
src/util/romparse/rparse.tab.c
src/util/romparse/rparse.tab.h
src/util/romparse/rparse.y

index 700737be424b241370f9dbf8ff6e64727b0c6b71..d0a28e598959edc20f412e2f535d722f91cbe726 100644 (file)
@@ -1,17 +1,35 @@
 section 
 {
-  param_index   = 1
+  param_index   = 0
   boot_mode     = 5
   options       = 1
 
   core_freq_mhz    = 50
   i2c_clk_freq_khz = 400
 
-  dev_addr_ext = 0x51
+  dev_addr_ext = 0x50
 
   multi_i2c_id = 0
   my_i2c_id    = 1
   address_delay = 0
-  exe_file = "ibl_c6472/ibl.i2c.ccs"
+  exe_file = "ibl_c6455/ibl.i2c.le.ccs"
+}
+
+section
+{
+  param_index   = 1
+  boot_mode     = 5
+  options       = 1
+
+  core_freq_mhz    = 50
+  i2c_clk_freq_khz = 400
+
+  dev_addr_ext = 0x51
+  dev_addr     = 0
+
+  multi_i2c_id  = 0
+  my_i2c_id     = 1
+  address_delay = 0
+
 }
 
index d3650be1b694af9611ec9601151176c3333df855..e45fdb1624aadbe06b5cd022a29db2dfe1516d55 100644 (file)
@@ -12,6 +12,25 @@ section
   multi_i2c_id = 0
   my_i2c_id    = 1
   address_delay = 0
-  exe_file = "ibl_c6455/ibl.i2c.ccs"
+  exe_file = "ibl_c6455/ibl.i2c.le.ccs"
 }
 
+section
+{
+  param_index   = 1
+  boot_mode     = 5
+  options       = 1
+
+  core_freq_mhz    = 50
+  i2c_clk_freq_khz = 400
+
+  dev_addr_ext = 0x51
+  dev_addr     = 0
+
+  multi_i2c_id  = 0
+  my_i2c_id     = 1
+  address_delay = 0
+
+}
+
+  
index d19a08f6c3adad732d7b891e9b4cdc962003380f..f9e07ea82af532a222d392b220a343529ce36199 100644 (file)
@@ -13,6 +13,6 @@ section
   multi_i2c_id = 0
   my_i2c_id    = 1
   address_delay = 0
-  exe_file = "ibl_c6472/ibl.i2c.ccs"
+  exe_file = "ibl_c6472/ibl.i2c.be.ccs"
 }
 
index 8a80492072a77e03667d8e5b159b9434cecc6725..242971f08765e3312f992a8d86182d2dba858a1b 100644 (file)
@@ -13,6 +13,6 @@ section
   multi_i2c_id = 0
   my_i2c_id    = 1
   address_delay = 0
-  exe_file = "ibl_c6472/ibl.i2c.ccs"
+  exe_file = "ibl_c6472/ibl.i2c.le.ccs"
 }
 
index 0e0b4e7b15d7cc240e6b3feb859cf2b576e3745e..5e9f422882c48dcad0fa3a9857346d29777f2e2b 100644 (file)
@@ -13,6 +13,6 @@ section
   multi_i2c_id = 0
   my_i2c_id    = 1
   address_delay = 0
-  exe_file = "ibl_c6474/ibl.i2c.ccs"
+  exe_file = "ibl_c6474/ibl.i2c.be.ccs"
 }
 
index b044a1c6cb82582fcd6b09ecc4089b21ffff8805..7551855ff2e7f1b2dd2b90fdb8ba864515ac6c82 100644 (file)
@@ -13,6 +13,6 @@ section
   multi_i2c_id = 0
   my_i2c_id    = 1
   address_delay = 0
-  exe_file = "ibl_c6474/ibl.i2c.ccs"
+  exe_file = "ibl_c6474/ibl.i2c.le.ccs"
 }
 
index 75855bc8ec55f36d8a03483f1b36c84f932a6221..ad08053af5d1499b5a1e8a49beb41ba392cc7817 100644 (file)
@@ -36,7 +36,7 @@ $(TARGETS): $(MODULES) utils $(RIBL)
        ../util/bconvert/bconvert64x -$(IEXT) ibl_le.b ibl.b
        $(CP) ibl.b ibl_$@
        ../util/btoccs/b2i2c ibl_$@/ibl.b ibl_$@/ibl.i2c.b
-       ../util/btoccs/b2ccs ibl_$@/ibl.i2c.b ibl_$@/ibl.i2c.ccs
+       ../util/btoccs/b2ccs ibl_$@/ibl.i2c.b ibl_$@/ibl.i2c.$(IEXT).ccs
        ../util/romparse/romparse ibl_$@/i2crom_$(IEXT).map
        $(CP) i2crom.ccs ibl_$@/i2crom_$(IEXT).ccs
        $(CP) i2crom.ccs ibl_$@/i2crom_$(IEXT).dat
index 5af502943193b706bf107f44ef965df50e0a184f..01033d967206c51f301fee5d03c318c2bd41c8bd 100644 (file)
@@ -263,6 +263,9 @@ void assignKeyVal (int field, int value)
     case DEV_ADDR_EXT:     current_table.i2c.dev_addr_ext = value;
                            break;
 
+    case DEV_ADDR:         current_table.i2c.dev_addr = value;
+                           break;
+
 
   }
 
index 67e02db500a529958f700e3c5cf8814072830720..c84d535c456744c5f42b7fb59fa871c0c1acc332 100644 (file)
@@ -19,6 +19,7 @@ i2c_clk_freq_khz  { yylval = I2C_CLK_FREQ_KHZ;  return (I2C_CLK_FREQ_KHZ);  }
 exe_file          { yylval = EXE_FILE;          return (EXE_FILE);          }
 pci_parm                 { yylval = PCI_PARMS;         return (PCI_PARMS);             }
 dev_addr_ext      { yylval = DEV_ADDR_EXT;      return (DEV_ADDR_EXT);         }
+dev_addr                 { yylval = DEV_ADDR;                  return (DEV_ADDR);                  }
 next_dev_addr     { yylval = NEXT_DEV_ADDR;     return (NEXT_DEV_ADDR);     }
 next_dev_addr_ext { yylval = NEXT_DEV_ADDR_EXT; return (NEXT_DEV_ADDR_EXT); }
 address_delay     { yylval = ADDRESS_DELAY;     return (ADDRESS_DELAY);     }
index c14ff2402a3fc5e091c91212c3b0b5b52f11efb2..0d42fded9935bf17f277917a9eed6962161eb0a1 100644 (file)
@@ -25,6 +25,7 @@
 #define        ADDRESS_DELAY   275
 #define        SWPLL   276
 #define        DEV_ADDR_EXT    277
+#define        DEV_ADDR        278
 
 #line 2 "rparse.y"
 
@@ -43,11 +44,11 @@ extern char *yytext;
 
 
 
-#define        YYFINAL         31
+#define        YYFINAL         32
 #define        YYFLAG          -32768
-#define        YYNTBASE        23
+#define        YYNTBASE        24
 
-#define YYTRANSLATE(x) ((unsigned)(x) <= 277 ? yytranslate[x] : 28)
+#define YYTRANSLATE(x) ((unsigned)(x) <= 278 ? yytranslate[x] : 29)
 
 static const char yytranslate[] = {     0,
      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
@@ -77,23 +78,23 @@ static const char yytranslate[] = {     0,
      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
      2,     2,     2,     2,     2,     1,     2,     3,     4,     5,
      6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
-    16,    17,    18,    19,    20,    21,    22
+    16,    17,    18,    19,    20,    21,    22,    23
 };
 
 #if YYDEBUG != 0
 static const short yyprhs[] = {     0,
      0,     2,     5,    10,    14,    16,    19,    23,    27,    29,
     31,    33,    35,    37,    39,    41,    43,    45,    47,    49,
-    51
+    51,    53
 };
 
-static const short yyrhs[] = {    24,
-     0,    23,    24,     0,     5,     3,    25,     4,     0,    17,
-     6,     8,     0,    26,     0,    25,    26,     0,    27,     6,
-     7,     0,    27,     6,     8,     0,     9,     0,    10,     0,
+static const short yyrhs[] = {    25,
+     0,    24,    25,     0,     5,     3,    26,     4,     0,    17,
+     6,     8,     0,    27,     0,    26,    27,     0,    28,     6,
+     7,     0,    28,     6,     8,     0,     9,     0,    10,     0,
     11,     0,    12,     0,    13,     0,    14,     0,    15,     0,
     16,     0,    18,     0,    19,     0,    22,     0,    20,     0,
-    21,     0
+    21,     0,    23,     0
 };
 
 #endif
@@ -102,7 +103,7 @@ static const short yyrhs[] = {    24,
 static const short yyrline[] = { 0,
     12,    13,    16,    18,    23,    24,    27,    29,    33,    34,
     35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
-    45
+    45,    46
 };
 #endif
 
@@ -112,63 +113,65 @@ static const short yyrline[] = { 0,
 static const char * const yytname[] = {   "$","error","$undefined.","LBRACE",
 "RBRACE","SECTION","EQU","VALUE","STRING","BOOT_MODE","PARAM_INDEX","OPTIONS",
 "MULTI_I2C_ID","MY_I2C_ID","CORE_FREQ_MHZ","I2C_CLK_FREQ_KHZ","EXE_FILE","PCI_PARMS",
-"NEXT_DEV_ADDR","NEXT_DEV_ADDR_EXT","ADDRESS_DELAY","SWPLL","DEV_ADDR_EXT","promspec",
-"bootParams","assigns","assign","keyword", NULL
+"NEXT_DEV_ADDR","NEXT_DEV_ADDR_EXT","ADDRESS_DELAY","SWPLL","DEV_ADDR_EXT","DEV_ADDR",
+"promspec","bootParams","assigns","assign","keyword", NULL
 };
 #endif
 
 static const short yyr1[] = {     0,
-    23,    23,    24,    24,    25,    25,    26,    26,    27,    27,
-    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
-    27
+    24,    24,    25,    25,    26,    26,    27,    27,    28,    28,
+    28,    28,    28,    28,    28,    28,    28,    28,    28,    28,
+    28,    28
 };
 
 static const short yyr2[] = {     0,
      1,     2,     4,     3,     1,     2,     3,     3,     1,     1,
      1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-     1
+     1,     1
 };
 
 static const short yydefact[] = {     0,
      0,     0,     0,     1,     0,     0,     2,     9,    10,    11,
     12,    13,    14,    15,    16,    17,    18,    20,    21,    19,
-     0,     5,     0,     4,     3,     6,     0,     7,     8,     0,
-     0
+    22,     0,     5,     0,     4,     3,     6,     0,     7,     8,
+     0,     0
 };
 
 static const short yydefgoto[] = {     3,
-     4,    21,    22,    23
+     4,    22,    23,    24
 };
 
-static const short yypact[] = {     8,
-     0,    -2,    19,-32768,    28,    12,-32768,-32768,-32768,-32768,
+static const short yypact[] = {    16,
+     0,    -2,    20,-32768,    29,     5,-32768,-32768,-32768,-32768,
 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
-    -4,-32768,    15,-32768,-32768,-32768,    -6,-32768,-32768,    22,
--32768
+-32768,    -4,-32768,    17,-32768,-32768,-32768,    -6,-32768,-32768,
+    22,-32768
 };
 
 static const short yypgoto[] = {-32768,
-    20,-32768,     5,-32768
+    21,-32768,     4,-32768
 };
 
 
-#define        YYLAST          50
+#define        YYLAST          52
 
 
-static const short yytable[] = {    25,
-    28,    29,     5,     6,     8,     9,    10,    11,    12,    13,
-    14,    15,     1,    16,    17,    18,    19,    20,    30,    24,
-    27,    31,     7,     1,     2,    26,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     2,     8,     9,    10,    11,
-    12,    13,    14,    15,     0,    16,    17,    18,    19,    20
+static const short yytable[] = {    26,
+    29,    30,     5,     6,     8,     9,    10,    11,    12,    13,
+    14,    15,    25,    16,    17,    18,    19,    20,    21,    31,
+     1,    32,    28,     7,     1,    27,     0,     0,     0,     0,
+     0,     0,     2,     0,     0,     0,     2,     8,     9,    10,
+    11,    12,    13,    14,    15,     0,    16,    17,    18,    19,
+    20,    21
 };
 
 static const short yycheck[] = {     4,
      7,     8,     3,     6,     9,    10,    11,    12,    13,    14,
-    15,    16,     5,    18,    19,    20,    21,    22,     0,     8,
-     6,     0,     3,     5,    17,    21,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    17,     9,    10,    11,    12,
-    13,    14,    15,    16,    -1,    18,    19,    20,    21,    22
+    15,    16,     8,    18,    19,    20,    21,    22,    23,     0,
+     5,     0,     6,     3,     5,    22,    -1,    -1,    -1,    -1,
+    -1,    -1,    17,    -1,    -1,    -1,    17,     9,    10,    11,
+    12,    13,    14,    15,    16,    -1,    18,    19,    20,    21,
+    22,    23
 };
 /* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
 #line 3 "bison.simple"
@@ -734,6 +737,10 @@ case 20:
     break;}
 case 21:
 #line 45 "rparse.y"
+{  yyval=yyvsp[0];  ;
+    break;}
+case 22:
+#line 46 "rparse.y"
 {  yyval=yyvsp[0];  ;
     break;}
 }
@@ -934,7 +941,7 @@ yyerrhandle:
   yystate = yyn;
   goto yynewstate;
 }
-#line 48 "rparse.y"
+#line 49 "rparse.y"
 
 
 
index 327a5bff1e1ca7547a77488335308d8c9aec6c46..09c5a8eac9080fcb774e20f487d97d5f2a3478bd 100644 (file)
@@ -21,6 +21,7 @@
 #define        ADDRESS_DELAY   275
 #define        SWPLL   276
 #define        DEV_ADDR_EXT    277
+#define        DEV_ADDR        278
 
 
 extern YYSTYPE yylval;
index 3109b3d97eb5dc2680022d6f6d42340c955529e2..e3ebf07aba075754acfd1ca5b055a2957009ee44 100644 (file)
@@ -6,7 +6,7 @@ extern char *yytext;
 %token LBRACE RBRACE SECTION EQU VALUE STRING BOOT_MODE PARAM_INDEX OPTIONS 
 %token MULTI_I2C_ID MY_I2C_ID CORE_FREQ_MHZ I2C_CLK_FREQ_KHZ 
 %token EXE_FILE PCI_PARMS NEXT_DEV_ADDR NEXT_DEV_ADDR_EXT ADDRESS_DELAY SWPLL
-%token DEV_ADDR_EXT
+%token DEV_ADDR_EXT DEV_ADDR
 %%
 
 promspec   : bootParams
@@ -43,6 +43,7 @@ keyword    : BOOT_MODE                     {  $$=$1;  }
                   | DEV_ADDR_EXT        {  $$=$1;  }
                   | ADDRESS_DELAY       {  $$=$1;  }
                   | SWPLL                               {  $$=$1;  }
+                  | DEV_ADDR                    {  $$=$1;  }
                   ;
 
 %%