flash: samd: add SAMD10 and SAMD11 part IDs

Add part IDs for the new SAMD10 and SAMD11 parts within the Atmel SAMD
family, they have the same Flash controller as the other samd parts and
should be supported by the at91samd driver.  Compile-tested only.

Change-Id: I493ae96a7d7e8d19e607fd9a4b6544a982be42b3
Signed-off-by: Andrey Yurovsky <yurovsky@gmail.com>
Reviewed-on: http://openocd.zylin.com/2170
Tested-by: jenkins
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
__archive__
Andrey Yurovsky 2014-06-12 09:57:29 -07:00 committed by Andreas Fritiofson
parent 8878673aa9
commit eea49ce509
1 changed files with 32 additions and 0 deletions

View File

@ -61,6 +61,8 @@
#define SAMD_FAMILY_D 0x00 #define SAMD_FAMILY_D 0x00
#define SAMD_SERIES_20 0x00 #define SAMD_SERIES_20 0x00
#define SAMD_SERIES_21 0x01 #define SAMD_SERIES_21 0x01
#define SAMD_SERIES_10 0x02
#define SAMD_SERIES_11 0x03
struct samd_part { struct samd_part {
uint8_t id; uint8_t id;
@ -69,6 +71,32 @@ struct samd_part {
uint32_t ram_kb; uint32_t ram_kb;
}; };
/* Known SAMD10 parts */
static const struct samd_part samd10_parts[] = {
{ 0x0, "SAMD10D14AMU", 16, 4 },
{ 0x1, "SAMD10D13AMU", 8, 4 },
{ 0x2, "SAMD10D12AMU", 4, 4 },
{ 0x3, "SAMD10D14ASU", 16, 4 },
{ 0x4, "SAMD10D13ASU", 8, 4 },
{ 0x5, "SAMD10D12ASU", 4, 4 },
{ 0x6, "SAMD10C14A", 16, 4 },
{ 0x7, "SAMD10C13A", 8, 4 },
{ 0x8, "SAMD10C12A", 4, 4 },
};
/* Known SAMD11 parts */
static const struct samd_part samd11_parts[] = {
{ 0x0, "SAMD11D14AMU", 16, 4 },
{ 0x1, "SAMD11D13AMU", 8, 4 },
{ 0x2, "SAMD11D12AMU", 4, 4 },
{ 0x3, "SAMD11D14ASU", 16, 4 },
{ 0x4, "SAMD11D13ASU", 8, 4 },
{ 0x5, "SAMD11D12ASU", 4, 4 },
{ 0x6, "SAMD11C14A", 16, 4 },
{ 0x7, "SAMD11C13A", 8, 4 },
{ 0x8, "SAMD11C12A", 4, 4 },
};
/* Known SAMD20 parts. See Table 12-8 in 42129FSAM10/2013 */ /* Known SAMD20 parts. See Table 12-8 in 42129FSAM10/2013 */
static const struct samd_part samd20_parts[] = { static const struct samd_part samd20_parts[] = {
{ 0x0, "SAMD20J18A", 256, 32 }, { 0x0, "SAMD20J18A", 256, 32 },
@ -123,6 +151,10 @@ static const struct samd_family samd_families[] = {
samd20_parts, ARRAY_SIZE(samd20_parts) }, samd20_parts, ARRAY_SIZE(samd20_parts) },
{ SAMD_PROCESSOR_M0, SAMD_FAMILY_D, SAMD_SERIES_21, { SAMD_PROCESSOR_M0, SAMD_FAMILY_D, SAMD_SERIES_21,
samd21_parts, ARRAY_SIZE(samd21_parts) }, samd21_parts, ARRAY_SIZE(samd21_parts) },
{ SAMD_PROCESSOR_M0, SAMD_FAMILY_D, SAMD_SERIES_10,
samd10_parts, ARRAY_SIZE(samd10_parts) },
{ SAMD_PROCESSOR_M0, SAMD_FAMILY_D, SAMD_SERIES_11,
samd11_parts, ARRAY_SIZE(samd11_parts) },
}; };
struct samd_info { struct samd_info {