> This doesn't work for t604 which has a special version of 0x6???. That > helpfully also collides with bifrost versions. We could fix this up in > the kernel to expose it as 0x0600. Then an 'is_bifrost' would be an > easy (gpu_id & 0xf000).
I think there's a fundamental question here, do we want kernelspace to process versions or just sort it out in userspace? (Knowing that we'll have to _also_ sort it out in kernelspace for feature/issue detection there too...) I think given it's between doing it on "kernel" or "kernel *and* userspace", it makes sense to normalize in kernelspace, but still maintaining the hardware scheme (to avoid passing around a second set of arbitrary version #define's). > Why isn't this 'is_t8xx' instead as you are touching it everywhere or > this needs to be t8xx and bifrost? If not you could just do ((gpu_id & > 0xff00) == 0x0800). I think that's a reasonable +1 for normalizing in kernelspace. But we're not actually sure what is_t8xx turns off/on; it's a catch-all for magic values we know are different between a T6XX I tested on originally (with values that work on T760 as well) and the T860 I've been using more recently (with values that work on T820 as well, but not T760). We'll _want_ to have much more fine-grained granularity, of course, but userspace is kind of ignorant on what means what... -Alyssa
signature.asc
Description: PGP signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev