mirror of
https://review.coreboot.org/flashrom.git
synced 2025-07-01 14:11:15 +02:00
Make struct flashchip a field in struct flashctx instead of a complete copy
All the driver conversion work and cleanup has been done by Stefan. flashrom.c and cli_classic.c are a joint work of Stefan and Carl-Daniel. Corresponding to flashrom svn r1579. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at> Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at> Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
This commit is contained in:
6
spi.c
6
spi.c
@ -111,16 +111,16 @@ int spi_chip_read(struct flashctx *flash, uint8_t *buf, unsigned int start,
|
||||
* means 0xffffff, the highest unsigned 24bit number.
|
||||
*/
|
||||
addrbase = spi_get_valid_read_addr(flash);
|
||||
if (addrbase + flash->total_size * 1024 > (1 << 24)) {
|
||||
if (addrbase + flash->chip->total_size * 1024 > (1 << 24)) {
|
||||
msg_perr("Flash chip size exceeds the allowed access window. ");
|
||||
msg_perr("Read will probably fail.\n");
|
||||
/* Try to get the best alignment subject to constraints. */
|
||||
addrbase = (1 << 24) - flash->total_size * 1024;
|
||||
addrbase = (1 << 24) - flash->chip->total_size * 1024;
|
||||
}
|
||||
/* Check if alignment is native (at least the largest power of two which
|
||||
* is a factor of the mapped size of the chip).
|
||||
*/
|
||||
if (ffs(flash->total_size * 1024) > (ffs(addrbase) ? : 33)) {
|
||||
if (ffs(flash->chip->total_size * 1024) > (ffs(addrbase) ? : 33)) {
|
||||
msg_perr("Flash chip is not aligned natively in the allowed "
|
||||
"access window.\n");
|
||||
msg_perr("Read will probably return garbage.\n");
|
||||
|
Reference in New Issue
Block a user