Restoring UP Board BIOS Image

dpizzito
dpizzito New Member Posts: 12

Hey Guys,

Per an earlier post, I managed to brick my UP Board by flashing the 2G/4G Bios update onto a 1GB Board. Now, I'm following the https://wiki.up-community.org/Bios_Update wiki to try to restore the image. I'm connecting to the W25Q64W SOIC using a pomona clip, and I'm running it through an Total Phase SPI Level Shifter. The level shifter provides 1.8V to the BIOS chip and shifts the levels from 1.8 to 3.3. On the 3.3 side I'm using a shikra.

I've triple checked all voltages and connections.

I'm running flashmon with the following command:
sudo flashrom -p ft2232_spi:type=232H

This returns back an unknown SPI device ID message. Through the use of ftdiflash, I've determined that the BIOS chip is returning all zeroes on all SPI transactions.

I was just wondering if anyone else has tried to do in situ bios rom programming on the up board before? The wiki claims you can do it, but I'm thinking that something on the board may be pulling the lines low. Other than that I'm not sure what else could be going wrong, maybe I could take a look at the SPI lines on a scope when I get access to one.

Thanks,
-Dylan

Comments

  • eduncan911
    eduncan911 Administrator, Moderator Posts: 157 admin

    Interested in your results as I've always planned to use a RPi, or another UP board, to flash mine with the SOIC clip. There's a couple of guides on the net of doing exactly that.

    For now, I'll pass this along to UP to see if there's someone that can help.

    Eric Duncan - UP Evangelist - My thoughts are of my own free will

    Answered? Please remember to mark the posted answered to highlight it for future visitors!

  • dpizzito
    dpizzito New Member Posts: 12

    So I wound up removing the SOIC from the board, and it still was reading zeroes....

    I then decided to use a raspi instead of the shiska to program it, and it worked!!! All of the other connections remained the same, so for some reason the issue was solely with the shiska.

    To use the RPI as a programmer, simply connect the SPI to the SPi port on the pin header. And then install flashrom, and enable SPI via raspi-config. Then run the below command:
    flashrom -p linux_spi:dev=/dev/spidev0.0 -w filename.bin

    Now Im going to see if the upboard boots.... I flashed the chip with the 1GB SKU bin.

  • dpizzito
    dpizzito New Member Posts: 12

    Okay, so I soldered the SOIC back onto the board, and it is still not booting. However, I can still connect the SPI in-situ and still be able to read and verify the contents of the flash. So having the chip on the board is definitely not an issue with the flash programming.

    A readback confirmed that the flash contents still match that of UPC1AM0D.bin. This is from the 1GB SKU zip, so I'm assuming that is the correct BIOS bin file. Pin orientation and soldering looks correct as well.

  • dpizzito
    dpizzito New Member Posts: 12

    Is there a file for the 2016 version of the up board bios so I can roll back and see if that makes a difference?

    One thing I noticed was the zip said IA32, but had both a UPC1AM0D.bin and UPC1AM0D_IA32.bin. Assuming that the UPC1AM0D.bin is for a 64 bit system, which is what I have.

  • dpizzito
    dpizzito New Member Posts: 12

    Any word on whether a 2016 image is available? I have new boards now that I can read the original image off of and then rewrite to the bricked board to see if it turns on again, although it would be a lot easier if the original image is available :smile:

  • DCleri
    DCleri Administrator, AAEON Posts: 1,213 admin

    Hello dpizzito,

    There is no need to use an old image when you are using the flash programmer.

    Please make sure you are using the procedure we described here for the hardware flashing: https://wiki.up-community.org/BIOS_chip_flashing