Project import
diff --git a/fsl_utp-2.4.2/Makefile b/fsl_utp-2.4.2/Makefile
new file mode 100644
index 0000000..4521828
--- /dev/null
+++ b/fsl_utp-2.4.2/Makefile
@@ -0,0 +1,58 @@
+#
+#    Copyright (c) 2014 Nest Labs, Inc.
+#    All rights reserved.
+#
+#    This document is the property of Nest. It is considered
+#    confidential and proprietary information.
+#
+#    This document may not be reproduced or transmitted in any form,
+#    in whole or in part, without the express written permission of
+#    Nest.
+#
+#    Description:
+#      This is the makefile for building the in-tree gadget driver as an
+#      out-of-tree driver with the CONFIG_FSL_UTP define set. This
+#      define is required for the Windows DFU tool to initiate shell
+#      commands via the MSC gadget driver, but causes the driver's MSC
+#      functionality to break and presents a security vulnerability if
+#      used in production builds.
+#
+
+include pre.mak
+
+CP				= cp -R
+
+BuildDir			:= $(call GenerateBuildPaths,src)
+
+LinuxDir			:= sw/tps/linux
+LinuxSourceDir			:= $(BuildRoot)/$(LinuxDir)/$(LinuxPackageName)
+LinuxBuildDir			:= $(BuildRoot)/$(LinuxDir)/$(subst $(FirstMakefile),Makefile,$(BuildDirectory))
+
+GadgetDriverSourceDir		:= drivers/usb/gadget
+GadgetDriverConfig		:= CONFIG_FSL_UTP
+
+all: $(PackageDefaultGoal)
+
+# Make a build directory and copy the gadget driver source into it so that we can build
+# it as an out-of-tree driver
+$(BuildDir):
+	$(create-directory)
+	$(Verbose)$(CP) $(LinuxSourceDir)/$(GadgetDriverSourceDir)/* $(BuildDir)
+
+# Kick off a driver build against the latest kernel build and install it to the results folder
+stage: $(LinuxBuildDir) | $(BuildDir) $(ResultDirectory)
+	$(Verbose)KCPPFLAGS="-D$(GadgetDriverConfig)=y" \
+	$(MAKE) -C $(LinuxBuildDir) \
+	ARCH=$(LinuxProductArch) \
+	CROSS_COMPILE=$(ToolBinDir)/$(CROSS_COMPILE) \
+	M=$(CURDIR)/$(BuildDir) \
+	"INSTALL_MOD_DIR=kernel/$(GadgetDriverSourceDir)" \
+	"INSTALL_MOD_PATH=$(ResultDirectory)" \
+	DEPMOD=$(DEPMOD) \
+	modules modules_install
+
+clean:
+	$(Verbose)$(RM) $(RMFLAGS) -r $(BuildDir)
+	$(Verbose)$(RM) $(RMFLAGS) -r $(ResultDirectory)
+
+include post.mak