diff --git a/configure.ac b/configure.ac
index 72c512d..b194deb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -129,6 +129,7 @@ AC_MSG_RESULT()
 # this list must only contain userspace drivers without external
 # (header/library) dependencies!
 possible_drivers="(none) \
+	(yard2) \
         (userspace) \
         (accent) \
         (atwf83) \
@@ -458,7 +459,7 @@ AC_ARG_WITH(driver,
                           srm7500libusb, tekram,
                           tekram_bt829, tira, tira_raw, ttusbir,
                           tuxbox, tvbox, udp, uirt2, uirt2_raw,
-                          usb_uirt_raw, usbx, wpc8769l],
+                          usb_uirt_raw, usbx, wpc8769l, yard2],
 driver=${withval},
 driver="unset"
 )
@@ -533,6 +534,9 @@ if test "$driver" = "userspace" -o "$driver" = "all"; then
         bte)
                 hw_module="${hw_module} hw_bte.o serial.o"
                 ;;
+        yard2)
+                hw_module="${hw_module} hw_yard2.o"
+                ;;
         bw6130)
                 hw_module="${hw_module} hw_hiddev.o"
                 ;;
@@ -851,6 +855,13 @@ if test "$driver" = "bte"; then
 #  lircmd_conf="ericsson/lircmd.conf.bte"
 fi
 
+if test "$driver" = "yard2"; then
+  lirc_driver="none"
+  hw_module="hw_yard2.o"
+  HW_DEFAULT="hw_yard2"
+  lircd_conf="yard/lircd.conf.yard2"
+fi
+
 if test "$driver" = "bw6130"; then
   lirc_driver="$driver"
   hw_module="hw_hiddev.o"
@@ -1526,6 +1537,7 @@ elif test "$lirc_driver" = "all"; then
         lirc_serial \
         lirc_sir \
         lirc_ttusbir \
+        lirc_yard2 \
         lirc_wpc8769l"
 fi
 if kernel_module=$(expr "$lirc_driver" : 'lirc_dev \(.*\)'); then
diff --git a/daemons/Makefile.am b/daemons/Makefile.am
index eefd6f0..0d7bb75 100644
--- a/daemons/Makefile.am
+++ b/daemons/Makefile.am
@@ -16,6 +16,7 @@ libhw_module_a_SOURCES = \
 			release.c release.h lirc_log.c lirc_log.h
 
 EXTRA_libhw_module_a_SOURCES = \
+			hw_yard2.c hw_yard2.h yard2def.h \
 			hw_accent.c hw_accent.h \
 			hw_alsa_usb.c \
 			hw_atilibusb.c \
diff --git a/daemons/hw-types.c b/daemons/hw-types.c
index 0536ea2..fe15da1 100644
--- a/daemons/hw-types.c
+++ b/daemons/hw-types.c
@@ -59,6 +59,7 @@ extern struct hardware hw_uirt2;
 extern struct hardware hw_uirt2_raw;
 extern struct hardware hw_usb_uirt_raw;
 extern struct hardware hw_usbx;
+extern struct hardware hw_yard2;
 
 #ifndef HW_DEFAULT
 # define HW_DEFAULT hw_default
@@ -173,6 +174,7 @@ struct hardware *hw_list[] = {
 	&hw_uirt2_raw,
 	&hw_usb_uirt_raw,
 	&hw_usbx,
+	&hw_yard2,
 #else
 	&HW_DEFAULT,
 #endif
diff --git a/setup.data b/setup.data
index 6f3ccc1..aa32169 100644
--- a/setup.data
+++ b/setup.data
@@ -146,6 +146,7 @@ hw_menu_entry: @hw-usb
         usb_uirt_raw: "USB-UIRT"
         mplay: "VLSystem MPlay Blast"
         mplay: "VLSystem MPlay Mini"
+	yard2: "Y.A.R.D.2 USB mini / LCD"
 
 param_type: \
         act200l \
@@ -228,6 +229,7 @@ param_type: \
         hercules_smarttv_stereo \
         i2cuser \
         igorplugusb \
+	yard2 \
         iguanaIR \
         imon \
         imon_lcd \
@@ -300,6 +302,7 @@ default_param: \
         hercules_smarttv_stereo \
         i2cuser \
         igorplugusb \
+	yard2 \
         iguanaIR \
         imon \
         imon_lcd \
@@ -425,6 +428,7 @@ remote: \
         uirt2_raw \
         udp \
         usb_uirt_raw \
+	yard2 \
         wpc8769l
         any:
 
