From 7de935d3ad6b50affa847b7baa38302deb558a32 Mon Sep 17 00:00:00 2001 From: Joerg Wunsch Date: Thu, 18 Jan 2018 21:52:00 +0000 Subject: [PATCH] Submitted by Jan Egil Ruud: patch #9542: Correct "usersig" on avr8x devices * avrdude.conf.in (.avr8x_tiny, .avr8x_mega): rename "userrow" to "usersig", and fix its page size for .avr8x_mega * jtag3.c: Remove all "userrow" handling git-svn-id: svn://svn.savannah.nongnu.org/avrdude/trunk/avrdude@1422 81a1dc3b-b13d-400b-aceb-764788c761c2 --- ChangeLog | 8 ++++++++ NEWS | 1 + avrdude.conf.in | 21 ++++++++++++++------- jtag3.c | 8 -------- 4 files changed, 23 insertions(+), 15 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4def711e..80c5ae07 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2018-01-18 Joerg Wunsch + + Submitted by Jan Egil Ruud: + patch #9542: Correct "usersig" on avr8x devices + * avrdude.conf.in (.avr8x_tiny, .avr8x_mega): rename "userrow" to + "usersig", and fix its page size for .avr8x_mega + * jtag3.c: Remove all "userrow" handling + 2018-01-17 Joerg Wunsch Submitted by Reinhard Max diff --git a/NEWS b/NEWS index 7741dc85..2dd31129 100644 --- a/NEWS +++ b/NEWS @@ -61,6 +61,7 @@ Current: patch #8219: Fix boot_start for xmega devices on jtagmkII patch #9185: Add extended_param to usbasp.c - erasing patch #8311: Add IPv6 support to the -Pnet:host:port option + patch #9542: Correct "usersig" on avr8x devices * Internals: - New avrdude.conf keyword "family_id", used to verify SIB attributes diff --git a/avrdude.conf.in b/avrdude.conf.in index 2704f8ab..edeb1ad7 100644 --- a/avrdude.conf.in +++ b/avrdude.conf.in @@ -15219,13 +15219,6 @@ part offset = 0x1100; ; - memory "userrow" - size = 0x20; - offset = 0x1300; - page_size = 0x20; - readsize = 0x100; - ; - memory "prodsig" size = 0x3D; offset = 0x1103; @@ -15297,6 +15290,13 @@ part parent ".avr8x" id = ".avr8x_tiny"; desc = "AVR8X tiny family common values"; family_id = "tinyAVR"; + + memory "usersig" + size = 0x20; + offset = 0x1300; + page_size = 0x20; + readsize = 0x100; + ; ; #------------------------------------------------------------ @@ -15307,6 +15307,13 @@ part parent ".avr8x" id = ".avr8x_mega"; desc = "AVR8X mega family common values"; family_id = "megaAVR"; + + memory "usersig" + size = 0x40; + offset = 0x1300; + page_size = 0x40; + readsize = 0x100; + ; ; #------------------------------------------------------------ diff --git a/jtag3.c b/jtag3.c index 9460c168..f5986f7e 100644 --- a/jtag3.c +++ b/jtag3.c @@ -1694,8 +1694,6 @@ static int jtag3_paged_write(PROGRAMMER * pgm, AVRPART * p, AVRMEM * m, PDATA(pgm)->eeprom_pageaddr = (unsigned long)-1L; } else if ( ( strcmp(m->desc, "usersig") == 0 ) ) { cmd[3] = MTYPE_USERSIG; - } else if ( ( strcmp(m->desc, "userrow") == 0 ) ) { - cmd[3] = MTYPE_USERSIG; } else if ( ( strcmp(m->desc, "boot") == 0 ) ) { cmd[3] = MTYPE_BOOT_FLASH; } else if ( p->flags & AVRPART_HAS_PDI || p->flags & AVRPART_HAS_UPDI ) { @@ -1787,8 +1785,6 @@ static int jtag3_paged_load(PROGRAMMER * pgm, AVRPART * p, AVRMEM * m, cmd[3] = MTYPE_PRODSIG; } else if ( ( strcmp(m->desc, "usersig") == 0 ) ) { cmd[3] = MTYPE_USERSIG; - } else if ( ( strcmp(m->desc, "userrow") == 0 ) ) { - cmd[3] = MTYPE_USERSIG; } else if ( ( strcmp(m->desc, "boot") == 0 ) ) { cmd[3] = MTYPE_BOOT_FLASH; } else if ( p->flags & AVRPART_HAS_PDI || p->flags & AVRPART_HAS_UPDI ) { @@ -1901,8 +1897,6 @@ static int jtag3_read_byte(PROGRAMMER * pgm, AVRPART * p, AVRMEM * mem, addr = mem->offset & 7; } else if (strcmp(mem->desc, "usersig") == 0) { cmd[3] = MTYPE_USERSIG; - } else if (strcmp(mem->desc, "userrow") == 0) { - cmd[3] = MTYPE_USERSIG; } else if (strcmp(mem->desc, "prodsig") == 0) { cmd[3] = MTYPE_PRODSIG; } else if (strcmp(mem->desc, "calibration") == 0) { @@ -2052,8 +2046,6 @@ static int jtag3_write_byte(PROGRAMMER * pgm, AVRPART * p, AVRMEM * mem, addr = mem->offset & 7; } else if (strcmp(mem->desc, "usersig") == 0) { cmd[3] = MTYPE_USERSIG; - } else if (strcmp(mem->desc, "userrow") == 0) { - cmd[3] = MTYPE_USERSIG; } else if (strcmp(mem->desc, "prodsig") == 0) { cmd[3] = MTYPE_PRODSIG; } else if (strncmp(mem->desc, "lock", 4) == 0) {