On Mon, Jan 9, 2012 at 3:20 AM, Raghuramchary Jallipalli <Raghuramchary.Jallipalli@lntinfotech.com> wrote:

Thanks David.

As you said, the reason for not programming is due to wrong op.atomic configuration. Is there any way to set these properly?


It should be set automatically.

Carl-Daniel clarified on IRC that the "atomic" cycle flag will always be 0 at the stage they are printed. Sorry for the confusion!

I recommend adding a debug print to ich9_run_opcode() to see what the "atomic" flag ends up being:

Index: ichspi.c
===================================================================
--- ichspi.c    (revision 1483)
+++ ichspi.c    (working copy)
@@ -908,6 +908,7 @@
           This means the timeout must be sufficient for chip erase
           of slow high-capacity chips.
         */
+       msg_pdbg("opcode: 0x%02x, spi_type: %u, atomic: %u\n", op.opcode, op.spi_type, op.atomic);
        switch (op.atomic) {
        case 2:
                /* Select second preop. */

Then run "flashrom -V -p internal:this_is_not_a_laptop -r foo.bin" and make sure that the sector erase opcode (0x20) and byte program opcode (0x02) show either "1" or "2" for op.atomic.

This will help us to prove whether or not this is the problem you are encountering.

Yes jumper selects the ROM at a time. 


Okay. I do not think Flashrom is confused about the flash part, then.

--
David Hendricks (dhendrix)
Systems Software Engineer, Google Inc.