On Tuesday 19 May 2009 12:54:31 Raúl Sánchez Siles wrote: > Hello: > > This is my first try to implement the x16_as_x8 flash bank option. It is > working for me as I would expect flash to work, but please consider this > patchset as work in progress since it may still has some flaws. > > Al patches touch just src/flash/cfi.c file and should apply in this order > to trunk. > > The patchset consists of 4 patches, whose interest areas I > explain and comment below: > > 01-x16_as_x8-consolidate_addresses > · Manufacturer and device id retrieval in cfi_probe function weren't > using the generic flash_address. Use it there.
-- Raúl Sánchez Siles Departamento de Montaje INFOGLOBAL, S. A. * C/ Virgilio, 2. Ciudad de la Imagen. 28223 Pozuelo de Alarcón (Madrid), España * T: +34 91 506 40 00 * F: +34 91 506 40 01
--- a/src/flash/cfi.c +++ b/src/flash/cfi.c @@ -2129,11 +2129,11 @@ if (bank->chip_width == 1) { u8 manufacturer, device_id; - if((retval = target_read_u8(target, bank->base + 0x0, &manufacturer)) != ERROR_OK) + if((retval = target_read_u8(target, flash_address(bank, 0, 0x00), &manufacturer)) != ERROR_OK) { return retval; } - if((retval = target_read_u8(target, bank->base + 0x1, &device_id)) != ERROR_OK) + if((retval = target_read_u8(target, flash_address(bank, 0, 0x01), &device_id)) != ERROR_OK) { return retval; } @@ -2142,11 +2142,11 @@ } else if (bank->chip_width == 2) { - if((retval = target_read_u16(target, bank->base + 0x0, &cfi_info->manufacturer)) != ERROR_OK) + if((retval = target_read_u16(target, flash_address(bank, 0, 0x00), &cfi_info->manufacturer)) != ERROR_OK) { return retval; } - if((retval = target_read_u16(target, bank->base + 0x2, &cfi_info->device_id)) != ERROR_OK) + if((retval = target_read_u16(target, flash_address(bank, 0, 0x02), &cfi_info->device_id)) != ERROR_OK) { return retval; }
_______________________________________________ Openocd-development mailing list Openocd-development@lists.berlios.de https://lists.berlios.de/mailman/listinfo/openocd-development