On 11.10.2016 20:31, Emil Velikov wrote:
Hi all,
I've been 'threatening' to do this for a while, so here it is:
Remove the three separate code paths that we have in the loader giving
is a since cleanup and consistent/predictable runtime behaviour across
the board. Not to mention some 100 lines removed from configure.ac and
an extra ~400 lines removed throughout the tree.
Hooray for code removal :)
I sent some simple comments on patches 2 & 5. Apart from that, while I'm
not super familiar with this code it does all look reasonable to me, so
for the series:
Reviewed-by: Nicolai Hähnle <nicolai.haeh...@amd.com>
What this series does:
- Changes/unifies how we retrieve the vendor/device pci id.
Namely:
Removes the ioctl, libudev and sysfs codepaths in favour of using the
libdrm drm*Device API effectively adding "PRIME support" for non-libudev
users ;-) We also get one configure toggle less in the process.
What it does _not_ do:
- Any changes on the mapping process between the fd/device id and the
device/driver name.
Namely:
Stuff such as hwdb, platform devices and respective mapping between the
lot is _not_ touched/covered.
I've been touch using it, on an off for about a week, but any extra
testing, review and input is appreciated.
Emil
Emil Velikov (16):
configure.ac: mark libdrm as have_pci_id provider
loader: slim down loader_get_pci_id_for_fd implementation(s)
loader: separate USE_DRICONF code into separate function
loader: annotate __driConfigOptionsLoader as static
loader: reimplement loader_get_user_preferred_fd via libdrm
loader: remove libudev_get_device_name_for_fd and related code
automake: remove all the libudev references
gbm: remove superfluous/incorrect udev comment
scons: loader: use libdrm when available
scons: remove all libudev references
travis: remove no longer needed liudev-dev dependency
loader: remove final sysfs codepath in loader_get_device_name_for_fd()
loader: remove loader_get_driver_for_fd() driver_type
loader: cleanup copyright section
configure.ac: remove no longer needed *_pci_id logic
configure.ac: use a single require_libdrm helper
.travis.yml | 1 -
configure.ac | 112 +---
scons/gallium.py | 1 -
src/egl/drivers/dri2/platform_android.c | 2 +-
src/egl/drivers/dri2/platform_surfaceless.c | 2 +-
src/egl/drivers/dri2/platform_wayland.c | 2 +-
src/egl/drivers/dri2/platform_x11.c | 2 +-
src/egl/drivers/dri2/platform_x11_dri3.c | 2 +-
.../auxiliary/pipe-loader/pipe_loader_drm.c | 2 +-
src/gbm/backends/dri/gbm_dri.c | 2 +-
src/gbm/main/gbm.c | 1 -
src/glx/dri2_glx.c | 2 +-
src/glx/dri3_glx.c | 2 +-
src/loader/Makefile.am | 3 +-
src/loader/SConscript | 6 +-
src/loader/loader.c | 622 ++++-----------------
src/loader/loader.h | 5 +-
src/loader/pci_id_driver_map.h | 23 +-
18 files changed, 150 insertions(+), 642 deletions(-)
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev