关于Linux内核中的GPU驱动程序

时间:2014-04-14 11:51:53

标签: linux-kernel gpu drm

我发现i915_drm是英特尔GPU的DRM驱动程序。 据我所知,GPU驱动程序通常不对公众开放。

我的问题是:这款i915通常被称为" GPU驱动程序"对于英特尔GPU? 如果不是(我怀疑没有),你能告诉我DRM驱动程序和GPU驱动程序之间的关系是什么?

1 个答案:

答案 0 :(得分:1)

DRM驱动程序仲裁对GPU的访问,而实际的GPU驱动程序准备命令流。只有前者与安全相关,需要在内核中执行,而后者非常复杂,更好地作为用户进程实现。

内核驱动程序设置地址范围,包括CPU-> GPU访问(BAR映射),以及GPU->内存访问(DMA区域)。

这确保GPU只能访问专用的DMA内存,以阻止GPU程序读取密码等敏感数据,并且根据GPU DMA引擎的功能,甚至可以设置多个上下文,进一步限制GPU与程序一起提交的DMA缓冲区。

完整的GPU驱动程序使用此功能来请求设备上下文和DMA内存映射,编译着色器或OpenCL内核等程序,并通过低级驱动程序提交它们。