Hello There, Guest! Register
Enjoy our site and services? You may donate to help fund server and domain costs. Donate Here for special benefits. You have donated $

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
(de)bricking NOR flash on a dead LeapTV
While attempting to get a more accessible u-boot setup, I entered a 'saveenv' command and reset the LeapTV. The system failed to boot after this. Huh

Apparently U-Boot is misconfigured as it is in the LeapTV, as it saves its environment in NOR flash at 0x4000. There is binary code at that location, which prevents bootup when overwritten. Exclamation

I used flashrom and a Raspberry Pi to reflash the NOR device by connecting to the test points surrounding U700 and powering the board up to ensure the IC has power.

Having a copy of /dev/mtd0 as a backup saved my day, and being able to read the NOR flash before writing it helped a lot as well. /dev/mtd0 only returns 504k, while the other 8k wasnt backed up by myself. Some binary slicing was done with my backup and the additional 8k of data, and rewritten to the NOR flash afterward. The LeapTV is alive again!

flashrom -p linux_spi:dev=/dev/spidev0.0 -r 2016010801.bin
dd if=2016010801.bin of=last8k.bin bs=516096 skip=1
cat mtd0 last8k.bin > rewrite.bin
flashrom -p linux_spi:dev=/dev/spidev0.0 -E
flashrom -p linux_spi:dev=/dev/spidev0.0 -w rewrite.bin

My website at http://pix.jbevren.net/e/LTV/leaptv-debrick has my original post including a picture of the setup for reflashing. It went without a hitch in spite of flashrom's notes about the NOR chip being untested. Big Grin

Forum Jump: