Originally posted by iniside
View Post
Weston needs to be able to do modesetting, because it's taking the place of X which used to do that work.
Modesetting means banging directly on the hardware bits and is highly hardware dependent. Which means each GPU driver needs to provide the code to do that.
X used to work with userspace code modesetting (in the DDX X.org drivers) but that was a messy hack. New OSS drivers all provide their driver code directly in the kernel. Because that's the only sane place for this code, the nvidia and amd proprietary drivers also place their modesetting code inside the kernel. (in their proprietary kernel modules)
Weston gets rid of the nasty hack that no one was really using anymore anyway (x drivers) and requires kernel based modesetting, which everyone already has on linux. INCLUDING THE PROPRIETARY DRIVERS! It may indeed be a problem on BSDs/Solaris/etc. where the OSS drivers are too old, though.
Weston only supports the OSS KMS api currently, because that's the only one that they can. The proprietary drivers install their own support into X. Similarly, they need to do the exact same thing in Weston. They already have kernel modesetting capabilities, they just need to wire up everything correctly. Note: they had to do the exact same thing to X. That's why whenever X updates to a new version you have to download a new proprietary driver to work with it. The exact same situation will be necessary with Weston, only it should be simpler for the proprietary drivers than before because there's none of the messy stuff that X brought into the situation to deal with.
In short - Weston absolutely allows for proprietary drivers to run, and it won't be difficult for them to support. However, it is something they will have to support themselves, unless they plan on opening up the specs to their hardware so that the open source coders know which hardware bits to bang on. Exactly the same as X. We're just still waiting on the proprietary drivers to actually support it, which is fair enough since there still aren't any distros trying to use it, which means their customers still don't need that support yet. When they do need it, Nvidia and AMD should be able to provide it easily.
Comment