NI PCI-GPIB tnt4882 test failed on FreeBSD Current 7.0

From: SUNGBAK KIM <mosworld_at_lgphilips-lcd.com>
Date: Sun, 25 Mar 2007 17:34:48 +0900
I'm a one of traditional FreeBSD leaf user since Release 2.x and testing 
GPIB control with FreeBSD 7.0 Current because of supporting NI PCI-GPIB 
interface card.
I finished testing on Red Hat 9, which shows on 
http://linux-gpib.sourceforge.net/ but prefer to use with FreeBSD.  I have 
trouble with controlling tnt4882 driver although appropriate kerenel 
configuration and having /dev/gpibxx entry.

I will show testing status

1. Hardware information

Hardware :  CPU

  CPU: Intel(R) Pentium(R) 4 CPU 3.00GHz (3006.83-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0xf43  Stepping = 3
 
Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
  Features2=0x649d<SSE3,RSVD2,MON,DS_CPL,EST,CNXT-ID,CX16,xTPR>
  AMD Features=0x20100000<NX,LM>

2. Install : FreeBSD 6.2R (i386) -> make update(Mar. 24 2007) with 
standard-supfile -> make world, make kernel (No build option & Compile 
option in /etc/make.conf )

3. KERNEL CONFIG & Configuration
 
shell > more /usr/src/sys/i386/conf/GENERIC
...
device          pcii
device          tnt4882

shell > uname -a
FreeBSD xxx.yyy.com 7.0-CURRENT FreeBSD 7.0-CURRENT #1: Sat Mar 24 
15:11:47 KST 2007     root_at_xxx.yyy.com:/usr/obj/usr/src/sys/GENERIC  i386

shell > dmesg
...
tnt48820: <NI PCI-GPIB> mem 0xe7207000-0xe72077ff,0xe7200000-0xe7203fff 
irq 19 at device 8.0 on pci0
tnt48820: [ITHREAD]
...

shell > ls -alF /dev/gpib*
crw-rw-rw-  1 gpib  gpib    0,  38 Mar 25 14:46 gpib0ib
crw-rw-rw-  1 gpib  gpib    0,  37 Mar 25 14:46 gpib0l

4. Basic Code Testing

I compiled  *IDN? Qurey C code as shown below archive but no response from 
instrument (AFG3102, etc and linux-gpib returned good results ).

http://lists.freebsd.org/mailman/htdig/freebsd-hackers/2005-February/010164.html

and modyfied Code returned dmm = 0

/***  PRINT DMM  ****/
dmm = ibdev(0, 11, 0, T1s, 1, 0);
printf(" dmm = %d\n", dmm);
if (dmm < 0)
   errx(1, "ibdev = %d\n", dmm);
   ibwrt(dmm, "*IDN?\r\n", 7);

I think dmm should be  dmm > 0, if properly configured. right ?

What is mis-configured ? Please notice me.


###################################################
Kim Sung Bak /Research Engineer
LG.Philips LCD
Fax: +82-31-933-7594
Tel: +82-31-933-7308
Mobile: +82-19-9181-8136
mail: NOSPAMmosworld_at_lgphilips-lcd.comNOSPAM
Homeage: http://www.lghilips-lcd.com/
#################################################### 
Received on Sun Mar 25 2007 - 07:01:32 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:07 UTC