2007-08-23 Alexey Shusharin * doc/can.sgml: Callback on event documentation. * src/can.c: Change one wakeup to callback in a comment. * include/canio.h: changed cyg_addrword_t to CYG_ADDRWORD so can will compile without the kernel. 2007-08-06 Alexey Shusharin Andrew Lunn * cdl/io_can.cdl: Added option CYGOPT_IO_CAN_SUPPORT_CALLBACK * include/canio.h: Added struct cyg_can_callback_cfg for setting callback configurations. * include/can.h: Added declaration and initialization of callback configuration in struct can_channel. * src/can.c: Added callback configuration changing and application function call. 2007-07-02 Uwe Kindler * cdl/io_can.cdl: Added interface CYGINT_IO_CAN_CHANNELS for counting available CAN channels * include/canio.h: Changed type cyg_can_msgbuf_info. The two fields are 16 bit now because device drivers may support more than 256 message buffers (i.e. the LPC2xxx CAN driver) 2007-06-20 Uwe Kindler * test/can_filter: Changed filter loop counter from cyg_uint8 to cyg_uint16 because LPC2xxx CAN driver supports more than 256 message buffers. 2007-03-23 Uwe Kindler * cdl/io_can.cdl: Added several interfaces for implementation by device drivers. Moved several configuration options from device drivers to the generic CAN driver. With this design a device driver does not need to provide all configuration options in its CDL file - it simply needs to implement the provided interfaces. The drawback of this decicsion is, that it is not possible to control these options independently for several CAN devices. (But most platforms will have only 1 channel) Added configuration option CYGBLD_IO_CAN_EXTRA_TESTS. This option enables the build of the interactive CAN tests. * test/can_filter: Added interactive message filtering test * test/can_hdi: Added interactive hardware description interface test * test/can_load: Added interactive message handling (reception, transmission) test. * test/can_remote: Added interactive remote response buffer test * test/can_tx: Added interactive basic TX test. All tests are not part of the eCos test framework because they are interactive. That means, they require interaction with another user controlled CAN node. * include/can.h: Added identifier masks for standard and extended identifiers. Added the line #include CYGDAT_IO_CAN_DEVICE_INL. This enables a device driver to provide an own device inline file. In this inline file the driver may define own data types for CAN messages (for internal storage of CAN messages (see AT91SAM7 CAN driver)) * include/canio.h: Added baudrate CYGNUM_CAN_KBAUD_AUTO - support of automatic baudrate detection if a driver supports such a feature. Added state CYGNUM_CAN_STATE_CONFIG and mode CYGNUM_CAN_MODE_CONFIG. The application may use these identifiers to set the CAN device into a state where it is safe to add/remove/configure message buffers. Added union data type cyg_can_msg_data. With this data type a 4 byte alignment of message data is guaranteed, an byte, word and dword access to the data is possible and an assignment of two CAN datas are possible now. cyg_can_message now uses cyg_can_msg_data union for CAN data. Replaced SW-Filt flag by autobaud flag in HDI. Added CAN message access macros for read/write acces of CAN message structures. These macros hide implementation of CAN message from application. * src/can.c: Added support for device driver defined CAN message data types 2006-12-19 Sergei Gavrikov * doc/can.sgml: Correctly close para tag. 2006-12-13 Uwe Kindler * doc/can.sgml: CAN driver SGML documentation added. 2006-08-25 Gary Thomas * cdl/io_can.cdl: Set parent for more intuitive ConfigTool layout. 2006-03-27 Uwe Kindler * src/can.c can_rcv_event() Clear the flag field in new event before calling into low level hardware driver. 2006-02-15 Uwe Kindler * include/can_io.h Added message buffer configuration identifier: CYGNUM_CAN_MSGBUF_RESET_ALL, CYGNUM_CAN_MSGBUF_RX_FILTER_ALL ... Added cfg_id field to cyg_can_msgbuf_cfg data structure. 2005-09-11 Uwe Kindler * include/can_io.h Added support for get_config to CAN_LOWLEVEL_FUNS structure. Added additional CAN events. Added support for can state (cyg_can_state) and CAN mode (cyg_can_mode). Changed data type of cyg_can_buf_info_t data structure from cyg_int32 to cyg_uint32. Added support for message box configuration (cyg_can_msgbuf_info). Added support for message filtering (cyg_cn_filter). Renamed cyg_can_rtr_buf to cyg_can_remote_buf. Renamed CYGNUM_CAN_RTR_BUF_NA and CYGNUM_CAN_RTR_BUF_INIT to CYGNUM_CAN_MSGBUF_NA and CYGNUM_CAN_MSGBUF_INIT because they are also used for message filtering. Added support for hardware description interface. Added support for CYG_IO_SET_CONFIG_CAN_INPUT_FLUSH, CYG_IO_SET_CONFIG_CAN_OUTPUT_FLUSH and CYG_IO_GET_CONFIG_SERIAL_OUTPUT_DRAIN. * doc/can_driver_doc.html Additional configuration options documented. 2005-05-24 Uwe Kindler * Generic CAN driver package created //=========================================================================== //####ECOSGPLCOPYRIGHTBEGIN#### // ------------------------------------------- // This file is part of eCos, the Embedded Configurable Operating System. // Copyright (C) 2003, 2004 eCosCentric Limited // // eCos is free software; you can redistribute it and/or modify it under // the terms of the GNU General Public License as published by the Free // Software Foundation; either version 2 or (at your option) any later version. // // eCos is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License // for more details. // // You should have received a copy of the GNU General Public License along // with eCos; if not, write to the Free Software Foundation, Inc., // 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. // // As a special exception, if other files instantiate templates or use macros // or inline functions from this file, or you compile this file and link it // with other works to produce a work based on this file, this file does not // by itself cause the resulting work to be covered by the GNU General Public // License. However the source code for this file must still be made available // in accordance with section (3) of the GNU General Public License. // // This exception does not invalidate any other reasons why a work based on // this file might be covered by the GNU General Public License. // ------------------------------------------- //####ECOSGPLCOPYRIGHTEND#### //===========================================================================