Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019 
<== Date ==> <== Thread ==>

Subject: RE: Here is a Message
From: "Szalata, Zenon M." <zms@slac.stanford.edu>
To: Mark Rivers <rivers@cars.uchicago.edu>, "tech-talk@aps.anl.gov" <tech-talk@aps.anl.gov>
Date: Fri, 9 Mar 2012 13:51:37 -0800
Thanks a lot Mark,
Yes, it works as it is because I/O Intr is used.
Thanks, I understand now.

Zen

> -----Original Message-----
> From: Mark Rivers [mailto:rivers@cars.uchicago.edu]
> Sent: Friday, March 09, 2012 12:58 PM
> To: Szalata, Zenon M.; tech-talk@aps.anl.gov
> Subject: RE: Here is a Message
> 
> 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. [zms@slac.stanford.edu]
> Sent: Friday, March 09, 2012 2:31 PM
> To: Mark Rivers; tech-talk@aps.anl.gov
> 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:rivers@cars.uchicago.edu]
> > Sent: Friday, March 09, 2012 11:43 AM
> > To: Szalata, Zenon M.; tech-talk@aps.anl.gov
> > 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. [zms@slac.stanford.edu]
> > Sent: Friday, March 09, 2012 1:40 PM
> > To: Mark Rivers; tech-talk@aps.anl.gov
> > 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:rivers@cars.uchicago.edu]
> > > Sent: Friday, March 09, 2012 11:11 AM
> > > To: Szalata, Zenon M.; tech-talk@aps.anl.gov
> > > 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: tech-talk-bounces@aps.anl.gov [tech-talk-bounces@aps.anl.gov] on
> > > behalf of Szalata, Zenon M. [zms@slac.stanford.edu]
> > > Sent: Friday, March 09, 2012 12:59 PM
> > > To: tech-talk@aps.anl.gov
> > > 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 tech-talk@aps.anl.gov
> > > 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


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.
RE: Here is a Message Mark Rivers

Navigate by Date:
Prev: Re: Invitation to test cothread.catools release candidate Matt Newville
Next: Channel Access Qazi Zia-ul-Haque
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019 
Navigate by Thread:
Prev: RE: Here is a Message Mark Rivers
Next: Channel Access Qazi Zia-ul-Haque
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·