Boot: integrate MCUBoot with TF-M to act as a BL2 bootloader

Modifications in MCUBoot to be aligned with BL2 requirements in TF-M:
 -- OS dependency was removed, no need to copy any OS repo to build it
 -- CMSIS serial driver is used
 -- flash driver interface is aligned with original version
 -- S and NS images are handeled as a single binary blob
 -- automatic image concatenation and signing at build time
 -- authentication based on SHA256 and RSA-2048 digital signature
 -- mbedTLS library is used for cryptographic operation
 -- static analyser warnings fixed in some files

Change-Id: I54891762eac8d0df634e954ff19a9505b16f3028
Signed-off-by: Tamas Ban <tamas.ban@arm.com>
diff --git a/bl2/ext/mcuboot/scripts/imgtool.py b/bl2/ext/mcuboot/scripts/imgtool.py
index bc67252..9420d2b 100644
--- a/bl2/ext/mcuboot/scripts/imgtool.py
+++ b/bl2/ext/mcuboot/scripts/imgtool.py
@@ -22,15 +22,9 @@
 
 def gen_rsa2048(args):
     keys.RSA2048.generate().export_private(args.key)
-def gen_ecdsa_p256(args):
-    keys.ECDSA256P1.generate().export_private(args.key)
-def gen_ecdsa_p224(args):
-    print("TODO: p-224 not yet implemented")
 
 keygens = {
-        'rsa-2048': gen_rsa2048,
-        'ecdsa-p256': gen_ecdsa_p256,
-        'ecdsa-p224': gen_ecdsa_p224, }
+        'rsa-2048': gen_rsa2048, }
 
 def do_keygen(args):
     if args.type not in keygens:
@@ -42,10 +36,8 @@
     key = keys.load(args.key)
     if args.lang == 'c':
         key.emit_c()
-    elif args.lang == 'rust':
-        key.emit_rust()
     else:
-        msg = "Unsupported language, valid are: c, or rust"
+        msg = "Unsupported language, valid are: c"
         raise argparse.ArgumentTypeError(msg)
 
 def do_sign(args):