Lines Matching refs:sect
197 unsigned long flash_sector_size(flash_info_t *info, flash_sect_t sect) in flash_sector_size() argument
199 if (sect != (info->sector_count - 1)) in flash_sector_size()
200 return info->start[sect + 1] - info->start[sect]; in flash_sector_size()
202 return info->start[0] + info->size - info->start[sect]; in flash_sector_size()
209 flash_map(flash_info_t *info, flash_sect_t sect, uint offset) in flash_map() argument
213 return (void *)(info->start[sect] + byte_offset); in flash_map()
216 static inline void flash_unmap(flash_info_t *info, flash_sect_t sect, in flash_unmap() argument
320 static ulong flash_read_long (flash_info_t *info, flash_sect_t sect, in flash_read_long() argument
329 addr = flash_map(info, sect, offset); in flash_read_long()
348 flash_unmap(info, sect, offset, addr); in flash_read_long()
356 static void flash_write_cmd(flash_info_t *info, flash_sect_t sect, in flash_write_cmd() argument
362 addr = flash_map(info, sect, offset); in flash_write_cmd()
401 flash_unmap(info, sect, offset, addr); in flash_write_cmd()
404 static void flash_unlock_seq(flash_info_t *info, flash_sect_t sect) in flash_unlock_seq() argument
406 flash_write_cmd(info, sect, info->addr_unlock1, AMD_CMD_UNLOCK_START); in flash_unlock_seq()
407 flash_write_cmd(info, sect, info->addr_unlock2, AMD_CMD_UNLOCK_ACK); in flash_unlock_seq()
412 static int flash_isequal(flash_info_t *info, flash_sect_t sect, uint offset, in flash_isequal() argument
419 addr = flash_map(info, sect, offset); in flash_isequal()
453 flash_unmap(info, sect, offset, addr); in flash_isequal()
460 static int flash_isset(flash_info_t *info, flash_sect_t sect, uint offset, in flash_isset() argument
467 addr = flash_map(info, sect, offset); in flash_isset()
486 flash_unmap(info, sect, offset, addr); in flash_isset()
493 static int flash_toggle(flash_info_t *info, flash_sect_t sect, uint offset, in flash_toggle() argument
500 addr = flash_map(info, sect, offset); in flash_toggle()
520 flash_unmap(info, sect, offset, addr); in flash_toggle()
531 static int flash_is_busy(flash_info_t *info, flash_sect_t sect) in flash_is_busy() argument
539 retval = !flash_isset(info, sect, 0, FLASH_STATUS_DONE); in flash_is_busy()
547 flash_write_cmd(info, sect, info->addr_unlock1, in flash_is_busy()
549 retval = !flash_isset(info, sect, 0, in flash_is_busy()
552 retval = flash_toggle(info, sect, 0, in flash_is_busy()
789 flash_sect_t sect = 0; in flash_write_cfiword() local
825 sect = find_sector(info, dest); in flash_write_cfiword()
826 flash_unlock_seq(info, sect); in flash_write_cfiword()
827 flash_write_cmd(info, sect, info->addr_unlock1, AMD_CMD_WRITE); in flash_write_cfiword()
832 sect = find_sector(info, dest); in flash_write_cfiword()
860 sect = find_sector(info, dest); in flash_write_cfiword()
866 return flash_full_status_check(info, sect, in flash_write_cfiword()
1059 flash_sect_t sect; in flash_erase() local
1072 for (sect = s_first; sect <= s_last; ++sect) in flash_erase()
1073 if (info->protect[sect]) in flash_erase()
1082 for (sect = s_first; sect <= s_last; sect++) { in flash_erase()
1088 if (info->protect[sect] == 0) { /* not protected */ in flash_erase()
1098 size = flash_sector_size(info, sect); in flash_erase()
1100 flash = (u32 *)info->start[sect]; in flash_erase()
1119 flash_write_cmd(info, sect, 0, in flash_erase()
1121 flash_write_cmd(info, sect, 0, in flash_erase()
1123 flash_write_cmd(info, sect, 0, in flash_erase()
1128 flash_unlock_seq(info, sect); in flash_erase()
1129 flash_write_cmd(info, sect, in flash_erase()
1132 flash_unlock_seq(info, sect); in flash_erase()
1133 flash_write_cmd(info, sect, 0, in flash_erase()
1142 flash_write_cmd(info, sect, 0, in flash_erase()
1157 dest = flash_map(info, sect, 0); in flash_erase()
1161 flash_unmap(info, sect, 0, dest); in flash_erase()
1163 st = flash_full_status_check(info, sect, in flash_erase()