I have a Canon Pixma MP210, which is an all-in-one device with scanning support. It works under Linux okay. The problem at the time was that the SANE people hadn't released in quite a while, so I had to download and build the driver out of CVS. The same was true for my father's cheap Canon all-in-one (don't remember the number, MP680 perhaps?) when I looked at Linux support for it. For most things, I think the support is out there, but you might have to go through some pain to get it.