Bill Brown wrote:
>
> So - the question I propose is, "Where should the byte-swapping
> code go?"
>
> It seems logical (to me) that a good place would be in the carrier
> driver, but that is not without it's problems. I suspect that no
> matter where we put it, we'll have some cpu/backplane dependencies
> seeping into areas where we don't want it.
Some of Jeff's changes to drvIpac resolve this for both endian models; as
long as you access the registers on the module using word rather than byte
read/writes then the endian issue is handled completely by the hardware.
Thus within drvIpac.h the prom structure has been redefined to use short
integers (16 bits). The drvIpac.c code is also changed so the upper byte
of these values is discarded, and I'm thinking about making parallel
changes to my drvTip810 CANbus module driver. IMHO this is the way to
solve the problem as the same code works for both CPU types without having
to know what kind of CPU you're using. It may be that this method can't
be used for all I/O modules, so I'm open to argument about this.
The updated support will be included with Verion 2.1 of the ipac software.
The latest release of Version 2.0, full documentation and some earlier
releases are now available at
http://epics.aps.anl.gov/asd/people/anj
- Andrew
--
New country, job, address, car and signature; same old Andrew Johnson
- Replies:
- Re: IP-packs, IP carriers, and Backplanes vs. CPUs - endian issues Bill Brown
- References:
- IP-packs, IP carriers, and Backplanes vs. CPUs - endian issues Bill Brown
- Navigate by Date:
- Prev:
IP-packs, IP carriers, and Backplanes vs. CPUs - endian issues Bill Brown
- Next:
What does EV recDynINP do ? David Terrett
- 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:
IP-packs, IP carriers, and Backplanes vs. CPUs - endian issues Bill Brown
- Next:
Re: IP-packs, IP carriers, and Backplanes vs. CPUs - endian issues Bill Brown
- 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
|