B.2.8 opcode 0x07: execute code, B.2.9 opcode 0x08: allocate memory – Artesyn MOTLoad Firmware Package User's Manual (February 2015) User Manual

Page 255

Advertising
background image

Remote Start

MOTLoad Firmware Package User’s Manual (6806800C24D)

255

B.2.8

Opcode 0x07: Execute Code

This command allows the host to cause the target CPU to transfer control to a specific
execution address on the card. The execProgram command, documented in the Commands
section of this manual, is executed on the target by Remote Start to facilitate the transfer of
control.

VR0 contains the address (as viewed from the target's processor) to begin execution at.

VR2 contains the value that is loaded into CPU register R3 when control is transferred to
the execution address, that is, it is an argument for the executable code.

The state of CPU registers R0 through R2, and R4 through R31 are indeterminate when
control is passed to the address.

Note This command does not return. The OWN flag bit in the IBCA remains clear.

B.2.9

Opcode 0x08: Allocate Memory

This command allows the host to allocate memory on the target using the target firmware's
available memory pool.

VR0 contains the number of bytes to allocate

VR2 contains the alignment of the allocation, which must be a power of 2

The starting address of the allocated memory on the target will be provided in VR1

Note It is important to verify that the response from the target does not indicate an error. If
the allocation fails for some reason, the ERR bit will be set, and the Allocation Failed error code
will be provided, along with a 0 in VR1. Use of the returned 0 as the start address of an allocated
area is not recommended.

Note There is no way to "free" memory allocated with this command, except by resetting the
board.

Advertising