You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Hamish Coleman 0026c7ce3b Update mec-tools to get a couple of fixes 8 years ago
docs Document the qemu test targets 8 years ago
mec-tools@07a1b14073 Update mec-tools to get a couple of fixes 8 years ago
radare Update some function definitions using the better ARCompact analysis 8 years ago
t430.G1HT35WW.img.d After testing by harryK, mark the x230 battery patch as workng. 8 years ago
t430s.G7HT39WW.img.d After testing by harryK, mark the x230 battery patch as workng. 8 years ago
w530.G4HT39WW.img.d After testing by harryK, mark the x230 battery patch as workng. 8 years ago
x230.G2HT35WW.img.d After testing by harryK, mark the x230 battery patch as workng. 8 years ago
x230t.GCHT25WW.img.d Check my interpretation of zmatt's patch, port this patch to all other firmwares 8 years ago
.gitignore BUG: repeated failing makes could generate bad output. 8 years ago
.gitmodules Add x230 image and infrastructure 8 years ago
8duj27us.iso.orig.sha1 Use the same orig tail filename everywhere 8 years ago
LICENSE Add License details 8 years ago
Makefile BUG: repeated failing makes could generate bad output. 8 years ago
README Note down another package that potentially needs installing 8 years ago
autoexec.bat.template Show the dosflash command - may help with diagnostics 8 years ago
fix-hdd-image.patch Update code and instructions to default to using USB disk image files 8 years ago
g1uj38us.iso.orig.desc Add t430 bootable ISO 8 years ago
g1uj38us.iso.orig.sha1 Add t430 downloader and extractor 8 years ago
g2uj23us.iso.orig.desc FIX: forgot to add description file 8 years ago
g2uj23us.iso.orig.sha1 Use the same orig tail filename everywhere 8 years ago
g4uj30us.iso.orig.desc Add t530 support - this appears to share the EC firmware with the w530 8 years ago
g4uj30us.iso.orig.sha1 Add t530 support - this appears to share the EC firmware with the w530 8 years ago
g5uj28us.iso.orig.desc Add w530 ISO output 8 years ago
g5uj28us.iso.orig.sha1 Add image extractor for w530 8 years ago
g7uj18us.iso.orig.desc Add t430s bootable ISO 8 years ago
g7uj18us.iso.orig.sha1 Add details for downloading the t430s firmware 8 years ago
gcuj24us.iso.orig.desc Add x230t support 8 years ago
gcuj24us.iso.orig.sha1 Add image extractor for x230t 8 years ago
geteltorito Import geteltorito from the internet 8 years ago
hexpatch.pl Add License details 8 years ago
n10ur10w.iso.orig.sha1 Have a quick look at the x250 and x260 firmware, it looks like they are both ARC cpus with a similar layout. They both have different checksumming than the xx30 range and the x260 looks like it is not even encrypted (however there is a strange 256byte block at the top of the file - perhaps a signature) 8 years ago
r02uj46d.iso.orig.sha1 Have a quick look at the x250 and x260 firmware, it looks like they are both ARC cpus with a similar layout. They both have different checksumming than the xx30 range and the x260 looks like it is not even encrypted (however there is a strange 256byte block at the top of the file - perhaps a signature) 8 years ago
slice.extract Enable generation of FL2 files - unfortunately, needs a custom rule for each output - just x230 for now 8 years ago
slice.insert Enable generation of FL2 files - unfortunately, needs a custom rule for each output - just x230 for now 8 years ago
t430.G1HT35WW.img.enc.slice Add t430 bootable ISO 8 years ago
t430.G1HT35WW.img.orig.sha1 Add t430 downloader and extractor 8 years ago
t430.G1HT35WW.s01D2000.FL2.slice Add t430 bootable ISO 8 years ago
t430s.G7HT39WW.img.enc.slice Add t430s bootable ISO 8 years ago
t430s.G7HT39WW.img.orig.sha1 Add details for downloading the t430s firmware 8 years ago
t430s.G7HT39WW.s01D8000.FL2.slice Add t430s bootable ISO 8 years ago
t530.G4HT39WW.img.d Add t530 support - this appears to share the EC firmware with the w530 8 years ago
t530.G4HT39WW.img.enc.slice Add t530 support - this appears to share the EC firmware with the w530 8 years ago
t530.G4HT39WW.img.orig.sha1 Add t530 support - this appears to share the EC firmware with the w530 8 years ago
t530.G4HT39WW.s01D5100.FL2.slice Add t530 support - this appears to share the EC firmware with the w530 8 years ago
w530.G4HT39WW.img.enc.slice Add image extractor for w530 8 years ago
w530.G4HT39WW.img.orig.sha1 Add image extractor for w530 8 years ago
w530.G4HT39WW.s01D5200.FL2.slice Add image extractor for w530 8 years ago
x220.8DHT34WW.img.enc.orig.sha1 Update slice definition for x220 reference code as it was incorrect 8 years ago
x220.8DHT34WW.img.enc.slice Start extracting the FL2 files, and use that as the basis for extracting the firmware. This will allow us to update or diff against the FL2 file 8 years ago
x220.8DHT34WW.s01CB000.FL2.orig.sha1 Start extracting the FL2 files, and use that as the basis for extracting the firmware. This will allow us to update or diff against the FL2 file 8 years ago
x220.8DHT34WW.s01CB000.FL2.slice Start extracting the FL2 files, and use that as the basis for extracting the firmware. This will allow us to update or diff against the FL2 file 8 years ago
x230.G2HT35WW.img.enc.slice Start extracting the FL2 files, and use that as the basis for extracting the firmware. This will allow us to update or diff against the FL2 file 8 years ago
x230.G2HT35WW.img.orig.sha1 Ensure we have an original file left around to diff against later 8 years ago
x230.G2HT35WW.s01D3000.FL2.orig.sha1 Start extracting the FL2 files, and use that as the basis for extracting the firmware. This will allow us to update or diff against the FL2 file 8 years ago
x230.G2HT35WW.s01D3000.FL2.slice Start extracting the FL2 files, and use that as the basis for extracting the firmware. This will allow us to update or diff against the FL2 file 8 years ago
x230t.GCHT25WW.img.enc.slice Add image extractor for x230t 8 years ago
x230t.GCHT25WW.img.orig.sha1 Add x230t support 8 years ago
x230t.GCHT25WW.s01DA000.FL2.slice BUG: x230t FL2 slice was wrong 8 years ago
x250.N10HT17W.img.enc.slice Have a quick look at the x250 and x260 firmware, it looks like they are both ARC cpus with a similar layout. They both have different checksumming than the xx30 range and the x260 looks like it is not even encrypted (however there is a strange 256byte block at the top of the file - perhaps a signature) 8 years ago
x250.N10HT17W.s01E5000.FL2.orig.sha1 Have a quick look at the x250 and x260 firmware, it looks like they are both ARC cpus with a similar layout. They both have different checksumming than the xx30 range and the x260 looks like it is not even encrypted (however there is a strange 256byte block at the top of the file - perhaps a signature) 8 years ago
x250.N10HT17W.s01E5000.FL2.slice Have a quick look at the x250 and x260 firmware, it looks like they are both ARC cpus with a similar layout. They both have different checksumming than the xx30 range and the x260 looks like it is not even encrypted (however there is a strange 256byte block at the top of the file - perhaps a signature) 8 years ago
x260.R02HT29W.img.slice Have a quick look at the x250 and x260 firmware, it looks like they are both ARC cpus with a similar layout. They both have different checksumming than the xx30 range and the x260 looks like it is not even encrypted (however there is a strange 256byte block at the top of the file - perhaps a signature) 8 years ago
x260.R02HT29W.s0AR0200.FL2.orig.sha1 Have a quick look at the x250 and x260 firmware, it looks like they are both ARC cpus with a similar layout. They both have different checksumming than the xx30 range and the x260 looks like it is not even encrypted (however there is a strange 256byte block at the top of the file - perhaps a signature) 8 years ago
x260.R02HT29W.s0AR0200.FL2.slice Have a quick look at the x250 and x260 firmware, it looks like they are both ARC cpus with a similar layout. They both have different checksumming than the xx30 range and the x260 looks like it is not even encrypted (however there is a strange 256byte block at the top of the file - perhaps a signature) 8 years ago
xx30.encrypt Add License details 8 years ago

README

The main purpose of this software is to patch the EC on xx30 series thinkpads
to make the classic 7-row keyboards work.

With the patches included here, you can install the classic keyboard
hardware on many xx30 series laptops and make almost every key work properly.
The only keys that are not working are Fn+F3 (Battery) and Fn+F12 (Hibernate)

A full writeup of the hardware modifications needed can be found at:
    http://www.thinkwiki.org/wiki/Install_Classic_Keyboard_on_xx30_Series_ThinkPads


Step-by-step instructions:
--------------------------

This software expects to be run under Linux.

1. Ensure you have the normal packages needed for development work.
   On debian, this can be done with:

    apt-get install build-essential git

2. Ensure that a couple of tools and libraries needed by this system are
   also installed:

    apt-get install mtools libssl-dev

3. Clone a copy of this repo on to your computer:

    git clone https://github.com/hamishcoleman/thinkpad-ec

4. Change to the directory created by the clone:

    cd thinkpad-ec

5. Show the list of laptops and USB image file names:

    make list_laptops

6. Select the correct IMG name for your laptop.  E.G. "patched.x230.img" for
   the x230 laptop.

7. Make the fully patched iimage for this laptop (this will download
   the original file from Lenovo and patch it):

    make patched.x230.img

8. Insert your USB stick and determine what device name it has.
   This command should help you find the right device:

    lsblk -d -p -o NAME,SIZE,LABEL

9. Write the bootable patched image onto the USB stick device

   WARNING: if you do not have the right device name, you might overwrite
   your hard drive!

   sudo dd if=patched.x230.img of=/dev/sdb

Your USB stick is now ready to boot and install the patched firmware.

When you boot this, you will be prompted with information about the patch
and asked to confirm your laptop type.  It will then automatically flash
the patched firmware.


Notes:

* You can also create a bootable CDROM image for burning to a disk
  by asking for a ".iso" file in step 7 above.  Then you can use your
  normal CDROM burning tools to put this image on a blank cd and boot
  it up, skipping steps 8 and 9.

* More information for hacking on this can be found in the docs/HACKING.txt
  file.