+In any case, OpenOCD is not currently GUI-oriented. Accordingly, we now
+expect any such graphics to come from postprocessing.
- measurments for RTOS event timings should also be easy to collect.
+ measurements for RTOS event timings should also be easy to collect.
+Examples include context and message switch times, as well as times
for application interactions.
+
# This script is probably more useful as a reference than as a complete build
# tool but for some configurations it may be usable as-is. It only cross-
# builds libusb-1.0 from source, but the script can be extended to build other
-# prerequisities in a similar manner.
+# prerequisites in a similar manner.
#
# Usage:
# export LIBUSB1_SRC=/path/to/libusb-1.0
delayed = true;
break;
case 0xf:
- label = ", packet and timetamp delayed";
+ label = ", packet and timestamp delayed";
delayed = true;
break;
}
ARM_MODE_SVC = 0x13 /* Supervisor Interrupts Mode */
ARM_MODE_ABORT = 0x17 /* Abort Processing memory Faults Mode */
ARM_MODE_UNDEF = 0x1B /* Undefined Instructions Mode */
- ARM_MODE_SYS = 0x1F /* System Running in Priviledged Operating Mode */
+ ARM_MODE_SYS = 0x1F /* System Running in Privileged Operating Mode */
ARM_MODE_MASK = 0x1F
I_BIT = 0x80 /* disable IRQ when I bit is set */
do {
asm volatile ("mrc p14, 0, %0, C0, C0" : "=r" (dcc_reg) :);
- /* operation controled by master, cancel operation
+ /* operation controlled by master, cancel operation
upon reception of data for immediate response */
if (dcc_reg&1) return -1;
} while (dcc_reg&2);
}
}
- return(0); /* we shall never get here, just to supress compiler warning */
+ return 0; /* we shall never get here, just to suppress compiler warning */
}
/* command/response mask */
#define OCL_CMD_MASK 0xFFFF0000L
-/* commads */
+/* commands */
#define OCL_FLASH_BLOCK 0x0CFB0000L
#define OCL_ERASE_BLOCK 0x0CEB0000L
#define OCL_ERASE_ALL 0x0CEA0000L
/******************************************************************************
*
-* Define for the clock frequencey input to the flash module in number of MHz
+* Define for the clock frequency input to the flash module in number of MHz
*
******************************************************************************/
#define FLASH_MODULE_CLK_FREQ 48
* This function will erase the specified flash sector. The function will
* not return until the flash sector has been erased or an error condition
* occurred. If flash top sector is erased the function will program the
-* the device security data bytes with default values. The device security
+* device security data bytes with default values. The device security
* data located in the customer configuration area of the flash top sector,
* must have valid values at all times. These values affect the configuration
* of the device during boot.
*
* This function will erase all unprotected flash sectors. The function will
* not return until the flash sectors has been erased or an error condition
-* occurred. Since the flash top sector is erased the function will program the
+* occurred. Since the flash top sector is erased the function will program
* the device security data bytes with default values. The device security
* data located in the customer configuration area of the flash top sector,
* must have valid values at all times. These values affect the configuration
/******************************************************************************
*
-* The following are constructs created by the linker indicating where the
+* The following are constructs created by the linker indicating where
* the "bss" and "ebss" segments reside in memory.
*
******************************************************************************/
/* If we have not reached the next page boundary after the target address, keep going */
bls find_next_page_boundary
write_enable:
- /* Flush read/write fifo's */
+ /* Flush read/write fifos */
bl flush_fifo
/* Instruction byte 1 */
bl stop_tx /* Otherwise, end the command and keep going w/ the next page */
add r10, r4 /* Move up the end-of-page address by the page size*/
check_flash_busy: /* Wait for the flash to finish the previous page write */
- /* Flush read/write fifo's */
+ /* Flush read/write fifos */
bl flush_fifo
/* Instruction byte 1 */
movs r8, #0x1
uint32_t shutdown_mode_bits = (shutdown_mode == PCM_LPM45) ?
PCM_CTL0_LPMR_12 : PCM_CTL0_LPMR_10;
- /* If a power transition is occuring, return false */
+ /* If a power transition is occurring, return false */
if (BITBAND_PERI(PCM->CTL1, PCM_CTL1_PMR_BUSY_OFS))
return false;
};
/*
- * The following are constructs created by the linker, indicating where the
- * the "data" and "bss" segments reside in memory. The initializers for the
- * for the "data" segment resides immediately following the "text" segment.
+ * The following are constructs created by the linker, indicating where
+ * the "data" and "bss" segments reside in memory. The initializers for
+ * the "data" segment resides immediately following the "text" segment.
*/
extern uint32_t __bss_start__;
extern uint32_t __bss_end__;
};
/*
- * The following are constructs created by the linker, indicating where the
- * the "data" and "bss" segments reside in memory. The initializers for the
- * for the "data" segment resides immediately following the "text" segment.
+ * The following are constructs created by the linker, indicating where
+ * the "data" and "bss" segments reside in memory. The initializers for
+ * the "data" segment resides immediately following the "text" segment.
*/
extern uint32_t __bss_start__;
extern uint32_t __bss_end__;
* Code limitations:
* The workarea must have size multiple of 4 bytes, since R/W
* operations are all at 32 bits.
- * The workarea must be big enough to contain rp, wp and data, thus the minumum
+ * The workarea must be big enough to contain rp, wp and data, thus the minimum
* workarea size is: min_wa_size = sizeof(rp, wp, data) = 4 + 4 + sizeof(data).
* - for 0x450 devices: sizeof(data) = 32 bytes, thus min_wa_size = 40 bytes.
* - for 0x480 devices: sizeof(data) = 16 bytes, thus min_wa_size = 24 bytes.
str r7, [r5, #STM32_FLASH_CR_OFFSET]
mov r8, #4
- udiv r8, r4, r8 /* number of words is size of write word devided by 4*/
+ udiv r8, r4, r8 /* number of words is size of write word divided by 4*/
write_flash:
dsb
ldr r7, [r6], #0x04 /* read one word from src, increment ptr */
tsteq r4, #0x100 /* write protection set */
bne exit
add r1, r1, #0x8 /* next 8 bytes */
- subs r3, r3, #1 /* decremment dword count */
+ subs r3, r3, #1 /* decrement dword count */
bne write
exit:
b exit
strh r5, [r4, #0]
tst r3, #0x12
bne exit
- subs r2, r2, #1 /* decremment word count */
+ subs r2, r2, #1 /* decrement word count */
bne write
exit:
bkpt #0
show(ocd.send("capture { echo \"echo says hi!\" }")[:-1])
show(ocd.send("capture \"halt\"")[:-1])
- # Read the first few words at the RAM region (put starting adress of RAM
+ # Read the first few words at the RAM region (put starting address of RAM
# region into 'addr')
addr = 0x10000000