avrdude-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[avrdude-dev] Questions on how to add avr32 support.


From: David Hoerl
Subject: [avrdude-dev] Questions on how to add avr32 support.
Date: Fri, 02 Oct 2009 14:51:06 -0400
User-agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.1.1) Gecko/20090903 Eudora/3.0b3

Group,

I would very much like to get avr32 support in avrdude. I do my work on the Mac (FreeBSD based), and am not forced to run Parallels/Windows2000 for the sole purpose of running avr32program.

My goal is to support the JTAGICE MKII programmer in USB mode, for the EVK1100 development board (UC32A0512-U).

While I am learning more everyday on the AVR32 chip, I have absolutely no exposure to other Atmel products. So, I'm having real problems in knowing where to start and how to approach the problem.

The first big question:

- is this primarily a programming job, to add new routines into avrdude, with some amount of new config options, or is it just adding new options?


The other issues I am grappling with are, exactly how much different is the AVR32 from the other micros? Would it be worth my while to look at some particular older supported chip, and try to use that as a launch point?

Atmel has produced a specific document for programming the AVR32 - AVR32708 - FLASH JTAG Programming Algorithms. Joerg believes these would only be of interest to programming box developers, and are not relevant to the avrdude support per se.

I have the AVR32708 doc on the Atmel JTAGICE mkII. Tobias did a avr32program trace in 2007 in an attempt to learn how to support AVR32 - he posted the debug output from avr32program with the actual USB byte stream (which the latest avr32program does not seem to generate).

So, suppose I now know what commands to send to the JTAGICE - do I need new subroutines in avrdude to send the same things, or do I leverage off existing software?

I also found the xml description in the avr32program config file which is attached below, if it helps anyone.

If anyone has more than a passing interest in this, and would be willing to assist me (by answering questions) that would be a big help too.

David

dhoerl at mac dot com


Config info used by avr32program:

<avr32_utils>
  <device>
    <part_spec_version version="6"/>
    <last_upd_date>2008-11-14</last_upd_date>
    <part_name>UC3A0512</part_name>
    <jtag_idcode>7900</jtag_idcode>
    <jtag_revision from="7"/>
    <flash_read_delay time="1000" to_rev="8"/>
    <avr_reset domains="5"/>
    <core_name>STILETTO</core_name>
    <flashc id="I7503" name="FLASHC" revision="2.0.0" address="0xFFFE1400" page_size="512" 
pages_pr_region="64" flash_size="524288">
      <fuses gp_hi_offset="0xC" gp_lo_offset="0x10"/>
    </flashc>
    <pm address="0xFFFF0C00"/>
    <memory>
      <block name="EBI_CS0" type="EXT_SRAM" address="0xC0000000" 
size="0x01000000"/>
      <block name="EBI_CS1" type="EXT_SRAM" address="0xD0000000" 
size="0x08000000"/>
      <block name="EBI_CS2" type="EXT_SRAM" address="0xC8000000" 
size="0x01000000"/>
      <block name="EBI_CS3" type="EXT_SRAM" address="0xCC000000" 
size="0x01000000"/>
      <block name="FLASH" type="FLASH" address="0x80000000" size="0x00080000"/>
      <block name="SRAM" type="INT_SRAM" address="0x00000000" 
size="0x00010000"/>
      <block name="USBB_SLAVE" type="INT_SRAM" address="0xE0000000" 
size="0x00800000"/>
    </memory>
  </device>
</avr32_utils>





reply via email to

[Prev in Thread] Current Thread [Next in Thread]