m25p80.c (3b35d4542c8537a9269f6372df531ced6c960084) | m25p80.c (a9262f551eba44d4d0f9e396d7124c059a93e204) |
---|---|
1/* 2 * ST M25P80 emulator. Emulate all SPI flash devices based on the m25p80 command 3 * set. Known devices table current as of Jun/2012 and taken from linux. 4 * See drivers/mtd/devices/m25p80.c. 5 * 6 * Copyright (C) 2011 Edgar E. Iglesias <edgar.iglesias@gmail.com> 7 * Copyright (C) 2012 Peter A. G. Crosthwaite <peter.crosthwaite@petalogix.com> 8 * Copyright (C) 2012 PetaLogix --- 1518 unchanged lines hidden (view full) --- 1527 ret = blk_set_perm(s->blk, perm, BLK_PERM_ALL, errp); 1528 if (ret < 0) { 1529 return; 1530 } 1531 1532 trace_m25p80_binding(s); 1533 s->storage = blk_blockalign(s->blk, s->size); 1534 | 1/* 2 * ST M25P80 emulator. Emulate all SPI flash devices based on the m25p80 command 3 * set. Known devices table current as of Jun/2012 and taken from linux. 4 * See drivers/mtd/devices/m25p80.c. 5 * 6 * Copyright (C) 2011 Edgar E. Iglesias <edgar.iglesias@gmail.com> 7 * Copyright (C) 2012 Peter A. G. Crosthwaite <peter.crosthwaite@petalogix.com> 8 * Copyright (C) 2012 PetaLogix --- 1518 unchanged lines hidden (view full) --- 1527 ret = blk_set_perm(s->blk, perm, BLK_PERM_ALL, errp); 1528 if (ret < 0) { 1529 return; 1530 } 1531 1532 trace_m25p80_binding(s); 1533 s->storage = blk_blockalign(s->blk, s->size); 1534 |
1535 if (blk_pread(s->blk, 0, s->storage, s->size, 0) < 0) { | 1535 if (blk_pread(s->blk, 0, s->size, s->storage, 0) < 0) { |
1536 error_setg(errp, "failed to read the initial flash content"); 1537 return; 1538 } 1539 } else { 1540 trace_m25p80_binding_no_bdrv(s); 1541 s->storage = blk_blockalign(NULL, s->size); 1542 memset(s->storage, 0xFF, s->size); 1543 } --- 174 unchanged lines hidden --- | 1536 error_setg(errp, "failed to read the initial flash content"); 1537 return; 1538 } 1539 } else { 1540 trace_m25p80_binding_no_bdrv(s); 1541 s->storage = blk_blockalign(NULL, s->size); 1542 memset(s->storage, 0xFF, s->size); 1543 } --- 174 unchanged lines hidden --- |