diff --git a/repos/libports/lib/import/import-drm.mk b/repos/libports/lib/import/import-drm.mk index f324d388d5..2fe33c7f11 100644 --- a/repos/libports/lib/import/import-drm.mk +++ b/repos/libports/lib/import/import-drm.mk @@ -1,2 +1,7 @@ -DRM_DIR = $(call select_from_ports,drm)/src/lib/drm +ifeq ($(CONTRIB_DIR),) +DRM_DIR = $(realpath $(call select_from_repositories,include/drm)/..) +INC_DIR += $(DRM_DIR) $(addprefix $(DRM_DIR)/,intel drm) +else +DRM_DIR = $(call select_from_ports,drm)/src/lib/drm INC_DIR += $(DRM_DIR) $(addprefix $(DRM_DIR)/,intel include/drm) +endif diff --git a/repos/libports/lib/mk/drm.mk b/repos/libports/lib/mk/drm.mk index 28b8b6eafb..8f50f5206e 100644 --- a/repos/libports/lib/mk/drm.mk +++ b/repos/libports/lib/mk/drm.mk @@ -1,10 +1,11 @@ +include $(call select_from_repositories,lib/import/import-drm.mk) + SHARED_LIB = yes LIBS = libc DRM_SRC_DIR := $(call select_from_ports,drm)/src/lib/drm LIB_DIR = $(REP_DIR)/src/lib/drm -INC_DIR += $(DRM_SRC_DIR)/include/drm $(LIB_DIR)/include \ - $(DRM_SRC_DIR) +INC_DIR += $(LIB_DIR)/include SRC_C = intel/intel_bufmgr.c \ intel/intel_bufmgr_gem.c \ diff --git a/repos/libports/lib/symbols/drm b/repos/libports/lib/symbols/drm new file mode 100644 index 0000000000..6013301cb5 --- /dev/null +++ b/repos/libports/lib/symbols/drm @@ -0,0 +1,182 @@ +_Z12drm_completev T +_Z8drm_initRN6Genode3EnvERNS_10EntrypointE T +_ZN5Utils14canonical_addrEm T +_ZN5Utils17noncanonical_addrEm T +drmAddBufs T +drmAddContextPrivateMapping T +drmAddContextTag T +drmAddMap T +drmAgpAcquire T +drmAgpAlloc T +drmAgpBase T +drmAgpBind T +drmAgpDeviceId T +drmAgpEnable T +drmAgpFree T +drmAgpGetMode T +drmAgpMemoryAvail T +drmAgpMemoryUsed T +drmAgpRelease T +drmAgpSize T +drmAgpUnbind T +drmAgpVendorId T +drmAgpVersionMajor T +drmAgpVersionMinor T +drmAuthMagic T +drmAvailable T +drmClose T +drmCloseOnce T +drmCommandNone T +drmCommandRead T +drmCommandWrite T +drmCommandWriteRead T +drmCreateContext T +drmCreateDrawable T +drmCtlInstHandler T +drmCtlUninstHandler T +drmDMA T +drmDelContextTag T +drmDestroyContext T +drmDestroyDrawable T +drmDropMaster T +drmError T +drmFinish T +drmFree T +drmFreeBufs T +drmFreeBusid T +drmFreeDevices T +drmFreeReservedContextList T +drmFreeVersion T +drmGetBufInfo T +drmGetBusid T +drmGetCap T +drmGetClient T +drmGetContextFlags T +drmGetContextPrivateMapping T +drmGetContextTag T +drmGetDeviceNameFromFd T +drmGetDevices T +drmGetEntry T +drmGetHashTable T +drmGetInterruptFromBusID T +drmGetLibVersion T +drmGetLock T +drmGetMagic T +drmGetMap T +drmGetNodeTypeFromFd T +drmGetPrimaryDeviceNameFromFd T +drmGetRenderDeviceNameFromFd T +drmGetReservedContextList T +drmGetStats T +drmGetVersion T +drmHashCreate T +drmHashDelete T +drmHashDestroy T +drmHashFirst T +drmHashInsert T +drmHashLookup T +drmHashNext T +drmIoctl T +drmMalloc T +drmMap T +drmMapBufs T +drmMarkBufs T +drmMsg T +drmOpen T +drmOpenControl T +drmOpenOnce T +drmOpenOnceWithType T +drmOpenRender T +drmOpenWithType T +drmPrimeFDToHandle T +drmPrimeHandleToFD T +drmRandom T +drmRandomCreate T +drmRandomDestroy T +drmRandomDouble T +drmRmMap T +drmScatterGatherAlloc T +drmScatterGatherFree T +drmSetBusid T +drmSetClientCap T +drmSetContextFlags T +drmSetInterfaceVersion T +drmSetMaster T +drmSetServerInfo T +drmSwitchToContext T +drmUnlock T +drmUnmap T +drmUnmapBufs T +drmUpdateDrawableInfo T +drmWaitVBlank T +drm_intel_bo_alloc T +drm_intel_bo_alloc_for_render T +drm_intel_bo_alloc_tiled T +drm_intel_bo_alloc_userptr T +drm_intel_bo_busy T +drm_intel_bo_disable_reuse T +drm_intel_bo_emit_reloc T +drm_intel_bo_emit_reloc_fence T +drm_intel_bo_exec T +drm_intel_bo_flink T +drm_intel_bo_gem_create_from_name T +drm_intel_bo_gem_create_from_prime T +drm_intel_bo_gem_export_to_prime T +drm_intel_bo_get_subdata T +drm_intel_bo_get_tiling T +drm_intel_bo_is_reusable T +drm_intel_bo_madvise T +drm_intel_bo_map T +drm_intel_bo_mrb_exec T +drm_intel_bo_pin T +drm_intel_bo_reference T +drm_intel_bo_references T +drm_intel_bo_set_tiling T +drm_intel_bo_subdata T +drm_intel_bo_unmap T +drm_intel_bo_unpin T +drm_intel_bo_unreference T +drm_intel_bo_wait_rendering T +drm_intel_bufmgr_check_aperture_space T +drm_intel_bufmgr_destroy T +drm_intel_bufmgr_gem_enable_fenced_relocs T +drm_intel_bufmgr_gem_enable_reuse T +drm_intel_bufmgr_gem_get_devid T +drm_intel_bufmgr_gem_init T +drm_intel_bufmgr_gem_set_aub_annotations T +drm_intel_bufmgr_gem_set_aub_dump T +drm_intel_bufmgr_gem_set_aub_filename T +drm_intel_bufmgr_gem_set_vma_cache_size T +drm_intel_bufmgr_set_debug T +drm_intel_decode T +drm_intel_decode_context_alloc T +drm_intel_decode_context_free T +drm_intel_decode_set_batch_pointer T +drm_intel_decode_set_dump_past_end T +drm_intel_decode_set_head_tail T +drm_intel_decode_set_output_file T +drm_intel_gem_bo_aub_dump_bmp T +drm_intel_gem_bo_clear_relocs T +drm_intel_gem_bo_context_exec T +drm_intel_gem_bo_get_reloc_count T +drm_intel_gem_bo_map_gtt T +drm_intel_gem_bo_map_unsynchronized T +drm_intel_gem_bo_start_gtt_access T +drm_intel_gem_bo_unmap_gtt T +drm_intel_gem_bo_wait T +drm_intel_gem_context_create T +drm_intel_gem_context_destroy T +drm_intel_get_aperture_sizes T +drm_intel_get_eu_total T +drm_intel_get_pipe_from_crtc_id T +drm_intel_get_reset_stats T +drm_intel_get_subslice_total T +drm_intel_reg_read T +drm_mmap T +drm_munmap T +genode_ioctl T +pci_device_find_by_slot T +pci_device_probe T +pci_system_cleanup T +pci_system_init T +posix_memalign T diff --git a/repos/libports/recipes/api/drm/content.mk b/repos/libports/recipes/api/drm/content.mk new file mode 100644 index 0000000000..214460d716 --- /dev/null +++ b/repos/libports/recipes/api/drm/content.mk @@ -0,0 +1,23 @@ +MIRROR_FROM_REP_DIR := lib/import/import-drm.mk \ + lib/symbols/drm + +content: $(MIRROR_FROM_REP_DIR) + +$(MIRROR_FROM_REP_DIR): + $(mirror_from_rep_dir) + +PORT_DIR := $(call port_dir,$(REP_DIR)/ports/drm) + +content: include + +include: + mkdir -p $@ + cp -r $(PORT_DIR)/src/lib/drm/*.h $@ + cp -r $(PORT_DIR)/src/lib/drm/include/drm $@ + mkdir -p $@/intel + cp -r $(PORT_DIR)/src/lib/drm/intel/*.h $@/intel + +content: LICENSE + +LICENSE: + echo "MIT, see header files" > $@ diff --git a/repos/libports/recipes/api/drm/hash b/repos/libports/recipes/api/drm/hash new file mode 100644 index 0000000000..350b1a9b10 --- /dev/null +++ b/repos/libports/recipes/api/drm/hash @@ -0,0 +1 @@ +2018-04-17 6dd45d932124e3291d5854201f7f0f0bd631b136 diff --git a/repos/libports/recipes/src/drm/api b/repos/libports/recipes/src/drm/api new file mode 100644 index 0000000000..706adf0f48 --- /dev/null +++ b/repos/libports/recipes/src/drm/api @@ -0,0 +1 @@ +drm diff --git a/repos/libports/recipes/src/drm/content.mk b/repos/libports/recipes/src/drm/content.mk new file mode 100644 index 0000000000..aadb0f8829 --- /dev/null +++ b/repos/libports/recipes/src/drm/content.mk @@ -0,0 +1,34 @@ +MIRROR_FROM_REP_DIR := lib/mk/drm.mk \ + src/lib/drm/include \ + src/lib/drm/dummies.cc \ + src/lib/drm/ioctl.cc + +content: $(MIRROR_FROM_REP_DIR) src/lib/drm/target.mk + +$(MIRROR_FROM_REP_DIR): + $(mirror_from_rep_dir) + +src/lib/drm/target.mk: + mkdir -p $(dir $@) + echo "LIBS = drm" > $@ + +PORT_DIR := $(call port_dir,$(REP_DIR)/ports/drm) + +MIRROR_FROM_PORT_DIR := $(addprefix src/lib/drm/,\ + intel/intel_bufmgr.c \ + intel/intel_bufmgr_gem.c \ + intel/intel_decode.c \ + xf86drm.c \ + xf86drmHash.c \ + xf86drmRandom.c) + +content: $(MIRROR_FROM_PORT_DIR) + +$(MIRROR_FROM_PORT_DIR): + mkdir -p $(dir $@) + cp -r $(PORT_DIR)/$@ $(dir $@) + +content: LICENSE + +LICENSE: + echo "MIT, see header files" > $@ diff --git a/repos/libports/recipes/src/drm/hash b/repos/libports/recipes/src/drm/hash new file mode 100644 index 0000000000..d3b334b85f --- /dev/null +++ b/repos/libports/recipes/src/drm/hash @@ -0,0 +1 @@ +2018-04-17 f1a11352f72cd7ec24fe5558d8e0b95b19cc2d43 diff --git a/repos/libports/recipes/src/drm/used_apis b/repos/libports/recipes/src/drm/used_apis new file mode 100644 index 0000000000..139debad25 --- /dev/null +++ b/repos/libports/recipes/src/drm/used_apis @@ -0,0 +1,3 @@ +base +gpu_session +libc diff --git a/repos/libports/src/lib/drm/ioctl.cc b/repos/libports/src/lib/drm/ioctl.cc index c7169e160d..ace3a1694c 100644 --- a/repos/libports/src/lib/drm/ioctl.cc +++ b/repos/libports/src/lib/drm/ioctl.cc @@ -19,7 +19,6 @@ #include // #include #include -#include #include extern "C" { @@ -130,7 +129,6 @@ static const char *command_name(long request) case DRM_I915_GET_RESET_STATS: return "DRM_I915_GET_RESET_STATS"; case DRM_I915_GEM_CONTEXT_CREATE: return "DRM_I915_GEM_CONTEXT_CREATE"; default: - Genode::backtrace(); return ""; } }