This is an automated email from Gerrit.

Andreas Fritiofson ([email protected]) just uploaded a new patch set 
to Gerrit, which you can find at http://openocd.zylin.com/1657

-- gerrit

commit 3c80a6c71dcb140e91f7a55d7056964ee1a497b1
Author: Andreas Fritiofson <[email protected]>
Date:   Wed Sep 25 22:20:55 2013 +0200

    cortex_m: mem_ap access functions take number of bytes, not words
    
    Accessing one byte of memory using a 16-bit access is not well defined.
    The current implementation is forgiving and rounds up, but it should not
    be relied upon.
    
    Also, I suspect this code might fail if the byte order differs between
    target and host, but I have no way of verifying it so I left it as it is.
    
    Change-Id: I8d6a511151a194ed419f141703201f0632d84fc8
    Signed-off-by: Andreas Fritiofson <[email protected]>

diff --git a/src/target/cortex_m.c b/src/target/cortex_m.c
index 5892a0e..10a77d5 100644
--- a/src/target/cortex_m.c
+++ b/src/target/cortex_m.c
@@ -1892,7 +1892,7 @@ static int cortex_m3_dcc_read(struct adiv5_dap *swjdp, 
uint8_t *value, uint8_t *
        uint16_t dcrdr;
        int retval;
 
-       mem_ap_read_buf_u16(swjdp, (uint8_t *)&dcrdr, 1, DCB_DCRDR);
+       mem_ap_read_buf_u16(swjdp, (uint8_t *)&dcrdr, 2, DCB_DCRDR);
        *ctrl = (uint8_t)dcrdr;
        *value = (uint8_t)(dcrdr >> 8);
 
@@ -1902,7 +1902,7 @@ static int cortex_m3_dcc_read(struct adiv5_dap *swjdp, 
uint8_t *value, uint8_t *
         * signify we have read data */
        if (dcrdr & (1 << 0)) {
                dcrdr = 0;
-               retval = mem_ap_write_buf_u16(swjdp, (uint8_t *)&dcrdr, 1, 
DCB_DCRDR);
+               retval = mem_ap_write_buf_u16(swjdp, (uint8_t *)&dcrdr, 2, 
DCB_DCRDR);
                if (retval != ERROR_OK)
                        return retval;
        }

-- 

------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from 
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to