//------------------------------------------------------------------------------
// File:          communication.h
// Function:      Communication protocol functions
// Supported chip(s):
//    - AT91SAM7XC128
//    - AT91SAM7XC256
// Supported toolchain(s):
//    - IAR Embedded Workbench
// Date created:  03 May 2006
// Created by:    JJo
//------------------------------------------------------------------------------
// Notes:
//
// This file must include the header of every communication protocol defined
// for the bootloader. It is also responsible for checking that a protocol has
// been selected.
//
// A communication module must define the following functions:
//  -> void communication_init(void);
//  -> void communication_cleanup(void);
//  -> void communication_ready(void);
//  -> unsigned int communication_receive(void *);
//------------------------------------------------------------------------------

#ifndef BOOTLOADER_COMMUNICATION_H
#define BOOTLOADER_COMMUNICATION_H

//------------------------------------------------------------------------------
// Includes
//------------------------------------------------------------------------------

#include "communication/xon_xoff.h"

//------------------------------------------------------------------------------
// Prototypes
//------------------------------------------------------------------------------

void communication_init(void);
void communication_cleanup(void);
void communication_ready(void);
unsigned int communication_receive(void *);

#endif // BOOTLOADER_COMMUNICATION_H
