Accel32 for Linux Release Notes Release 3.00 This was released March 2016. This release is expected to be the last Accel32 for Linux product supporting 32-bit hardware platforms and Linux kernels from the 3.XX series. The minor changes for supporting the Linux 4.XX kernel series are likely to remain compatible with most of the Linux 3.XX kernel versions and tool sets, but there is no assertion or guarantee of such compatibility. The version 2.00 release will still be available if you need to work with 32-bit hardware and 3.XX kernel versions. You can expect that the "multi-architecture support" available for 64-bit systems will allow 32-bit applications to run, and that this will be supported under future 64-bit versions of Accel software. There are actually very few compatibility issues. The main adjustments are internal ones, related to compatibility with the tool sets used with the most recent Linux and distribution releases, and the organization of library files used by the build process. Most users will notice few or no differences This code has been verified to work with Linux Mint 17 Quiana on a version 3.13 kernel, and with Fedora 23 on a version 4.2 kernel. It is expected to remain compatible with the entire 4.XX kernel sequence, but you never know... if it doesn't work, check for updates or patches. The code has been compiled using the GCC / GCC++ 4.8 compilers. Newer Linux releases are dropping or renaming some of the library files that were once universally included with all major distributions. If this causes problems when trying to use the 'daplog' or 'iDscDev' applications from the Microstar Laboratories "DAPtools Software" CD (or an equivalent download), look on the Linux page at the Microstar Laboratories Web site for a package that can provide the missing libraries. There have been rare cases observed when certain Linux versions, run with certain chip set configurations on certain PC host hardware, will "forget" the PCI interrupt immediately after assigning it to the DAP. The DAP software has no control over this (and DAP boards are not the only victims of this long-standing problem.) The only known solution is to use different host hardware and/or try a different Linux distribution. Release 2.00 This was released February 2015. This major release provides a number of internal changes to conform to new requirements for PCI device configuration and mutual exclusion in the 3.XX Linux kernel, after elimination of the "blocked" ioctl() kernel system functions and the "Big Kernel Lock" lock_kernel() function. Various minor configuration adjustments were required due to reorganization of some of the Linux kernel headers. There are some one-time adjustments to driver directories and upper-case / lower-case naming in this version. This restores consistency between release files and version control archives. This kind of thing should not occur again, for a very long time. With luck, never again. This code has been compiled successfully using the GCC 4.5 and GCC 4.8 compilers. Continued compatibility with compilers is expected for a while into the future, but the outlook is unclear because newer compilers show some vexing code relocation problems. Driver code has been tested on Open Suse 11.4 (Linux 3.0 kernel), and Mint 17 / Debian (Linux 3.13 kernel). These distributions span from late 2011 to early 2014. There might be small incompatibilities for various compiler or kernel versions, and it is expected that problems can be corrected, if necessary, with minor source code adjustments. Some new secondary features: This release provides a new version of the daplinit utility, able to automatically select the appropriate DAPL system file for each DAP board in the system, given a list of DAPL system files available for loading. In most cases, this eliminates manual patching of the accel32 system loader script. This release introduces a new HTML documentation format. Some adjustments to the INSTALL script allow recompiling the kernel driver code without reverting all source code to the original distribution archives. Release 1.04 This is the first release offered under the BSD open source license. While this gives you a lot of new flexibility, it also means that there are no officially supported kernel versions or configurations. This package requires with non-PAE 32-bit systems. It has performance limitations when used on older hardware systems using shared PCI bus interrupts. This uses the GCC version 4 compiler. It is believed to work with most version 2.6 kernel variants through 2.6.35. It is known to work with distributions Suse 10.2, Knoppix 6.3, Fedora 13 and 14. Note that the BSD License is a permissive license, while Linux is distributed under a restrictive GPL v2 license. The lawyers have determined that you can't package and distribute permissive license items under the restrictions of the Linux system. Thus, you are not permitted to incorporate builds of this driver software into the Linux system to make new distributions. This does not restrict distributing a Linux system and this driver package separately, and allowing others to put them together. And it does not restrict what you can do with them once you put them together to use in your own system. Changes in this release: in the dapio32.h API, the type for filename and query/configure key fields in various structures is changed from "char *" to "const char *", and the return type of DapLastErrorTextGet() is changed from "char *" to "const char *". fixed a known problem that attempting to establish a connection to a non-existent DAP board can cause a kernel crash. patches required starting in kernel versions 2.6.19 and 2.6.20, and related to interrupt handing structures and their declarations fixed certain system references in the accel32_fops structure removed references to "struct pt_regs *" no longer used by the kernel fixed some module identification text dropped references to linux/config.h file, no longer used by the kernel patches contributed by Al Conle and Larry Trammell relating to changes in the header structure used for interrupt management in Linux kernels 2.6.30 and 2.6.31 omitted references to headers no longer used by the kernel added some new header file references for elements previously defined in the omitted header files added macros to override some older notations still appearing in the kernel Release 1.03 This version was released in 2007. It supports kernel versions 2.6.11 and 2.6.13 but works with most earlier kernels. Distributions built on Linux kernel versions 2.6.18 were reported to work. The DAPIO32.H header file included in this release may cause problem with some newer versions of the GCC compiler because of unsupported #pragma statements. Either removing these statements from the header file or switching to the G++ compiler may resolve this issue. Release 1.02 This version was released January 2004. It supported the kernel 2.4.21 as distributed by SuSE 9.0 and RedHat 9.0. This release uses the version 3 gcc compiler. Release 1.01 This version introduced compilation of the kernel driver code for the Linux 2.4 kernel. This release uses the gcc 2 compiler. This first version of Accel32 for Linux supports the DAPIO32 interface version 2.10 and later. This interface adds the ability to create and delete communication pipes (between the DAP board and host system) with user-defined attributes. This version supports the downloading of 32-bit processing command extensions developed using the Developer's Toolkit for DAPL package, versions 5.0 and above, available in the DAPtools Professional Edition software. End of document Copyright � 2015, Microstar Laboratories, Inc. https://www.mstarlabs.com/