Presentation is loading. Please wait.

Presentation is loading. Please wait.

Open Source Graphic Drivers - They Don't Kill Kittens

Similar presentations


Presentation on theme: "Open Source Graphic Drivers - They Don't Kill Kittens"— Presentation transcript:

1 Open Source Graphic Drivers - They Don't Kill Kittens
(They might piss them off though...) Dave Airlie OLS 2006

2 Introduction Who am I? Current Vendor Support Status
Closed Source Drivers – Why? Bring on the kittens... Future Reverse Engineering

3 Current Driver Status - Intel
Current Drivers shipped with X.org 2D Modesetting support VBE based I915resolution 3D DRI support No current HW TNL No Zone Rendering Best supported 3D card

4 Current Driver Status - ATI
Ex-shining light of Linux graphics :-) 3 categories Pre-R300 Community drivers for r200 now feature complete + FASTER than fglrx R300-R4XX 3D drivers getting closer to feature complete R5xx and beyond Fglrx, vesa or waste of money

5 Current Driver Status - NVIDIA
“nv” 2D driver in X.org Supported – new cards added. Feature deprived – no dualhead, clone mode. Written in C<^H>Hex Nvidia driver from Nvidia Binary – x86, x86-64 only Well supported by nvidia Work with community on new GL features Still suck

6 Current Driver Status - Others
Matrox G100, G200, G400, G450, G550 – PCI/AGP/PCIE All in X.org, newer cards binary driver from Matrox SiS/VIA – Taiwanese manufacturers SiS/Trident – Thomas Winischofer 2D in X.org for all cards, very well written driver DRI support on SiS300 series VIA - Unichrome 2D/3D in X.org for all cards - Fragmented coders

7 Closed Source Drivers - Reasons
Microsoft Conspiracy theory – DX XBOX ???? Patents, legal fears Profit Competitive in the high-end Gaming mostly – why non-gaming cards closed? Why do SLI/Crossfire – more users want Linux opensource drivers

8 Closed Source Drivers - Fluffy
Open Source OS Auditable code paths Highly stable Freedom Loading a 1MB binary blob YOU ARE NO LONGER RUNNING AN OPEN SOURCE OS

9 Mittens Leeching Open source community provides Stable kernel
X.org infrastructure and future ideas Acceleration architecture Memory management systems Contributing back some things might help

10 Kitty Niche + embedded systems Closed source in an embedded market
Very hard to debug embedded systems with huge chunks of binary code doing nasty things My experience Single 3D application systems – miniglx, EGL PPC, Sparc – non-x86 users

11 Patches Out-of-date systems Card reaches end-of-life
NVIDIA legacy driver Drops support for lots of cards But at least they do this. FGLRX No r100 support ever (they point to us for support..) R200 is generally broken

12 Open Source Drivers Future Intel
Most Excellent Non-VBE 2D modesetting In progress Hacky make it work for myself code from me Eric Anholt from Intel – much better effort :-) 3D drivers New memory management from Tungsten Graphics New chipsets with more features Drivers usually ready with chipset release

13 ATI – Open source community
R300 reverse engineering project Using fglrx and Windows drivers Adding more features Stabilised 9800 support R5xx + future Brand new 2D engine Open source driver code with ATI for 3 months for review 2D support is approx 600 lines of code

14 NVIDIA – Open source efforts
Nouveau Project 5-6 people so far Reverse engineer nvidia 3D Also add 2D features EXA Dualhead, mergedfb No triangles yet – lots of RE work

15 Reverse Engineering - 2D
Personally – Intel 865, 915 and ATI r5xx Video BIOS LRMI + vbetool Use LRMI to trap every in/out port access Parse into a useful file Cut chunks out until minimum necessary code is there Existing driver Apple drivers – BenH mmap hack Libsegfault - Radeon 9800 hang problems

16 Reverse Engineering - 3D
3D drivers – 2 parts In kernel management code Userspace OpenGL command conversion Treat userspace as blackbox Write some OpenGL test applications - Rinse Watch what is written to the card - Wash Repeat Also scary windows dumper Dumps AGP memory whenever it changes

17 While researching for this..
I did a google image search for kittens, with safesearch disabled, Top link

18 Conclusion Just an overview of the driver status
Not an open-source zealot Two things Make my machines work Make customers machines do what is needed Lighthearted Taking this stuff seriously makes you drink too much And remember some day..

19 THE KITTENS WILL HAVE REVENGE....


Download ppt "Open Source Graphic Drivers - They Don't Kill Kittens"

Similar presentations


Ads by Google