diff --git a/repos/dde_bsd/lib/mk/dde_bsd_audio_include.mk b/repos/dde_bsd/lib/mk/dde_bsd_audio_include.mk
index fe716a1002..f06bc0d9f4 100644
--- a/repos/dde_bsd/lib/mk/dde_bsd_audio_include.mk
+++ b/repos/dde_bsd/lib/mk/dde_bsd_audio_include.mk
@@ -9,7 +9,8 @@ ifeq ($(called_from_lib_mk),yes)
 BSD_CONTRIB_DIR := $(call select_from_ports,dde_bsd)/src/lib/audio
 BSD_EMUL_H      := $(REP_DIR)/src/lib/audio/include/bsd_emul.h
 
-GEN_INCLUDES := $(shell grep -rIh "^\#include .*" $(BSD_CONTRIB_DIR) |\
+SCAN_DIRS    := $(addprefix $(BSD_CONTRIB_DIR)/, dev sys)
+GEN_INCLUDES := $(shell grep -rIh "^\#include .*" $(SCAN_DIRS) |\
                         sed "s/^\#include [^<\"]*[<\"]\([^>\"]*\)[>\"].*/\1/" | sort | uniq)
 
 GEN_INC      := $(shell pwd)/include
diff --git a/repos/dde_bsd/recipes/src/bsd_audio_drv/content.mk b/repos/dde_bsd/recipes/src/bsd_audio_drv/content.mk
new file mode 100644
index 0000000000..8692cf330b
--- /dev/null
+++ b/repos/dde_bsd/recipes/src/bsd_audio_drv/content.mk
@@ -0,0 +1,40 @@
+PORT_DIR := $(call port_dir,$(REP_DIR)/ports/dde_bsd)
+
+LIB_MK := $(addprefix lib/mk/, dde_bsd_audio.inc dde_bsd_audio_include.mk) \
+          $(foreach SPEC,x86_32 x86_64,lib/mk/spec/$(SPEC)/dde_bsd_audio.mk) \
+          lib/import/import-dde_bsd_audio_include.mk
+
+MIRROR_FROM_REP_DIR := $(LIB_MK) src/lib src/drivers patches include
+
+MIRROR_FROM_PORT_DIR := $(addprefix src/lib/audio/, \
+                          dev/pci/azalia_codec.c \
+                          dev/pci/pcidevs.h \
+                          dev/pci/eap.c \
+                          dev/pci/pcidevs_data.h \
+                          dev/pci/azalia.h \
+                          dev/pci/eapreg.h \
+                          dev/pci/azalia.c \
+                          dev/mulaw.h \
+                          dev/audio_if.h \
+                          dev/mulaw.c \
+                          dev/audio.c \
+                          dev/ic/ac97.h \
+                          dev/ic/ac97.c \
+                          sys/device.h \
+                          sys/audioio.h \
+                          sys/queue.h)
+
+content: $(MIRROR_FROM_REP_DIR) $(MIRROR_FROM_PORT_DIR) LICENSE
+
+$(MIRROR_FROM_REP_DIR):
+	$(mirror_from_rep_dir)
+
+$(MIRROR_FROM_PORT_DIR):
+	mkdir -p $(dir $@)
+	cp -r $(PORT_DIR)/$@ $@
+
+LICENSE:
+	( echo 'OpenBSD code is most likely licensed under a ISC like license but for'; \
+	  echo 'historical reasons different variations of the Berkeley Copyright are'; \
+	  echo 'also in use. Please check the copyright header in the contrib source'; \
+	  echo 'files in src/lib/audio/dev and src/lib/audio/sys.') > $@
diff --git a/repos/dde_bsd/recipes/src/bsd_audio_drv/hash b/repos/dde_bsd/recipes/src/bsd_audio_drv/hash
new file mode 100644
index 0000000000..d95f17212a
--- /dev/null
+++ b/repos/dde_bsd/recipes/src/bsd_audio_drv/hash
@@ -0,0 +1 @@
+2017-11-12 62353520696daa708056c338660d3b16e816d408
diff --git a/repos/dde_bsd/recipes/src/bsd_audio_drv/used_apis b/repos/dde_bsd/recipes/src/bsd_audio_drv/used_apis
new file mode 100644
index 0000000000..c6939f5a67
--- /dev/null
+++ b/repos/dde_bsd/recipes/src/bsd_audio_drv/used_apis
@@ -0,0 +1,7 @@
+base
+os
+audio_in_session
+audio_out_session
+platform_session
+report_session
+timer_session