diff --git a/mk/environ.mk b/mk/environ.mk
index eb03e36b1aebde69e7887595feb1e0a57e925905..23f3952d4f59ea2f72ef74392309ed40583dc3b2 100644
--- a/mk/environ.mk
+++ b/mk/environ.mk
@@ -145,6 +145,11 @@ HAL_BOARD = HAL_BOARD_LINUX
 HAL_BOARD_SUBTYPE = HAL_BOARD_SUBTYPE_LINUX_ERLE
 endif
 
+ifneq ($(findstring zynq, $(MAKECMDGOALS)),)
+HAL_BOARD = HAL_BOARD_LINUX
+HAL_BOARD_SUBTYPE = HAL_BOARD_SUBTYPE_LINUX_ZYNQ
+endif
+
 ifneq ($(findstring pxf, $(MAKECMDGOALS)),)
 HAL_BOARD = HAL_BOARD_LINUX
 HAL_BOARD_SUBTYPE = HAL_BOARD_SUBTYPE_LINUX_PXF
diff --git a/mk/find_tools.mk b/mk/find_tools.mk
index 704e58b156a88a2b6fd2990cd22ad04c92b0fa53..84950d333489df5fdbe8488e53a23ae5dcdc60cd 100644
--- a/mk/find_tools.mk
+++ b/mk/find_tools.mk
@@ -73,6 +73,15 @@ RPI_LD      :=  arm-linux-gnueabihf-g++
 RPI_GDB     :=  arm-linux-gnueabihf-gdb
 RPI_OBJCOPY :=  arm-linux-gnueabihf-obj
 
+# toolchains for zynq
+ZYNQ_CXX     :=  arm-xilinx-linux-gnueabi-g++
+ZYNQ_CC      :=  arm-xilinx-linux-gnueabi-gcc
+ZYNQ_AS      :=  arm-xilinx-linux-gnueabi-gcc
+ZYNQ_AR      :=  arm-xilinx-linux-gnueabi-ar
+ZYNQ_LD      :=  arm-xilinx-linux-gnueabi-g++
+ZYNQ_GDB     :=  arm-xilinx-linux-gnueabi-gdb
+ZYNQ_OBJCOPY :=  arm-xilinx-linux-gnueabi-objcopy
+
 # enable ccache if installed
 CCACHE :=  $(call FIND_TOOL,ccache)
 
diff --git a/mk/targets.mk b/mk/targets.mk
index 73b93785bf9bf43a5674917016e9a5270981c5bc..01c76a21e2fe3f652e056724bed1738ae844a9e8 100644
--- a/mk/targets.mk
+++ b/mk/targets.mk
@@ -31,6 +31,12 @@ erle: HAL_BOARD = HAL_BOARD_LINUX
 erle: TOOLCHAIN = BBONE
 erle: all
 
+zynq: HAL_BOARD = HAL_BOARD_LINUX
+zynq: TOOLCHAIN = ZYNQ
+zynq: all
+zynq-hil: EXTRAFLAGS += "-DHILMODE=HIL_MODE_ATTITUDE -DHIL_MODE=HIL_MODE_SENSORS "
+zynq-hil : zynq
+
 pxf: HAL_BOARD = HAL_BOARD_LINUX
 pxf: TOOLCHAIN = BBONE
 pxf: all