Release Notes ¡V SAM-BA
-----------------------
Release version: 2.12
Release date: 2012

1 Overview

The SAM Boot Assistant (SAM-BA) software provides a means of easily 
programming different Atmel AT91SAM devices. They are based on a common 
dynamic linked library (DLL), the sam-ba.dll. SAM-BA use the DLL to 
communicate with the target board.

You are strongly recommended to read through the following release notes 
before completing the installation of SAM-BA v2.12.

----------
2 Downloading and Installing
----------------------------
The software can be found and downloaded from ATMEL's website at 
http://www.atmel.com/dyn/products/tools_card_v2.asp?tool_id=3883
  
- sam-ba_2.12.exe (current release) for Windows
  Install files for the SAM-BA package. 
  Execute sam-ba_2.12.exe to install. 
  
- sam-ba_2.12.zip (current release) for Linux
  Install files for the SAM-BA package only. Uses standard CDC driver
  Unzip the package zip file under a local folder on your PC.

3 Contents
-----------

- sam-ba.dll v1.002 (A dynamic linked library connects AT91SAM-based targets 
  through a USB, JTAG or COM port).

- Segger JLINKARM.DLL V4.46f (DLL for using J-Link / J-Trace with third-party 
  programs JTAG driver)

- TCL Toolchain including tclsh can be downloaded from the following URL:
  http://www.activestate.com/Products/ActiveTcl/

- Documents
  - SAM-BA User Guide.pdf
  - Releasenote.txt
  - readme.txt
  - usb_notice.html

- New features.
  - at91sam4s4 at91sam4s8 at91sam4s16 at91sam4sd32 support
  - at91sam9cn11-ek at91sam9n11-ek support  
  - at91sama5d3x support
  - at91sam4s-xpld board support
  - rf231usb-rd board support

- SAMBA 2.12 supports the following AT91SAM based microcontrollers:
  - at91sam3s16 at91sam3s8 at91sam3s4 at91sam3s2 at91sam3s1 rf231usb-rd
  - at91sam3u4 at91sam3u2 at91sam3u1
  - at91sam3n4 at91sam3n2 at91sam3n1
  - at91sam3x8 at91sam3x4 at91sam3x2
  - at91sam4s4 at91sam4s8 at91sam4s16 at91sam4sd32 sam4s-xpid
  - at91sam7a3
  - at91sam7l64 at91sam7l128
  - at91sam7s161 at91sam7s321 at91sam7s32 at91sam7s64 at91sam7s128 at91sam7s256 at91sam7s512
  - at91sam7se32 at91sam7se256 at91sam7se512
  - at91sam7x128 at91sam7x256 at91sam7x512
  - at91sam7xc128 at91sam7xc256 at91sam7xc512
  - at91sam9260 
  - at91sam9261
  - at91sam9263
  - at91sam9g10
  - at91sam9g15 at91sam9g25 at91sam9g35 at91sam9x25 at91sam9x35
  - at91sam9n12 at91sam9cn12 at91sam9n11 at91sam9cn11
  - at91sam9g20
  - at91sam9g45
  - at91sam9m10 
  - at91sam9rl64
  - at91sam9xe128
  - at91sam9xe128
  - at91sam9xe256
  - at91sam9xe512
  - at91sama5d3x
  - at91cap9

4 Bug Fixes and Improvements
----------------------------
Improvements:
------------
    - Sam-ba works in Windows7 64bit.
    - Adjust communication timeout parameters for COM port connection.
    - Support devices multiple programming task management.
        - New samba_multiple_programming example.
    - New feature for JLINK timeout parameter configuration.
    - LowlevelInit enhancement.
        - Only supported crystals(specified in datasheet) are available in crystals list 
          for giving board.
        - All crystals (include bypass mode) in crystal list are able to connect with the 
          customized board directly.
    - sam-ba user guide updated.
    - sam-ba installation path changed.

Bug Fixes
---------
    - The startup time of SAM-BA is too slow in Window7 64bit system.
    - An error occurs when trying to start a script record. (for Win7, recommend to run 
      as administrator to be able to access 'Program Files' folder)
    - Invalid parameter checking for PMECC configuration for sam9n12 and sam9x5. 
    - The help document of SAM-BA V2.11 can't be displayed under Linux system.
    - OOB issue about NAND programming with PMECC when writing rootfs.jffs2.
    - JTAG connection issue for sam3x board.
    - Incorrect ddr2 configuration on phase 17 for sam9m10/g45, sam9x5 and sam9n12.
    - sam9m10/g45 is not able to connect with COM port.
    - sam9g25 eeprom programming issue under vista.
    - Some batches of SAM4S-EK boards can't be connected via JLink
    - Wrong default DDRAM address(0x20000000) in MEMORY descriptor TCL file for sam9m10.
    - SAM3U board flash can't be erased properly.
    - Long erasing time for SAM9N12 serial Flash via COM port lead to timeout.
    - Unlock sector is too slow for SAM4S-EK.
    - "Compare sent file with memory" failed on some SAM4S-EK board.
    - sam3n applet descriptor error for SST Serial Flash .
    - COGENT SAM9X35 CANNOT Boot up after send boot file to NAND flash.
    - "Compare sent file with memory" function failed under Linux system.
    - PMECC configuration window can't display completely under Vista 32Bit.
    - SAM9261-EK with MRLB silicon or SAM9G20-EK over USB connection
    - SAM4S-EK - Flash Programming fails if Flash is not erased before.
    - SAM-BA 2.11 with SAM9G20-EK through USB command line.
    - Sam3s16 is not able to program without erase all.
    - SAM9x5-EK (AT91SAM9G35) Compare sent file with memory failed.
    - Sam3s16/sam4s lock/unlock and erase issue.
    - Monitor.bin for sam9m10/g45 sources is not available.
    - SAM-BA Installation Path must be coherent with other Atmel SW such as Studio.
    - Support custom name in the kit name without the chip name into it.
    - Buffer size is too big for some devices in flash applets.
    - AT91Boot_Close and AT91Boot_Open should normally treat an exception due to its 
      functionality internally.
    - Fix for compile-time warning message.
    - Remove RDY/BSY pin usage for sam4s applet.
    - SAM-BA task management do not work under win7 64 bit.
    - COM port could only send ACK character in case of INIT command in some applets.

Known Issues
---------
    - Some boards cannot connect though USB CDC to a chip (with USB Full Speed) on AMD 
      based computers.
    - Some boards cannot work properly through USB/COM port connection without reseting 
      ( or, power off / power on) the board.
----------------------------------------------------------------------------------------------------------------------------------

5 History 
---------------------
----------------------------------------------------------------------------------------------------------------------------------
v2.11:
Improvements:
------------
    - Support USB CDC, JLINK and COM port connection for Vista (32/64) and Windows 7 (32/64)
    - Upgrade to Tcl8.5.9 / Tk8.5.9  (samba 2.10 Tcl8.4.13 / Tk8.4.13)
    - new sam-ba.dll instead of SAMBA_DLL.DLL
    - using usbser.sys(Microsoft Windows USB modem driver system driver file)
      instead of atm6124.sys
    - nandflash applet : Remove RDY/BSY pin usage for SAM-BA
    - remove DDRAM duplicated configurations in board_memories.c 
    - Remove duplicated tcl_lib folder
    - SAM9M10/G45 coherency
    - Add One Wire EEPROM support for sam9x5 series
    - SST Serial Flash support
    - backup connection information and last used folder as soon as sam-ba used
    - add a mask on revision field in JEDEC ID to be able to support several
      version of a given flash
    - Add support of modern Embedded Linux file systems(ubifs / yaffs2 / jffs2 support)
    - Add Jlink speed interface
    - Name of USB serial link
    - TWI Address optional selection for EEPROM (9g15/9g25/9g35/9x25/9x35/9n12)
    - Support /dev/ttyACMx for Linux version samba

Bug Fixes
---------
    - sam3s lowlevel init prevents the user to use a crystal different 
      from 12 MHz
    - the external XTtal shall NOT be enabled for sam9m10
    - descriptor error for SST Serial Flash
    - File compare (>10K) not matched though COM port
    - serial flash driver bug fix
    - sam7x256 flash applet does not write using IAP ROM feature
    - fixed sam7 with IAP flash loader issue
    - fixed sam9m10-g45-ek board_lowlevelinit issue
    - The customer should be allowed to use it's real board name
    - reduce the erase size of serialflash applet
    - No adaptive clocking for SAM3 devices
    - sam7x512 Flash Erase command does not work for the 2nd flash bank
    - Assembly code (in old applets) compilation
    - Wrong lowlevel inits for sam3x applets 
    - Cap9 SDRAM (extram) applet linker script issue
    - Buffer size issue in example samba_dll_usage_VC6
    - Miss "rc" indication in installer, folders and inside the program
    - SAM-BA installer no admin right to install on WIN7 /Vista
    - SAM-BA crashes when no_board selection.
    - SDRAM and DDRAM panes shall not be displayed at the same time in the GUI
    - Nandflash applet debug incorrect info of SEND BOOT FILE
    - Incorrect board name displayed in main window (some board re-target)
    - SAM9G15-ES2 : Cannot be launched twice without cpu reset
    - Name of sam9x25 / x35 tcl files (devices) shall be lowercase
    - TCL scan crash in some case for linux sam-ba
    - After a TCL_Go, If the applet does not return, SAM-BA is frozen.
    - Incorrect board name displayed in main window (some board re-target)
    - Sam9n12 applet compile error in linux
    - Missing ACK for COM connection in extram and lowlevel applet for 9xx5/9n12
    
Known Issues
---------
    - Some boards can't work properly through USB/COM port connection without reseting the board

----------------------------------------------------------------------------------------------------------------------------------
v2.10:
    - Fixed Jtag issue when the chip has booted on a program from an external memory (Nand, DF ...) and if that program has initialized the PLL and MCK. 
    - Fixed Jtag issue if customers not running the chips with the same XTAL or external oscillator as on our EK boards.
    - Add new at25 device AT25DF512B-SSH-B,AT25DF021-SSH-B,AT25DF021-MH-T,AT25DF161-SSH-B,AT25DF161-SH-B,AT25DF641-S3H-B.
    - Fixed flash init problem on AT91SAM7S32/321.
    - Fixed DataFlash init problem on AT91SAM7A3.
    - Fixed dataFlash programming of large files fails (~>1Mbytes) on AT91SAM9G20 with COM port connection.
    - Fixed flash applet initialization in CDC mode on SAM7.
    - Fixed SAM7X/XC access cdc linux , Flash init fail with error message.
    - Add "Send Boot File" for SAM9G10/G20/G45/M10 chips.
    - Add lowlevel_init in flash applet for sam7 chip.
    - Fix spell error "appletMAilboxAddr" at91sam7s128-ek.tcl.
    - Fix security bit script for at91sam3u4-ek.tcl.
    - Fixed  Nand flash program algorithm for SAM9M10/9G45.
    - When using the JTAG it is not possible to program the 2nd flash bank of the SAM7X512 device.
    - Fixed flash init problem on AT91SAM7S32/321.
    - Add support to verify if an existing sam-ba task is running before launching sam-ba, ask to kill it.
    - No Support for 8-bit Nand Small Blocks. The algorithm is not correctly implemented for such nandflash devices.
    - An incorrect EEPROM::appletAddr in TCL definitions address to SDRAM could lead to crash for some at91sam9 boards.
    - The applet initialization does not report any error in case no EEPROM is connected or an EEPROM different from the selected one 
      is Enabled by the script.
    - Latest large nandflash devices have bigger page size (4K for instance) and SAMBA and the SW library does not support it. This 
      may be due to the new spare zone organization.
    - An incorrect 'Enable Security Bit' descriptor for SAM3U.
    - Add function to erase blocks for NAND flash applet (command line only)
    - NOR flash not able to 'erese all' on sam9m10-g45-ek REV.A board
    - When SAM-BA starts, it could not differentiate a real invalid ID from a communication error with the chip.
    - Sam-ba could not detect real board, if user select a wrong board name from drop list.
    - It is not possible to connect to SAMBA with a SAM9260-EK using the RS232 port.
    - Some customer board could not program dataflash properly, improve the programming algorithm.
    - Improved erase all algorithm for nandflash applet. Fixed Usb/com timeout problem on some 8-Bit Nand flash.
    - Fixed eeprom program algorithm for SAM9260-EK.
    - Add Dataflash (SPI0 CS3) support for SAM9261-EK.
    - Flash applet in command mode could not unlock region before write.
    - Fixed connection on SAM3S-EK with COM port.
    - CDC version hang during flash init of SAM7 chips.
    - Connect/disconnect functionality support.

----------------------------------------------------------------------------------------------------------------------------------
v2.9:
    - Added support for AT91SAM9M10, AT91SAM9G45, AT91SAM9G10, AT91SAM7SL.
    - Added support for AT91SAM3U, with USB and COM port connection only (no SAM-ICE).
    - Fixed Dataflash access on AT91SAM9G20 CU-A.
    - Select 16/32 bits external SDRAM in board TCL file without applet compilation.
    - External memory initialization failure at SAM-BA startup is indicated by a popup
       window, but user can choose to use SAM-BA anyway.
    - Added a listbox to choose applet debug traces level easily. Traces are sent to DBGU
       port when using USB or JTAG connection link.
    - Added Nandflash bad block listing script.
    - Added a document to help user to customize SAM-BA and applets for a custom board.

----------------------------------------------------------------------------------------------------------------------------------
v2.8:
    - Added support for DataFlash in Binary mode (Power of 2 page size),
    - Improved programing speed with applets running at higher CPU and MCK clock frequency,
    - Fixed AT91SAM7L64/128 support,
    - Fixed AT91SAM7XC support.

----------------------------------------------------------------------------------------------------------------------------------
v2.7:
    - New flash programming applets :
        - NandFlash, DataFlash, SerialFlash, NorFlash,
        - GCC code,
        - based on at91lib software library. 
    - Added support for AT91SAM7L64/128, AT91SAM9G20, AT91SAM9XE,
        and AT91CAP9 (EK and STK).
    - Fixed AT91SAM9RL64 support.

----------------------------------------------------------------------------------------------------------------------------------
v2.6:
    - Fixed AT91SAM9263 DataFlash script bug.
    - Fixed AT91SAM7S512/SE512/X512 Flash programming bug.
    - Fixed AT91SAM7SE/X/XC GPNVM accesses with JTAG.
    - Added support for AT91SAM9RL64 and AT91CAP9.
    - More NandFlash supported :
        * Micron, Samsung, Toshiba, Fujitsu, National, and STMicro
        * 1Gbit to 16Gbits, 8 and 16 bits bus size.
    - Improved NandFlash bad block management (Skip block method).
    - JTAG support for AT91SAM926x.

----------------------------------------------------------------------------------------------------------------------------------
v2.5:
    - Bypass of Connection Message Box when launching SAM-BA with port
       and board name in command line parameter.
    - Support for AT91SAM9XE family.
    - Various bug fixes : script mode feature improved (no more message boxes),
       open and save file dialog boxes displays now correctly.

----------------------------------------------------------------------------------------------------------------------------------
v2.4:
    - J-Link support improved for AT91SAM7A3
    - AT91SAM9263 NandFlash block programming support
    - Added SDRAM config for 48, 100 and 133 MHz MCK on SAM926x boards
    - Minor GUI bug fixes

----------------------------------------------------------------------------------------------------------------------------------
v2.3:
    Supports:
    - SAM7S32/321/64/128/256/512
    - SAM7X(C)128/256/512
    - SAM7SE32/256/512
    - SAM9260/9261/9263
    Only by adding/modifying TCL scripts in the lib directory, it is now
      possible to add:
    - Your own boards
    - Your own memory algorithms
----------------------------------------------------------------------------------------------------------------------------------


6 Contact Information
---------------------
For support on the AT91 Software Package please send request to at91@atmel.com

---------------------
6 Copyright (c) 2011, Atmel Corporation All rights reserved.

 * ----------------------------------------------------------------------------
 *         ATMEL Microcontroller Software Support
 * ----------------------------------------------------------------------------
 * Copyright (c) 2011, Atmel Corporation
 *
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * - Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the disclaimer below.
 *
 * Atmel's name may not be used to endorse or promote products derived from
 * this software without specific prior written permission.
 *
 * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
 * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
 * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 * ----------------------------------------------------------------------------
