May 7, 1998 onl5v4: Solaris 2.6 cc ドライバのデバッグ. cc ドライバの実行 ~~~~~~~~~~~~~~~~~~~ (http://www-online.kek.jp/~inoue/CAMAC/ onl5v4-sol2.6/camac-step02.txt) 高エネルギー加速器研究機構 素粒子原子核研究所 物理、オンライングループ 井上 栄二 (1). 現状確認 (A). 英語版 Soalris2.6 & VMEドライバ v2.2.2 が届いた。 (B). CPU-5V に Solaris2.6 のシステムをインストールした。 (C). /etc の下の各設定、および /export/home の作成をやった。 (D). sendmail のバージョンをアップをやった。 (E). Solaris2.6用の VMEドライバ、FRCvme-2.2.2 をインストールした。 (F). onl5v4 に ccドライバをインストールした。 (2). ここでやるべきこと onl5v4 上で ccドライバの動作確認をするために、サンプル・プログラムを 実行する。 (3). サンプル・プログラムの実行 (3-1). cam1 の実行 onl5v4[39]% pwd /export/home/onl5v4/inoue/CAMAC/Driver/FORCE-5V-sol2.5 onl5v4[40]% cam1 5 Input n a f (data)>3 0 0 N=3 A=0 F=0 Q=1 X=1 Data:000000(Hex) 00000000(Dec) Input n a f (data)>3 0 16 7777 N=3 A=0 F=16 Q=1 X=1 Data:001E61(Hex) 00007777(Dec) Input n a f (data)>3 0 0 N=3 A=0 F=0 Q=1 X=1 Data:001E61(Hex) 00007777(Dec) Input n a f (data)>3 0 16 0 N=3 A=0 F=16 Q=1 X=1 Data:000000(Hex) 00000000(Dec) Input n a f (data)>3 0 0 N=3 A=0 F=0 Q=1 X=1 Data:000000(Hex) 00000000(Dec) onl5v4[41]% ok. 正常終了した。 (3-2). cam3 の実行 onl5v4[41]% cam3 *** Now waiting LAM ... N=3 Loop=10 Timeout=0 sec Interrupted !! count=1 Interrupted !! count=2 Interrupted !! count=3 Interrupted !! count=4 Interrupted !! count=5 Interrupted !! count=6 Interrupted !! count=7 Interrupted !! count=8 Interrupted !! count=9 Interrupted !! count=10 *** cam3 nomal end. onl5v4[42]% onl5v4[43]% cam3 *** Now waiting LAM ... N=3 Loop=10 Timeout=0 sec Interrupted !! count=1 Interrupted !! count=2 Timeout !! count=3 <-- ここで、故意にタイムアウトを起こしてみた。 Timeout !! count=4 <-- ここで、故意にタイムアウトを起こしてみた。 Interrupted !! count=5 Interrupted !! count=6 Timeout !! count=7 <-- ここで、故意にタイムアウトを起こしてみた。 Timeout !! count=8 <-- ここで、故意にタイムアウトを起こしてみた。 Timeout !! count=9 <-- ここで、故意にタイムアウトを起こしてみた。 Interrupted !! count=10 *** cam3 nomal end. onl5v4[44]% ok. 正常終了した。 (3-3). VME.conf に slavewin プロパティを設定する VME.conf のファイルは /platform/sun4m/kernel/drv/VME.conf にインストールされている。チェック。 onl5v4[33]% ls -l /platform/sun4m/kernel/drv/ total 2792 -rwxr-xr-x 2 root sys 204112 May 1 16:52 VME* -rw-r--r-- 1 root sys 1810 Nov 21 19:56 VME.conf -rwxr-xr-x 2 root sys 204112 May 1 16:52 VME_fga5000* -rwxr-xr-x 1 root sys 170744 Jan 15 21:56 VME_s4* : onl5v4[34]% VMEドライバ v2.2.2 では VME.confファイルのインストール先が 変わった。 VME.conf に slavewin プロパティを設定する onl5v4# pwd /platform/sun4m/kernel/drv onl5v4# mv VME.conf VME.conf.org onl5v4# cp VME.conf.org VME.conf onl5v4# ls -l VME.conf* -rw-r--r-- 1 root other 1810 May 7 16:20 VME.conf -rw-r--r-- 1 root sys 1810 Nov 21 19:56 VME.conf.org onl5v4# chgrp sys VME.conf onl5v4# ls -l VME.conf* -rw-r--r-- 1 root sys 1810 May 7 16:20 VME.conf -rw-r--r-- 1 root sys 1810 Nov 21 19:56 VME.conf.org onl5v4# vi VME.conf # %Z%$RCSfile: VME.conf,v $ $Revision: 1.5.2.1 $ %D% FRC # # vmewin must be on a 256MB boundary # vmewin= # vmewinX= # The syntax for VME A24/A16 windows is vmexxdxx=, # The parameter is currently ignored (the full 16MB/64K range is used). # If these properties exist, the VSI is programmed with a static SBus to # VMEbus mapping. # # If you don't need this and want to save range registers in the VSI, # you should comment it out. # # The slavewin property is only needed for device drivers that want to # to do DMA via the standard DDI DMA interface calls, so that the VME nexus # can provide a VMEbus address where the device can perform DMA to. # Don't define this if you do not need it, as it will eat up a VME slave # range. Note also that the VSI will decode these addresses once the # slavewin property has been set and report VME Bus Errors if no driver # uses it! So if you get strange bus errors, check this file for the # slavewin property. # The format is: # # slavewin , , # # vme_start must be aligned to vme_size. vme_size must be 0x100000 (1MB), 2MB # 4MB, 8MB, ... 64MB. Space is a bitset of the VME_BT_xxx literals defined # in sys/vme_types. Standard values are: # 0x00020000 for a slave window in A24 space # 0x00040000 for a slave window in A32 space # # Refer to the manual for possible values for different hardware. E.g. if # you want the slave memory to accept BLT/MBLT transfers, set the # VME_BT_BLT/VME_BT_MBLT bits: # 0x00040600 for a slave window in A32 space with BLT/MBLT enabled. # #vmewin1=0x40000000 #vmewin2=0x20000000 #vmewin3=0x30000000 #vmewin=0x10000000 #vme16d16=0x0,0x10000 #vme16d32=0x0,0x10000 #vme24d32=0x0,0x100000 #vme24d16=0x0,0x100000 #slavewin=0x000000,0x100000,0x00020000 slavewin=0x000000,0x100000,0x00020000 pamc=0x10, 0x11 ; "VME.conf" 48 lines, 1848 characters onl5v4# (3-4). システムをリブートする onl5v4# shutdown -i0 -g0 Shutdown started. Thu May 7 16:25:46 JST 1998 Do you want to continue? (y or n): y Broadcast Message from root (console) on onl5v4 Thu May 7 16:25:48... THE SYSTEM IS BEING SHUT DOWN NOW ! ! ! Log off now or risk your files being damaged showmount: onl5v4: RPC: Program not registered Changing to init state 0 - please wait onl5v4# INIT: New run level: 0 The system is coming down. Please wait. System services are now being stopped. Print services stopped. Stopping the syslog service. syslogd: going down on signal 15 umount: /net/onlsun1/home1/local busy umount: /net/onlsun1/home1/opt_ext busy umount: /net/onlsun1/home1/cern busy umount: /net/onlsun1/export busy umount: /net/onlsun1/home1 busy umount: /net busy umount: /net/onlsun1/home1/cern/95a busy May 7 16:26:36 snmpdx: received signal 15 umount: /net/onlsun1/home1/cern/95a busy umount: /net/onlsun1/home1/local busy umount: /net/onlsun1/home1/opt_ext busy umount: /net/onlsun1/home1/cern busy umount: /net/onlsun1/export busy umount: /net/onlsun1/home1 busy umount: /net busy The system is down. syncing file systems... done Program terminated Type help for more information ok ok boot -r Resetting ... screen not found. Can't open input device. Keyboard not present. Using tty for input and output. SPARC CPU-5V, No Keyboard ROM Rev. 2.15.3, 48 MB memory installed, Serial #9149788. Ethernet address 0:80:42:b:2d:5c, Host ID: 808b9d5c. Rebooting with command: -r Boot device: /iommu/sbus/espdma@5,8400000/esp@5,8800000/sd@3,0 File and args: - r SunOS Release 5.6 Version Generic [UNIX(R) System V Release 4.0] Copyright (c) 1983-1997, Sun Microsystems, Inc. FRCvme VME Nexus V2.2.2 (FGA-5000 FGA-5100) NOTICE: VME: slavewin at vme=0x0, size=0x100000 space=0x2c020017 configuring network interfaces: le0. Hostname: onl5v4 Configuring the /devices directory CAMAC device driver V1.3x, 1991-1993 by Y.TAKEUCHI (T.I.T.) cc0 at VME0: vme16d16 0xff00 VME level 4 vector 0xff sparc ipl 7 vmemem0 at VME0: vme32d16 0x0 vmemem1 at VME0: vme16d16 0x0 vmemem2 at VME0: vme24d16 0x0 vmemem3 at VME0: vme32d32 0x0 vmemem4 at VME0: vme16d32 0x0 vmemem5 at VME0: vme24d32 0x0 vmeplus0 at VME0: vme16d16 0x0 and vme24d16 0x0 and vme32d16 0x0 and vme16d32 0x 0 and vme24d32 0x0 and vme32d32 0x0 and space 0x2f offset 0x0 and space 0x6f offset 0x0 and space 0x10 offset 0x0 and space 0x11 offset 0x0 and space 0x50 offset 0x0 and space 0x51 offset 0x0 vmectl0 at VME0 Configuring the /dev directory Configuring the /dev directory (compatibility devices) The system is coming up. Please wait. checking ufs filesystems /dev/rdsk/c0t3d0s5: is clean. /dev/rdsk/c0t3d0s4: is clean. /dev/rdsk/c0t3d0s3: is clean. /dev/rdsk/c0t3d0s7: is clean. add net default: gateway ICCFG1 NIS domainname is kek.jp starting rpc services: rpcbind keyserv done. Setting netmask of le0 to 255.255.252.0 Setting default interface for multicast: add net 224.0.0.0: gateway onl5v4 syslog service starting. Print services started. volume management starting. The system is ready. onl5v4 console login: (3-5). cam2 テスト・プログラムを実行してみる slavewin 設定、リブート後の、cam2 の実行。 onl5v4[48]% cam2 Input transfer mode (1:word 2:long word) >1 Input loop >5 Input mode (0:QSTOP 1:QIGNORE 2:QREPEAT 3:QSCAN) >1 Input data counts >5 Input n a f >3 0 0 <--- ここでハングしてしまう。 K2917 の RESETボタンを押したら、cam2 の実行 は中断された。 ^C *** TERMINATING cam2 *** Received signal 2 SIGINT onl5v4[49]% cam2 の実行がハングした時、 CPUボードのフロント・パネルの RUN の LED は赤色とオレンジ色の 点滅を繰り返している。 K2917 のフロント・パネルの RUN と M1 の LED が点灯したままに なっている。 K3922 のフロント・パネルの LED は全部、消えている。 --- (6). 項目タイトル (6-1). サブ項目タイトル (6-1-1). サブサブ項目タイトル