patchAVR Downloader/UploaDEr - Patches: patch #9315, Add PRUSS programmer type for...


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

patch #9315: Add PRUSS programmer type for xmega pdi

Submitter:  Enric Balletbo i Serra <eballetbo>
Submitted:  Tue 25 Apr 2017 07:42:28 AM UTC
Category:  None Priority:  5 - Normal
Status:  None Privacy:  Public
Assigned to:  None Open/Closed:  Open

Tue 06 Jun 2017 01:00:47 PM UTC, comment #2: 

Joerg, thanks for you answer.

Some comments below.

About the documentation missing I'll prepare a second version including the .texi and man page files. About hardcoding the path name I have another version of this patch that uses and extra parameter to specify the location of the firmware files, but seeing your answer might be not enough, I'll try to investigate how to handle this part with autoconf parameter and see how it works on Windows

Finally, the firmware is open [1] so that shouldn't be a problem, I guess


Enric Balletbo i Serra <eballetbo>
Tue 06 Jun 2017 12:11:39 PM UTC, comment #1: 

Basically, a good idea.

Documentation patches are missing (either to the .texi or the
man page file, preferrably for both).

I see a couple of problems with the firmware files though:

First, we are guests on the FSF's servers, and they only accept
opensource projects.  Thus, we are not allowed to host a
closed-source firmware for the programmer.

Second, hardcoding a path name in the application is completely
a "don't ever do this".  This should preferrably be handled
using autoconf parameters, depending from --prefix.  However,
on Windows, this is usually completely different.  See
winconf.c for how this is implemented wrt. avrdude.conf.

Joerg Wunsch <joerg_wunsch>
Group administrator
Tue 25 Apr 2017 07:42:28 AM UTC, original submission:  

This patch adds XMEGA PDI programming support using the Programmable Realtime Unit (PRUSS) available on AM335x based boards like Beaglebone Black. You can program an XMEGA in-circuit without requiring any external hardware, with only a few extra components in your circuit. Note that the programmer needs a custom firmware that needs to be loaded to the PRU (also attached here). Avrdude loads the firmware and communicates with it to be able to program the firmware on XMEGA. E.g.

  avrdude -p atxmega16d4 -c pruss -e -U flash:w:my-firmware.hex

Enric Balletbo i Serra <eballetbo>


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attached Files
file #40494:  add-support-for-am335x-pruss-programmer.patch added by eballetbo (15KiB - text/x-patch - The .bin files are the firmware required for the programmer)
file #40495:  uio_pdi-text-1.bin added by eballetbo (4KiB - application/octet-stream - The .bin files are the firmware required for the programmer)
file #40496:  uio_pdi-data-1.bin added by eballetbo (4KiB - application/octet-stream - The .bin files are the firmware required for the programmer)


Depends on the following items: None found

Items that depend on this one: None found


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

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.


    Follow 4 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2017-04-25 eballetbo Attached File- Added add-support-for-am335x-pruss-programmer.patch, #40494
        Attached File- Added uio_pdi-text-1.bin, #40495
        Attached File- Added uio_pdi-data-1.bin, #40496
        Carbon-Copy- Added eballetbo

    Back to the top

    Powered by Savane 3.13-4b48.
    Corresponding source code