From 1fe870b8df453c65c882bbb83474cb8abce577e8 Mon Sep 17 00:00:00 2001 From: konsgn Date: Tue, 16 Jan 2018 13:23:36 -0500 Subject: [PATCH] added MKL27<128kB support --- src/target/kinetis.c | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/target/kinetis.c b/src/target/kinetis.c index b65366c..a2d8cdf 100644 --- a/src/target/kinetis.c +++ b/src/target/kinetis.c @@ -25,6 +25,8 @@ * KL25 Sub-family Reference Manual * * Extended with support for KL02 family + * + * And KL27 */ #include "general.h" @@ -110,11 +112,29 @@ bool kinetis_probe(target *t) kl_gen_add_flash(t, 0x00000000, 0x20000, 0x400); break; case 0x231: - t->driver = "KL27"; + t->driver = "KL27x128-256"; // MKL27 >=128kb target_add_ram(t, 0x1fffe000, 0x2000); target_add_ram(t, 0x20000000, 0x6000); kl_gen_add_flash(t, 0x00000000, 0x40000, 0x400); break; + case 0x271: + switch((sdid>>16)&0x0f){ + case 4: + t->driver = "KL27x32"; + target_add_ram(t, 0x1ffff800, 0x0800); + target_add_ram(t, 0x20000000, 0x1800); + kl_gen_add_flash(t, 0x00000000, 0x8000, 0x400); + break; + case 5: + t->driver = "KL27x64"; + target_add_ram(t, 0x1ffff000, 0x1000); + target_add_ram(t, 0x20000000, 0x3000); + kl_gen_add_flash(t, 0x00000000, 0x10000, 0x400); + break; + default: + return false; + } + break; case 0x021: /* KL02 family */ switch((sdid>>16) & 0x0f){ case 3: