On Wed, 12 Sep 2012 16:29:44 +0200 Stefan Tauner <[email protected]> wrote:
> From: Carl-Daniel Hailfinger <[email protected]> > > 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/ -- Kind regards/Mit freundlichen Grüßen, Stefan Tauner _______________________________________________ flashrom mailing list [email protected] http://www.flashrom.org/mailman/listinfo/flashrom
