Hi Zack, #1: Fixed #2: Fixed #3: Fixed
All were tested against the MC1322x after I made the changes. I did not attach a new MC1322x config since that did not change. Thanks! Jeff
OOCD-jlink-patch.v2
Description: Binary data
OOCD-target-patch.v2
Description: Binary data
El Mar 27, 2009, a las 14:51 , Zach Welch escribió:
On Fri, 2009-03-27 at 12:12 -0700, Jeff Williams wrote:Hi Duane,I broke the fixes into two patches. I'm also attaching the config forthis part. Patch #1: JLink I really tried to get this stuff to work without changing the state table, but the fact is that the state table is part of the problem (and the fix). When I walk all 36 routes of the current state table using the ARM reference manual it surprises me that it works. Tho' I am new to this, so I could be missing something.1) With gcc 4.1.2, I get the following new warning in jtag.h (which appears in every file that includes it): ../../src/jtag/jtag.h:82: warning: useless storage class specifier in empty declaration After dropping the standalone typedef that follows it, that enum type definition can be written like this to eliminate the warning: typedef enum jtag_state { .... } jtag_state_t; I would also see you drop the first name (jtag_state), but some code appears to reference that declaration rather than the _t type name. 2) Add a forward declaration of debug_state_machine before thejtag_tap_execute execute to eliminate its implicit declaration warning.Patch #2: target (Thumb problems) I removed the experimental clock_in_out routine, but I did leave thetwo debug statements where I see crashing out of thumb mode. I figureif folks are going to help us here then this bit of unobtrusive code is a good places for others to hook into the problem.Here are the new warnings that I see produced by this patch: gcc ..... -c -o arm7_9_common.o arm7_9_common.c arm7tdmi.c: In function 'arm7tdmi_clock_data_in': arm7tdmi.c:224: warning: assignment from incompatible pointer type arm7tdmi.c: In function 'arm7tdmi_clock_data_in_endianness': arm7tdmi.c:285: warning: assignment from incompatible pointer type arm7tdmi.c: In function 'arm7tdmi_read_core_regs': arm7tdmi.c:401: warning: passing argument 3 of 'arm7tdmi_clock_out' makes pointer from integer without a cast arm7tdmi.c:401: warning: passing argument 4 of 'arm7tdmi_clock_out' makes integer from pointer without a cast arm7tdmi.c:404: warning: passing argument 3 of 'arm7tdmi_clock_out' makes pointer from integer without a cast arm7tdmi.c:404: warning: passing argument 4 of 'arm7tdmi_clock_out' makes integer from pointer without a cast arm7tdmi.c:406: warning: passing argument 3 of 'arm7tdmi_clock_out' makes pointer from integer without a cast arm7tdmi.c:406: warning: passing argument 4 of 'arm7tdmi_clock_out' makes integer from pointer without a cast These should all be trivial to make disappear. When tested, these changes do not appear to make anything worse, and it might even be an improvement. Cheers, Zach
_______________________________________________ Openocd-development mailing list Openocd-development@lists.berlios.de https://lists.berlios.de/mailman/listinfo/openocd-development