bugAVR Downloader/UploaDEr - Bugs: bug #38580, Current svn head, xmega and fuses,...

 
 

You are not allowed to post comments on this tracker with your current authentification level.

bug #38580: Current svn head, xmega and fuses, all fuses tied to fuse0

Submitted by:  Claus-Justus Heine <rotdrop>
Submitted on:  Sun 24 Mar 2013 01:22:56 PM UTC  
 
Category: NoneSeverity: 3 - Normal
Priority: 5 - NormalItem Group: None
Status: FixedPrivacy: Public
Assigned to: Joerg Wunsch <joerg_wunsch>Originator Name: Claus-Justus Heine
Open/Closed: Closed

Tue 03 Sep 2013 11:37:53 AM UTC, comment #1:

Fixed in SVN r1201.

The problem was much simpler: when cloing the JTAGICEmkII code,
the "addr += mem->offset;" statement went away, as the PDI
base offsets are no longer to be sent along in the JTAGICE3.

However, this also dropped the offset inside the fuse region.

Joerg Wunsch <joerg_wunsch>
Project AdministratorIn charge of this item.
Sun 24 Mar 2013 01:22:56 PM UTC, original submission:

The current head version of the svn trunk of avrdude contains a bug which ties all access to fuses on the XMega parts to fuse0, at least when using the jtag3 in PDI mode. However, I suspect that at least with the jtag2 ICE the same problem exists.

The point is that jtag3_read_byte() uses

However, any offset definition from /etc/avrdude.conf is ignored, so strncmp() very happily return 0 for fuse0 ... fuse5, but the address record stays at zero, though the base-address used with the programmer is that for fuse0.

The attached patch addresses this issue with two different approaches:

1 Insert a "fuses" memory section into the part definition in avrdude.conf. Fuses can then be programmed and read back as a usual memory region. This may not be too clever, as normally there is no fuse3 for the xmega. But of course, one could insert a fusesA and a fusesB region which leave out any holes in the fuses address range.

2 Change the individual programmer-driver to really check for the name fuse0 ... fuse5. To do so XXX_read_byte() and XXX_write_byte() have to be changed appropriately. The attached patch proposes one possible hack-around for the jtag3 programmer. If that patch is accepted, the source code for all other affected programmers could be changed accordingly.

Best,

Claus

Claus-Justus Heine <rotdrop>

 

Attached Files
file #27670:  avrdude-9999-r1139-fuses.patch added by rotdrop (2kB - text/x-patch - Patch against svn r1139)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by joerg_wunsch (Posted a comment)
  • -unavailable- added by rotdrop (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 4 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Tue 03 Sep 2013 11:37:53 AM UTCjoerg_wunschStatusNone=>Fixed
      Assigned toNone=>joerg_wunsch
      Open/ClosedOpen=>Closed
    Sun 24 Mar 2013 01:22:56 PM UTCrotdropAttached File-=>Added avrdude-9999-r1139-fuses.patch, #27670

    Back to the top


    Powered by Savane 3.1-cleanup