Lines Matching refs:sector
576 static int flash_status_check(flash_info_t *info, flash_sect_t sector, in flash_status_check() argument
595 while (flash_is_busy(info, sector)) { in flash_status_check()
598 prompt, info->start[sector], in flash_status_check()
599 flash_read_long(info, sector, 0)); in flash_status_check()
600 flash_write_cmd(info, sector, 0, info->cmd_reset); in flash_status_check()
615 static int flash_full_status_check(flash_info_t *info, flash_sect_t sector, in flash_full_status_check() argument
620 retcode = flash_status_check(info, sector, tout, prompt); in flash_full_status_check()
626 !flash_isset(info, sector, 0, FLASH_STATUS_DONE)) { in flash_full_status_check()
629 info->start[sector]); in flash_full_status_check()
630 if (flash_isset(info, sector, 0, FLASH_STATUS_ECLBS | in flash_full_status_check()
633 } else if (flash_isset(info, sector, 0, in flash_full_status_check()
637 } else if (flash_isset(info, sector, 0, in flash_full_status_check()
641 if (flash_isset(info, sector, 0, FLASH_STATUS_DPS)) { in flash_full_status_check()
645 if (flash_isset(info, sector, 0, FLASH_STATUS_VPENS)) in flash_full_status_check()
648 flash_write_cmd(info, sector, 0, info->cmd_reset); in flash_full_status_check()
771 flash_sect_t sector = saved_sector; in find_sector() local
773 if (info != saved_info || sector >= info->sector_count) in find_sector()
774 sector = 0; in find_sector()
776 while ((sector < info->sector_count - 1) && in find_sector()
777 (info->start[sector] < addr)) in find_sector()
778 sector++; in find_sector()
779 while ((info->start[sector] > addr) && (sector > 0)) in find_sector()
784 sector--; in find_sector()
786 saved_sector = sector; in find_sector()
788 return sector; in find_sector()
883 flash_sect_t sector; in flash_write_cfibuffer() local
944 sector = find_sector(info, dest); in flash_write_cfibuffer()
953 flash_write_cmd(info, sector, 0, FLASH_CMD_CLEAR_STATUS); in flash_write_cfibuffer()
954 flash_write_cmd(info, sector, 0, FLASH_CMD_READ_STATUS); in flash_write_cfibuffer()
955 flash_write_cmd(info, sector, 0, write_cmd); in flash_write_cfibuffer()
956 retcode = flash_status_check(info, sector, in flash_write_cfibuffer()
964 flash_write_cmd(info, sector, 0, cnt - 1); in flash_write_cfibuffer()
988 flash_write_cmd(info, sector, 0, in flash_write_cfibuffer()
991 info, sector, info->buffer_write_tout, in flash_write_cfibuffer()
999 flash_unlock_seq(info, sector); in flash_write_cfibuffer()
1002 offset = ((unsigned long)dst - info->start[sector]) >> shift; in flash_write_cfibuffer()
1004 flash_write_cmd(info, sector, offset, AMD_CMD_WRITE_TO_BUFFER); in flash_write_cfibuffer()
1006 flash_write_cmd(info, sector, offset, cnt - 1); in flash_write_cfibuffer()
1038 flash_write_cmd(info, sector, 0, AMD_CMD_WRITE_BUFFER_CONFIRM); in flash_write_cfibuffer()
1045 retcode = flash_full_status_check(info, sector, in flash_write_cfibuffer()
1453 static int cfi_protect_bugfix(flash_info_t *info, long sector, int prot) in cfi_protect_bugfix() argument
1461 flash_write_cmd(info, sector, 0, FLASH_CMD_READ_ID); in cfi_protect_bugfix()
1462 if (!flash_isequal(info, sector, FLASH_OFFSET_PROTECT, in cfi_protect_bugfix()
1476 flash_write_cmd(info, sector, 0, FLASH_CMD_PROTECT); in cfi_protect_bugfix()
1477 flash_write_cmd(info, sector, 0, cmd); in cfi_protect_bugfix()
1487 int flash_real_protect(flash_info_t *info, long sector, int prot) in flash_real_protect() argument
1495 if (!cfi_protect_bugfix(info, sector, prot)) { in flash_real_protect()
1496 flash_write_cmd(info, sector, 0, in flash_real_protect()
1498 flash_write_cmd(info, sector, 0, in flash_real_protect()
1501 flash_write_cmd(info, sector, 0, in flash_real_protect()
1504 flash_write_cmd(info, sector, 0, in flash_real_protect()
1518 flash_write_cmd(info, sector, 0, in flash_real_protect()
1525 flash_write_cmd(info, sector, in flash_real_protect()
1536 lock_flag = flash_isset(info, sector, 0, 0x01); in flash_real_protect()
1539 flash_write_cmd(info, sector, 0, in flash_real_protect()
1541 flash_write_cmd(info, sector, 0, in flash_real_protect()
1544 debug("sector %ld %slocked\n", sector, in flash_real_protect()
1548 debug("unlock %ld\n", sector); in flash_real_protect()
1554 debug("sector %ld %sunlocked\n", sector, in flash_real_protect()
1560 if (flash_status_check(info, sector, in flash_real_protect()
1573 flash_write_cmd(info, sector, 0, FLASH_CMD_CLEAR_STATUS); in flash_real_protect()
1574 flash_write_cmd(info, sector, 0, FLASH_CMD_PROTECT); in flash_real_protect()
1576 flash_write_cmd(info, sector, 0, in flash_real_protect()
1579 flash_write_cmd(info, sector, 0, in flash_real_protect()
1588 flash_write_cmd(info, sector, 0, FLASH_CMD_READ_STATUS); in flash_real_protect()
1589 retcode = flash_full_status_check(info, sector, info->erase_blk_tout, in flash_real_protect()
1592 info->protect[sector] = prot; in flash_real_protect()
2081 phys_addr_t sector; in flash_get_size() local
2183 sector = base; in flash_get_size()
2202 if (sector - base >= info->size) in flash_get_size()
2209 (ulong)map_physmem(sector, in flash_get_size()
2212 sector += (erase_region_size * size_ratio); in flash_get_size()