X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=drv%2Fser_p.h;h=8837543f153b5083d145c2280f13fce2eff5033d;hb=bee5b90739b848c275160512171a3114532babb4;hp=14d2171047571aeb30ae39e401ea6dd202a72aac;hpb=0375780817109b6ab5cd4f36ccf80650b2fe77d5;p=bertos.git diff --git a/drv/ser_p.h b/drv/ser_p.h index 14d21710..8837543f 100755 --- a/drv/ser_p.h +++ b/drv/ser_p.h @@ -1,7 +1,9 @@ /** * \file - * Copyright (C) 2003,2004 Develer S.r.l. (http://www.develer.com/) - * All Rights Reserved. + * * * \brief Hardware dependent serial driver (interface) * @@ -11,42 +13,64 @@ * \author Giovanni Bajo */ -/* - * $Log$ - * Revision 1.1 2004/05/23 18:10:11 bernie - * Import drv/ modules. - * - * Revision 1.1 2004/05/14 12:47:26 rasky - * Importato nuovo supporto seriale per AVR da Stefano - * - * Revision 1.3 2004/05/08 13:59:08 aleph - * Fix header guard - * - * Revision 1.2 2004/05/08 13:58:36 aleph - * Add log comment - * - */ +/*#* + *#* $Log$ + *#* Revision 1.10 2006/07/19 12:56:26 bernie + *#* Convert to new Doxygen style. + *#* + *#* Revision 1.9 2006/02/17 22:23:06 bernie + *#* Update POSIX serial emulator. + *#* + *#* Revision 1.8 2005/11/04 16:20:02 bernie + *#* Fix reference to README.devlib in header. + *#* + *#* Revision 1.7 2005/01/14 00:47:56 aleph + *#* Rename callbacks; SerialHardwareVT.txSending: New callback. + *#* + *#* Revision 1.6 2004/12/08 08:56:58 bernie + *#* Reformat. + *#* + *#* Revision 1.5 2004/09/06 21:40:50 bernie + *#* Move buffer handling in chip-specific driver. + *#* + *#* Revision 1.4 2004/08/25 14:12:08 rasky + *#* Aggiornato il comment block dei log RCS + *#* + *#* Revision 1.3 2004/06/03 11:27:09 bernie + *#* Add dual-license information. + *#* + *#* Revision 1.2 2004/05/23 18:21:53 bernie + *#* Trim CVS logs and cleanup header info. + *#* + *#*/ + +#ifndef DRV_SER_P_H +#define DRV_SER_P_H -#ifndef _DRV_SER_P_H -#define _DRV_SER_P_H +#include /* size_t */ struct SerialHardware; struct Serial; struct SerialHardwareVT { - void (*init)(struct SerialHardware* ctx, struct Serial* ser); - void (*cleanup)(struct SerialHardware* ctx); - void (*setbaudrate)(struct SerialHardware* ctx, unsigned long rate); - void (*setparity)(struct SerialHardware* ctx, int parity); - void (*enabletxirq)(struct SerialHardware* ctx); + void (*init)(struct SerialHardware *ctx, struct Serial *ser); + void (*cleanup)(struct SerialHardware *ctx); + void (*setBaudrate)(struct SerialHardware *ctx, unsigned long rate); + void (*setParity)(struct SerialHardware *ctx, int parity); + void (*txStart)(struct SerialHardware *ctx); + bool (*txSending)(struct SerialHardware *ctx); }; struct SerialHardware { - const struct SerialHardwareVT* table; + const struct SerialHardwareVT *table; + unsigned char *txbuffer; + unsigned char *rxbuffer; + size_t txbuffer_size; + size_t rxbuffer_size; }; -struct SerialHardware* ser_hw_getdesc(int unit); +struct SerialHardware *ser_hw_getdesc(int unit); -#endif // _DRV_SER_P_H +#endif /* DRV_SER_P_H */