Atmel AVR4920: ASF - USB Device Stack - Compliance and Performance Figures. Atmel Microcontrollers. Application Note. Features.



Similar documents
Atmel AVR4921: ASF - USB Device Stack Differences between ASF V1 and V2. 8-bit Atmel Microcontrollers. Application Note. Features.

Atmel AVR4903: ASF - USB Device HID Mouse Application. Atmel Microcontrollers. Application Note. Features. 1 Introduction

Atmel AVR1017: XMEGA - USB Hardware Design Recommendations. 8-bit Atmel Microcontrollers. Application Note. Features.

How To Use An Atmel Atmel Avr32848 Demo For Android (32Bit) With A Microcontroller (32B) And An Android Accessory (32D) On A Microcontroller (32Gb) On An Android Phone Or

AVR1922: Xplain Board Controller Firmware. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

AVR1510: Xplain training - XMEGA USART. 8-bit Microcontrollers. Application Note. Prerequisites. 1 Introduction

AVR115: Data Logging with Atmel File System on ATmega32U4. Microcontrollers. Application Note. 1 Introduction. Atmel

Atmel AVR4950: ASF - USB Host Stack. 8-bit Atmel Microcontrollers. Application Note. Features. 1 Introduction

AVR1309: Using the XMEGA SPI. 8-bit Microcontrollers. Application Note. Features. 1 Introduction SCK MOSI MISO SS

APPLICATION NOTE. Atmel AVR134: Real Time Clock (RTC) Using the Asynchronous Timer. Atmel AVR 8-bit Microcontroller. Introduction.

AVR287: USB Host HID and Mass Storage Demonstration. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

32-bit AVR UC3 Microcontrollers. 32-bit AtmelAVR Application Note. AVR32769: How to Compile the standalone AVR32 Software Framework in AVR32 Studio V2

Application Note. Atmel ATSHA204 Authentication Modes. Prerequisites. Overview. Introduction

AVR1900: Getting started with ATxmega128A1 on STK bit Microcontrollers. Application Note. 1 Introduction

AVR32701: AVR32AP7 USB Performance. 32-bit Microcontrollers. Application Note. Features. 1 Introduction

AT91SAM ARM-based Flash MCU. Application Note

AVR32138: How to optimize the ADC usage on AT32UC3A0/1, AT32UC3A3 and AT32UC3B0/1 series. 32-bit Microcontrollers. Application Note.

Application Note. 8-bit Microcontrollers. AVR270: USB Mouse Demonstration

8-bit. Application Note. Microcontrollers. AVR282: USB Firmware Upgrade for AT90USB

AVR1318: Using the XMEGA built-in AES accelerator. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

APPLICATION NOTE. Atmel AT02985: User s Guide for USB-CAN Demo on SAM4E-EK. Atmel AVR 32-bit Microcontroller. Features. Description.

AVR125: ADC of tinyavr in Single Ended Mode. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

Using CryptoMemory in Full I 2 C Compliant Mode. Using CryptoMemory in Full I 2 C Compliant Mode AT88SC0104CA AT88SC0204CA AT88SC0404CA AT88SC0808CA

APPLICATION NOTE Atmel AT02509: In House Unit with Bluetooth Low Energy Module Hardware User Guide 8-bit Atmel Microcontroller Features Description

8051 Flash Microcontroller. Application Note. A Digital Thermometer Using the Atmel AT89LP2052 Microcontroller

AVR305: Half Duplex Compact Software UART. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

APPLICATION NOTE. Atmel LF-RFID Kits Overview. Atmel LF-RFID Kit. LF-RFID Kit Introduction

Application Note. Atmel CryptoAuthentication Product Uses. Atmel ATSHA204. Abstract. Overview

AVR1301: Using the XMEGA DAC. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

AVR32788: AVR 32 How to use the SSC in I2S mode. 32-bit Microcontrollers. Application Note. Features. 1 Introduction

USER GUIDE EDBG. Description

APPLICATION NOTE. Atmel AVR443: Sensor-based Control of Three Phase Brushless DC Motor. Atmel AVR 8-bit Microcontrollers. Features.

AVR1321: Using the Atmel AVR XMEGA 32-bit Real Time Counter and Battery Backup System. 8-bit Microcontrollers. Application Note.

APPLICATION NOTE. Atmel AT04389: Connecting SAMD20E to the AT86RF233 Transceiver. Atmel SAMD20. Description. Features

Application Note. 8-bit Microcontrollers. AVR272: USB CDC Demonstration UART to USB Bridge

AVR033: Getting Started with the CodeVisionAVR C Compiler. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

AVR1600: Using the XMEGA Quadrature Decoder. 8-bit Microcontrollers. Application Note. Features. 1 Introduction. Sensors

Introducing a platform to facilitate reliable and highly productive embedded developments

Atmel AVR4905: ASF - USB Device HID Generic. 8-/32-bit Atmel Microcontrollers. Application Note. Features. 1 Introduction

How To Design An Ism Band Antenna For 915Mhz/2.4Ghz Ism Bands On A Pbbb (Bcm) Board

AT88CK490 Evaluation Kit

USER GUIDE. ZigBit USB Stick User Guide. Introduction

AVR317: Using the Master SPI Mode of the USART module. 8-bit Microcontrollers. Application Note. Features. Introduction

AVR353: Voltage Reference Calibration and Voltage ADC Usage. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

AVR319: Using the USI module for SPI communication. 8-bit Microcontrollers. Application Note. Features. Introduction

Software Prerequisites Linux Ubuntu LTS. Estimated completion time: 15min. The goal of this hands-on is to:

APPLICATION NOTE. AT07175: SAM-BA Bootloader for SAM D21. Atmel SAM D21. Introduction. Features

Application Note. 8-bit Microcontrollers. AVR293: USB Composite Device

General Porting Considerations. Memory EEPROM XRAM

Atmel AVR4027: Tips and Tricks to Optimize Your C Code for 8-bit AVR Microcontrollers. 8-bit Atmel Microcontrollers. Application Note.

Application Note. C51 Bootloaders. C51 General Information about Bootloader and In System Programming. Overview. Abreviations

Atmel AVR4904: ASF - USB Device HID Keyboard Application. Atmel Microcontrollers. Application Note. Features. 1 Introduction

Atmel AT32UC3A3256 microcontroller 64MBit SDRAM Analog input (to ADC) Temperature sensor RC filter

APPLICATION NOTE. Atmel AT01095: Joystick Game Controller Reference Design. 8-/16-bit Atmel Microcontrollers. Features.

AVR2006: Design and characterization of the Radio Controller Board's 2.4GHz PCB Antenna. Application Note. Features.

AVR151: Setup and Use of the SPI. Introduction. Features. Atmel AVR 8-bit Microcontroller APPLICATION NOTE

AVR106: C Functions for Reading and Writing to Flash Memory. Introduction. Features. AVR 8-bit Microcontrollers APPLICATION NOTE

AVR1324: XMEGA ADC Selection Guide. 8-bit Atmel Microcontrollers. Application Note. Features. 1 Introduction

AT89C5131A Starter Kit... Software User Guide

AVR1003: Using the XMEGA Clock System. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

AT91 ARM Thumb Microcontrollers. AT91SAM CAN Bootloader. AT91SAM CAN Bootloader User Notes. 1. Description. 2. Key Features

AVR134: Real Time Clock (RTC) using the Asynchronous Timer. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

APPLICATION NOTE. Secure Personalization with Transport Key Authentication. ATSHA204A, ATECC108A, and ATECC508A. Introduction.

1Mb (64K x 16) One-time Programmable Read-only Memory

AVR106: C functions for reading and writing to Flash memory. 8-bit Microcontrollers. Application Note. Features. Introduction

APPLICATION NOTE. Authentication Counting. Atmel CryptoAuthentication. Features. Introduction

AVR030: Getting Started with IAR Embedded Workbench for Atmel AVR. 8-bit Microcontrollers. Application Note. Features.

8-bit Microcontroller. Application Note. AVR415: RC5 IR Remote Control Transmitter. Features. Introduction. Figure 1.

8-bit Microcontroller. Application Note. AVR105: Power Efficient High Endurance Parameter Storage in Flash Memory

AN10866 LPC1700 secondary USB bootloader

AVR245: Code Lock with 4x4 Keypad and I2C LCD. 8-bit Microcontrollers. Application Note. Features. 1 Introduction

Application Note. 1. Introduction. 2. Associated Documentation. 3. Gigabit Ethernet Implementation on SAMA5D3 Series. AT91SAM ARM-based Embedded MPU

Designing Feature-Rich User Interfaces for Home and Industrial Controllers

Atmel SMART ARM Core-based Embedded Microprocessors

Dell Statistica. Statistica Document Management System (SDMS) Requirements

AVR 32771: USB High speed Device Mass storage on SD/MMC card with optional AES. 32-bit Microcontrollers. Application Note. Features.

Atmel AVR ATxmega384C3 microcontroller OLED display with pixels resolution Analog sensors. Ambient light sensor Temperature sensor

AVR055: Using a 32kHz XTAL for run-time calibration of the internal RC. 8-bit Microcontrollers. Application Note. Features.

SMARTCARD XPRO. Preface. SMART ARM-based Microcontrollers USER GUIDE

AT09333: USB Host Interface (UHI) for Communication Class Device (CDC) Introduction. Atmel Microcontrollers APPLICATION NOTE

AVR315: Using the TWI Module as I2C Master. Introduction. Features. AVR 8-bit Microcontrollers APPLICATION NOTE

APPLICATION NOTE. Atmel AT01180: Barcode and QR code scanner User Guide. Atmel 32-bit Microcontroller. Features. Introduction

3-output Laser Driver for HD-DVD/ Blu-ray/DVD/ CD-ROM ATR0885. Preliminary. Summary. Features. Applications. 1. Description

Atmel Power Line Communications. Solutions for the Smart Grid

8-bit Microcontroller. Application Note. AVR134: Real-Time Clock (RTC) using the Asynchronous Timer. Features. Theory of Operation.

MODFLEX MINI GATEWAY ETHERNET USER S GUIDE

APPLICATION NOTE. Atmel AVR600: STK600 Expansion, Routing and Socket Boards. Atmel Microcontrollers. Introduction

APPLICATION NOTE. AT16268: JD Smart Cloud Based Smart Plug Getting. Started Guide ATSAMW25. Introduction. Features

AVR131: Using the AVR s High-speed PWM. Introduction. Features. AVR 8-bit Microcontrollers APPLICATION NOTE

Quest vworkspace Virtual Desktop Extensions for Linux

AVR127: Understanding ADC Parameters. Introduction. Features. Atmel 8-bit and 32-bit Microcontrollers APPLICATION NOTE

Two mechanical buttons Two user LEDs Four expansion headers. Board controller with USB interface. One power LED and one status LED

AVR32110: Using the AVR32 Timer/Counter. 32-bit Microcontrollers. Application Note. Features. 1 Introduction

8-bit RISC Microcontroller. Application Note. AVR182: Zero Cross Detector

APPLICATION NOTE. Atmel AVR2033: SAM-ICE Adapter Hardware User Manual. 8-bit Atmel Microcontrollers. Features. Introduction

AN3998 Application note

AT91 ARM Thumb Microcontrollers. Application Note. Interfacing a PC Card to an AT91RM9200-DK. Introduction. Hardware Interface

QT1 Xplained Pro. Preface. Atmel QTouch USER GUIDE

AVR311: Using the TWI Module as I2C Slave. Introduction. Features. AVR 8-bit Microcontrollers APPLICATION NOTE

AVR2004: LC-Balun for AT86RF230. Application Note. Features. 1 Introduction

Transcription:

Atmel AVR4920: ASF - USB Device Stack - Compliance and Performance Figures Features Compliance to USB 2.0 - Chapters 8 and 9 - Classes: HID, MSC, CDC, PHDC Interoperability: OS, classes, self- and bus-powered Performance figures - Interrupt latency measurement - Code and RAM footprint - Low, full, and high speed - USB power consumption Atmel Microcontrollers Application Note 1 Introduction Atmel has always provided a USB device stack that supports AVR products with a USB hardware interface. The Atmel AVR UC3 A and B series microcontrollers are supported with a specific USB device stack in the Atmel AVR Software Framework (ASF). Since ASF version 2, a new USB device stack is delivered to support all AVR products. This document describes the validation tests used to check USB 2.0 compliance for this new USB device stack and the performance tests used to provide information about stack capabilities. Rev.

2 Abbreviations ASF CDC FS HID HS LS MSC OS PHDC UDC UDD UDI USB AVR Software Framework Communication device class USB full speed Human interface device USB high speed USB low speed Mass storage class Operating system Peripheral health device class USB device controller USB device descriptor USB device interface Universal serial bus 2 Atmel AVR4920

Atmel AVR4920 3 Overview This application note relies on the AVR4900: ASF - USB Device Stack application note, which should be read first to get information on the USB device stack implementation. This document includes results concerning validation and performance: The validation tests used to check USB 2.0 compliance The performance tests used to give information about USB device stack capabilities 3

4 USB Compliance 4.1 USB compliance tests 4.1.1 Chapter 8 tests The chapter 8 tests validate the UDD module of the USB device stack. The chapter 9 tests validate the UDD and UDC modules of the USB device stack. The chapter 9 class tests validate the UDI modules of the USB device stack. USB chapter 8 compliance of USB device drivers (UDD) is performed using the Ch8ck v2.00 tool from Testronic Laboratories. 4.1.2 Chapter 9 tests 4.1.2.1 Chapter 9 compliance 4.1.2.2 Chapter 9 classes 4.1.3 High speed test feature USB chapter 9 compliance is performed using the USB 2.0 Command Verifier tool from the USB Implementers Forum (usb.org). All LS/FS/HS modes are exercised on a USB golden tree given as reference. The aim of the class compliance tests is to verify the class implementation (UDI modules). USB class compliance of HID, PHDC in FS mode, and MSC in FS/HS modes is performed using the USB 2.0 Command Verifier tool from the USB Implementers Forum (usb.org). High speed test feature implementation (Test J, Test K, Test SE0_NAK, and Test PACKET) is performed using the High Speed Electrical Test Tool from the USB Implementers Forum (usb.org). 4 Atmel AVR4920

Atmel AVR4920 5 USB interoperability The interoperability tests validate the compliance and robustness of the USB device stack for various types of USB host operating systems in both bus- and self-powered modes. These tests are performed using the most common USB device classes. 5.1 Operating systems Microsoft Windows XP SP3, Windows Vista, Windows 7 (32-bit) Apple Mac OS X 10.5.8 Ubuntu 8.04 and Ubuntu 9 OpenSUSE 11.1 Fedora 9 and Fedora 10 5.2 Power modes and wake up Plug/unplug robustness test in USB self-powered mode Plug/unplug robustness test in USB bus-powered mode Remote wake up feature in high, full and low speed modes 5.3 USB classes HID mouse HID keyboard MSC CDC 5

6 Performance figures USB device stack performance is evaluated on various parameters: The footprint; that is, the total size of code and RAM memory used to run the USB device stack Timing performance Transfer rate on various USB device classes Power consumption 6.1 Footprint Table 6-1. USB device example code and RAM size. Example HID device mouse full speed CDC device full speed MSC device high speed The USB device stack footprint depends on: The AVR core (XMEGA, megaavr, UC3) The USB hardware version The USB class The compiler and the optimization level These parameters may result in many values for the footprint, but on average the USB device stack does not exceed 10KB of flash and 1KB of RAM when using a high level of compiler optimization. All the examples shown in Table 6-1 have been performed using: IAR Embedded Workbench for 32-bit AVR 3.30 and 8-bit AVR 6.10, with high size-optimization level ASF with the following modules: sleep management service, interrupt management, startup, external flash memory control, and others Part USB device stack Code size (KB) RAM size (KB) Code size (KB) Full example RAM size (KB) ATxmega256A3BU 5.5 0.6 6 0.6 AT32UC3A0 5 0.3 8 0.4 AT32UC3C0 5 0.4 8 0.6 ATxmega256A3BU 6 1 8 1.5 AT32UC3C0 6 1 9.5 1.5 ATxmega256A3BU 6.5 0.9 9.5 1.5 AT32UC3A0 6.5 0.4 11.5 1 AT32UC3C0 6.5 0.7 11.5 1.5 AT32UC3A3 7 0.4 15.5 2 6.2 Interrupt timing All USB events are managed by one or two USB interrupt vectors. Each USB event performs an interrupt, and only one event is decoded by the interrupt process. Thus, there is no waiting loop in the USB interrupt routine. 6 Atmel AVR4920

Atmel AVR4920 The timing to process an interrupt depends on the compilation level and the USB interrupt source (USB reset, suspend, end of transfer, etc.). However, this timing does not exceed 100µs with a high optimization level and a 12MHz CPU frequency. For more information about USB interrupt behavior and configuration, see the section entitled Behavior in the AVR4900: ASF USB Device Stack application note. 6.3 Transfer rate Atmel AVR device USB interfaces support all USB transfer types. The interfaces are able to support the maximum rate allowed using USB DMA. The speed limit for each transfer type is given by the USB specification in Table 6-2. Table 6-2. USB transfer type and limits. Maximum bandwidth (MB/s) LS FS HS Control 0.02 0.79 15.14 Interrupt (1) 0.01 0.06 0.49 Bulk - 1.16 50.78 Isochronous - 1.22 54.69 Note: 1. One transaction per start of frame. However, the final speed performance of a class depends on: Class protocol overhead Source/destination speed USB host performance The MSC and CDC classes use the USB bulk transfer type, which allows the high performance of USB device hardware and the associated USB firmware stack to be easily measured. All the tests are done with a USB host with no latency in order to measure the full performance limit of the USB device. 6.3.1 MSC The mass storage class (MSC) uses the USB bulk transfer. The MSC specification includes a protocol overhead, which reduces the useful data transfer rate. This reduction is fully dependent on the useful data size requested by a MSC read/write command. The useful data transfer rate limitation is shown by the MSC possibility patterns in Figure 6-1 and Figure 6-2. The MSC protocol is managed by software on AVR products, thus speed performance is dependent on CPU frequency. This is shown by the patterns for the speeds measured with different CPU frequencies in Figure 6-1 and Figure 6-2. A memory based on internal RAM gives the real limit of the MSC USB device by removing the programming latency inherent in mass storage devices. However, the speed is mainly reduced by memory interface limitations and memory performance. The SD High Speed card and MMC Plus card, which use a memory card interface (MCI), show the dependency of the interface and the memory (Figure 6-1, Figure 6-2). NOTE The firmware used for the following measurements is compiled using the GCC or IAR compiler with a high optimization level. 7

Figure 6-1. MSC speed limits for full speed. 1400 1200 1000 Speed (KB/s) 800 600 400 200 0 0 10 20 30 40 50 60 70 Useful data / command (KB) MSC possibility AT32UC3A0, CPU 12MHz on RAM AT32UC3A3, CPU 66MHz on SD card High Speed ATxmega256A3BU, CPU 24MHz on RAM NOTE Read and write speed limits are the same. Figure 6-2. MSC speed limits for high speed. 60 50 Speed (MB/s) 40 30 20 10 0 0 10 20 30 40 50 60 70 MSC possibility Useful data / command (KB) AT32UC3A3, CPU 66MHz on RAM AT32UC3A3, CPU 48MHz on RAM AT32UC3A3, CPU 12MHz on RAM AT32UC3A3, CPU 66MHz on MCI - MMC Plus card AT32UC3A3, CPU 66MHz on MCI - SD High Speed card NOTE 8 Atmel AVR4920 Read and write speed limits are the same.

Atmel AVR4920 6.3.2 CDC NOTE The communication class device uses the USB bulk transfer, and does not include a protocol to transfer data. Thus, the CDC limitation is the bulk limitation shown by the CDC possibility patterns in Figure 6-3. However, the CDC implementation in the USB device stack requires control of the data flow between two different flow behaviors (for example, USB and UART) and can limit the actual speed. The ASF CDC implementation provides two interfaces to send or receive data on a USB line. The first is a byte access with the putc and getc functions, and the second is a data array access with the ReadBuf and WriteBuf functions to target the maximum of full speed. The maximum speed performance of these accesses is shown in Figure 6-3, Figure 6-4 and Figure 6-5. The CDC class can be used as a bridge between UART and USB connections. In this case, the speed limitation is the UART baud rate. The firmware used for the following measures is compiled using the GCC or IAR compiler with a high optimization level. Figure 6-3. CDC speed limits for full speed on an Atmel AT32UC3A0. 1400 (CDC possibility) 1200 ReadBuf WriteBuf 1000 Speed (KB/s) 800 600 Putc 400 Getc 200 0 0 10 20 30 40 50 60 70 CPU Freq. (MHz) 9

Figure 6-4. CDC speed limits for full speed on an Atmel ATxmega256A3BU. 1400 CDC possibility 1200 1000 WriteBuf ReadBuf Speed (KB/s) 800 600 400 200 Putc Getc 0 12 14 16 18 20 22 24 CPU Freq. (MHz) Figure 6-5. CDC speed limits for high speed on Atmel AT32UC3A3. 7 6 ReadBuf WriteBuf 5 Speed (MB/s) 4 3 2 1 Putc 0 0 10 20 30 40 50 60 70 CPU Freq. (MHz) Getc 10 Atmel AVR4920

Atmel AVR4920 6.4 Power consumption Atmel AVR products have been designed to support a USB device application in bus power mode. In suspend mode, the bus-powered application needs to reduce its power consumption to be less than 2.5mA at 5V. All Atmel UC3 products support the static sleep mode in USB suspend mode, which has a current consumption of less than 1mA at 3.3V. All Atmel XMEGA products support the power down sleep mode in USB suspend mode, which has a current consumption of less than 0.5mA at 3.3V. 11

7 Table of contents Features... 1 1 Introduction... 1 2 Abbreviations... 2 3 Overview... 3 4 USB Compliance... 4 4.1 USB compliance tests... 4 4.1.1 Chapter 8 tests... 4 4.1.2 Chapter 9 tests... 4 4.1.3 High speed test feature... 4 5 USB interoperability... 5 5.1 Operating systems... 5 5.2 Power modes and wake up... 5 5.3 USB classes... 5 6 Performance figures... 6 6.1 Footprint... 6 6.2 Interrupt timing... 6 6.3 Transfer rate... 7 6.3.1 MSC... 7 6.3.2 CDC... 9 6.4 Power consumption... 11 7 Table of contents... 12 12 Atmel AVR4920

Atmel Corporation 2325 Orchard Parkway San Jose, CA 95131 USA Tel: (+1)(408) 441-0311 Fax: (+1)(408) 487-2600 www.atmel.com Atmel Asia Limited Unit 01-5 & 16, 19F BEA Tower, Milennium City 5 418 Kwun Tong Road Kwun Tong, Kowloon HONG KONG Tel: (+852) 2245-6100 Fax: (+852) 2722-1369 Atmel Munich GmbH Business Campus Parkring 4 D-85748 Garching b. Munich GERMANY Tel: (+49) 89-31970-0 Fax: (+49) 89-3194621 Atmel Japan 9F, Tonetsu Shinkawa Bldg. 1-24-8 Shinkawa Chou-ku, Tokyo 104-0033 JAPAN Tel: (+81) 3523-3551 Fax: (+81) 3523-7581 2011 Atmel Corporation. All rights reserved. Atmel, Atmel logo and combinations thereof, AVR, megaavr, XMEGA, and others are registered trademarks or trademarks of Atmel Corporation or its subsidiaries. Windows and others are registered trademarks or trademarks of Microsoft Corporation in U.S. and or other countries. Other terms and product names may be trademarks of others. Disclaimer: The information in this document is provided in connection with Atmel products. No license, express or implied, by estoppel or otherwise, to any intellectual property right is granted by this document or in connection with the sale of Atmel products. EXCEPT AS SET FORTH IN THE ATMEL TERMS AND CONDITIONS OF SALES LOCATED ON THE ATMEL WEBSITE, ATMEL ASSUMES NO LIABILITY WHATSOEVER AND DISCLAIMS ANY EXPRESS, IMPLIED OR STATUTORY WARRANTY RELATING TO ITS PRODUCTS INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE, SPECIAL OR INCIDENTAL DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS AND PROFITS, BUSINESS INTERRUPTION, OR LOSS OF INFORMATION) ARISING OUT OF THE USE OR INABILITY TO USE THIS DOCUMENT, EVEN IF ATMEL HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Atmel makes no representations or warranties with respect to the accuracy or completeness of the contents of this document and reserves the right to make changes to specifications and product descriptions at any time without notice. Atmel does not make any commitment to update the information contained herein. Unless specifically provided otherwise, Atmel products are not suitable for, and shall not be used in, automotive applications. Atmel products are not intended, authorized, or warranted for use as components in applications intended to support or sustain life.