In my experience (and I use Linux at home (Ubuntu 12.x) and at work CenTos) Linux is lagging on Graphics cards, wireless support, USB peripherals, file system stability, disk i/o scheduling, user interface tools, network printing, and document preparation. But other than that, its right up there with MacOS and Windows.
Hmm, that sounds a bit snarky. I wasn't going for snark, that is a list of things that I run into at least one of them and often more every week. My latest was trying to get some sort of drawing tablet support out of Wacom for Linux. They point you here: http://sourceforge.net/apps/mediawiki/linuxwacom/index.php?t... What is wrong with that picture?
It's a chicken and egg problem. Hardware manufacturers won't provide documentation or drivers for Linux because there's not that big user base, and there's no big user base, because most hardware won't work with Linux... although, I have to find the first piece of hardware that didn't work with Ubuntu on bootup, but maybe it is just me because I buy hardware that after some investigation (googling for 10 minutes) I know will work with Linux. It's really easy.
But in regards to hardware support, the only reason that's really an issue is because people want widespread compatibility. You don't need to start a whole new company to design entirely new hardware; just pick your components with a little care.