Perhaps you mean most hardware manufacturer don't support free OSes, but some do.
Put yourself in the position of a hw manufacturer who wants to support Linux. You have just designed a new device. How are you going to support Linux?
- Obviously you cannot rely on your driver being incorporated in the upstream kernel. One, it may take an unpredictable amount of time, and two most people are not likely to start using the upstream kernel for years. Exactly the same problem applies to driver updates.
- So, you need to develop and maintain an out-of-tree module. For which kernel version and which distribution? In practice you need constant maintenance and testing for many kernel versions at the same time. What is even worse, there is no easy standard way for people to install your out-of-of-tree module.
- There are additional complications. Since you are a good Linux citizen, you have submitted your module upstream, while at the same time continuing to maintain the out of tree module. Eventually some of your customers start using the upstream kernel and you end up in an even worse position. You have to support many versions of the out-of-tree module and versions of the upstream kernel. What is worse, you have no direct control over bugfixes and updates in the upstream driver anymore. If a customers are having problems you cannot just tell them to go complain on LKML.
To be honest, I really understand why most manufacturers don't bother. You need to have a team of full time paid kernel developers for this. Perhaps it makes sense for huge manufacturers (Intel, Nvidia) and for extremely popular products, but not for anything else.
Posted Nov 18, 2009 18:43 UTC (Wed) by drag (subscriber, #31333)
[Link]
Well your wrong.
OEMs only support the stuff they ship. If your using something other then
what they have installed on the machine or otherwise officially support then
your on your own. If the kernel developers break a module then that is not
their problem.
That is the way for any pre-installed OS from any manufacturer.
The Future of Linux is Google (PCWorld)
Posted Nov 18, 2009 19:23 UTC (Wed) by mikov (subscriber, #33179)
[Link]
If your using something other then
what they have installed on the machine or otherwise officially support then
your on your own.
I think this sums it up nicely. People probably don't want to be "on their own" if they upgrade their PC, or if they happen to plug a new USB device in it, so they don't use Linux.
One of the fundamental reasons for success of the PC platform has always been the openness and the ability to mix and match components. If you remove that...
The Future of Linux is Google (PCWorld)
Posted Nov 18, 2009 19:29 UTC (Wed) by dlang (✭ supporter ✭, #313)
[Link]
if you use windows you are in the same boat.
if you install a driver that comes with hardware and your system no longer works do you think microsoft, HP, or dell are going to take care of it for you?
The Future of Linux is Google (PCWorld)
Posted Nov 18, 2009 21:41 UTC (Wed) by drag (subscriber, #31333)
[Link]
That is one of the things that Linux has problems with.
The best you can expect from OEMs is if you nuke your system and install from scratch and it still does not work then they may take back your system and work on the software if it is in warrenty.
Microsoft will give you a shit.. I think a troubleshooting phone call is a minimum of 75 dollars, after that they charge a large fee per minute or bill by the hour or something like that. It's been a while since I last looked at it, but for a consumer Microsoft's support costs are attrocious.
There are a couple issues here:
1. There is a large turn around for accepting kernel drivers into the kernel. The process is long and drawn out and can take 6 months to a year to get new hardware supported properly in the kernel.
This is a serious issue for OEMs, but it can be dealt with.
The much bigger one is #2
2. There is no Geek Squad for Linux. Anywere in any part of the country you can walk into computer stores and get help with Windows. You pay them 300 bucks to remove viruses or some other thing, but it's still avialable.
When people want to learn how to use Windows and Office they don't go and search mailing lists, they go and pay for class time in a community college. They do this because it's worth paying 300-700 dollars to learn Office and Windows because it'll help them get a job.
With Linux there is almost no places were people can take it in and get help. You go into Best Buy with a Linux netbook they will happily sell you a 'student' license for Windows and OFfice and charge you a hundred bucks to install it on your netbook, but they are going to refuse to help you get a printer or VPN working.
This is a societial issue. The negative costs of running Windows is absorbed by the society at large as just a cost of doing business or running a PC... Linux has no similar infrastructure.
The Future of Linux is Google (PCWorld)
Posted Nov 18, 2009 18:56 UTC (Wed) by dlang (✭ supporter ✭, #313)
[Link]
if you wait until the device is complete before starting to get the driver upstream you will have the problems you describe.
however, if you involve the kernel developer earlier things are much easier
there is the staging tree and the help from Greg to get things into the kernel.
most distros backport drivers that are added in later releases into their supported distros.
however, the biggest question to start with is if your device really needs a completely new device driver to start with?
if you are designing a new chipset, you are probably in a similar category as the 'huge manufacturers' you mention. but 99%+ of the time new hardware is not built using newly designed chips, it's built using existing chips with slight tweaks and in new ways. drivers for this category of devices are _much_ simpler to develop, and usually result in tweaks to existing drivers and not completely new drivers.
The Future of Linux is Google (PCWorld)
Posted Nov 20, 2009 3:52 UTC (Fri) by smokeing (guest, #53685)
[Link]
What does it take to support a piece of hardware? It takes to abide by whatever underlying industry standard is.
Back in 2007, we bought a Motorola Z6 ROKR, and it wasn't supported as a storage device at the time. After googling the matter, it appeared it misbehaved during handshake with the host, violating USB protocol, and needed a "quirk" (specifically, its product id needed to be listed in appropriate header; this was already done in the next kernel version).
If Motorola had run the phone through proper QA procedure, it wouldn't have broken the standard, and no drivers would be necessary *at all*.