This one is simple I think. Your driver has not implemented the readInt32Array method. You don't need to implement that if your record is only I/O Intr scanned, but if it is periodically scanned you need to implement it.
Mark
________________________________________
From: Szalata, Zenon M. [[email protected]]
Sent: Friday, March 09, 2012 2:31 PM
To: Mark Rivers; [email protected]
Subject: RE: Here is a Message
Hi Mark,
Yes, I needed to add the mask. So now that error is gone but I have a new one:
2012/03/09 11:48:48.618 TEST1:GADC0:WF:DATA devAsynInt32Array::callbackWf read error asynPortDriver:readArray not implemented
I guess today is not my day. I am still missing something in my device driver...
I am looking at two other similar driver modules that I have implemented some time ago, which are using this type of code and I just can't see what I am missing.
Thanks,
Mark
> -----Original Message-----
> From: Mark Rivers [mailto:[email protected]]
> Sent: Friday, March 09, 2012 11:43 AM
> To: Szalata, Zenon M.; [email protected]
> Subject: RE: Here is a Message
>
> Hi Zen,
>
> I suspect you did not set the asynInt32ArrayMask bit to the asynPortDriver
> constructor, telling it that your driver will implement that interface.
>
> The 64-bit issue is not a problem, FTVL=LONG means 32-bit integer in EPICS.
>
> Mark
>
>
> ________________________________________
> From: Szalata, Zenon M. [[email protected]]
> Sent: Friday, March 09, 2012 1:40 PM
> To: Mark Rivers; [email protected]
> Subject: RE: Here is a Message
>
> Hi Mark,
> No, it is a different problem.
> The error is generated by doCallbacksInt32Array(), which is not called at
> interrupt level.
> I notice that there is something wrong with my waveform record to which the
> callback is supposed to put data.
>
> record(waveform,"$(P):WF:DATA"){
> field( DTYP, "asynInt32ArrayIn")
> field( INP, "@asyn($(PORT),0,1)WF_DATA")
> field( SCAN, "I/O Intr")
> field( NELM, "16")
> field( FTVL, "LONG")
> field( PINI, "1")
> }
>
> At IOC init time I get this message, I don't understand why:
>
> devAsynInt32Array::initCommon, TEST1:GADC0:WF:DATA find asynInt32Array
> interface failed.
> There is reference in my .dbd file to asynInt32ArrayIn.
>
> In a different device driver and a different IOC I use the same record with
> Float32 and that IOC works.
>
> As somewhat different and related issue, I wonder what will happen when I
> build and run this code on a 64 bit machine. I wonder if field( FTVL,"LONG")
> means that on 64 bit each element will be 8 bytes long? If so there may be
> trouble.
>
> Thanks,
> Zen
>
>
> > -----Original Message-----
> > From: Mark Rivers [mailto:[email protected]]
> > Sent: Friday, March 09, 2012 11:11 AM
> > To: Szalata, Zenon M.; [email protected]
> > Subject: RE: Here is a Message
> >
> > Hi Zen,
> >
> >
> >
> > This message makes me wonder if you are doing asyn callbacks at interrupt
> > level? If so, you should not do that, you should have your interrupt routine
> > signal another thread which does the asyn callbacks.
> >
> >
> > > interrupt: errlogPrintf called from interrupt level
> >
> > Mark
> >
> >
> > ________________________________
> > From: [email protected] [[email protected]] on
> > behalf of Szalata, Zenon M. [[email protected]]
> > Sent: Friday, March 09, 2012 12:59 PM
> > To: [email protected]
> > Subject: Here is a Message
> >
> > While modifying and testing a device driver subclassed from asynPortDriver
> for
> > a VME module I am getting this message:
> >
> >
> > A call to 'assert(status == epicsMutexLockOK)'
> > by thread 'cbLow' failed in ../../asyn/asynDriver/asynManager.c line 2222.
> > EPICS Release EPICS R3.14.11 $R3-14-11$ $2009/08/28 18:47:36$.
> > Local time is 2012-03-09 10:52:43.182719160 PUS
> > Please E-mail this message to the author or to [email protected]
> > Calling epicsThreadSuspendSelf()
> > Thread cbLow (0x1692b30) suspended
> > interrupt: errlogPrintf called from interrupt level
> >
> > I am using asyn R4.17.
> >
> > I am sending this message because the message tells me to.
> > I will comment out my recent modifications and try to pinpoint which part of
> > my device driver is responsible.
> >
> > Thanks,
> > Zen
- Replies:
- RE: Here is a Message Szalata, Zenon M.
- References:
- Here is a Message Szalata, Zenon M.
- RE: Here is a Message Mark Rivers
- RE: Here is a Message Szalata, Zenon M.
- RE: Here is a Message Mark Rivers
- RE: Here is a Message Szalata, Zenon M.
- Navigate by Date:
- Prev:
RE: Here is a Message Szalata, Zenon M.
- Next:
Re: Invitation to test cothread.catools release candidate Matt Newville
- 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:
RE: Here is a Message Szalata, Zenon M.
- Next:
RE: Here is a Message Szalata, Zenon M.
- 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
|