On Sun, Mar 22, 2015 at 07:20:58AM +0100, Giuseppe Bilotta wrote: > OpenCL (as opposed to OpenGL) has separate vendor strings for the > implementation/driver/platform and the device. CL_PLATFORM_VENDOR > is akin to the GL_VENDOR string, while CL_DEVICE_VENDOR is supposed to > return the actual device vendor. > > (For example, the AMD OpenCL platform returns GenuineIntel as > CL_DEVICE_VENDOR for an Intel CPU.) > > This patchset separates (where possible/necessary) the device vendor > from the driver vendor in existing gallium drivers, and makes clover use > the newly introduced device vendor for CL_DEVICE_VENDOR queries. > > For some drivers, get_device_vendor is mapped to get_vendor: this > is usually done because get_vendor already returns an appropriate string, > except in the case of softpipe and llvmpipe, where the returned vendor > should be the CPU vendor (and I don't know enough about the structure > of these drivers to extract the information 8-P) > > Changes since v4: > > * rebased on latest master, removed galahad part from the third patch > (since the driver isn't in master anymore); >
I've pushed these patches. Thanks! -Tom > Changes since v3: > > * fixed the prefix for the shortlogs > * minor docs tuning > > Changes since v2: > > * freedreno defined its device vendor function, but didn't actually use it > * the get_device_vendor entrypoint has been moved right after get_vendor, > and RST documentation has been added > > > Changes since v1: > > * vc4's get_device_vendor maps to vc4_screen_get_vendor() instead of the > non-existing vc4_screen_get_device_vendor(); > * freedreno should report Qualcomm, as device vendor, so it needs > an actual implementation of get_device_vendor distinct from that of > get_vendor. > > Giuseppe Bilotta (4): > gallium: remove trailing whitespace in p_screen.h > gallium: introduce get_device_vendor() entrypoint for pipes > gallium: implement get_device_vendor() for existing drivers > clover: use get_device_vendor instead of get_vendor > > src/gallium/docs/source/screen.rst | 6 ++++++ > src/gallium/drivers/freedreno/freedreno_screen.c | 8 ++++++++ > src/gallium/drivers/i915/i915_screen.c | 7 +++++++ > src/gallium/drivers/ilo/ilo_screen.c | 7 +++++++ > src/gallium/drivers/llvmpipe/lp_screen.c | 1 + > src/gallium/drivers/noop/noop_pipe.c | 6 ++++++ > src/gallium/drivers/nouveau/nouveau_screen.c | 7 +++++++ > src/gallium/drivers/r300/r300_screen.c | 6 ++++++ > src/gallium/drivers/radeon/r600_pipe_common.c | 6 ++++++ > src/gallium/drivers/rbug/rbug_screen.c | 10 ++++++++++ > src/gallium/drivers/softpipe/sp_screen.c | 1 + > src/gallium/drivers/svga/svga_screen.c | 1 + > src/gallium/drivers/trace/tr_screen.c | 22 ++++++++++++++++++++++ > src/gallium/drivers/vc4/vc4_screen.c | 1 + > src/gallium/include/pipe/p_screen.h | 10 +++++++++- > src/gallium/state_trackers/clover/core/device.cpp | 2 +- > 16 files changed, 99 insertions(+), 2 deletions(-) > > -- > 2.1.2.766.gaa23a90 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev