pipe-loader: add support for non-pci (platform) devices
Culled out of the "loader: refactor duplicated code into loader util lib" patch by Rob Clark. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Rob Clark <robdclark@gmail.com> Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
This commit is contained in:
@@ -44,6 +44,7 @@ struct pipe_screen;
|
||||
enum pipe_loader_device_type {
|
||||
PIPE_LOADER_DEVICE_SOFTWARE,
|
||||
PIPE_LOADER_DEVICE_PCI,
|
||||
PIPE_LOADER_DEVICE_PLATFORM,
|
||||
NUM_PIPE_LOADER_DEVICE_TYPES
|
||||
};
|
||||
|
||||
|
@@ -121,6 +121,8 @@ pipe_loader_drm_probe_fd(struct pipe_loader_device **dev, int fd)
|
||||
ddev->base.type = PIPE_LOADER_DEVICE_PCI;
|
||||
ddev->base.u.pci.vendor_id = vendor_id;
|
||||
ddev->base.u.pci.chip_id = chip_id;
|
||||
} else {
|
||||
ddev->base.type = PIPE_LOADER_DEVICE_PLATFORM;
|
||||
}
|
||||
ddev->base.ops = &pipe_loader_drm_ops;
|
||||
ddev->fd = fd;
|
||||
|
@@ -63,6 +63,7 @@ device::type() const {
|
||||
case PIPE_LOADER_DEVICE_SOFTWARE:
|
||||
return CL_DEVICE_TYPE_CPU;
|
||||
case PIPE_LOADER_DEVICE_PCI:
|
||||
case PIPE_LOADER_DEVICE_PLATFORM:
|
||||
return CL_DEVICE_TYPE_GPU;
|
||||
default:
|
||||
assert(0);
|
||||
@@ -74,6 +75,7 @@ cl_uint
|
||||
device::vendor_id() const {
|
||||
switch (ldev->type) {
|
||||
case PIPE_LOADER_DEVICE_SOFTWARE:
|
||||
case PIPE_LOADER_DEVICE_PLATFORM:
|
||||
return 0;
|
||||
case PIPE_LOADER_DEVICE_PCI:
|
||||
return ldev->u.pci.vendor_id;
|
||||
|
Reference in New Issue
Block a user