From 06e611385fa2582e23477ab302b8432c32e6d6bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnim=20L=C3=A4uger?= Date: Sun, 20 Jan 2008 20:33:57 +0000 Subject: [PATCH] support OBSERVE_ONLY attribute in cell description (like input attribute) part 2 of fix for [ 1875737 ] Syntax errors/Port index warning parsing ATMEL BSDL files git-svn-id: https://urjtag.svn.sourceforge.net/svnroot/urjtag/trunk@935 b68d4a1b-bc3d-0410-92ed-d4ac073336b7 --- jtag/ChangeLog | 4 ++++ jtag/src/bsdl/bsdl_bison.y | 2 ++ jtag/src/bsdl/bsdl_flex.l | 4 ++-- jtag/src/bsdl/bsdl_sem.c | 2 ++ 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/jtag/ChangeLog b/jtag/ChangeLog index 61bd21be..bf11e303 100644 --- a/jtag/ChangeLog +++ b/jtag/ChangeLog @@ -3,6 +3,10 @@ * src/bsdl/bsdl_bison.y, src/bsdl/bsdl_sem.c, src/bsdl/bsdl.h: handle vectored ports correctly, part 1 of fix for [ 1875737 ] Syntax errors/Port index warning parsing ATMEL BSDL files + * src/bsdl/bsdl_bison.y, src/bsdl/bsdl_sem.c, src/bsdl/bsdl_flex.l: + support OBSERVE_ONLY attribute in cell description (like input attribute) + part 2 of fix for + [ 1875737 ] Syntax errors/Port index warning parsing ATMEL BSDL files 2008-01-20 Kolja Waschk diff --git a/jtag/src/bsdl/bsdl_bison.y b/jtag/src/bsdl/bsdl_bison.y index 7641dc2f..6d7da4f2 100644 --- a/jtag/src/bsdl/bsdl_bison.y +++ b/jtag/src/bsdl/bsdl_bison.y @@ -822,6 +822,8 @@ Cell_Function : INPUT { $$ = CLOCK; } | BIDIR { $$ = BIDIR; } + | OBSERVE_ONLY + { $$ = OBSERVE_ONLY; } ; Safe_Value : IDENTIFIER { $$ = $1; } diff --git a/jtag/src/bsdl/bsdl_flex.l b/jtag/src/bsdl/bsdl_flex.l index c77077ac..48d31e37 100644 --- a/jtag/src/bsdl/bsdl_flex.l +++ b/jtag/src/bsdl/bsdl_flex.l @@ -241,6 +241,7 @@ Control CONTROL Controlr CONTROLR Internal INTERNAL Clock CLOCK +Observe_Only OBSERVE_ONLY Bidir BIDIR Bidir_In BIDIR_IN Bidir_Out BIDIR_OUT @@ -267,7 +268,6 @@ Runbist_Execution RUNBIST_EXECUTION Intest_Execution INTEST_EXECUTION Bsdl_Extension BSDL_EXTENSION Compliance_Patterns COMPLIANCE_PATTERNS -Observe_Only OBSERVE_ONLY %% {Entity} {return(ENTITY); } {Port} {yyextra->Base = DECIMAL; /* Default number base */ @@ -350,6 +350,7 @@ Observe_Only OBSERVE_ONLY {Control} {return(CONTROL); } {Internal} {return(INTERNAL); } {Clock} {return(CLOCK); } +{Observe_Only} {return(OBSERVE_ONLY); } {Bidir} {return(BIDIR); } {Bidir_In} {return(BIDIR_IN); } {Bidir_Out} {return(BIDIR_OUT); } @@ -357,7 +358,6 @@ Observe_Only OBSERVE_ONLY {Sample} {return(SAMPLE); } {Intest} {return(INTEST); } {Runbist} {return(RUNBIST); } -{Observe_Only} {return(OBSERVE_ONLY); } {Pi} {return(PI); } {Po} {return(PO); } {Upd} {return(UPD); } diff --git a/jtag/src/bsdl/bsdl_sem.c b/jtag/src/bsdl/bsdl_sem.c index 742be1ff..16de205f 100644 --- a/jtag/src/bsdl/bsdl_sem.c +++ b/jtag/src/bsdl/bsdl_sem.c @@ -619,6 +619,8 @@ void bsdl_ci_apply_cell_info(parser_priv_t *priv, int bit_num) case OUTPUT3: cmd[2] = "O"; break; + case OBSERVE_ONLY: + /* fall through */ case INPUT: /* fall through */ case CLOCK: