Index: flash.h
===================================================================
--- flash.h	(revision 444)
+++ flash.h	(working copy)
@@ -34,7 +34,7 @@
 #define __DARWIN__
 #endif
 
-#if defined(__FreeBSD__)
+#if defined(__FreeBSD__) || defined(__DragonFly__)
   #include <machine/cpufunc.h>
   #define off64_t off_t
   #define lseek64 lseek
Index: flashrom.c
===================================================================
--- flashrom.c	(revision 444)
+++ flashrom.c	(working copy)
@@ -344,7 +344,7 @@
 	int force = 0;
 	int read_it = 0, write_it = 0, erase_it = 0, verify_it = 0;
 	int ret = 0, i;
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__DragonFly__)
 	int io_fd;
 #endif
 
@@ -462,7 +462,7 @@
 	/* First get full io access */
 #if defined (__sun) && (defined(__i386) || defined(__amd64))
 	if (sysi86(SI86V86, V86SC_IOPL, PS_IOPL) != 0) {
-#elif defined(__FreeBSD__)
+#elif defined(__FreeBSD__) || defined (__DragonFly__)
 	if ((io_fd = open("/dev/io", O_RDWR)) < 0) {
 #else
 	if (iopl(3) != 0) {
