Remembering not so far away history, I'm always a bit afraid when I'm about to use new hardware with Linux. It used to be troublesome to make some devices work.
After getting Linux based phone last week, I've also received new notebook, where I want to run Debian as well. I expected various troubles, but surprisingly everything works like a charm without single line of configuration. Wireless networking, docking station, card reader, webcam, fingerprint reader and so on.
All I had to do is to pull SSD out of old X60 notebook and put it into new X220. The only (though unnecessary) change was installation of 64-bit kernel (I currently see no big benefit in migrating to 64-bit userspace) and everything is working. Can your operating system do this?
Thanks to all people who have helped in this.
Using a 64-bit userspace helps you detect more development errors.
For example, see Bug#630824: Arguments are passed on stack in i386, but some in registers on amd64. Those, a va_list on i386 can be reused without problems, as it is just a pointer to the stack position; whereas on amd64, reusing it causes a segmentation fault, because register values have changed.
Running a 64-bit userspace helps catching errors, and you still have ARM systems (such as the phone) for 32-bit fun.