16 MK60_ENTER_CRITICAL_REGION();
18 MK60_LEAVE_CRITICAL_REGION();
21 xmem_pread(
void *buf,
int nbytes,
unsigned long offset)
24 MK60_ENTER_CRITICAL_REGION();
25 r = flash_readi(FLASH_ID0, offset, buf, nbytes, FLASH_WAIT);
26 MK60_LEAVE_CRITICAL_REGION();
33 xmem_pwrite(
const void *buf,
int nbytes,
unsigned long offset)
36 MK60_ENTER_CRITICAL_REGION();
37 r = flash_writei(FLASH_ID0, offset, (uint8_t *)buf, nbytes, FLASH_WAIT | FLASH_FINISH);
38 MK60_LEAVE_CRITICAL_REGION();
45 xmem_erase(
long nbytes,
unsigned long offset)
51 if(offset % FLASH_SECTOR_SIZE != 0) {
55 if(nbytes % FLASH_SECTOR_SIZE != 0) {
58 first = offset / FLASH_SECTOR_SIZE;
59 for(i = first; i < (first + nbytes / FLASH_SECTOR_SIZE); ++i) {
61 MK60_ENTER_CRITICAL_REGION();
62 r = flash_erase_sector(FLASH_ID0, i, FLASH_WAIT | FLASH_FINISH);
63 MK60_LEAVE_CRITICAL_REGION();
Flash device driver header file for the Mulle platform.
K60 interrupt save/restore macros.