Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Know Any Hardware Needing Better Linux Support?

Posted by kdawson on Sun Oct 28, 2007 12:13 AM
from the problem-you-don't-see-every-day dept.
Dev Null writes "The Linux device driver project has hit something of a snag: they have lots of developers, but few devices to work on, so they're looking for input concerning which devices aren't well-supported in Linux. If any of you know of devices that could use better support, you can help out by listing them on the project's wiki."
+ -
story

Related Stories

[+] Linux Kernel Devs Offer Free Driver Development 348 comments
schwaang writes "Linux Kernel hacker Greg Kroah-Hartman, author of Linux Kernel in a Nutshell has posted an epic announcement on his blog. This could portend increased device compatibility for Linux users, higher-quality drivers, and fewer non-free binary blobs." From the announcement: "[T]he Linux kernel community is offering all companies free Linux driver development... All that is needed is some kind of specification that describes how your device works, or the email address of an engineer that is willing to answer questions every once in a while. If your company is worried about NDA issues surrounding your device's specifications, we have arranged a program... in order to properly assure that all needed NDA requirements are fulfilled. Now your developers will have more time to work on drivers for all of the other operating systems out there, and you can add 'supported on Linux' to your product's marketing material."
[+] News: Update On Free Linux Driver Development 272 comments
Remember the offer Greg Kroah-Hartman made earlier this year, to get Linux drivers written for free for any company that wanted them? Now an anonymous reader points us to an article up on linuxworld with an update to this program. Greg K-H, who leads the development of several kernel subsystems including USB and PCI, admits that the January offer was a bit of "marketing hype" — but says it has brought companies and developers together anyway. Twelve companies have said "yes please," one driver is already in the kernel, and five more are in the pipeline.
[+] Novell Makes Linux Driver Project a Reality 200 comments
apokryphos writes "Novell have relaunched the Linux Driver Project by dedicating well-known kernel developer Greg KH to work on the project full-time. Greg KH writes: 'My employer, Novell, has modified my position to now allow me to work full time on this project. Namely getting more new Linux kernel drivers written, for free, for any company that so desires. And to help manage all of the developers and project managers who want to help out...They really care about helping make Linux support as many devices as possible, with fully open-source drivers.'"
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • by ScrewMaster (602015) on Sunday October 28 2007, @12:23AM (#21145399)
    Know Any Hardware Needing Better Linux Support?

    Pretty much any Windows PC, I'd say.
  • Ha ha (Score:5, Insightful)

    by timeOday (582209) on Sunday October 28 2007, @12:26AM (#21145411)
    OK, how about NVidia graphics cards for a start?

    No, I mean drivers that support 3d acceleration, and docking and undocking, and xrandr, and xv, and suspend to RAM, and power management, all without crashing. I've been waiting for years.

    • Re:Ha ha (Score:5, Insightful)

      by X0563511 (793323) <draeathNO@SPAMmember.fsf.org> on Sunday October 28 2007, @01:07AM (#21145667) Homepage Journal
      Too bad that is not a kernel issue.

      The kernel already supports direct access to video cards with DRI. It's up to the X.org / X11 folks to get the "language" the card speaks right and talk to it through DRI.

      These guys might be able to write a kernel in their sleep, but completely unfamiliar with the layout, architecture, nuances, and conventions used in the X system.
  • by raphae (754310) on Sunday October 28 2007, @12:31AM (#21145455)
    Powermanagement for laptops seems to have consistently been inconsistent. As someone who uses laptops regularlz, having basic functions like hibernation and going into sleep mode causing complete system lockups on a fairly regular basis is a pretty big show-stopper. While I'd love to see the range of supported hardware expanded, I would really love if existing things like ACPI and various suspend technologies worked better and more consistently. It seems every few releases it works for a while then it completely breaks again. I am about to downgrade a laptop from Ubuntu Gutsy back to Feisty for this very reason.

    Having the ability to quickly suspend my machine and bring it up again is extremely high on the list of priorities.
  • by mochan_s (536939) on Sunday October 28 2007, @12:35AM (#21145473) Homepage

    For example, Presonus Firebox and Firepod. Not just support but proper latency support I guess ( if I can so bold to demand them )

    The USB keyboards ( like M-Audio keystations and others ).

    It would be really sweet to work on audio in Linux for us CS geeks ( write scripts for audio effects rather than knobs and bars in weird custom interfaces ).

  • by Anonymous Coward on Sunday October 28 2007, @12:46AM (#21145525)
    These wireless cards are integrated in so many laptops, and using ndiswrapper is still pretty crappy.
  • Full Support (Score:5, Insightful)

    by stoolpigeon (454276) * <bittercode@gmail> on Sunday October 28 2007, @12:55AM (#21145595) Homepage Journal
    It's already been voiced in the thread, and is said very well in this post about the need for complete drivers [apreche.net] instead of just drivers that work - but not fully.
  • Wireless (Score:5, Interesting)

    by OverflowingBitBucket (464177) on Sunday October 28 2007, @01:18AM (#21145715) Homepage Journal
    Wireless.

    The current driver space for wireless components in Linux is an odd hodge-podge of ndiswrapper, madwifi (two versions), beta drivers external to the mainline kernel, minimal built-in support and blind luck. Cleaning this up should keep a good number of people very busy.

  • by anlprb (130123) on Sunday October 28 2007, @01:21AM (#21145727)
    Why don't they go out to Staples, close their eyes, pick up a box in the wireless networking shelf, with preference to the 802.11n boxes and pick one and start writing. What about USB wifi cards? Those still are pretty well hit and miss. What about Broadcom wifi chips, you know the ones shipped with half of HP systems. Start working on a free driver or firmware or whatever is needed. Then, when all the wifi chips are supported and I don't have to worry about my new laptop not being able to get on the internet because HP locked the mini-pci slot to only one card, then we can take a walk down to the Video Card isle. Until you are done with Wifi, we will hold off on the hard stuff.

    Don't get me wrong, This is a great service. Just pick something that doesn't have X, be it firmware, a driver stack, whatever it may be and just start coding. I am serious, pick a random box at some store and start working. Look at the Sunday flyer, what is being put on sale. Find one of those devices and if it does not have linux support, buy it, start working on it.

    Why do you need to wait around for manufacturers to give you devices? Find what people can and will be buying and start supporting that first, the stuff that won't come out for a year doesn't matter if I can't go in a buy a 802.11n card now and get it to work. And if it doesn't support WPA2, I don't want to hear it, go back to your desk and do it over. I want to see the work this time. No doing it in your head. :)

    NDIS is not an option, it is not debuggable or portable across architectures. I have a few PPC machines I would like to use a 802.11n USB network card with.

    How about any Broadcom wifi card, with firmware so the driver can be stabilized better than their engineers can.

    Just because you don't like how hard it will be shouldn't keep you from starting on it.
  • Stabilize the API (Score:5, Insightful)

    by KC1P (907742) on Sunday October 28 2007, @01:29AM (#21145765) Homepage
    A very good use of these folks' time would be to reach some milestones on the Linux driver API so that the dang thing will stop changing all the time. A fundamental assumption of Linux is that constantly changing interfaces is no problem because the legions of faceless programmers will gladly rewrite everything each time around. True (but annoying) for generic hardware that everyone cares about, but not at all true for oddball stuff.

    I'm maintaining a driver for a bus adapter interface (for connecting old minicomputer peripherals to PCs) and it's a much bigger time sink than it needs to be. The source code is on my web site, but the users are, well, USERS, so when a new kernel release breaks it they just chuck it back at me to fix. So much for open source taking care of itself by magic. I won't bother submitting this driver to the free driver project because it's kind of useless without the $3000 piece of hardware it works with (and that's not counting the crates full of minicomputer hardware needed for testing). I need mine and I don't picture these folks buying their own no matter how much they care.

    Anyway I understand why Linus needs the freedom to get better ideas in the future and doesn't want to be weighed down with tons of backwards-compatibility stuff, but I still think it would make Linux more useful to split the difference and occasionally define an interface (doesn't have to be the default as long as you can ask for it somehow) which is guaranteed to work for some number of years. Then flush it at the end but at least some large amount of rarely-used stuff worked OK in the mean time, w/o having to be rewritten ... by a tiny group of people ... every few months.

    OK so I'm still stinging from udev. Sure, it's cute. But it required driver hacking (yet again) *and* broke my user-mode application by changing some of the device names. That would be OK back in kernel 0.x days but this is way too late in Linux history to start breaking applications, and after 16-17 years it's really time for the external interface to the kernel to start quieting down too.
    • Re:Stabilize the API (Score:5, Interesting)

      by thue (121682) on Sunday October 28 2007, @06:48AM (#21147023) Homepage
      I won't bother submitting this driver to the free driver project because it's kind of useless without the $3000 piece of hardware it works with (and that's not counting the crates full of minicomputer hardware needed for testing). I need mine and I don't picture these folks buying their own no matter how much they care.

      I seem to recall that one of the main kernel developers said they accept any drivers, and had a driver in the kernel with only a single known user. So it seems to me that they would accept your driver, since you seem to have many users.

      If you get your driver in the kernel then I assume the developers who change the interfaces would update your code automatically.
  • by SamP2 (1097897) on Sunday October 28 2007, @02:30AM (#21146069)
    I still think that the perspective should be just a LITTLE bit more oriented towards the user. The response of "it's not the kernel, it's the userspace, so go whine to someone else" is akin to the "You are in a hot-air balloon, Sir" joke - true but not useful.

    I'm a user. I have a printer/GPU/whatever. It doesn't work on my Linux-running machine. I don't know or care whether it's a userspace or kernel issue. Heck, I don't even know the difference between the two. Hell, my only association with the word "kernel" is "the part of the nut that you eat", and all the word "userspace" reminds me of that I really should try and get a bigger cubicle. I just want my friggin' printer to work! And as far as I know, either Linux (and to me Linux refers to the WHOLE GNU/Linux suit) either DOES it or it DOESN'T.

    If there are too many kernel programmers for the kernel problems to solve, then maybe more should try to specialize in userspace drivers, or whatever happens to be the problem that currently needs to be solved (and PLEASE don't get started about how "they don't get paid so don't tell them what to do", because all you do is reinforce MS's primary argument to "why Linux isn't as good as Windoze").

    I like Linux as much as the next geek, but unlike the Fundamentalist Linuxist (who will undoubtedly mod me down as Troll for my insolent heresy towards the Sanctity of the Linux Kernel) I keep my eyes open about issues from the perspective of those who need those issues fixed, not in the Ivory Tower of Theoretical Separation of Kernel and User Space on which far too many people are sitting).
    • by SmallFurryCreature (593017) on Sunday October 28 2007, @02:54AM (#21146157) Journal

      The seperation between kernelspace and userland is NOT theoretical. This is slashdot and it would be like saying that the people who worked on your cars powertrain should fix the issues with the electrical subsystem. It then offcourse becomes obvious why this is idiotic, people who know engines don't need to know anything about electricity, yes both are "power" but at the same time totally different.

      The kernels task is to provide the base system that other software can then use to run on. You really don't want to tie to much stuff into the kernel, and if possible migrate stuff OUT of it and keep only the bare fundementals inside. Why? Windows is an excellent reason why. If the kernel crashes your are fucked, if a userspace program crashes, then you just restart that program while the kernel goes on.

      Take printers, the kernel does the USB protocol, but CUPS talks to the printer. The kernel handles the AGP bus, but is X11 that does the video work. Therefore the drivers for your printer and video card need to be part of these later projects. Offcourse it gets confusing with video cards because they ALSO need to be part of the kernel.

      Say you call up the electricity company to complain your PC don't work, they are very nice and send an engineer over. He will check the outlet, confirm it supplies the proper current and then leave. Your PC still don't work? Not his problem, not his job and most important, he may very well not even know where to start. Call Dell instead.

      Cups is a totally different project with its own team of people and own goals and ambition. To say that a kernel developer should just switch to that project instead is starting to smell a lot like extreme arrogance from your part. Who are you to say what an other person should do?

      People often start speaking of elitism, but what do you call it when a person like you expects everyone else to jump at their demands?

      The strength of Linux comes from its volunteers, who work hard on the stuff they are passionate about. Sadly there are also weaknesses in this which according to the reactions so far seem to be, don't buy Lexmark. I can live with that, if you can't. Well there is a small company called Microsoft operating out of Redmond. YOu might want to give them a call, I am sure they will JUMP at the change to develop drivers specifically for your hardware needs.

      Oh but wait. MS doesn't do that does it. Does MS provide code to run old software that don't wanna run on their latests OS? No. Does it provide drivers for hardware that has problems? No.

      Odd, that you are so undemanding of a product you pay for, but think volunteers should be at your beg and call.

      Next time something don't work, blame the company you paid for it.

  • by TheLink (130905) on Sunday October 28 2007, @03:25AM (#21146299) Journal
    The 300 of you are all kernel driver devs but most drivers don't belong in the kernel. So 10 of you can hang around and maybe a few years before 2038 the rest of you will be needed ;).

    Meanwhile a fair number of us need:
    1) RAID monitoring tools (bad to have a RAID system but no way to know if a drive has failed)
    2) Temperature/fan/etc sensor monitoring.
    3) did I hear one or two mentioning printer drivers?
    4) Video drivers.
    5) Sound drivers.
    6) NIC drivers.
    7) Virtualization hardware stuff.

    The problem I see is for a fair number of these is you might actually have "drivers" (I use the term loosely) for say RHEL4, but not for RHEL3, Ubuntu or OpenSUSE, or whatever.

    The main problem I suppose is hardware companies not wanting to cooperate in ways that the Linux people want.

    But with 32 bit Windows, you can typically use the same drivers from Win2K onwards at least until that crap called Vista. Whereas with Linux, there's a fair chance that a kernel update would break something.
    • Re:First (Score:5, Informative)

      why are they excluding printers? The fact that Linux printing is done is userspace is not an excuse.
      Because these are Linux developers, not CUPS developers or SANE developers. Let the people who specialize in userspace handle userspace.
      • Re:First (Score:5, Insightful)

        by walt-sjc (145127) on Sunday October 28 2007, @09:20AM (#21147611)
        I agree, but there is another issue here. the LDP (and Novell) is willing to work with manufacturers and sign NDAs in order to get info needed to write drivers. While USB scanners (and printers) don't require "kernel" drivers, they still require drivers and the same NDAs that traditional driver devices need in order to convince manufacturers to work with the developers.

        Why aren't the LDP people and the SANE people working together? A device is a device no matter what the interface. The end user doesn't really care how "device X" hooks up, or how the driver is loaded. They just want it to work.
    • Re:First (Score:4, Insightful)

      by dch24 (904899) on Sunday October 28 2007, @12:32AM (#21145459) Journal
      I agree with you on scanners. What about ATI video cards? The specs are being published. Surely there's a great demand for developers there. Or, contribute to the Nouveau project [freedesktop.org] for nVidia cards.

      I haven't been really impressed with the ALSA project's driver support, either. But it's probably not for lack of interested developers.
      • they can't be bothered to work on the MAJOR printer driver issue (*cough--Lexmark--cough*) because printing takes place "in userspace"? What the hell does that even mean?

        Linux is a kernel. Almost every other program running on a Linux-based system, be it GNU/Linux or uClinux, is an application running in user space [wikipedia.org], a part of memory separate from "kernel space". The drivers for printers are "filters" for an application called CUPS [wikipedia.org], the drivers for scanners are modules for an application called SANE [wikipedia.org], and the drivers for video cards are modules for an application called X.Org X11 [wikipedia.org].

        The people who made this request for proposals are interested in projects that need specific support from kernel space. The kernel side of scanning and printing is solved through libusb.

      • Re:First (Score:5, Insightful)

        by Kjella (173770) on Sunday October 28 2007, @12:43AM (#21145513) Homepage
        It's funny because the call for more devices at desktoplinux.com mentions:

        It's not just the Linux Foundation; users, as can be seen in early results from the Linux Foundation's continuing Linux desktop survey, also want better driver support. Specifically, they want better support for printers, scanners, USB storage and Wi-Fi devices.
        What's not supported by this project? Well, printers, scanners and USB storage... While it's in some ways good that we don't need more kernel drivers, it's bit like saying "Well, we now got 100% support on floppy drives. Anyone got unsupported floppy drives? No, we only do floppies." when there's obviously a huge demand for other types of drivers. They should rename themselves the "Kernel driver project", not "Linux driver project" because they only deal with a small fraction of what everyone else thinks - Linux drivers = drivers for Linux.
              • Re:First (Score:5, Informative)

                by Bootsy Collins (549938) on Sunday October 28 2007, @12:14PM (#21148627)
                This makes no sense, since ultimately *all* device access is in the kernel. It's OS design 101.


                No, it makes perfect sense -- it's just confusing because of an odd use of terminology (at least as compared to Windows).

                When people complain about printer drivers under Linux, they're not talking about kernel modules -- what most of us would think of as "drivers" in the traditional sense. Linux already has USB/parallel port/whatever kernel modules that handle everything related to the communication with the device. The complaint is in the "device-specific-properties" end; since the USB/parallel port/whatever kernel modules are generic, handling only the lowest layers of how communications on the bus takes place, they don't know anything about the type of data the device expects.

                To make a useful-but-not-quite-right analogy, your network interface card knows about how to send 1s and 0s over the net; but it doesn't know anything about what kind of sequences of 1s and 0s will make sense to anything on the other end. Instead, you've got software layers above it that are responsible for taking a bunch of outgoing data and cutting it up into an ordered sequence of chunks wrapped in headers to allow re-assembly (the TCP part), then wrapping them in shipping headers so they'll reach their destination (the IP part), before sending them to the NIC. But even those software layers don't know that the device on the other end will be passing this data to a web browser; so the chunk of data being sent better look like sensible HTML. That's taken care of by other layers of software in user space.

                In Linux, kernel modules handle the communication with the device; but they don't know (and don't care) what form the device is expecting the data to be in. For printers, that's handled by a separate "filter" layer that comes before the kernel modules do their work. The filter layer is typically some sort of translation program that runs in userspace, takes a stream of data as input (from a file, from another program, or whatever), and encodes it into some other form and/or breaks it into chunks and/or wraps it in headers. The "encoding into some other form" would include putting in the stuff that exploits specific printer features. It's these filters which are sometimes missing or feature-incomplete in Linux, and are what people refer to when they talk about printer drivers.

      • Re:Webcam Drivers (Score:5, Insightful)

        by Anonymous Coward on Sunday October 28 2007, @01:30AM (#21145767)
        And that, in a nutshell, is why Linux will never be mainstream.

        You see, nobody *cares*. They don't understand the first thing about kernel space and user space. They've never *heard* of it, don't know what it is, and couldn't give a rat's ass about some fancy "ring zero".

        This seems to come as a surprise to many Linux advocates, but they just want their recently purchased device to work. They want that shiny new game they just picked up at Best Buy to run. They want it to play those online streaming movies from Netflix! If it doesn't, then Linux is useless to them, and they'll keep using Windows. You have to solve people's *actual problems*, not make their eyes glaze over with details they don't care about.

        If Toyota was selling cars that worked, but the Honda cars wouldn't start and wouldn't run on any of the fuels sold by the corner gas station, it wouldn't matter at all if the Honda engineers could talk a good line about the skillset needed to design the pistons being different than the skillset needed to design the brake rotors. Nobody would want the cars! That's the position Linux is in now in the desktop, and until this attitude disappears, it always will be in that position.

        You want Joe Sixpack to adopt Linux? Make it work with his hardware and his software. Make it seamless, so when he goes to Netflix the online play "just works". No excuses, no "but...", or "you don't understand that...", or "netflix needs to...". Nobody *cares*. Just make the damn thing work! If that is too hard to do, then Linux will never compete with Windows. It has to work for the things real people really do, not just for the l33t hackers who live to type arcane commands into bash prompts.
      • Devices that use userspace USB drivers:
        - Printers (CUPS)
        - Scanners (SANE)
        - Cameras (gPhoto2)
        Devices that use kernelspace USB drivers:
        - USB Mass storage (card readers/pendrives/media players/etc)
        - USB Networking
        - USB Bluetooth
        - USB to serial/parallel converters
        - USB HID Input
        - USB Audio
        - USB Video Capture

        That USB devices are a userspace issue is a lie. They go both ways.

        Besides, Trance Vibrator support is already in... the kernel.