Page 1 of 2 12 LastLast
Results 1 to 10 of 14

Thread: An Open-Source Graphics Driver For Snapdragon

  1. #1
    Join Date
    Jan 2007
    Posts
    14,333

    Default An Open-Source Graphics Driver For Snapdragon

    Phoronix: An Open-Source Graphics Driver For Snapdragon

    There is another new open-source Linux graphics driver entering development and it has already showed signs of success with basic 2D acceleration working. This new open-source driver is for Qualcomm's Snapdragon / Adreno and who is leading the development of this driver is also quite interesting.

    http://www.phoronix.com/vr.php?view=17245

  2. #2
    Join Date
    Sep 2008
    Posts
    989

    Default

    For all of these embedded GPUs, I'd like to see an open source graphics architecture like this :

    kernel KMS driver and hardware banging <-- libdrm <-- mesa (hopefully gallium3d) <-- state trackers for android, X11, EGL, GLES, GL, etc.

    With this kind of graphics architecture, it'd vastly reduce the work to go from, say, a phone running Android, to a phone running X11 -- provided that you could get the rest of the non-graphics hardware supported under X11 also. This would be especially cool for tablets because you could blur the lines between typical "embedded" tablets (which run Android) and "tablet PCs" (which run Windows or desktop Linux). This would allow desktop Linux to migrate over into the same market as iPads. That would be sweeeeeeeeeeeeeet. I'd love to run Rhythmbox on my tablet, heh.

  3. #3
    Join Date
    Mar 2011
    Posts
    208

    Question

    I don't get it. Why are the Linux drivers for Mali and Snapdragon closed-source in the first-place?

    And then, why do some have interest in developing/using this alternative open source driver, that doesn't have official support and probably won't ever reach the level of the official driver?

    Could someone please try to explain this situation?
    Last edited by M1kkko; 04-14-2012 at 06:16 PM.

  4. #4
    Join Date
    Sep 2008
    Posts
    989

    Default

    Quote Originally Posted by M1kkko View Post
    I don't get it. Why are the Linux drivers for Mali and Snapdragon closed-source in the first-place?
    Because hardware companies are still living in the 20th century, being paranoid about malformed concepts that don't really exist, such as "intellectual property". They don't realize that they can get more customers, free development, and community goodwill by officially supporting drivers in the open. Reference: Intel and AMD open source drivers.

    Quote Originally Posted by M1kkko View Post
    And then, why do some have interest in developing/using this alternative open source driver, that doesn't have official support and probably won't ever reach the level of the official driver?
    Because "officially supported" drivers (especially for these mobile processors) get extremely rare updates, if ever. They're only supported for the product lifecycle, which averages between 1 and 2 years. If there's a bug, you can't do anything about it except beg the company, "pleeeeeeeeeeeeeeeeease MR. GOD, fix my bug so I don't have to suffer through your bad drivers?" -- and guess what, 99.999% of the time they simply ignore you, they don't even respond with sympathetic appeasements. And trust me, there are LOADS of bugs and very shoddy programming in these binary blobs, because there's no external audit of the code to make sure that it's readable, maintainable and well-designed. It's chock full of nasty hacks, non-portable shortcuts, and security holes.

    Open drivers suffer none of these impairments, and can continue to evolve and improve as long as there is anyone interested in them. For instance, we've had massive breakthroughs in the performance of Radeon "R300" class hardware in recent years, and that hardware is not even officially supported by AMD anymore. It's to the point that you literally cannot use the last supported version of fglrx for R300 with a recent distro, because the packages are so new that they are incompatible with the ancient proprietary driver that supports this hardware.

    Also with open drivers, you can do things like run desktop Linux (including an X server, or Wayland, or whatever you want) and not just being limited to Android or whatever platform the vendors care to support. This can allow people to run desktop Linux on a tablet originally pigeonholed to Android, for example, or you might even be able to run FreeBSD on it. Anything you can imagine, really.

    Also, it's just plain wrong to think that the open drivers won't reach the performance or feature level of the proprietary drivers. Nothing is holding them back except for time. The development efforts are picking up huge steam across the board, so don't expect the performance to be held back for long. I'm counting on the Radeon HD8000 series, for example, to have fully functional OpenGL 2.1 and 2D Xorg acceleration on launch day. That's just huge.

  5. #5
    Join Date
    Jul 2011
    Posts
    72

    Default

    Quote Originally Posted by M1kkko View Post
    I don't get it. Why are the Linux drivers for Mali and Snapdragon closed-source in the first-place?

    And then, why do some have interest in developing/using this alternative open source driver, that doesn't have official support and probably won't ever reach the level of the official driver?

    Could someone please try to explain this situation?
    As to why the drivers are closed-source, you should ask ARM and Qualcomm.

    The driver is preinstalled in most phones and tablets that use these chipsets. (e.g as part of Android). The manufacturers aren't obligated to release the code. So, if you tried to run, say a GNU/Linux distribution on the device, you'd need a driver for acceleration. Also, there's no guarantee that the driver won't ever reach the level of the official driver.

  6. #6
    Join Date
    Jul 2011
    Posts
    72

    Default

    My phone has an Adreno 205 I think. It would be nice to get GNU/Linux running on it (hopefully with KDE mobile interface).

  7. #7
    Join Date
    Feb 2008
    Location
    Linuxland
    Posts
    4,988

    Default

    @M1kkko

    In addition to the usual reasons, most if not all mobile gpus lack 2d acceleration entirely. No blobs at all for that. They don't see it as a priority, but this driver already implements it.

  8. #8
    Join Date
    Feb 2008
    Location
    Linuxland
    Posts
    4,988

    Default

    *mobile gpu blobs

  9. #9
    Join Date
    Mar 2011
    Posts
    208

    Default

    Thanks for all the good replies. That really cleared things up.

    Perhaps I've just seen too many Nouveau vs. Nvidia binary blob comparisons to have much faith in open source drivers. But perhaps things will change in the future, time will show.

  10. #10
    Join Date
    Oct 2008
    Posts
    3,027

    Default

    Quote Originally Posted by M1kkko View Post
    Thanks for all the good replies. That really cleared things up.

    Perhaps I've just seen too many Nouveau vs. Nvidia binary blob comparisons to have much faith in open source drivers. But perhaps things will change in the future, time will show.
    These ARM drivers are no where near the quality that NVidia puts into their drivers. Traditionally they've been more concerned about being the cheapest rather than the fastest, like desktop hardware has been focused on.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •