diff --git a/tools/patman/tools.py b/tools/patman/tools.py
index d41115a..b50370d 100644
--- a/tools/patman/tools.py
+++ b/tools/patman/tools.py
@@ -114,16 +114,14 @@
     indir = dirname
     tout.Debug("Using input directories %s" % indir)
 
-def GetInputFilename(fname, allow_missing=False):
+def GetInputFilename(fname):
     """Return a filename for use as input.
 
     Args:
         fname: Filename to use for new file
-        allow_missing: True if the filename can be missing
 
     Returns:
-        The full path of the filename, within the input directory, or
-        None on error
+        The full path of the filename, within the input directory
     """
     if not indir or fname[:1] == '/':
         return fname
@@ -132,8 +130,6 @@
         if os.path.exists(pathname):
             return pathname
 
-    if allow_missing:
-        return None
     raise ValueError("Filename '%s' not found in input path (%s) (cwd='%s')" %
                      (fname, ','.join(indir), os.getcwd()))
 
@@ -274,7 +270,7 @@
                    #(fname, len(data), len(data)))
     return data
 
-def WriteFile(fname, data, binary=True):
+def WriteFile(fname, data):
     """Write data into a file.
 
     Args:
@@ -283,7 +279,7 @@
     """
     #self._out.Info("Write file '%s' size %d (%#0x)" %
                    #(fname, len(data), len(data)))
-    with open(Filename(fname), binary and 'wb' or 'w') as fd:
+    with open(Filename(fname), 'wb') as fd:
         fd.write(data)
 
 def GetBytes(byte, size):
