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

Reply via email to