| ubi_io_write_data#(PNUM, OFFSET, N0, N, BUF, PAGESIZE; PEBS; ERR) {if PNUM < # PEBS ∧ ¬ PEBS[PNUM].bad ∧ PEBS[PNUM].fill ≤ OFFSET + 2 * EB_PAGE_SIZE ∧ OFFSET + N ≤ LEB_SIZE ∧ N0 + N ≤ # BUF ∧ is-aligned(OFFSET, EB_PAGE_SIZE) ∧ is-aligned(N, EB_PAGE_SIZE) then mtd_asm_write#(PNUM, OFFSET + 2 * PAGESIZE, N0, N, BUF; PEBS; ERR) else abort } |