| CPC G06F 21/572 (2013.01) | 20 Claims |

|
1. A System on a Chip (SOC) comprising:
at least one processor; and
the at least one processor programmed to perform operations comprising:
accessing firmware code from a boot Read-Only Memory (ROM), the firmware code comprising a plurality of functional blocks;
determining that firmware patching is active for the SOC;
accessing patch data from a non-volatile memory of the SOC;
determining that a first functional block of the firmware code has been patched;
accessing first patch code from the patch data, the first patch code being associated with the first functional block;
determining to reuse a portion of the first functional block of the firmware code;
accessing a firmware memory symbol map;
modifying the first patch code to comprise a call to a function from the first functional block of the firmware code, the call being based at least in part on the firmware memory symbol map; and
executing the first patch code, the executing of the first patch code comprising executing the modified first patch code.
|