Lines Matching full:page
148 static int flash_erase_block(dmov_s *cmdlist, unsigned *ptrlist, unsigned page)
155 if(page & 63) return -1;
158 data[1] = page;
219 static int _flash_read_page(dmov_s *cmdlist, unsigned *ptrlist, unsigned page, void *_addr, void *_spareaddr)
229 data->addr0 = page << 16;
230 data->addr1 = (page >> 16) & 0xff;
311 dprintf("read page %d: status: %x %x %x %x\n",
312 page, data[5], data[6], data[7], data[8]);
333 static int _flash_write_page(dmov_s *cmdlist, unsigned *ptrlist, unsigned page,
344 data->addr0 = page << 16;
345 data->addr1 = (page >> 16) & 0xff;
429 dprintf("write page %d: status: %x %x %x %x\n",
430 page, data[5], data[6], data[7], data[8]);
470 CFG0 = (3 << 6) /* 4 codeword per page for 2k nand */
529 unsigned page = (ptn->start * 64) + (offset / 2048);
539 while(page < lastpage) {
545 if(_flash_read_page(flash_cmdlist, flash_ptrlist, page++, image, spare)) {
562 unsigned page = ptn->start * 64;
577 if(page >= lastpage) {
582 if((page & 63) == 0) {
583 if(flash_erase_block(flash_cmdlist, flash_ptrlist, page)) {
584 dprintf("flash_write_image: bad block @ %d\n", page
585 page += 64;
591 r = _flash_write_page(flash_cmdlist, flash_ptrlist, page++, image, image + 2048);
593 r = _flash_write_page(flash_cmdlist, flash_ptrlist, page++, image, spare);
596 dprintf("flash_write_image: write failure @ page %d (src %d)\n", page, image - (const unsigned char *)data);
597 image -= (page & 63) * wsize;
598 bytes += (page & 63) * wsize;
599 page &= ~63;
600 if(flash_erase_block(flash_cmdlist, flash_ptrlist, page)) {
601 dprintf("flash_write_image: erase failure @ page %d\n", page);
603 dprintf("flash_write_image: restart write @ page %d (src %d)\n", page, image - (const unsigned char *)data);
604 page += 64;
613 page = (page + 63) & (~63);
614 while(page < lastpage){
615 if(flash_erase_block(flash_cmdlist, flash_ptrlist, page)) {
616 dprintf("flash_write_image: bad block @ %d\n", page >> 6);
618 page += 64;
625 static int flash_read_page(unsigned page, void *data, void *extra)
628 page, data, extra);