> I'm attempting to use V4.0 of the Motor Record with EPICS R3.13.1.
>
> The driver is looking for devConnectInterruptVME(), which is in
> base/src/db/devLibVxWorks.c, which is not built into iocCore by default.
> The release notes state that this function is used instead of
> devConnectInterrupt() for "EPICS base 3.13.1 compatibility".
>
> I see that devLibVxWorks.c duplicates some functions in devLib.c, so it
> doesn't look correct to include both.
>
> Can anyone explain what the approach is ?
>
There is a library provided with R3.13 EPICS that attempts to make it
easier to write portable device support. The library provides an operating
system independent interface to memory mapping and interrupts.
When I was attempting to move an application to a very difficult NI VXI CPU
board I improved the organization of devLib.c, but I did not install my changes
into EPICS R3.13. Nevertheless, a new source file resulting from this project
does show up in recent R3.13 releases, but this source file is not built and
the object code is not installed there. Perhaps this file shows up on the R3.13
CVS branch due to direct manipulation of files in the CVS repository?
Here are the organizational improvements I made to the library.
1) I separated vxWorks dependent code and generic code into two different
source files. This allows support for new OS dependent interfaces without
maintaining endless #if/#elif OS dependent chains.
2) I recognized that multiplexing all bus types through one routine was, in
hindsight, unnecessary. To remain backwards compatible I still call the bus
dependent routines from a single multiplexing routine, but this interface
is no-longer required. The function devConnectInterruptVME() is part of the
new bus specific interface that is not built or installed into EPICS R3.13.
I should also mention that my changes show up for the first time in EPICS
R3.14. All of this code including the generic portions were moved into a
vxWorks specific portion of the distribution. Based on recent discussions
this spring I expect that both the generic and the OS dependent portions of
devLib will be moved out of the R3.14 base distribution at some point in
the near future.
Jeff
- References:
- devLib.c vs devLibVxWorks.c Brian McAllister
- Navigate by Date:
- Prev:
devLib.c vs devLibVxWorks.c Brian McAllister
- Next:
Re: devLib.c vs devLibVxWorks.c Ronald L. Sluiter
- Index:
1994
1995
1996
1997
1998
1999
2000
<2001>
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
devLib.c vs devLibVxWorks.c Brian McAllister
- Next:
Re: devLib.c vs devLibVxWorks.c Ronald L. Sluiter
- Index:
1994
1995
1996
1997
1998
1999
2000
<2001>
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|