> -----Original Message----- > From: Sellers, Graham > Sent: Monday, January 18, 2016 10:38 AM > To: alexandre.f.demers@xxxxxxxxx; Deucher, Alexander > Cc: dri-devel > Subject: RE: Porting GCN pre-1.2 parts from radeon to amdgpu kernel driver > > Hi Alexandre, > > Yes, your understanding is correct. > > Frankly, Alex or one of the other guys on the open source team would be > best positioned to answer your questions as to what would specifically need > to be done. However, yes, the gap we have here is in the amdgpu kernel > driver. I pretty much only work on the user-mode side of things. Think > "libVulkan.so" or "vulkan.dll" - the bit that applications link to. We talk to our > kernel drivers through standard interfaces. It's the kernel driver that deals > with a lot of the differences between different parts of hardware. amdgpu is > a ground-up redesign of our kernel solution for Linux. The closed-source > kernel driver that we were using in our Catalyst packages has been put out to > pasture. For the amdgpu project, given the number of engineers we have, > we have to make a tough decision between supporting interesting new > features of new GPUs, or sticking with pretty basic support but backporting > to older GPUs. > > The differences in the graphics core itself between SI, CI and VI are actually > pretty minimal (as far as the kernel driver is concerned, anyway). Where > there are bigger differences are in things like the multimedia (video) engines, > display controller, power management and so on. The radeon KMD has full > support for all SI and CI (and earlier) "un-core" parts of the GPU. amdgpu has > VI product support and some minimal (albeit disabled) support for CI, and > basically nothing from SI. > > Our user-mode Vulkan driver (and closed source OpenGL driver, for that > matter) can talk to the amdgpu kernel driver, but not to the radeon kernel > driver. The interfaces are quite different, and honestly, the radeon kernel > interface isn't a great fit for Vulkan. We had considered trying to support > radeon KMD in our Vulkan driver, but it doesn't seem practical. So, it seems > that the options would be really to port the non-core support from radeon > KMD into amdgpu, or somehow port the new KMD interfaces to radeon > KMD, which would allow our Vulkan drivers to run on it, but seems like a bit > of a backwards step. > > There are other complications - such as it being frowned upon to have two > kernel drivers for the same piece of hardware, so you'd need to port SI and > CI stuff from radeon to amdgpu, and then somehow disable (or remove it) in > the radeon KMD such that there was still only one driver for the GPU. It's > non-trivial, but not insurmountable. Also, even though the code is there and > working in radeon KMD, there are enough differences in the infrastructure > that the ported support would need to be re-validated and all that stuff. > > If you think you're up for the challenge, we'd be appreciative of the input. > One of the major reasons to open our code and support open source is to > encourage involvement and contributions from the community. That's why > we're doing the GPUOpen initiative and we will be opening a lot more of our > software in the future. Many of the guys on our open source team initially > got involved by contributing to the project before we hired them. That kind > of thing looks really good on a resume. :) I think Graham summed it up pretty well :) Alex > > Graham > > -----Original Message----- > From: Alexandre Demers [mailto:alexandre.f.demers@xxxxxxxxx] > Sent: Saturday, January 16, 2016 2:45 PM > To: Deucher, Alexander; Sellers, Graham > Cc: dri-devel > Subject: Porting GCN pre-1.2 parts from radeon to amdgpu kernel driver > > Hello to both of you, > > I've been following the development mostly of the radeon driver for some > time (with some small commits here and there as you may know). I was > waiting to hear some news about the coming support of Vulkan API. And I > have been wondering for sometime now if it would be a good think to have > all GCN parts moved from the radeon driver to the amdgpu kernel driver (I > had figured out it would be possible, but would it be of any use was still > unanswered). I was also curious to know if the new Crimson software would > support the radeon driver at some point. > > Now, I may have had a clear answer: I just read from Phoronix' editor > Michael Larabel > (http://www.phoronix.com/scan.php?page=news_item&px=Help-Bring- > Older-GCN-To-AMDGPU) > that Vulkan would come to the amdgpu driver only, that the blob (which > should eventually be opened) would support all GCN parts and that the only > missing part to support GCN pre-1.2 parts with both Vulkan and Crimson > would be to have them ported from the radeon driver to the amdgpu driver. > Am I understanding correctly? > > I'd be interested to know a bit more about the task and I may try to start the > work or join someone who would already be interested in doing so. > > Any comments on the matter? Any missunderstood thing? > > Cheers! > > -- > Alexandre Demers _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel