On Wed, 12 Sep 2012 16:29:44 +0200 Stefan Tauner stefan.tauner@student.tuwien.ac.at wrote:
From: Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net
by carldani, found in our paste service history
ichspi.c | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-)
diff --git a/ichspi.c b/ichspi.c index ce9c553..fbc6ea7 100644 --- a/ichspi.c +++ b/ichspi.c @@ -409,13 +409,19 @@ static int reprogram_opcode_on_the_fly(uint8_t opcode, unsigned int writecnt, un else // we have an invalid case return SPI_INVALID_LENGTH; }
- int oppos = 2; // use original JEDEC_BE_D8 offset
- curopcodes->opcode[oppos].opcode = opcode;
- curopcodes->opcode[oppos].spi_type = spi_type;
- program_opcodes(curopcodes, 0);
- oppos = find_opcode(curopcodes, opcode);
- msg_pdbg2("on-the-fly OPCODE (0x%02X) re-programmed, op-pos=%d\n", opcode, oppos);
- return oppos;
- if (spi_type <= 3) {
int oppos = 2; // use original JEDEC_BE_D8 offset
curopcodes->opcode[oppos].opcode = opcode;
curopcodes->opcode[oppos].spi_type = spi_type;
program_opcodes(curopcodes, 0);
oppos = find_opcode(curopcodes, opcode);
msg_pdbg2("on-the-fly OPCODE (0x%02X) re-programmed, op-pos=%d\n", opcode, oppos);
return oppos;
- }
- /* This case only happens if the writecnt/readcnt combination is
* impossible to achieve on ICH SPI.
*/
- return SPI_INVALID_LENGTH;
}
static int find_opcode(OPCODES *op, uint8_t opcode)
I think this patch is made obsolete by my latest check_trans patch set. I'll mark it superseded in patchwork. http://patchwork.coreboot.org/patch/3746/