mirror of
https://github.com/qemu/qemu.git
synced 2024-12-11 12:43:55 +08:00
hw/block/pflash_cfi02: Extract pflash_regions_count()
Extract the pflash_regions_count() function, the code will be easier to review. Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Message-Id: <20190627202719.17739-20-philmd@redhat.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
This commit is contained in:
parent
6465905355
commit
102f0f79a5
@ -157,6 +157,11 @@ static void pflash_register_memory(PFlashCFI02 *pfl, int rom_mode)
|
||||
pfl->rom_mode = rom_mode;
|
||||
}
|
||||
|
||||
static size_t pflash_regions_count(PFlashCFI02 *pfl)
|
||||
{
|
||||
return pfl->cfi_table[0x2c];
|
||||
}
|
||||
|
||||
static void pflash_timer (void *opaque)
|
||||
{
|
||||
PFlashCFI02 *pfl = opaque;
|
||||
@ -192,9 +197,8 @@ static uint64_t pflash_data_read(PFlashCFI02 *pfl, hwaddr offset,
|
||||
static uint32_t pflash_sector_len(PFlashCFI02 *pfl, hwaddr offset)
|
||||
{
|
||||
assert(offset < pfl->chip_len);
|
||||
int nb_regions = pfl->cfi_table[0x2C];
|
||||
hwaddr addr = 0;
|
||||
for (int i = 0; i < nb_regions; ++i) {
|
||||
for (int i = 0; i < pflash_regions_count(pfl); ++i) {
|
||||
uint64_t region_size = (uint64_t)pfl->nb_blocs[i] * pfl->sector_len[i];
|
||||
if (addr <= offset && offset < addr + region_size) {
|
||||
return pfl->sector_len[i];
|
||||
|
Loading…
Reference in New Issue
Block a user