FreeCalypso > hg > freecalypso-tools
view target-utils/libbase/waitarm.S @ 607:d5abcbbf7432
scripts/gtm900[bp]-ffs-clean: remove some more wrong files
An earlier version of GTM900-B firmware has been found in the wild that
still has MFW&BMI layers included (producing files under /mmi), as well as
enlarged /pcm/L[DMR]N files. These files are wrong for FreeCalypso fw
and thus need to be cleaned out.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Tue, 11 Feb 2020 21:27:40 +0000 |
parents | 06ad5e30e8d0 |
children |
line wrap: on
line source
/* * This assembly module provides a wait_ARM_cycles() function similar to * the one in TI's firmware; it is meant to gradually replace and phase out * osmo_delay_ms(). One loop count for this function equals 4 ARM clock * cycles when running out of IRAM; if the ARM clock is 52 MHz, 13 loop counts * equal one microsecond. * * Note the instruction sequence difference from TI's firmware version: * we use the SUBS instruction (equivalent of plain SUB in Thumb) and omit * the CMP, which is why our version is 4 cycles per loop (when running * out of IRAM), as opposed to 5 cycles per loop (plus wait states as they * execute from flash) in TI's fw version. */ .text .code 32 .globl wait_ARM_cycles wait_ARM_cycles: cmp r0, #0 bxeq lr 1: subs r0, r0, #1 bne 1b bx lr