Słomkowski's technical musings

Playing with software, hardware and touching the sky with a paraglider.

ThinkPad X41 SATA SSD Mod – ditching the old 1.8″ PATA hard drive


I removed the SATA-to-PATA bridge and soldered the SSD directly onto the SATA lines.

In 2016, I replaced an old and terrible 1.8″ PATA hard drive with a 32 GB SATA SSD. The patient was a ThinkPad X41 Tablet, quite an old but otherwise nice convertible laptop/tablet. I wanted to upgrade it since I had it as a vital part of one of my projects; it was before the era of cheap single board computers.

2005-era ThinkPads — T43, T43p, X41, X41 Tablet, and R52 — are based on the Intel 915GM + ICH6-M platform. The platform supports SATA 1.5 Gbit/s, but for various reasons, this SATA is later converted to PATA by the Marvell 88SA8040 SATA-to-PATA bridge chip. This way, a 1.8″ main hard drive can be connected.

However, it is possible to remove the Marvell chip and connect a modern SATA disk directly to the SATA lines. The modification was performed by many people and described in several places on the web, but because of link rot, many writeups disappeared. Happily, some are still available.

For this modification, I bought an inexpensive 32 GB SSD of an unknown manufacturer from Aliexpress: ISSD-2XP5-HS-V0. I removed the Marvell 88SA8040 chip with a hot air station.

The disk was glued to the chassis with hot glue. Since the laptop was old, I did not aim for ease of future maintenance, so I simply soldered the wires directly to the drive. I used thin magnet wire. SATA lines are two differential pairs, and their lengths should match. They also should maintain a constant distance between the lines along their length, but the length is small in this configuration, and I got away with this rather sketchy build. The Linux kernel dmesg shows no SATA errors. It is still better to use the original SATA cable, though.

The illustration below (source) shows the pinout of the chip and also the capacitor from which I took the ground (blue circle):

Pinout of Marvell 88SA8040 SATA bridge.

Of all voltages available on the SATA power supply connector (+3.3 V, +5 V, +12 V), the disk needs only +5 V. For good measure, I added a 22 µF 10 V electrolytic capacitor on the power pins.

Pinout of SATA data and power connectors.

I took the +5 V from the USB port connector:

To get rid of the annoying Error 2010 message, you also have to flash a custom BIOS, which removes Error 2010 for non-IBM hard drives and the BIOS WLAN whitelist. For reference, see the BIOS ZIP archive.

Under Linux, hdparm -tT /dev/sda shows the following output, which means the SATA link works almost up to full throughput:

/dev/sda:
 Timing cached reads:   1624 MB in  2.00 seconds = 811.90 MB/sec
 Timing buffered disk reads: 358 MB in  3.01 seconds = 119.00 MB/sec