Flashing BIOS for Thinkpad E130 – write-protection issue

I really like my little versatile Lenovo Thinkpad E130. It’s powered by an Intel i3, runs very nice with Linux and even though it is very small, it has enough space for a 2,5 inch harddisk and a mSATA SSD if you want.

However the  included Wifi card ( Centrino Wireless-N 2230 ) is pretty weak. it is not only slow, but the Wifi reception is very low. My mobile phone works with wireless networks super stable whereas the E130 doesn’t even see any network at all.

So I had the great idea to exchange the Wifi card with a more modern card, which also allows the access to 5Ghz Wifi networks. It’s the Intel 7260-AC card.

However there are two issues:
1) The Lenovo E130 only allows a very small list of Wifi and WWAN cards. Technically that is not a real problem, but they implemented a whitelist of Lenovo-branded cards which are allowed. This means I had to get my BIOS “hacked” a bit to get every card be able to be used. With a bit of googling I found a friendly web forum who could help me.

2) I was a “good user” and updated my BIOS firmware frequently. However with Lenovo’s firmware v2.53 and higher, the BIOS got write protected, so that it wasn’t possible so easily to just flash the fixed BIOS file again.

So I checked my boxes of electronics and luckily found some nice tools to get around this little issue. I used a Bus Pirate as an SPI flash programmer and a little 8 pin chip grabber. Both have been a great help years ago when I had to reflash a broken DFI Lanparty Mainboard.

The BusPirate v3 was updated to the latest firmware version (6.2 beta 1, which includes an SPI speedup) and connected to the chip grabbers as following:

From:           To:             (color of cable in photos)
Chip/Flash 1 -> Buspirate: CS   (White)
Chip/Flash 2 -> Buspirate: MISO (Green)
Chip/Flash 3    (Not connected) 
Chip/Flash 4 -> Buspirate: GND  (Black)
Chip/Flash 5 -> Buspirate: MOSI (Green)
Chip/Flash 6 -> Buspirate: CLK  (Yellow)
Chip/Flash 7    (Not connected)
Chip/Flash 8 -> Buspirate +3.3V (Red)

Then I used the very neat little tool of the coreboot project called flashrom.
After connecting the buspirate to another linux box, I checked out it’s device name, which is in my case /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A7004E8g-if00-port0 … Your results may vary, so this can be different for you.

After I was able to successfully backup my original rom with:

# flashrom -p buspirate_spi:dev=/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A7004E8g-if00-port0 -r oldbios.img

I tried one dry run with the oldbios.img file and then with the patched bios:

root@zwerg:~/BIOS#  flashrom -p buspirate_spi:dev=/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A7004E8g-if00-port0 -w bios.bin -V
flashrom v0.9.8-r1888 on Linux 3.19.0-11-generic (x86_64)
flashrom is free software, get the source code at http://www.flashrom.org

flashrom was built with libpci 3.2.1, GCC 4.9.2, little endian
Command line (5 args): flashrom -p buspirate_spi:dev=/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A7004E8g-if00-port0 -w bios.bin -V
Calibrating delay loop... OS timer resolution is 1 usecs, 1872M loops per second, 10 myus = 11 us, 100 myus = 101 us, 1000 myus = 1017 us, 10000 myus = 10068 us, 4 myus = 5 us, OK.
Initializing buspirate_spi programmer
Baud rate is 115200 now.
Detected Bus Pirate hardware v3.a
Detected Bus Pirate firmware 6.2
Using SPI command set v2.
SPI speed is 8MHz
Raw bitbang mode version 1
Raw SPI mode version 1
The following protocols are supported: SPI.
Probing for AMIC A25L05PT, 64 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L05PU, 64 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L10PT, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L10PU, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L20PT, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L20PU, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L40PT, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L40PU, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L80P, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L16PT, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L16PU, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L512, 64 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L010, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L020, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L040, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L080, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L016, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25L032, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25LQ16, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25LQ032/A25LQ32A, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for AMIC A25LQ64, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT25DF021, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT25DF041A, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT25DF081, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT25DF081A, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT25DF161, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT25DF321, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT25DF321A, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT25DF641(A), 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT25DL081, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT25DL161, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT25DQ161, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT25F512, 64 kB: probe_spi_at25f: id1 0x60, id2 0x60
Probing for Atmel AT25F512A, 64 kB: probe_spi_at25f: id1 0x60, id2 0x60
Probing for Atmel AT25F512B, 64 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT25F1024(A), 128 kB: probe_spi_at25f: id1 0x60, id2 0x60
Probing for Atmel AT25F2048, 256 kB: probe_spi_at25f: id1 0x60, id2 0x60
Probing for Atmel AT25F4096, 512 kB: probe_spi_at25f: id1 0x60, id2 0x60
Probing for Atmel AT25FS010, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT25FS040, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT26DF041, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT26DF081A, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT26DF161, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT26DF161A, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT26F004, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT45CS1282, 16896 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT45DB011D, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT45DB021D, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT45DB041D, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT45DB081D, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT45DB161D, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT45DB321C, 4224 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT45DB321D, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT45DB321E, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel AT45DB642D, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for ESMT F25L008A, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for ESMT F25L32PA, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B05, 64 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B05T, 64 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25P05, 64 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B10, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B10T, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25P10, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B20, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B20T, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25P20, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B40, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B40T, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25P40, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B80, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B80T, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25P80, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B16, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B16T, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25P16, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B32, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B32T, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25P32, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B64, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25B64T, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25P64, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25F05, 64 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25F10, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25F20, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25F40, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25F80, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25F16, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25F32, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25F64, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25Q40, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25Q80(A), 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25Q16, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25Q32(A/B), 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25Q64, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25Q128, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25QH16, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25QH32, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25QH64, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25QH128, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25S10, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25S20, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25S40, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25S80, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25S16, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25S32, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon EN25S64, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for GigaDevice GD25LQ32, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for GigaDevice GD25Q512, 64 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for GigaDevice GD25Q10, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for GigaDevice GD25Q20(B), 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for GigaDevice GD25Q40(B), 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for GigaDevice GD25Q80(B), 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for GigaDevice GD25Q16(B), 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for GigaDevice GD25Q32(B), 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for GigaDevice GD25Q64(B), 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for GigaDevice GD25Q128B, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for GigaDevice GD25T80, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Intel 25F160S33B8, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Intel 25F160S33T8, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Intel 25F320S33B8, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Intel 25F320S33T8, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Intel 25F640S33B8, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Intel 25F640S33T8, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX23L1654, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX23L3254, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX23L6454, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX23L12854, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L512(E)/MX25V512(C), 64 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L1005(C)/MX25L1006E, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L2005(C)/MX25L2006E, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L4005(A/C)/MX25L4006E, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L8005/MX25L8006E/MX25L8008E/MX25V8005, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L1605, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L1605A/MX25L1606E/MX25L1608E, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L1605D/MX25L1608D/MX25L1673E, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L1635D, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L1635E, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L3205(A), 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L3205D/MX25L3208D, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L3206E/MX25L3208E, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L3273E, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L3235D, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L6405, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L6405D, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L6406E/MX25L6408E, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L6436E/MX25L6445E/MX25L6465E/MX25L6473E, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L12805D, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L12835F/MX25L12845E/MX25L12865E, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25U1635E, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25U3235E/F, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25U6435E/F, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25U12835F, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix MX25L6495F, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25P05-A, 64 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25P05, 64 kB: Ignoring RES in favour of RDID.
Probing for Micron/Numonyx/ST M25P10-A, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25P10, 128 kB: Ignoring RES in favour of RDID.
Probing for Micron/Numonyx/ST M25P20, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25P20-old, 256 kB: Ignoring RES in favour of RDID.
Probing for Micron/Numonyx/ST M25P40, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25P40-old, 512 kB: Ignoring RES in favour of RDID.
Probing for Micron/Numonyx/ST M25P80, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25P16, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25P32, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25P64, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25P128, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25PE10, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25PE20, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25PE40, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25PE80, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25PE16, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25PX80, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25PX16, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25PX32, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M25PX64, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M45PE10, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M45PE20, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M45PE40, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M45PE80, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST M45PE16, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST N25Q016, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST N25Q032..1E, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST N25Q032..3E, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST N25Q064..1E, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST N25Q064..3E, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST N25Q128..1E, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Micron/Numonyx/ST N25Q128..3E, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Nantronics N25S10, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Nantronics N25S20, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Nantronics N25S40, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Nantronics N25S80, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Nantronics N25S16, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for PMC Pm25LD256C, 32 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for PMC Pm25LD512(C), 64 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for PMC Pm25LD010(C), 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for PMC Pm25LD020(C), 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for PMC Pm25LD040(C), 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for PMC Pm25LV512(A), 64 kB: probe_spi_res2: id1 0x15, id2 0x15
Probing for PMC Pm25LV010, 128 kB: probe_spi_res2: id1 0x15, id2 0x15
Probing for PMC Pm25LV010A, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for PMC Pm25LV020, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for PMC Pm25LV040, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for PMC Pm25LV080B, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for PMC Pm25LV016B, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Sanyo LE25FW106, 128 kB: probe_spi_res2: id1 0x15, id2 0x15
Probing for Sanyo LE25FW406A, 512 kB: probe_spi_res2: id1 0x15, id2 0x15
Probing for Sanyo LE25FU406B, 512 kB: probe_spi_res2: id1 0x15, id2 0x15
Probing for Sanyo LE25FW203A, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Sanyo LE25FW403A, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Sanyo LE25FW418A, 512 kB: probe_spi_res2: id1 0x15, id2 0x15
Probing for Sanyo LE25FW806, 1024 kB: probe_spi_res2: id1 0x15, id2 0x15
Probing for Sanyo LE25FW808, 1024 kB: probe_spi_res2: id1 0x15, id2 0x15
Probing for Spansion S25FL004A, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL008A, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL016A, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL032A/P, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL064A/P, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL204K, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL208K, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL116K/S25FL216K, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL132K, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL164K, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL127S-64kB, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL127S-256kB, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL128P......0, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL128P......1, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL128S......0, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL128S......1, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL129P......0, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Spansion S25FL129P......1, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for SST SST25LF020A, 256 kB: probe_spi_rems: id1 0xef, id2 0x15
Probing for SST SST25LF040A, 512 kB: probe_spi_res2: id1 0x15, id2 0x15
Probing for SST SST25LF080(A), 1024 kB: probe_spi_res2: id1 0x15, id2 0x15
Probing for SST SST25VF512(A), 64 kB: probe_spi_rems: id1 0xef, id2 0x15
Probing for SST SST25VF010(A), 128 kB: probe_spi_rems: id1 0xef, id2 0x15
Probing for SST SST25VF020, 256 kB: probe_spi_rems: id1 0xef, id2 0x15
Probing for SST SST25VF020B, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for SST SST25VF040, 512 kB: probe_spi_rems: id1 0xef, id2 0x15
Probing for SST SST25VF040B, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for SST SST25VF040B.REMS, 512 kB: probe_spi_rems: id1 0xef, id2 0x15
Probing for SST SST25VF080B, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for SST SST25VF016B, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for SST SST25VF032B, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for SST SST25VF064C, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for SST SST25WF512, 64 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for SST SST25WF010, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for SST SST25WF020, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for SST SST25WF040, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for SST SST25WF080, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25Q40.V, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25Q80.V, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25Q16.V, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25Q32.V, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Found Winbond flash chip "W25Q32.V" (4096 kB, SPI) on buspirate_spi.
Chip status register is 0x00.
Probing for Winbond W25Q64.V, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25Q128.V, 16384 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25Q20.W, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25Q40.W, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25Q80.W, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25Q16.W, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25Q32.W, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25Q64.W, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25X10, 128 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25X20, 256 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25X40, 512 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25X80, 1024 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25X16, 2048 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25X32, 4096 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond W25X64, 8192 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Unknown SFDP-capable chip, 0 kB: Parsing JEDEC flash parameter table... done.
Probing for AMIC unknown AMIC SPI chip, 0 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Atmel unknown Atmel SPI chip, 0 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Eon unknown Eon SPI chip, 0 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Macronix unknown Macronix SPI chip, 0 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for PMC unknown PMC SPI chip, 0 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for SST unknown SST SPI chip, 0 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for ST unknown ST SPI chip, 0 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Sanyo unknown Sanyo SPI chip, 0 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Winbond unknown Winbond (ex Nexcom) SPI chip, 0 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Generic unknown SPI chip (RDID), 0 kB: probe_spi_rdid_generic: id1 0xef, id2 0x4016
Probing for Generic unknown SPI chip (REMS), 0 kB: probe_spi_rems: id1 0xef, id2 0x15
Found Winbond flash chip "W25Q32.V" (4096 kB, SPI).
This chip may contain one-time programmable memory. flashrom cannot read
and may never be able to write it, hence it may not be able to completely
clone the contents of this chip (see man page for details).
Reading old flash chip contents... done.
Erasing and writing flash chip... Trying erase function 0... 0x000000-0x000fff:S, 0x001000-0x001fff:S, 0x002000-0x002fff:S, 0x003000-0x003fff:S, 0x004000-0x004fff:S, 0x005000-0x005fff:S, 0x006000-0x006fff:S, 0x007000-0x007fff:S, 0x008000-0x008fff:S, 0x009000-0x009fff:S, 0x00a000-0x00afff:S, 0x00b000-0x00bfff:S, 0x00c000-0x00cfff:S, 0x00d000-0x00dfff:S, 0x00e000-0x00efff:S, 0x00f000-0x00ffff:S, 0x010000-0x010fff:EW, 0x011000-0x011fff:S, 0x012000-0x012fff:S, 0x013000-0x013fff:S, 0x014000-0x014fff:S, 0x015000-0x015fff:S, 0x016000-0x016fff:S, 0x017000-0x017fff:S, 0x018000-0x018fff:S, 0x019000-0x019fff:S, 0x01a000-0x01afff:S, 0x01b000-0x01bfff:S, 0x01c000-0x01cfff:S, 0x01d000-0x01dfff:S, 0x01e000-0x01efff:S, 0x01f000-0x01ffff:S, 0x020000-0x020fff:S, 0x021000-0x021fff:S, 0x022000-0x022fff:S, 0x023000-0x023fff:S, 0x024000-0x024fff:S, 0x025000-0x025fff:S, 0x026000-0x026fff:S, 0x027000-0x027fff:S, 0x028000-0x028fff:S, 0x029000-0x029fff:S, 0x02a000-0x02afff:S, 0x02b000-0x02bfff:S, 0x02c000-0x02cfff:S, 0x02d000-0x02dfff:S, 0x02e000-0x02efff:S, 0x02f000-0x02ffff:S, 0x030000-0x030fff:S, 0x031000-0x031fff:S, 0x032000-0x032fff:S, 0x033000-0x033fff:S, 0x034000-0x034fff:S, 0x035000-0x035fff:S, 0x036000-0x036fff:S, 0x037000-0x037fff:S, 0x038000-0x038fff:S, 0x039000-0x039fff:S, 0x03a000-0x03afff:S, 0x03b000-0x03bfff:S, 0x03c000-0x03cfff:S, 0x03d000-0x03dfff:S, 0x03e000-0x03efff:S, 0x03f000-0x03ffff:S, 0x040000-0x040fff:S, 0x041000-0x041fff:S, 0x042000-0x042fff:S, 0x043000-0x043fff:S, 0x044000-0x044fff:S, 0x045000-0x045fff:S, 0x046000-0x046fff:S, 0x047000-0x047fff:S, 0x048000-0x048fff:S, 0x049000-0x049fff:S, 0x04a000-0x04afff:S, 0x04b000-0x04bfff:S, 0x04c000-0x04cfff:S, 0x04d000-0x04dfff:S, 0x04e000-0x04efff:S, 0x04f000-0x04ffff:S, 0x050000-0x050fff:S, 0x051000-0x051fff:S, 0x052000-0x052fff:S, 0x053000-0x053fff:S, 0x054000-0x054fff:S, 0x055000-0x055fff:S, 0x056000-0x056fff:S, 0x057000-0x057fff:S, 0x058000-0x058fff:S, 0x059000-0x059fff:S, 0x05a000-0x05afff:S, 0x05b000-0x05bfff:S, 0x05c000-0x05cfff:S, 0x05d000-0x05dfff:S, 0x05e000-0x05efff:S, 0x05f000-0x05ffff:S, 0x060000-0x060fff:S, 0x061000-0x061fff:S, 0x062000-0x062fff:S, 0x063000-0x063fff:S, 0x064000-0x064fff:S, 0x065000-0x065fff:S, 0x066000-0x066fff:S, 0x067000-0x067fff:S, 0x068000-0x068fff:S, 0x069000-0x069fff:S, 0x06a000-0x06afff:S, 0x06b000-0x06bfff:S, 0x06c000-0x06cfff:S, 0x06d000-0x06dfff:S, 0x06e000-0x06efff:S, 0x06f000-0x06ffff:S, 0x070000-0x070fff:S, 0x071000-0x071fff:S, 0x072000-0x072fff:S, 0x073000-0x073fff:S, 0x074000-0x074fff:S, 0x075000-0x075fff:S, 0x076000-0x076fff:S, 0x077000-0x077fff:S, 0x078000-0x078fff:S, 0x079000-0x079fff:S, 0x07a000-0x07afff:S, 0x07b000-0x07bfff:S, 0x07c000-0x07cfff:S, 0x07d000-0x07dfff:S, 0x07e000-0x07efff:S, 0x07f000-0x07ffff:S, 0x080000-0x080fff:S, 0x081000-0x081fff:S, 0x082000-0x082fff:S, 0x083000-0x083fff:S, 0x084000-0x084fff:S, 0x085000-0x085fff:S, 0x086000-0x086fff:S, 0x087000-0x087fff:S, 0x088000-0x088fff:S, 0x089000-0x089fff:S, 0x08a000-0x08afff:S, 0x08b000-0x08bfff:S, 0x08c000-0x08cfff:S, 0x08d000-0x08dfff:S, 0x08e000-0x08efff:S, 0x08f000-0x08ffff:S, 0x090000-0x090fff:S, 0x091000-0x091fff:S, 0x092000-0x092fff:S, 0x093000-0x093fff:S, 0x094000-0x094fff:S, 0x095000-0x095fff:S, 0x096000-0x096fff:S, 0x097000-0x097fff:S, 0x098000-0x098fff:S, 0x099000-0x099fff:S, 0x09a000-0x09afff:S, 0x09b000-0x09bfff:S, 0x09c000-0x09cfff:S, 0x09d000-0x09dfff:S, 0x09e000-0x09efff:S, 0x09f000-0x09ffff:S, 0x0a0000-0x0a0fff:S, 0x0a1000-0x0a1fff:S, 0x0a2000-0x0a2fff:S, 0x0a3000-0x0a3fff:S, 0x0a4000-0x0a4fff:S, 0x0a5000-0x0a5fff:S, 0x0a6000-0x0a6fff:S, 0x0a7000-0x0a7fff:S, 0x0a8000-0x0a8fff:S, 0x0a9000-0x0a9fff:S, 0x0aa000-0x0aafff:S, 0x0ab000-0x0abfff:S, 0x0ac000-0x0acfff:S, 0x0ad000-0x0adfff:S, 0x0ae000-0x0aefff:S, 0x0af000-0x0affff:S, 0x0b0000-0x0b0fff:S, 0x0b1000-0x0b1fff:S, 0x0b2000-0x0b2fff:S, 0x0b3000-0x0b3fff:S, 0x0b4000-0x0b4fff:S, 0x0b5000-0x0b5fff:S, 0x0b6000-0x0b6fff:S, 0x0b7000-0x0b7fff:S, 0x0b8000-0x0b8fff:S, 0x0b9000-0x0b9fff:S, 0x0ba000-0x0bafff:S, 0x0bb000-0x0bbfff:S, 0x0bc000-0x0bcfff:S, 0x0bd000-0x0bdfff:S, 0x0be000-0x0befff:S, 0x0bf000-0x0bffff:S, 0x0c0000-0x0c0fff:S, 0x0c1000-0x0c1fff:S, 0x0c2000-0x0c2fff:S, 0x0c3000-0x0c3fff:S, 0x0c4000-0x0c4fff:S, 0x0c5000-0x0c5fff:S, 0x0c6000-0x0c6fff:S, 0x0c7000-0x0c7fff:S, 0x0c8000-0x0c8fff:S, 0x0c9000-0x0c9fff:S, 0x0ca000-0x0cafff:S, 0x0cb000-0x0cbfff:S, 0x0cc000-0x0ccfff:S, 0x0cd000-0x0cdfff:S, 0x0ce000-0x0cefff:S, 0x0cf000-0x0cffff:S, 0x0d0000-0x0d0fff:S, 0x0d1000-0x0d1fff:S, 0x0d2000-0x0d2fff:S, 0x0d3000-0x0d3fff:S, 0x0d4000-0x0d4fff:S, 0x0d5000-0x0d5fff:S, 0x0d6000-0x0d6fff:S, 0x0d7000-0x0d7fff:S, 0x0d8000-0x0d8fff:S, 0x0d9000-0x0d9fff:S, 0x0da000-0x0dafff:S, 0x0db000-0x0dbfff:S, 0x0dc000-0x0dcfff:S, 0x0dd000-0x0ddfff:S, 0x0de000-0x0defff:S, 0x0df000-0x0dffff:S, 0x0e0000-0x0e0fff:S, 0x0e1000-0x0e1fff:S, 0x0e2000-0x0e2fff:S, 0x0e3000-0x0e3fff:S, 0x0e4000-0x0e4fff:S, 0x0e5000-0x0e5fff:S, 0x0e6000-0x0e6fff:S, 0x0e7000-0x0e7fff:S, 0x0e8000-0x0e8fff:S, 0x0e9000-0x0e9fff:S, 0x0ea000-0x0eafff:S, 0x0eb000-0x0ebfff:S, 0x0ec000-0x0ecfff:S, 0x0ed000-0x0edfff:S, 0x0ee000-0x0eefff:S, 0x0ef000-0x0effff:S, 0x0f0000-0x0f0fff:S, 0x0f1000-0x0f1fff:S, 0x0f2000-0x0f2fff:S, 0x0f3000-0x0f3fff:S, 0x0f4000-0x0f4fff:S, 0x0f5000-0x0f5fff:S, 0x0f6000-0x0f6fff:S, 0x0f7000-0x0f7fff:S, 0x0f8000-0x0f8fff:S, 0x0f9000-0x0f9fff:S, 0x0fa000-0x0fafff:S, 0x0fb000-0x0fbfff:S, 0x0fc000-0x0fcfff:S, 0x0fd000-0x0fdfff:S, 0x0fe000-0x0fefff:S, 0x0ff000-0x0fffff:S, 0x100000-0x100fff:S, 0x101000-0x101fff:S, 0x102000-0x102fff:S, 0x103000-0x103fff:S, 0x104000-0x104fff:S, 0x105000-0x105fff:S, 0x106000-0x106fff:S, 0x107000-0x107fff:S, 0x108000-0x108fff:S, 0x109000-0x109fff:S, 0x10a000-0x10afff:S, 0x10b000-0x10bfff:S, 0x10c000-0x10cfff:S, 0x10d000-0x10dfff:S, 0x10e000-0x10efff:S, 0x10f000-0x10ffff:S, 0x110000-0x110fff:S, 0x111000-0x111fff:S, 0x112000-0x112fff:S, 0x113000-0x113fff:S, 0x114000-0x114fff:S, 0x115000-0x115fff:S, 0x116000-0x116fff:S, 0x117000-0x117fff:S, 0x118000-0x118fff:S, 0x119000-0x119fff:S, 0x11a000-0x11afff:S, 0x11b000-0x11bfff:S, 0x11c000-0x11cfff:S, 0x11d000-0x11dfff:S, 0x11e000-0x11efff:S, 0x11f000-0x11ffff:S, 0x120000-0x120fff:S, 0x121000-0x121fff:S, 0x122000-0x122fff:S, 0x123000-0x123fff:S, 0x124000-0x124fff:S, 0x125000-0x125fff:S, 0x126000-0x126fff:S, 0x127000-0x127fff:S, 0x128000-0x128fff:S, 0x129000-0x129fff:S, 0x12a000-0x12afff:S, 0x12b000-0x12bfff:S, 0x12c000-0x12cfff:S, 0x12d000-0x12dfff:S, 0x12e000-0x12efff:S, 0x12f000-0x12ffff:S, 0x130000-0x130fff:S, 0x131000-0x131fff:S, 0x132000-0x132fff:S, 0x133000-0x133fff:S, 0x134000-0x134fff:S, 0x135000-0x135fff:S, 0x136000-0x136fff:S, 0x137000-0x137fff:S, 0x138000-0x138fff:S, 0x139000-0x139fff:S, 0x13a000-0x13afff:S, 0x13b000-0x13bfff:S, 0x13c000-0x13cfff:S, 0x13d000-0x13dfff:S, 0x13e000-0x13efff:S, 0x13f000-0x13ffff:S, 0x140000-0x140fff:S, 0x141000-0x141fff:S, 0x142000-0x142fff:S, 0x143000-0x143fff:S, 0x144000-0x144fff:S, 0x145000-0x145fff:S, 0x146000-0x146fff:S, 0x147000-0x147fff:S, 0x148000-0x148fff:S, 0x149000-0x149fff:S, 0x14a000-0x14afff:S, 0x14b000-0x14bfff:S, 0x14c000-0x14cfff:S, 0x14d000-0x14dfff:S, 0x14e000-0x14efff:S, 0x14f000-0x14ffff:S, 0x150000-0x150fff:S, 0x151000-0x151fff:S, 0x152000-0x152fff:S, 0x153000-0x153fff:S, 0x154000-0x154fff:S, 0x155000-0x155fff:S, 0x156000-0x156fff:S, 0x157000-0x157fff:S, 0x158000-0x158fff:S, 0x159000-0x159fff:S, 0x15a000-0x15afff:S, 0x15b000-0x15bfff:S, 0x15c000-0x15cfff:S, 0x15d000-0x15dfff:S, 0x15e000-0x15efff:S, 0x15f000-0x15ffff:S, 0x160000-0x160fff:S, 0x161000-0x161fff:S, 0x162000-0x162fff:S, 0x163000-0x163fff:S, 0x164000-0x164fff:S, 0x165000-0x165fff:S, 0x166000-0x166fff:S, 0x167000-0x167fff:S, 0x168000-0x168fff:S, 0x169000-0x169fff:S, 0x16a000-0x16afff:S, 0x16b000-0x16bfff:S, 0x16c000-0x16cfff:S, 0x16d000-0x16dfff:S, 0x16e000-0x16efff:S, 0x16f000-0x16ffff:S, 0x170000-0x170fff:S, 0x171000-0x171fff:S, 0x172000-0x172fff:S, 0x173000-0x173fff:S, 0x174000-0x174fff:S, 0x175000-0x175fff:S, 0x176000-0x176fff:S, 0x177000-0x177fff:S, 0x178000-0x178fff:S, 0x179000-0x179fff:S, 0x17a000-0x17afff:S, 0x17b000-0x17bfff:S, 0x17c000-0x17cfff:S, 0x17d000-0x17dfff:S, 0x17e000-0x17efff:S, 0x17f000-0x17ffff:S, 0x180000-0x180fff:S, 0x181000-0x181fff:S, 0x182000-0x182fff:S, 0x183000-0x183fff:S, 0x184000-0x184fff:S, 0x185000-0x185fff:S, 0x186000-0x186fff:S, 0x187000-0x187fff:S, 0x188000-0x188fff:S, 0x189000-0x189fff:S, 0x18a000-0x18afff:S, 0x18b000-0x18bfff:S, 0x18c000-0x18cfff:S, 0x18d000-0x18dfff:S, 0x18e000-0x18efff:S, 0x18f000-0x18ffff:S, 0x190000-0x190fff:S, 0x191000-0x191fff:S, 0x192000-0x192fff:S, 0x193000-0x193fff:S, 0x194000-0x194fff:S, 0x195000-0x195fff:S, 0x196000-0x196fff:S, 0x197000-0x197fff:EW, 0x198000-0x198fff:EW, 0x199000-0x199fff:EW, 0x19a000-0x19afff:EW, 0x19b000-0x19bfff:EW, 0x19c000-0x19cfff:EW, 0x19d000-0x19dfff:EW, 0x19e000-0x19efff:EW, 0x19f000-0x19ffff:EW, 0x1a0000-0x1a0fff:EW, 0x1a1000-0x1a1fff:EW, 0x1a2000-0x1a2fff:EW, 0x1a3000-0x1a3fff:EW, 0x1a4000-0x1a4fff:EW, 0x1a5000-0x1a5fff:EW, 0x1a6000-0x1a6fff:EW, 0x1a7000-0x1a7fff:EW, 0x1a8000-0x1a8fff:EW, 0x1a9000-0x1a9fff:EW, 0x1aa000-0x1aafff:EW, 0x1ab000-0x1abfff:EW, 0x1ac000-0x1acfff:EW, 0x1ad000-0x1adfff:EW, 0x1ae000-0x1aefff:EW, 0x1af000-0x1affff:EW, 0x1b0000-0x1b0fff:EW, 0x1b1000-0x1b1fff:EW, 0x1b2000-0x1b2fff:EW, 0x1b3000-0x1b3fff:EW, 0x1b4000-0x1b4fff:EW, 0x1b5000-0x1b5fff:EW, 0x1b6000-0x1b6fff:EW, 0x1b7000-0x1b7fff:EW, 0x1b8000-0x1b8fff:EW, 0x1b9000-0x1b9fff:EW, 0x1ba000-0x1bafff:EW, 0x1bb000-0x1bbfff:EW, 0x1bc000-0x1bcfff:EW, 0x1bd000-0x1bdfff:EW, 0x1be000-0x1befff:EW, 0x1bf000-0x1bffff:EW, 0x1c0000-0x1c0fff:EW, 0x1c1000-0x1c1fff:EW, 0x1c2000-0x1c2fff:EW, 0x1c3000-0x1c3fff:EW, 0x1c4000-0x1c4fff:EW, 0x1c5000-0x1c5fff:EW, 0x1c6000-0x1c6fff:EW, 0x1c7000-0x1c7fff:EW, 0x1c8000-0x1c8fff:EW, 0x1c9000-0x1c9fff:EW, 0x1ca000-0x1cafff:EW, 0x1cb000-0x1cbfff:EW, 0x1cc000-0x1ccfff:EW, 0x1cd000-0x1cdfff:EW, 0x1ce000-0x1cefff:EW, 0x1cf000-0x1cffff:EW, 0x1d0000-0x1d0fff:EW, 0x1d1000-0x1d1fff:EW, 0x1d2000-0x1d2fff:EW, 0x1d3000-0x1d3fff:EW, 0x1d4000-0x1d4fff:EW, 0x1d5000-0x1d5fff:EW, 0x1d6000-0x1d6fff:EW, 0x1d7000-0x1d7fff:EW, 0x1d8000-0x1d8fff:EW, 0x1d9000-0x1d9fff:EW, 0x1da000-0x1dafff:EW, 0x1db000-0x1dbfff:EW, 0x1dc000-0x1dcfff:EW, 0x1dd000-0x1ddfff:EW, 0x1de000-0x1defff:EW, 0x1df000-0x1dffff:EW, 0x1e0000-0x1e0fff:EW, 0x1e1000-0x1e1fff:EW, 0x1e2000-0x1e2fff:EW, 0x1e3000-0x1e3fff:EW, 0x1e4000-0x1e4fff:EW, 0x1e5000-0x1e5fff:EW, 0x1e6000-0x1e6fff:EW, 0x1e7000-0x1e7fff:EW, 0x1e8000-0x1e8fff:EW, 0x1e9000-0x1e9fff:EW, 0x1ea000-0x1eafff:EW, 0x1eb000-0x1ebfff:EW, 0x1ec000-0x1ecfff:EW, 0x1ed000-0x1edfff:EW, 0x1ee000-0x1eefff:EW, 0x1ef000-0x1effff:EW, 0x1f0000-0x1f0fff:EW, 0x1f1000-0x1f1fff:EW, 0x1f2000-0x1f2fff:EW, 0x1f3000-0x1f3fff:EW, 0x1f4000-0x1f4fff:EW, 0x1f5000-0x1f5fff:EW, 0x1f6000-0x1f6fff:EW, 0x1f7000-0x1f7fff:EW, 0x1f8000-0x1f8fff:EW, 0x1f9000-0x1f9fff:EW, 0x1fa000-0x1fafff:EW, 0x1fb000-0x1fbfff:EW, 0x1fc000-0x1fcfff:EW, 0x1fd000-0x1fdfff:EW, 0x1fe000-0x1fefff:EW, 0x1ff000-0x1fffff:EW, 0x200000-0x200fff:EW, 0x201000-0x201fff:EW, 0x202000-0x202fff:EW, 0x203000-0x203fff:EW, 0x204000-0x204fff:EW, 0x205000-0x205fff:EW, 0x206000-0x206fff:EW, 0x207000-0x207fff:EW, 0x208000-0x208fff:EW, 0x209000-0x209fff:EW, 0x20a000-0x20afff:EW, 0x20b000-0x20bfff:EW, 0x20c000-0x20cfff:EW, 0x20d000-0x20dfff:EW, 0x20e000-0x20efff:EW, 0x20f000-0x20ffff:EW, 0x210000-0x210fff:EW, 0x211000-0x211fff:EW, 0x212000-0x212fff:EW, 0x213000-0x213fff:EW, 0x214000-0x214fff:EW, 0x215000-0x215fff:EW, 0x216000-0x216fff:EW, 0x217000-0x217fff:EW, 0x218000-0x218fff:EW, 0x219000-0x219fff:EW, 0x21a000-0x21afff:EW, 0x21b000-0x21bfff:EW, 0x21c000-0x21cfff:EW, 0x21d000-0x21dfff:EW, 0x21e000-0x21efff:EW, 0x21f000-0x21ffff:EW, 0x220000-0x220fff:EW, 0x221000-0x221fff:EW, 0x222000-0x222fff:EW, 0x223000-0x223fff:EW, 0x224000-0x224fff:EW, 0x225000-0x225fff:EW, 0x226000-0x226fff:EW, 0x227000-0x227fff:EW, 0x228000-0x228fff:EW, 0x229000-0x229fff:EW, 0x22a000-0x22afff:EW, 0x22b000-0x22bfff:EW, 0x22c000-0x22cfff:EW, 0x22d000-0x22dfff:EW, 0x22e000-0x22efff:EW, 0x22f000-0x22ffff:EW, 0x230000-0x230fff:EW, 0x231000-0x231fff:EW, 0x232000-0x232fff:EW, 0x233000-0x233fff:EW, 0x234000-0x234fff:EW, 0x235000-0x235fff:EW, 0x236000-0x236fff:EW, 0x237000-0x237fff:EW, 0x238000-0x238fff:EW, 0x239000-0x239fff:EW, 0x23a000-0x23afff:EW, 0x23b000-0x23bfff:EW, 0x23c000-0x23cfff:EW, 0x23d000-0x23dfff:EW, 0x23e000-0x23efff:EW, 0x23f000-0x23ffff:EW, 0x240000-0x240fff:EW, 0x241000-0x241fff:EW, 0x242000-0x242fff:EW, 0x243000-0x243fff:EW, 0x244000-0x244fff:EW, 0x245000-0x245fff:EW, 0x246000-0x246fff:EW, 0x247000-0x247fff:EW, 0x248000-0x248fff:EW, 0x249000-0x249fff:EW, 0x24a000-0x24afff:EW, 0x24b000-0x24bfff:EW, 0x24c000-0x24cfff:EW, 0x24d000-0x24dfff:EW, 0x24e000-0x24efff:EW, 0x24f000-0x24ffff:EW, 0x250000-0x250fff:EW, 0x251000-0x251fff:EW, 0x252000-0x252fff:EW, 0x253000-0x253fff:EW, 0x254000-0x254fff:EW, 0x255000-0x255fff:EW, 0x256000-0x256fff:EW, 0x257000-0x257fff:EW, 0x258000-0x258fff:EW, 0x259000-0x259fff:EW, 0x25a000-0x25afff:EW, 0x25b000-0x25bfff:EW, 0x25c000-0x25cfff:EW, 0x25d000-0x25dfff:EW, 0x25e000-0x25efff:EW, 0x25f000-0x25ffff:EW, 0x260000-0x260fff:EW, 0x261000-0x261fff:EW, 0x262000-0x262fff:EW, 0x263000-0x263fff:EW, 0x264000-0x264fff:EW, 0x265000-0x265fff:EW, 0x266000-0x266fff:EW, 0x267000-0x267fff:EW, 0x268000-0x268fff:EW, 0x269000-0x269fff:EW, 0x26a000-0x26afff:EW, 0x26b000-0x26bfff:EW, 0x26c000-0x26cfff:EW, 0x26d000-0x26dfff:EW, 0x26e000-0x26efff:EW, 0x26f000-0x26ffff:EW, 0x270000-0x270fff:EW, 0x271000-0x271fff:EW, 0x272000-0x272fff:EW, 0x273000-0x273fff:EW, 0x274000-0x274fff:EW, 0x275000-0x275fff:S, 0x276000-0x276fff:S, 0x277000-0x277fff:S, 0x278000-0x278fff:S, 0x279000-0x279fff:S, 0x27a000-0x27afff:S, 0x27b000-0x27bfff:S, 0x27c000-0x27cfff:S, 0x27d000-0x27dfff:S, 0x27e000-0x27efff:S, 0x27f000-0x27ffff:S, 0x280000-0x280fff:S, 0x281000-0x281fff:S, 0x282000-0x282fff:S, 0x283000-0x283fff:S, 0x284000-0x284fff:S, 0x285000-0x285fff:S, 0x286000-0x286fff:S, 0x287000-0x287fff:S, 0x288000-0x288fff:S, 0x289000-0x289fff:S, 0x28a000-0x28afff:S, 0x28b000-0x28bfff:S, 0x28c000-0x28cfff:S, 0x28d000-0x28dfff:S, 0x28e000-0x28efff:S, 0x28f000-0x28ffff:S, 0x290000-0x290fff:S, 0x291000-0x291fff:S, 0x292000-0x292fff:S, 0x293000-0x293fff:S, 0x294000-0x294fff:S, 0x295000-0x295fff:S, 0x296000-0x296fff:S, 0x297000-0x297fff:S, 0x298000-0x298fff:S, 0x299000-0x299fff:S, 0x29a000-0x29afff:S, 0x29b000-0x29bfff:S, 0x29c000-0x29cfff:S, 0x29d000-0x29dfff:S, 0x29e000-0x29efff:S, 0x29f000-0x29ffff:S, 0x2a0000-0x2a0fff:S, 0x2a1000-0x2a1fff:S, 0x2a2000-0x2a2fff:S, 0x2a3000-0x2a3fff:S, 0x2a4000-0x2a4fff:S, 0x2a5000-0x2a5fff:S, 0x2a6000-0x2a6fff:S, 0x2a7000-0x2a7fff:S, 0x2a8000-0x2a8fff:S, 0x2a9000-0x2a9fff:S, 0x2aa000-0x2aafff:S, 0x2ab000-0x2abfff:S, 0x2ac000-0x2acfff:S, 0x2ad000-0x2adfff:S, 0x2ae000-0x2aefff:S, 0x2af000-0x2affff:S, 0x2b0000-0x2b0fff:S, 0x2b1000-0x2b1fff:S, 0x2b2000-0x2b2fff:S, 0x2b3000-0x2b3fff:S, 0x2b4000-0x2b4fff:S, 0x2b5000-0x2b5fff:S, 0x2b6000-0x2b6fff:S, 0x2b7000-0x2b7fff:S, 0x2b8000-0x2b8fff:S, 0x2b9000-0x2b9fff:S, 0x2ba000-0x2bafff:S, 0x2bb000-0x2bbfff:S, 0x2bc000-0x2bcfff:S, 0x2bd000-0x2bdfff:S, 0x2be000-0x2befff:S, 0x2bf000-0x2bffff:S, 0x2c0000-0x2c0fff:S, 0x2c1000-0x2c1fff:S, 0x2c2000-0x2c2fff:S, 0x2c3000-0x2c3fff:S, 0x2c4000-0x2c4fff:S, 0x2c5000-0x2c5fff:S, 0x2c6000-0x2c6fff:S, 0x2c7000-0x2c7fff:S, 0x2c8000-0x2c8fff:S, 0x2c9000-0x2c9fff:S, 0x2ca000-0x2cafff:S, 0x2cb000-0x2cbfff:S, 0x2cc000-0x2ccfff:S, 0x2cd000-0x2cdfff:S, 0x2ce000-0x2cefff:S, 0x2cf000-0x2cffff:S, 0x2d0000-0x2d0fff:S, 0x2d1000-0x2d1fff:S, 0x2d2000-0x2d2fff:S, 0x2d3000-0x2d3fff:S, 0x2d4000-0x2d4fff:S, 0x2d5000-0x2d5fff:S, 0x2d6000-0x2d6fff:S, 0x2d7000-0x2d7fff:S, 0x2d8000-0x2d8fff:S, 0x2d9000-0x2d9fff:S, 0x2da000-0x2dafff:S, 0x2db000-0x2dbfff:S, 0x2dc000-0x2dcfff:S, 0x2dd000-0x2ddfff:S, 0x2de000-0x2defff:S, 0x2df000-0x2dffff:S, 0x2e0000-0x2e0fff:S, 0x2e1000-0x2e1fff:S, 0x2e2000-0x2e2fff:S, 0x2e3000-0x2e3fff:S, 0x2e4000-0x2e4fff:S, 0x2e5000-0x2e5fff:S, 0x2e6000-0x2e6fff:S, 0x2e7000-0x2e7fff:S, 0x2e8000-0x2e8fff:S, 0x2e9000-0x2e9fff:S, 0x2ea000-0x2eafff:S, 0x2eb000-0x2ebfff:S, 0x2ec000-0x2ecfff:S, 0x2ed000-0x2edfff:S, 0x2ee000-0x2eefff:S, 0x2ef000-0x2effff:S, 0x2f0000-0x2f0fff:S, 0x2f1000-0x2f1fff:S, 0x2f2000-0x2f2fff:S, 0x2f3000-0x2f3fff:S, 0x2f4000-0x2f4fff:S, 0x2f5000-0x2f5fff:S, 0x2f6000-0x2f6fff:S, 0x2f7000-0x2f7fff:S, 0x2f8000-0x2f8fff:S, 0x2f9000-0x2f9fff:S, 0x2fa000-0x2fafff:S, 0x2fb000-0x2fbfff:S, 0x2fc000-0x2fcfff:S, 0x2fd000-0x2fdfff:S, 0x2fe000-0x2fefff:S, 0x2ff000-0x2fffff:S, 0x300000-0x300fff:S, 0x301000-0x301fff:S, 0x302000-0x302fff:S, 0x303000-0x303fff:S, 0x304000-0x304fff:S, 0x305000-0x305fff:S, 0x306000-0x306fff:S, 0x307000-0x307fff:S, 0x308000-0x308fff:S, 0x309000-0x309fff:S, 0x30a000-0x30afff:S, 0x30b000-0x30bfff:S, 0x30c000-0x30cfff:S, 0x30d000-0x30dfff:S, 0x30e000-0x30efff:S, 0x30f000-0x30ffff:S, 0x310000-0x310fff:S, 0x311000-0x311fff:S, 0x312000-0x312fff:S, 0x313000-0x313fff:E, 0x314000-0x314fff:E, 0x315000-0x315fff:E, 0x316000-0x316fff:E, 0x317000-0x317fff:E, 0x318000-0x318fff:E, 0x319000-0x319fff:S, 0x31a000-0x31afff:S, 0x31b000-0x31bfff:S, 0x31c000-0x31cfff:S, 0x31d000-0x31dfff:S, 0x31e000-0x31efff:S, 0x31f000-0x31ffff:S, 0x320000-0x320fff:S, 0x321000-0x321fff:EW, 0x322000-0x322fff:EW, 0x323000-0x323fff:EW, 0x324000-0x324fff:EW, 0x325000-0x325fff:EW, 0x326000-0x326fff:EW, 0x327000-0x327fff:EW, 0x328000-0x328fff:E, 0x329000-0x329fff:E, 0x32a000-0x32afff:E, 0x32b000-0x32bfff:E, 0x32c000-0x32cfff:E, 0x32d000-0x32dfff:E, 0x32e000-0x32efff:E, 0x32f000-0x32ffff:S, 0x330000-0x330fff:S, 0x331000-0x331fff:S, 0x332000-0x332fff:S, 0x333000-0x333fff:S, 0x334000-0x334fff:S, 0x335000-0x335fff:S, 0x336000-0x336fff:S, 0x337000-0x337fff:S, 0x338000-0x338fff:S, 0x339000-0x339fff:S, 0x33a000-0x33afff:S, 0x33b000-0x33bfff:S, 0x33c000-0x33cfff:S, 0x33d000-0x33dfff:S, 0x33e000-0x33efff:S, 0x33f000-0x33ffff:S, 0x340000-0x340fff:S, 0x341000-0x341fff:S, 0x342000-0x342fff:S, 0x343000-0x343fff:S, 0x344000-0x344fff:S, 0x345000-0x345fff:S, 0x346000-0x346fff:S, 0x347000-0x347fff:S, 0x348000-0x348fff:S, 0x349000-0x349fff:S, 0x34a000-0x34afff:S, 0x34b000-0x34bfff:S, 0x34c000-0x34cfff:S, 0x34d000-0x34dfff:S, 0x34e000-0x34efff:S, 0x34f000-0x34ffff:S, 0x350000-0x350fff:S, 0x351000-0x351fff:S, 0x352000-0x352fff:S, 0x353000-0x353fff:S, 0x354000-0x354fff:S, 0x355000-0x355fff:S, 0x356000-0x356fff:S, 0x357000-0x357fff:S, 0x358000-0x358fff:S, 0x359000-0x359fff:S, 0x35a000-0x35afff:S, 0x35b000-0x35bfff:S, 0x35c000-0x35cfff:S, 0x35d000-0x35dfff:S, 0x35e000-0x35efff:S, 0x35f000-0x35ffff:S, 0x360000-0x360fff:S, 0x361000-0x361fff:S, 0x362000-0x362fff:S, 0x363000-0x363fff:S, 0x364000-0x364fff:S, 0x365000-0x365fff:S, 0x366000-0x366fff:S, 0x367000-0x367fff:S, 0x368000-0x368fff:S, 0x369000-0x369fff:S, 0x36a000-0x36afff:S, 0x36b000-0x36bfff:S, 0x36c000-0x36cfff:S, 0x36d000-0x36dfff:S, 0x36e000-0x36efff:S, 0x36f000-0x36ffff:S, 0x370000-0x370fff:S, 0x371000-0x371fff:S, 0x372000-0x372fff:S, 0x373000-0x373fff:S, 0x374000-0x374fff:S, 0x375000-0x375fff:S, 0x376000-0x376fff:S, 0x377000-0x377fff:S, 0x378000-0x378fff:S, 0x379000-0x379fff:S, 0x37a000-0x37afff:S, 0x37b000-0x37bfff:S, 0x37c000-0x37cfff:S, 0x37d000-0x37dfff:S, 0x37e000-0x37efff:S, 0x37f000-0x37ffff:S, 0x380000-0x380fff:S, 0x381000-0x381fff:S, 0x382000-0x382fff:S, 0x383000-0x383fff:S, 0x384000-0x384fff:S, 0x385000-0x385fff:S, 0x386000-0x386fff:S, 0x387000-0x387fff:S, 0x388000-0x388fff:S, 0x389000-0x389fff:S, 0x38a000-0x38afff:S, 0x38b000-0x38bfff:S, 0x38c000-0x38cfff:S, 0x38d000-0x38dfff:S, 0x38e000-0x38efff:S, 0x38f000-0x38ffff:S, 0x390000-0x390fff:S, 0x391000-0x391fff:S, 0x392000-0x392fff:S, 0x393000-0x393fff:S, 0x394000-0x394fff:S, 0x395000-0x395fff:S, 0x396000-0x396fff:S, 0x397000-0x397fff:S, 0x398000-0x398fff:S, 0x399000-0x399fff:S, 0x39a000-0x39afff:S, 0x39b000-0x39bfff:S, 0x39c000-0x39cfff:S, 0x39d000-0x39dfff:S, 0x39e000-0x39efff:S, 0x39f000-0x39ffff:S, 0x3a0000-0x3a0fff:S, 0x3a1000-0x3a1fff:S, 0x3a2000-0x3a2fff:S, 0x3a3000-0x3a3fff:S, 0x3a4000-0x3a4fff:S, 0x3a5000-0x3a5fff:S, 0x3a6000-0x3a6fff:S, 0x3a7000-0x3a7fff:S, 0x3a8000-0x3a8fff:S, 0x3a9000-0x3a9fff:S, 0x3aa000-0x3aafff:S, 0x3ab000-0x3abfff:S, 0x3ac000-0x3acfff:S, 0x3ad000-0x3adfff:S, 0x3ae000-0x3aefff:S, 0x3af000-0x3affff:S, 0x3b0000-0x3b0fff:S, 0x3b1000-0x3b1fff:S, 0x3b2000-0x3b2fff:S, 0x3b3000-0x3b3fff:S, 0x3b4000-0x3b4fff:S, 0x3b5000-0x3b5fff:S, 0x3b6000-0x3b6fff:S, 0x3b7000-0x3b7fff:S, 0x3b8000-0x3b8fff:S, 0x3b9000-0x3b9fff:S, 0x3ba000-0x3bafff:S, 0x3bb000-0x3bbfff:S, 0x3bc000-0x3bcfff:S, 0x3bd000-0x3bdfff:S, 0x3be000-0x3befff:S, 0x3bf000-0x3bffff:S, 0x3c0000-0x3c0fff:S, 0x3c1000-0x3c1fff:S, 0x3c2000-0x3c2fff:S, 0x3c3000-0x3c3fff:S, 0x3c4000-0x3c4fff:S, 0x3c5000-0x3c5fff:S, 0x3c6000-0x3c6fff:S, 0x3c7000-0x3c7fff:S, 0x3c8000-0x3c8fff:S, 0x3c9000-0x3c9fff:S, 0x3ca000-0x3cafff:S, 0x3cb000-0x3cbfff:S, 0x3cc000-0x3ccfff:S, 0x3cd000-0x3cdfff:S, 0x3ce000-0x3cefff:S, 0x3cf000-0x3cffff:S, 0x3d0000-0x3d0fff:S, 0x3d1000-0x3d1fff:S, 0x3d2000-0x3d2fff:S, 0x3d3000-0x3d3fff:S, 0x3d4000-0x3d4fff:S, 0x3d5000-0x3d5fff:S, 0x3d6000-0x3d6fff:S, 0x3d7000-0x3d7fff:S, 0x3d8000-0x3d8fff:S, 0x3d9000-0x3d9fff:S, 0x3da000-0x3dafff:S, 0x3db000-0x3dbfff:S, 0x3dc000-0x3dcfff:S, 0x3dd000-0x3ddfff:S, 0x3de000-0x3defff:S, 0x3df000-0x3dffff:S, 0x3e0000-0x3e0fff:S, 0x3e1000-0x3e1fff:S, 0x3e2000-0x3e2fff:S, 0x3e3000-0x3e3fff:S, 0x3e4000-0x3e4fff:S, 0x3e5000-0x3e5fff:S, 0x3e6000-0x3e6fff:S, 0x3e7000-0x3e7fff:S, 0x3e8000-0x3e8fff:S, 0x3e9000-0x3e9fff:S, 0x3ea000-0x3eafff:S, 0x3eb000-0x3ebfff:S, 0x3ec000-0x3ecfff:S, 0x3ed000-0x3edfff:S, 0x3ee000-0x3eefff:S, 0x3ef000-0x3effff:S, 0x3f0000-0x3f0fff:S, 0x3f1000-0x3f1fff:S, 0x3f2000-0x3f2fff:S, 0x3f3000-0x3f3fff:S, 0x3f4000-0x3f4fff:S, 0x3f5000-0x3f5fff:S, 0x3f6000-0x3f6fff:S, 0x3f7000-0x3f7fff:S, 0x3f8000-0x3f8fff:S, 0x3f9000-0x3f9fff:S, 0x3fa000-0x3fafff:S, 0x3fb000-0x3fbfff:S, 0x3fc000-0x3fcfff:S, 0x3fd000-0x3fdfff:S, 0x3fe000-0x3fefff:S, 0x3ff000-0x3fffff:S
Erase/write done.
Verifying flash... VERIFIED.
Raw bitbang mode version 1
Bus Pirate shutdown completed.
root@zwerg:~/BIOS# 

It worked out super nice. After I powered up the little E130, I had to enter the BIOS setup once and just to ensure that the settings inside aren’t corrupted I loaded a default setup first and then set all BIOS settings to my needs.

The new 7260.AC wifi cards work perfectly now! The same Wifi networks which haven’t been seen or never been able to connect longer than a few seconds are working super stable now. Additionally I am now secure for the future wifi cards and I could also exchange the current card with an LTE/4G or whatever the future might bring in the mobile network.

One side note: The detection of the Flash chip required some patience. I had to start flashrom a few times, but after the Winbond chip got detected, it went super stable.

 

4 thoughts on “Flashing BIOS for Thinkpad E130 – write-protection issue”

  1. Great post, thanks for sharing! Had exactly the same issue, upgrading my BIOS beyond the 2.53 version making it impossible to downgrade, and being stuck with the Broadcom Wifi adapter due to the whitelist.
    Landed on your page, which inspired me to buy the same parts. Did ISP flash my bios as well. By the way, my E130 is equipped with a eon EN25W32B, which also worked without issues. My E130 is now working with the Intel 7262.

  2. I tried to copy bios of my e130 with cheap $3 flasher based on ch341a bought aliexpress.com. Read several times dumps differ from each other. I’m not sure whether it’s a bug cheap programmer or something is wrong with my bios chip. Other 25x and 24x chips to which I have access reads ok.

  3. To be honest, I read it via flashrom internally and only used the external programmer to write it back.

    You can give it a try that way.

Leave a Reply

Your email address will not be published. Required fields are marked *

Protected with IP Blacklist CloudIP Blacklist Cloud