Programming the SEEPROM Out-of-Circuit -------------------------------------- Before the SEEPROM is soldered to the PCB, it must be programmed out-of-circuit with the DataI/O programmer in the I&T lab. After the board is brought up, it may be reprogrammed in-circuit by software. This document describes out-of- circuit programming. First you need a data file. One has already been generated for the RLP, called "rlp.final.hex". If you need something different: 1. Run produce_eeprom_file. 2. Enter 1 to Specify Input Data File. 3. Enter "rlp.final.hex" (no quotes), or the name of any preexisting data file ending in ".hex". 4. Enter 36 to Read In PCI Config Space(S-record). 5. Enter 3 to Print Configuration Space. 6. Examine the parameters printed, and use the menu to change them as necessary. 7. Enter 2 to Specify Output File. 8. Enter your new desired file name ending in ".hex" (no quotes). 9. Enter 37 to Write PCI Config Space(S-record). 10. Enter 99 to Exit Program. IMPORTANT: DO NOT SET PCI_CMD register (offset $04) MASTER_EN (bit 2), MEM_EN (bit 1), or IO_EN (bit 0) in the SEEPROM. While this is technically permissible under the PCI Spec, PC BIOS will crash if it does not get to be the first one to set them. It may set them wrong though, so your driver software may have to go back and change them after BIOS is done. There are other PCI configuration registers that BIOS may modify against your will; see the RLP_PCI_Config document for a complete listing. Now you can program. 1. Find the 8-pin SMT fixture. It is in a little plastic cube-shaped box. Insert it in the permanent DIP fixture at the end towards you with the opening towards you also. 2. Select the device, an Atmel AT24C02 DIP (not SMT). 3. Clear 256 bytes ($100) of the programmer memory. This is necessary. 4. Download your .hex file into the programmer using format 99 (Intel Hex). 5. Do a blank device check to make sure it is connected properly. The fixture cover may not push the chip down hard enough, you may have to open it up and hold it down hard with your finger. 6. Program the device, but change the block size from 128 bytes ($80) to 256 bytes ($100). The file is 128 bytes but the device is 256 bytes and the programmer does not let it be partially programmed. Again, you may have to hold the chip down manually. 7. Verify the device. Again, you may have to hold the chip down manually. --Ken Winiecki, 12/29/97