Exemplo n.º 1
0
static nxt_error_t
nxt_flash_alter_lock(nxt_t *nxt, int region_num,
                     enum nxt_flash_commands cmd)
{
    nxt_word_t w = 0x5A000000 | ((64 * region_num) << 8);
    w += cmd;

    NXT_ERR(nxt_flash_wait_ready(nxt));

    /* Flash mode register: FCMN 0x5, FWS 0x1
     * Flash command register: KEY 0x5A, FCMD = clear-lock-bit (0x4)
     * Flash mode register: FCMN 0x34, FWS 0x1
     */
    NXT_ERR(nxt_write_word(nxt, 0xFFFFFF60, 0x00050100));
    NXT_ERR(nxt_write_word(nxt, 0xFFFFFF64, w));
    NXT_ERR(nxt_write_word(nxt, 0xFFFFFF60, 0x00340100));

    return NXT_OK;
}
Exemplo n.º 2
0
static nxt_error_t
nxt_flash_finish(nxt_t *nxt)
{
  return nxt_flash_wait_ready(nxt);
}