Oct 20, 2000 FORCE CPU-50T、Solaris 2.6用 ccドライバ・キットの作成 (リスト処理可能なバージョン) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ (http://www-online.kek.jp/~inoue/CAMAC/ onl50t-sol2.6/Desktop/50t-sol2.6list-kit.txt) 高エネルギー加速器研究機構 素粒子原子核研究所 物理、オンライングループ 井上 栄二 (1). はじめに FORCE SPARC CPU-50Tの CPUボードを使って、Solaris 2.6の下で ccドライバ のリスト処理のデバッグを行なった。 正常に動作できることを確認したので 配布キットを作成する。 (1-1). CPU-50T を使ったデスクトップシステムでのリスト処理のデバッグ SPARC CPU-50T、Desktop Solaris2.6 の下でリスト処理のデバッグを行った。 リスト処理のデバッグでは "FORCE-50T-sol2.6" バージョンの ccドライバを 使用した。 動作確認をしたのは以下の事項である。 (1). KEKリスト処理 o シングルアクション read/write、および NDT o ブロック転送 read o LAM割り込み処理 o KEKリストからのkineticリストの実行 (2). kineticリスト処理 o シングルアクション read/write、および NDT o ブロック転送 read o kineticリストのセーブ、ロード、および実行 (2). キット作成の元にしたもの キット作りの元にしたものは、今回、SPARC CPU-50Tの下でリスト処理の デバッグに使用した各ファイルである。 デバッグ時に使用した各ファイルは、 onl50t のマシンの以下のディレクトリの下にある。 /export/home/onl50t/inoue/CAMAC/Driver/Kit-test/ CAMAC-list/FORCE-50T-sol2.6 このディレクトリを、onlsun1 のマシンの、以下のキット作成用ディレクトリ にコピーして、新たなキットを作ることにした。 /export/home/onlsun1/inoue/workstation/onl50t/ Solaris2.6/CAMAC-list-Kit (2-1). デバッグに使用した各ファイルをキット作成用ディレクトリにコピー onlsun1[92]% pwd /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6 onlsun1[93]% rcp -pr onl50t:/export/home/onl50t/inoue/CAMAC/Driver/Kit-test/CAMAC-list/FORCE-50T-sol2.6 CAMAC-list-Kit onlsun1[94]% cd CAMAC-list-Kit /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6/CAMAC-list-Kit onlsun1[95]% ls Makefile cc.c-Aug29-2000 cc.c-org README cc.c-Aug7LAMok cc.c-sept22KEKkiok2 cam1* cc.c-Aug8KEKLiok cc.c-sept22KEKkiok3 cam1.c cc.c-Jul13-2000 cc.c-tmp cam2* cc.c-Jul13-2000A cc.c-tmp1 cam2.f cc.c-Jul13-2000B cc.conf cam3* cc.c-Jul14-2000A cc.diff cam3.c cc.c-Jul14-2000B cc.diff0 cam3.c-bak cc.c-Jul17-2000A cc.h cam3.c-int cc.c-Jul17-2000B cc_common.h cam3.c-org cc.c-Jul26-2000 cc_config.h camasm/ cc.c-Jul26waitok forlib.c camlib.c cc.c-Sep18KEKkiok1 forlib.o camlib.c-Sept27-2000 cc.c-Sept1-2000 k2917.h camlib.c-org cc.c-Sept11-2000 libcamac.a camlib.h cc.c-Sept11kineok out1 camlib.o cc.c-Sept20kineok2 out3 camlist/ cc.c-Sept27mesout out4 camlist-kine/ cc.c-Sept28mesoutok out5 cc cc.c-Sept6-2000 outx cc.c cc.c-Sept7-2000 script/ cc.c-Aug22-2000 cc.c-Sept8-2000 cc.c-Aug22-2000b cc.c-cmn-out onlsun1[96]% onlsun1[96]% mkdir FORCE-50T-sol2.6-list onlsun1[97]% ls -l 合計 7776 drwxr-xr-x 2 inoue kek 512 9月 29日 09:53 FORCE-50T-sol2.6-list/ -rw-r--r-- 1 inoue kek 2041 6月 23日 16:19 Makefile -rw-r--r-- 1 inoue kek 3624 6月 23日 16:19 README -rwxr-xr-x 1 inoue kek 14328 8月 25日 13:41 cam1* -rw-r--r-- 1 inoue kek 1170 6月 23日 16:19 cam1.c -rwxr-xr-x 1 inoue kek 105160 8月 25日 13:41 cam2* -rw-r--r-- 1 inoue kek 2295 6月 23日 16:19 cam2.f -rwxr-xr-x 1 inoue kek 14884 8月 25日 13:41 cam3* -rw-r--r-- 1 inoue kek 2055 7月 28日 09:14 cam3.c -rw-r--r-- 1 inoue kek 2055 7月 28日 09:11 cam3.c-bak -rw-r--r-- 1 inoue kek 2053 6月 29日 16:47 cam3.c-int -rw-r--r-- 1 inoue kek 2055 6月 23日 16:19 cam3.c-org drwxr-xr-x 2 inoue kek 512 6月 28日 10:53 camasm/ -rw-r--r-- 1 inoue kek 9866 9月 27日 10:24 camlib.c -rw-r--r-- 1 inoue kek 9874 9月 27日 10:22 camlib.c-Sept27-2000 -rw-r--r-- 1 inoue kek 9740 6月 23日 16:19 camlib.c-org -rw-r--r-- 1 inoue kek 1415 6月 23日 16:19 camlib.h -rw-r--r-- 1 inoue kek 9632 9月 27日 10:25 camlib.o drwxr-xr-x 2 inoue kek 1536 9月 27日 16:15 camlist/ drwxr-xr-x 2 inoue kek 1536 9月 28日 10:20 camlist-kine/ -rw-r--r-- 1 inoue kek 48136 9月 27日 09:50 cc -rw-r--r-- 1 inoue kek 117836 9月 27日 09:50 cc.c -rw-r--r-- 1 inoue kek 105483 8月 22日 14:16 cc.c-Aug22-2000 -rw-r--r-- 1 inoue kek 105521 8月 22日 14:27 cc.c-Aug22-2000b -rw-r--r-- 1 inoue kek 109203 8月 29日 15:53 cc.c-Aug29-2000 -rw-r--r-- 1 inoue kek 99814 8月 7日 10:49 cc.c-Aug7LAMok -rw-r--r-- 1 inoue kek 100401 8月 8日 14:27 cc.c-Aug8KEKLiok -rw-r--r-- 1 inoue kek 75356 7月 13日 10:19 cc.c-Jul13-2000 -rw-r--r-- 1 inoue kek 86370 7月 13日 16:34 cc.c-Jul13-2000A -rw-r--r-- 1 inoue kek 87270 7月 13日 16:46 cc.c-Jul13-2000B -rw-r--r-- 1 inoue kek 93164 7月 14日 14:39 cc.c-Jul14-2000A -rw-r--r-- 1 inoue kek 94702 7月 14日 15:34 cc.c-Jul14-2000B -rw-r--r-- 1 inoue kek 97259 7月 17日 11:32 cc.c-Jul17-2000A -rw-r--r-- 1 inoue kek 96173 7月 17日 11:15 cc.c-Jul17-2000B -rw-r--r-- 1 inoue kek 97707 7月 26日 13:35 cc.c-Jul26-2000 -rw-r--r-- 1 inoue kek 99315 7月 27日 10:03 cc.c-Jul26waitok -rw-r--r-- 1 inoue kek 115832 9月 18日 13:31 cc.c-Sep18KEKkiok1 -rw-r--r-- 1 inoue kek 110451 9月 1日 14:37 cc.c-Sept1-2000 -rw-r--r-- 1 inoue kek 113450 9月 11日 14:35 cc.c-Sept11-2000 -rw-r--r-- 1 inoue kek 113450 9月 12日 16:10 cc.c-Sept11kineok -rw-r--r-- 1 inoue kek 117265 9月 20日 14:08 cc.c-Sept20kineok2 -rw-r--r-- 1 inoue kek 117836 9月 27日 09:39 cc.c-Sept27mesout -rw-r--r-- 1 inoue kek 117836 9月 28日 17:19 cc.c-Sept28mesoutok -rw-r--r-- 1 inoue kek 110673 9月 6日 12:59 cc.c-Sept6-2000 -rw-r--r-- 1 inoue kek 111812 9月 7日 13:45 cc.c-Sept7-2000 -rw-r--r-- 1 inoue kek 113190 9月 8日 15:58 cc.c-Sept8-2000 -rw-r--r-- 1 inoue kek 117775 9月 22日 14:41 cc.c-cmn-out -rw-r--r-- 1 inoue kek 75200 7月 4日 15:31 cc.c-org -rw-r--r-- 1 inoue kek 117725 9月 22日 17:00 cc.c-sept22KEKkiok2 -rw-r--r-- 1 inoue kek 117731 9月 22日 17:25 cc.c-sept22KEKkiok3 -rw-r--r-- 1 inoue kek 110892 9月 1日 14:28 cc.c-tmp -rw-r--r-- 1 inoue kek 117773 9月 22日 17:13 cc.c-tmp1 -rw-r--r-- 1 inoue kek 288 6月 23日 16:19 cc.conf -rw-r--r-- 1 inoue kek 2564 9月 25日 10:30 cc.diff -rw-r--r-- 1 inoue kek 316 9月 25日 10:23 cc.diff0 -rw-r--r-- 1 inoue kek 3088 8月 25日 13:41 cc.h -rw-r--r-- 1 inoue kek 2288 6月 23日 16:19 cc_common.h -rw-r--r-- 1 inoue kek 876 6月 23日 16:19 cc_config.h -rw-r--r-- 1 inoue kek 3289 6月 23日 16:19 forlib.c -rw-r--r-- 1 inoue kek 3480 8月 25日 13:41 forlib.o -rw-r--r-- 1 inoue kek 4058 6月 23日 16:19 k2917.h -rw-r--r-- 1 inoue kek 13972 9月 27日 10:25 libcamac.a -rw-r--r-- 1 inoue kek 98823 8月 21日 13:54 out1 -rw-r--r-- 1 inoue kek 5730 8月 24日 16:34 out3 -rw-r--r-- 1 inoue kek 6721 8月 25日 09:40 out4 -rw-r--r-- 1 inoue kek 1014 9月 25日 09:47 out5 -rw-r--r-- 1 inoue kek 1223 9月 1日 10:46 outx drwxr-xr-x 2 inoue kek 512 6月 23日 16:19 script/ onlsun1[98]% 新たな camacドライバ・キットは onlsun1のマシンの次のディレクトリに作る。 /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6/ CAMAC-list-Kit/FORCE-50T-sol2.6-list (3). キットの作成 キット作りは以下の手順で行なう。 まず、今回のデバッグの元にしたキット、 ftp://online.kek.jp/pub/kek/camac/FORCE-50T-sol2.6.tar.gz に含まれるファイルの一覧を確認する。 次に、これらのファイルに対して デバッグ後のものを割り当てる。 そして最後に、デバッグ時に各ファイル に書き加えた不必要な記述を削除する。 (3-1). 今回のデバッグの元にしたキット 今回のデバッグの元にしたキットに含まれていた各ファイルを確認する。 onl50t[132]% pwd /export/home/onl50t/inoue/CAMAC/Driver/tmp1/FORCE-50T-sol2.6 onl50t[133]% ls -lR .: total 234 -rw-r--r-- 1 inoue kek 2041 Jul 19 1999 Makefile -rw-r--r-- 1 inoue kek 3624 Jul 26 1999 README -rw-r--r-- 1 inoue kek 1170 Jul 16 1999 cam1.c -rw-r--r-- 1 inoue kek 2295 Jul 16 1999 cam2.f -rw-r--r-- 1 inoue kek 2055 Jul 16 1999 cam3.c -rw-r--r-- 1 inoue kek 9740 Jul 16 1999 camlib.c -rw-r--r-- 1 inoue kek 1415 Jul 16 1999 camlib.h -rw-r--r-- 1 inoue kek 74943 Jul 26 1999 cc.c -rw-r--r-- 1 inoue kek 288 Jul 16 1999 cc.conf -rw-r--r-- 1 inoue kek 2931 Jul 26 1999 cc.h -rw-r--r-- 1 inoue kek 2288 Jul 16 1999 cc_common.h -rw-r--r-- 1 inoue kek 876 Jul 16 1999 cc_config.h -rw-r--r-- 1 inoue kek 3289 Jul 16 1999 forlib.c -rw-r--r-- 1 inoue kek 4058 Jul 16 1999 k2917.h drwxr-xr-x 2 inoue kek 512 Jul 16 1999 script/ ./script: total 14 -rw-r--r-- 1 inoue kek 66 Jul 16 1999 awk1.txt -rw-r--r-- 1 inoue kek 37 Jul 16 1999 awk2.txt -rwxr-xr-x 1 inoue kek 233 Jul 16 1999 cc_build.gcc.sh* -rwxr-xr-x 1 inoue kek 234 Jul 16 1999 cc_build.sh* -rwxr-xr-x 1 inoue kek 528 Jul 16 1999 cc_link.sh* -rwxr-xr-x 1 inoue kek 808 Jul 16 1999 cc_load.sh* -rwxr-xr-x 1 inoue kek 270 Jul 16 1999 cc_unload.sh* onl50t[134]% (3-2). 今回のデバッグ後のファイル 今回のデバッグ後の各ファイルを確認する。 onl50t[137]% pwd /export/home/onl50t/inoue/CAMAC/Driver/Kit-test/CAMAC-list/FORCE-50T-sol2.6 onl50t[138]% ls -lR .: total 7774 -rw-r--r-- 1 inoue kek 2041 Jun 23 16:19 Makefile -rw-r--r-- 1 inoue kek 3624 Jun 23 16:19 README -rwxr-xr-x 1 inoue kek 14328 Aug 25 13:41 cam1* -rw-r--r-- 1 inoue kek 1170 Jun 23 16:19 cam1.c -rwxr-xr-x 1 inoue kek 105160 Aug 25 13:41 cam2* -rw-r--r-- 1 inoue kek 2295 Jun 23 16:19 cam2.f -rwxr-xr-x 1 inoue kek 14884 Aug 25 13:41 cam3* -rw-r--r-- 1 inoue kek 2055 Jul 28 09:14 cam3.c -rw-r--r-- 1 inoue kek 2055 Jul 28 09:11 cam3.c-bak -rw-r--r-- 1 inoue kek 2053 Jun 29 16:47 cam3.c-int -rw-r--r-- 1 inoue kek 2055 Jun 23 16:19 cam3.c-org drwxr-xr-x 2 inoue kek 512 Jun 28 10:53 camasm/ -rw-r--r-- 1 inoue kek 9866 Sep 27 10:24 camlib.c -rw-r--r-- 1 inoue kek 9874 Sep 27 10:22 camlib.c-Sept27-2000 -rw-r--r-- 1 inoue kek 9740 Jun 23 16:19 camlib.c-org -rw-r--r-- 1 inoue kek 1415 Jun 23 16:19 camlib.h -rw-r--r-- 1 inoue kek 9632 Sep 27 10:25 camlib.o drwxr-xr-x 2 inoue kek 1536 Sep 27 16:15 camlist/ drwxr-xr-x 2 inoue kek 1536 Sep 28 10:20 camlist-kine/ -rw-r--r-- 1 inoue kek 48136 Sep 27 09:50 cc -rw-r--r-- 1 inoue kek 117836 Sep 27 09:50 cc.c -rw-r--r-- 1 inoue kek 105483 Aug 22 14:16 cc.c-Aug22-2000 -rw-r--r-- 1 inoue kek 105521 Aug 22 14:27 cc.c-Aug22-2000b -rw-r--r-- 1 inoue kek 109203 Aug 29 15:53 cc.c-Aug29-2000 -rw-r--r-- 1 inoue kek 99814 Aug 7 10:49 cc.c-Aug7LAMok -rw-r--r-- 1 inoue kek 100401 Aug 8 14:27 cc.c-Aug8KEKLiok -rw-r--r-- 1 inoue kek 75356 Jul 13 10:19 cc.c-Jul13-2000 -rw-r--r-- 1 inoue kek 86370 Jul 13 16:34 cc.c-Jul13-2000A -rw-r--r-- 1 inoue kek 87270 Jul 13 16:46 cc.c-Jul13-2000B -rw-r--r-- 1 inoue kek 93164 Jul 14 14:39 cc.c-Jul14-2000A -rw-r--r-- 1 inoue kek 94702 Jul 14 15:34 cc.c-Jul14-2000B -rw-r--r-- 1 inoue kek 97259 Jul 17 11:32 cc.c-Jul17-2000A -rw-r--r-- 1 inoue kek 96173 Jul 17 11:15 cc.c-Jul17-2000B -rw-r--r-- 1 inoue kek 97707 Jul 26 13:35 cc.c-Jul26-2000 -rw-r--r-- 1 inoue kek 99315 Jul 27 10:03 cc.c-Jul26waitok -rw-r--r-- 1 inoue kek 115832 Sep 18 13:31 cc.c-Sep18KEKkiok1 -rw-r--r-- 1 inoue kek 110451 Sep 1 14:37 cc.c-Sept1-2000 -rw-r--r-- 1 inoue kek 113450 Sep 11 14:35 cc.c-Sept11-2000 -rw-r--r-- 1 inoue kek 113450 Sep 12 16:10 cc.c-Sept11kineok -rw-r--r-- 1 inoue kek 117265 Sep 20 14:08 cc.c-Sept20kineok2 -rw-r--r-- 1 inoue kek 117836 Sep 27 09:39 cc.c-Sept27mesout -rw-r--r-- 1 inoue kek 117836 Sep 28 17:19 cc.c-Sept28mesoutok -rw-r--r-- 1 inoue kek 110673 Sep 6 12:59 cc.c-Sept6-2000 -rw-r--r-- 1 inoue kek 111812 Sep 7 13:45 cc.c-Sept7-2000 -rw-r--r-- 1 inoue kek 113190 Sep 8 15:58 cc.c-Sept8-2000 -rw-r--r-- 1 inoue kek 117775 Sep 22 14:41 cc.c-cmn-out -rw-r--r-- 1 inoue kek 75200 Jul 4 15:31 cc.c-org -rw-r--r-- 1 inoue kek 117725 Sep 22 17:00 cc.c-sept22KEKkiok2 -rw-r--r-- 1 inoue kek 117731 Sep 22 17:25 cc.c-sept22KEKkiok3 -rw-r--r-- 1 inoue kek 110892 Sep 1 14:28 cc.c-tmp -rw-r--r-- 1 inoue kek 117773 Sep 22 17:13 cc.c-tmp1 -rw-r--r-- 1 inoue kek 288 Jun 23 16:19 cc.conf -rw-r--r-- 1 inoue kek 2564 Sep 25 10:30 cc.diff -rw-r--r-- 1 inoue kek 316 Sep 25 10:23 cc.diff0 -rw-r--r-- 1 inoue kek 3088 Aug 25 13:41 cc.h -rw-r--r-- 1 inoue kek 2288 Jun 23 16:19 cc_common.h -rw-r--r-- 1 inoue kek 876 Jun 23 16:19 cc_config.h -rw-r--r-- 1 inoue kek 3289 Jun 23 16:19 forlib.c -rw-r--r-- 1 inoue kek 3480 Aug 25 13:41 forlib.o -rw-r--r-- 1 inoue kek 4058 Jun 23 16:19 k2917.h -rw-r--r-- 1 inoue kek 13972 Sep 27 10:25 libcamac.a -rw-r--r-- 1 inoue kek 98823 Aug 21 13:54 out1 -rw-r--r-- 1 inoue kek 5730 Aug 24 16:34 out3 -rw-r--r-- 1 inoue kek 6721 Aug 25 09:40 out4 -rw-r--r-- 1 inoue kek 1014 Sep 25 09:47 out5 -rw-r--r-- 1 inoue kek 1223 Sep 1 10:46 outx drwxr-xr-x 2 inoue kek 512 Jun 23 16:19 script/ ./camasm: total 196 -rw-r--r-- 1 inoue kek 448 Jun 28 10:41 Makefile -rw-r--r-- 1 inoue kek 11249 Jun 28 10:41 asm_code.h -rw-r--r-- 1 inoue kek 11251 Jun 28 10:41 asm_code.h-org -rwxr-xr-x 1 inoue kek 28168 Jun 28 10:53 camasm* -rwxr-xr-x 1 inoue kek 20390 Jun 28 10:41 camasm-old* -rw-r--r-- 1 inoue kek 24762 Jun 28 10:41 camasm.c -rw-r--r-- 1 inoue kek 1646 Jun 28 10:41 err_code.h ./camlist: total 398 -rw-r--r-- 1 inoue kek 5023 Aug 7 13:52 Makefile -rw-r--r-- 1 inoue kek 4566 Jun 28 10:45 Makefile-bak -rw-r--r-- 1 inoue kek 4575 Jun 28 10:45 Makefile-bak1 -rw-r--r-- 1 inoue kek 4616 Jun 29 14:32 Makefile-single-ok -rw-r--r-- 1 inoue kek 4262 Jun 28 10:45 Makefile.org -rw-r--r-- 1 inoue kek 1433 Jun 28 10:45 camtest10c.c -rw-r--r-- 1 inoue kek 1459 Jun 28 10:45 camtest11c.c -rw-r--r-- 1 inoue kek 1728 Jun 28 10:45 camtest11c.o -rw-r--r-- 1 inoue kek 1435 Jun 28 10:45 camtest12c.c -rw-r--r-- 1 inoue kek 1469 Jun 28 10:45 camtest13c.c -rw-r--r-- 1 inoue kek 1453 Jun 28 10:45 camtest14c.c -rw-r--r-- 1 inoue kek 2602 Jun 28 10:45 camtest1c.c -rw-r--r-- 1 inoue kek 3548 Jun 28 10:45 camtest2c.c -rw-r--r-- 1 inoue kek 2927 Jun 28 10:45 camtest31c.c -rw-r--r-- 1 inoue kek 1999 Jun 28 10:45 camtest3c.c -rw-r--r-- 1 inoue kek 3293 Jun 28 10:45 camtest4.asm -rw-r--r-- 1 inoue kek 2065 Jun 28 10:57 camtest4.obj -rw-r--r-- 1 inoue kek 2178 Jun 28 10:45 camtest41c.c -rwxr-xr-x 1 inoue kek 15172 Aug 8 10:22 camtest4c* -rw-r--r-- 1 inoue kek 2321 Aug 8 10:20 camtest4c.c -rw-r--r-- 1 inoue kek 2221 Jun 28 10:45 camtest4c.c-org -rw-r--r-- 1 inoue kek 709 Jul 21 10:20 camtest4dma.asm -rw-r--r-- 1 inoue kek 405 Jul 21 10:21 camtest4dma.obj -rw-r--r-- 1 inoue kek 1821 Jun 28 10:45 camtest4etc.asm -rw-r--r-- 1 inoue kek 939 Aug 1 11:08 camtest4int.asm -rw-r--r-- 1 inoue kek 845 Jul 27 10:27 camtest4int.asm-INT -rw-r--r-- 1 inoue kek 898 Jul 31 16:13 camtest4int.asm-INT-TST -rw-r--r-- 1 inoue kek 939 Aug 1 11:07 camtest4int.asm-INT-ok -rw-r--r-- 1 inoue kek 846 Jun 30 09:29 camtest4int.asm-SW -rw-r--r-- 1 inoue kek 849 Jun 30 14:21 camtest4int.asm-SW-bak -rw-r--r-- 1 inoue kek 857 Jul 28 09:55 camtest4int.asm-SW-ok -rw-r--r-- 1 inoue kek 862 Jun 30 11:32 camtest4int.asm-bak -rw-r--r-- 1 inoue kek 829 Jul 17 16:10 camtest4int.asm-inoue -rw-r--r-- 1 inoue kek 963 Jul 26 16:26 camtest4int.asm-inoue1 -rw-r--r-- 1 inoue kek 699 Jun 29 15:54 camtest4int.asm-org -rw-r--r-- 1 inoue kek 828 Jul 27 10:36 camtest4int.asm727 -rw-r--r-- 1 inoue kek 322 Aug 1 11:09 camtest4int.obj -rw-r--r-- 1 inoue kek 603 Jul 21 09:21 camtest4single.asm -rw-r--r-- 1 inoue kek 540 Jun 28 10:45 camtest4single.asm-org -rw-r--r-- 1 inoue kek 195 Aug 8 10:22 camtest4single.obj -rwxr-xr-x 1 inoue kek 15084 Jul 18 15:01 camtest5c* -rwxr-xr-x 1 inoue kek 15336 Jun 28 13:45 camtest5c.bak* -rw-r--r-- 1 inoue kek 2047 Jul 18 14:57 camtest5c.c -rw-r--r-- 1 inoue kek 2047 Sep 27 16:15 camtest5c.c-Sept27-2000 -rw-r--r-- 1 inoue kek 2095 Jun 28 10:45 camtest5c.c-bak -rw-r--r-- 1 inoue kek 2036 Jun 28 10:45 camtest5c.c-org -rwxr-xr-x 1 inoue kek 15084 Jul 26 14:45 camtest5c1* -rw-r--r-- 1 inoue kek 2129 Jul 24 14:54 camtest5c1.c -rwxr-xr-x 1 inoue kek 15084 Jul 21 10:23 camtest5c2* -rw-r--r-- 1 inoue kek 2086 Jul 21 10:22 camtest5c2.c -rw-r--r-- 1 inoue kek 3250 Jun 28 10:45 camtestc.c -rwxr-xr-x 1 inoue kek 15064 Aug 7 13:53 inoue* -rw-r--r-- 1 inoue kek 2093 Aug 7 13:52 inoue.c -rw-r--r-- 1 inoue kek 621 Aug 7 13:48 inouesingle.asm -rw-r--r-- 1 inoue kek 90 Aug 7 13:53 inouesingle.obj ./camlist-kine: total 624 -rw-r--r-- 1 inoue kek 1917 Sep 20 16:35 Makefile -rw-r--r-- 1 inoue kek 1241 Jul 4 15:44 Makefile-org -rw-r--r-- 1 inoue kek 1255 Jul 4 13:41 Makefile.tmp -rwxr-xr-x 1 inoue kek 14212 Sep 18 16:37 cam0* -rw-r--r-- 1 inoue kek 1281 Jul 4 13:41 cam0.c -rwxr-xr-x 1 inoue kek 24576 Jul 4 13:41 cam1* -rw-r--r-- 1 inoue kek 1170 Jul 4 13:41 cam1.c -rw-r--r-- 1 inoue kek 3870 Jul 4 13:41 cam1.log -rwxr-xr-x 1 inoue kek 14396 Sep 18 16:37 cam1w* -rw-r--r-- 1 inoue kek 1101 Jul 4 13:41 cam1w.c -rwxr-xr-x 1 inoue kek 24576 Jul 4 13:41 cam3* -rw-r--r-- 1 inoue kek 2074 Jul 4 13:41 cam3.c -rw-r--r-- 1 inoue kek 4606 Jul 4 13:41 cam3.log -rwxr-xr-x 1 inoue kek 24576 Jul 4 13:41 cam4* -rw-r--r-- 1 inoue kek 2061 Jul 4 13:41 cam4.asm -rw-r--r-- 1 inoue kek 2523 Jul 4 13:41 cam4.c -rw-r--r-- 1 inoue kek 5334 Jul 4 13:41 cam4.lis -rw-r--r-- 1 inoue kek 6914 Jul 4 13:41 cam4.log -rw-r--r-- 1 inoue kek 993 Jul 4 13:41 cam4.obj -rw-r--r-- 1 inoue kek 6749 Jul 4 13:41 cam4.tmp -rw-r--r-- 1 inoue kek 2095 Jul 4 13:41 cam5.c -rw-r--r-- 1 inoue kek 4552 Sep 19 16:04 cam5.o -rwxr-xr-x 1 inoue kek 14636 Sep 28 10:20 cam6* -rw-r--r-- 1 inoue kek 895 Sep 11 09:59 cam6.asm -rw-r--r-- 1 inoue kek 1818 Sep 8 13:20 cam6.asm-Sept8-2000 -rw-r--r-- 1 inoue kek 895 Sep 11 09:49 cam6.asm-ok -rw-r--r-- 1 inoue kek 393 Jul 4 13:41 cam6.asm-org -rw-r--r-- 1 inoue kek 2098 Sep 28 10:18 cam6.c -rw-r--r-- 1 inoue kek 1835 Aug 9 13:54 cam6.c-org -rw-r--r-- 1 inoue kek 134 Sep 28 14:51 cam6.klist -rw-r--r-- 1 inoue kek 1879 Sep 28 10:20 cam6.lis -rw-r--r-- 1 inoue kek 258 Sep 28 10:20 cam6.obj -rwxr-xr-x 1 inoue kek 14476 Sep 8 16:27 cam6a* -rw-r--r-- 1 inoue kek 1471 Sep 8 16:25 cam6a.c -rwxr-xr-x 1 inoue kek 16668 Sep 11 14:03 cam6b* -rw-r--r-- 1 inoue kek 2976 Sep 11 14:03 cam6b.c -rwxr-xr-x 1 inoue kek 14880 Sep 18 15:30 cam7* -rw-r--r-- 1 inoue kek 2021 Sep 12 13:07 cam7.c -rwxr-xr-x 1 inoue kek 15200 Sep 20 14:43 cam7A* -rw-r--r-- 1 inoue kek 2568 Sep 20 14:36 cam7A.c -rw-r--r-- 1 inoue kek 46 Sep 28 14:54 cam7A.klist -rwxr-xr-x 1 inoue kek 14652 Sep 20 16:40 cam7B* -rw-r--r-- 1 inoue kek 1753 Sep 20 16:39 cam7B.c -rw-r--r-- 1 inoue kek 765 Sep 14 13:40 cam7a.asm -rw-r--r-- 1 inoue kek 1662 Sep 18 15:30 cam7a.lis -rw-r--r-- 1 inoue kek 27 Sep 18 15:30 cam7a.obj -rw-r--r-- 1 inoue kek 767 Sep 18 15:54 cam7aA.asm -rw-r--r-- 1 inoue kek 1664 Sep 20 14:43 cam7aA.lis -rw-r--r-- 1 inoue kek 27 Sep 20 14:43 cam7aA.obj -rw-r--r-- 1 inoue kek 1043 Sep 18 15:28 cam7b.asm -rw-r--r-- 1 inoue kek 1882 Sep 18 15:30 cam7b.lis -rw-r--r-- 1 inoue kek 90 Sep 18 15:30 cam7b.obj -rw-r--r-- 1 inoue kek 1238 Sep 20 13:56 cam7bA.asm -rw-r--r-- 1 inoue kek 2164 Sep 20 14:43 cam7bA.lis -rw-r--r-- 1 inoue kek 111 Sep 20 14:43 cam7bA.obj -rw-r--r-- 1 inoue kek 1169 Sep 19 16:50 cam7bB.asm -rw-r--r-- 1 inoue kek 2066 Sep 19 16:51 cam7bB.lis -rw-r--r-- 1 inoue kek 111 Sep 19 16:51 cam7bB.obj -rw-r--r-- 1 inoue kek 788 Sep 18 14:31 cam7c.asm -rw-r--r-- 1 inoue kek 1714 Sep 18 15:22 cam7c.lis -rw-r--r-- 1 inoue kek 48 Sep 18 15:22 cam7c.obj -rw-r--r-- 1 inoue kek 790 Sep 18 15:29 cam7cA.asm -rw-r--r-- 1 inoue kek 1716 Sep 20 14:43 cam7cA.lis -rw-r--r-- 1 inoue kek 48 Sep 20 14:43 cam7cA.obj ./script: total 14 -rw-r--r-- 1 inoue kek 66 Jun 23 16:19 awk1.txt -rw-r--r-- 1 inoue kek 37 Jun 23 16:19 awk2.txt -rwxr-xr-x 1 inoue kek 233 Jun 23 16:19 cc_build.gcc.sh* -rwxr-xr-x 1 inoue kek 234 Jun 23 16:19 cc_build.sh* -rwxr-xr-x 1 inoue kek 528 Jun 23 16:19 cc_link.sh* -rwxr-xr-x 1 inoue kek 808 Jun 23 16:19 cc_load.sh* -rwxr-xr-x 1 inoue kek 270 Jun 23 16:19 cc_unload.sh* onl50t[139]% (3-3). 各ファイルの配置 今回のデバッグの元にしたキットの各ファイル対して、デバッグ後のものを 割り当てる。 onlsun1[48]% pwd /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6/CAMAC-list-Kit onlsun1[49]% ls FORCE-50T-sol2.6-list/ cc.c-Aug22-2000b cc.c-cmn-out Makefile cc.c-Aug29-2000 cc.c-org README cc.c-Aug7LAMok cc.c-sept22KEKkiok2 cam1* cc.c-Aug8KEKLiok cc.c-sept22KEKkiok3 cam1.c cc.c-Jul13-2000 cc.c-tmp cam2* cc.c-Jul13-2000A cc.c-tmp1 cam2.f cc.c-Jul13-2000B cc.conf cam3* cc.c-Jul14-2000A cc.diff cam3.c cc.c-Jul14-2000B cc.diff0 cam3.c-bak cc.c-Jul17-2000A cc.h cam3.c-int cc.c-Jul17-2000B cc_common.h cam3.c-org cc.c-Jul26-2000 cc_config.h camasm/ cc.c-Jul26waitok forlib.c camlib.c cc.c-Sep18KEKkiok1 forlib.o camlib.c-Sept27-2000 cc.c-Sept1-2000 k2917.h camlib.c-org cc.c-Sept11-2000 libcamac.a camlib.h cc.c-Sept11kineok out1 camlib.o cc.c-Sept20kineok2 out3 camlist/ cc.c-Sept27mesout out4 camlist-kine/ cc.c-Sept28mesoutok out5 cc cc.c-Sept6-2000 outx cc.c cc.c-Sept7-2000 script/ cc.c-Aug22-2000 cc.c-Sept8-2000 onlsun1[50]% (3-3-1). Makefile onlsun1[50]% mv Makefile FORCE-50T-sol2.6-list onlsun1[51]% (3-3-2). README onlsun1[51]% mv README FORCE-50T-sol2.6-list onlsun1[52]% (3-3-3). cam1.c onlsun1[52]% mv cam1.c FORCE-50T-sol2.6-list onlsun1[53]% (3-3-4). cam2.f onlsun1[53]% mv cam2.f FORCE-50T-sol2.6-list onlsun1[54]% (3-3-5). cam3.c onlsun1[54]% mv cam3.c FORCE-50T-sol2.6-list onlsun1[55]% (3-3-6). camlib.c onlsun1[55]% mv camlib.c FORCE-50T-sol2.6-list onlsun1[56]% (3-3-7). camlib.h onlsun1[56]% mv camlib.h FORCE-50T-sol2.6-list onlsun1[57]% (3-3-8). cc.c onlsun1[57]% mv cc.c FORCE-50T-sol2.6-list onlsun1[58]% (3-3-9). cc.conf onlsun1[58]% mv cc.conf FORCE-50T-sol2.6-list onlsun1[59]% (3-3-10). cc.h onlsun1[59]% mv cc.h FORCE-50T-sol2.6-list onlsun1[60]% (3-3-11). cc_common.h onlsun1[60]% mv cc_common.h FORCE-50T-sol2.6-list onlsun1[61]% (3-3-12). cc_config.h onlsun1[61]% mv cc_config.h FORCE-50T-sol2.6-list onlsun1[62]% (3-3-13). forlib.c onlsun1[62]% mv forlib.c FORCE-50T-sol2.6-list onlsun1[63]% (3-3-14). k2917.h onlsun1[63]% mv k2917.h FORCE-50T-sol2.6-list onlsun1[64]% (3-3-15). camasm ディレクトリ onlsun1[65]% mkdir FORCE-50T-sol2.6-list/camasm onlsun1[66]% ls camasm Makefile asm_code.h-org camasm-old* err_code.h asm_code.h camasm* camasm.c onlsun1[67]% (3-3-15-A). camasm ディレクトリの Makefile onlsun1[67]% mv camasm/Makefile FORCE-50T-sol2.6-list/camasm onlsun1[68]% (3-3-15-B). camasm ディレクトリの asm_code.h onlsun1[68]% mv camasm/asm_code.h FORCE-50T-sol2.6-list/camasm onlsun1[69]% (3-3-15-C). camasm ディレクトリの camasm.c onlsun1[69]% mv camasm/camasm.c FORCE-50T-sol2.6-list/camasm onlsun1[70]% (3-3-15-D). camasm ディレクトリの err_code.h onlsun1[70]% mv camasm/err_code.h FORCE-50T-sol2.6-list/camasm onlsun1[71]% (3-3-16). camlist ディレクトリ onlsun1[71]% mkdir FORCE-50T-sol2.6-list/camlist onlsun1[72]% ls camlist Makefile camtest4c.c camtest4single.asm-org Makefile-bak camtest4c.c-org camtest4single.obj Makefile-bak1 camtest4dma.asm camtest5c* Makefile-single-ok camtest4dma.obj camtest5c.bak* Makefile.org camtest4etc.asm camtest5c.c camtest10c.c camtest4int.asm camtest5c.c-Sept27-2000 camtest11c.c camtest4int.asm-INT camtest5c.c-bak camtest11c.o camtest4int.asm-INT-TST camtest5c.c-org camtest12c.c camtest4int.asm-INT-ok camtest5c1* camtest13c.c camtest4int.asm-SW camtest5c1.c camtest14c.c camtest4int.asm-SW-bak camtest5c2* camtest1c.c camtest4int.asm-SW-ok camtest5c2.c camtest2c.c camtest4int.asm-bak camtestc.c camtest31c.c camtest4int.asm-inoue inoue* camtest3c.c camtest4int.asm-inoue1 inoue.c camtest4.asm camtest4int.asm-org inouesingle.asm camtest4.obj camtest4int.asm727 inouesingle.obj camtest41c.c camtest4int.obj camtest4c* camtest4single.asm onlsun1[73]% (3-3-16-A). camlist ディレクトリの Makefile onlsun1[73]% mv camlist/Makefile FORCE-50T-sol2.6-list/camlist onlsun1[74]% (3-3-16-B). camlist ディレクトリの camtest4c.c onlsun1[74]% mv camlist/camtest4c.c FORCE-50T-sol2.6-list/camlist onlsun1[75]% (3-3-16-C). camlist ディレクトリの camtest4single.asm onlsun1[75]% mv camlist/camtest4single.asm FORCE-50T-sol2.6-list/camlist onlsun1[76]% (3-3-16-D). camlist ディレクトリの camtest5c.c onlsun1[76]% mv camlist/camtest5c.c FORCE-50T-sol2.6-list/camlist onlsun1[77]% (3-3-16-E). camlist ディレクトリの camtest5c1.c onlsun1[77]% mv camlist/camtest5c1.c FORCE-50T-sol2.6-list/camlist onlsun1[78]% (3-3-16-F). camlist ディレクトリの camtest4int.asm onlsun1[79]% mv camlist/camtest4int.asm FORCE-50T-sol2.6-list/camlist onlsun1[80]% (3-3-16-G). camlist ディレクトリの camtest5c2.c onlsun1[80]% mv camlist/camtest5c2.c FORCE-50T-sol2.6-list/camlist onlsun1[81]% (3-3-16-H). camlist ディレクトリの camtest4dma.asm onlsun1[81]% mv camlist/camtest4dma.asm FORCE-50T-sol2.6-list/camlist onlsun1[82]% (3-3-17). camlist-kine ディレクトリ onlsun1[83]% mkdir FORCE-50T-sol2.6-list/camlist-kine onlsun1[84]% ls camlist-kine Makefile cam6* cam7a.lis Makefile-org cam6.asm cam7a.obj Makefile.tmp cam6.asm-Sept8-2000 cam7aA.asm cam0* cam6.asm-ok cam7aA.lis cam0.c cam6.asm-org cam7aA.obj cam1* cam6.c cam7b.asm cam1.c cam6.c-org cam7b.lis cam1.log cam6.klist cam7b.obj cam1w* cam6.lis cam7bA.asm cam1w.c cam6.obj cam7bA.lis cam3* cam6a* cam7bA.obj cam3.c cam6a.c cam7bB.asm cam3.log cam6b* cam7bB.lis cam4* cam6b.c cam7bB.obj cam4.asm cam7* cam7c.asm cam4.c cam7.c cam7c.lis cam4.lis cam7A* cam7c.obj cam4.log cam7A.c cam7cA.asm cam4.obj cam7A.klist cam7cA.lis cam4.tmp cam7B* cam7cA.obj cam5.c cam7B.c cam5.o cam7a.asm onlsun1[85]% (3-3-17-A). camlist-kine ディレクトリの Makefile onlsun1[85]% mv camlist-kine/Makefile FORCE-50T-sol2.6-list/camlist-kine onlsun1[86]% (3-3-17-B). camlist-kine ディレクトリの cam6 onlsun1[86]% mv camlist-kine/cam6.c FORCE-50T-sol2.6-list/camlist-kine onlsun1[87]% (3-3-17-C). camlist-kine ディレクトリの cam6.asm onlsun1[87]% mv camlist-kine/cam6.asm FORCE-50T-sol2.6-list/camlist-kine onlsun1[88]% (3-3-17-D). camlist-kine ディレクトリの cam6a.c onlsun1[88]% mv camlist-kine/cam6a.c FORCE-50T-sol2.6-list/camlist-kine onlsun1[89]% (3-3-17-E). camlist-kine ディレクトリの cam6.klist onlsun1[89]% mv camlist-kine/cam6.klist FORCE-50T-sol2.6-list/camlist-kine onlsun1[90]% (3-3-17-F). camlist-kine ディレクトリの cam6b.c onlsun1[90]% mv camlist-kine/cam6b.c FORCE-50T-sol2.6-list/camlist-kine onlsun1[91]% (3-3-17-G). camlist-kine ディレクトリの cam7.c onlsun1[91]% mv camlist-kine/cam7.c FORCE-50T-sol2.6-list/camlist-kine onlsun1[92]% (3-3-17-H). camlist-kine ディレクトリの cam7a.asm onlsun1[92]% mv camlist-kine/cam7a.asm FORCE-50T-sol2.6-list/camlist-kine onlsun1[93]% (3-3-17-I). camlist-kine ディレクトリの cam7b.asm onlsun1[93]% mv camlist-kine/cam7b.asm FORCE-50T-sol2.6-list/camlist-kine onlsun1[94]% (3-3-17-J). camlist-kine ディレクトリの cam7A.c onlsun1[94]% mv camlist-kine/cam7A.c FORCE-50T-sol2.6-list/camlist-kine onlsun1[95]% (3-3-17-K). camlist-kine ディレクトリの cam7aA.asm onlsun1[95]% mv camlist-kine/cam7aA.asm FORCE-50T-sol2.6-list/camlist-kine onlsun1[96]% (3-3-17-L). camlist-kine ディレクトリの cam7bA.asm onlsun1[96]% mv camlist-kine/cam7bA.asm FORCE-50T-sol2.6-list/camlist-kine onlsun1[97]% (3-3-17-M). camlist-kine ディレクトリの cam7cA.asm onlsun1[97]% mv camlist-kine/cam7cA.asm FORCE-50T-sol2.6-list/camlist-kine onlsun1[98]% (3-3-17-N). camlist-kine ディレクトリの cam7B.c onlsun1[98]% mv camlist-kine/cam7B.c FORCE-50T-sol2.6-list/camlist-kine onlsun1[99]% (3-3-17-O). camlist-kine ディレクトリの cam7A.klis onlsun1[99]% mv camlist-kine/cam7A.klist FORCE-50T-sol2.6-list/camlist-kine onlsun1[100]% (3-3-18). script ディレクトリ onlsun1[108]% mkdir FORCE-50T-sol2.6-list/script onlsun1[109]% ls script awk1.txt cc_build.gcc.sh* cc_link.sh* cc_unload.sh* awk2.txt cc_build.sh* cc_load.sh* onlsun1[110]% (3-3-18-A). script ディレクトリの awk1.txt onlsun1[110]% mv script/awk1.txt FORCE-50T-sol2.6-list/script onlsun1[111]% (3-3-18-B). script ディレクトリの awk2.txt onlsun1[111]% mv script/awk2.txt FORCE-50T-sol2.6-list/script onlsun1[112]% (3-3-18-C). script ディレクトリの cc_build.gcc.sh onlsun1[113]% mv script/cc_build.gcc.sh FORCE-50T-sol2.6-list/script onlsun1[114]% (3-3-18-D). script ディレクトリの cc_build.sh onlsun1[114]% mv script/cc_build.sh FORCE-50T-sol2.6-list/script onlsun1[115]% (3-3-18-E). script ディレクトリの cc_link.sh onlsun1[115]% mv script/cc_link.sh FORCE-50T-sol2.6-list/script onlsun1[116]% (3-3-18-F). script ディレクトリの cc_load.sh onlsun1[116]% mv script/cc_load.sh FORCE-50T-sol2.6-list/script onlsun1[117]% (3-3-18-G). script ディレクトリの cc_unload.sh onlsun1[117]% mv script/cc_unload.sh FORCE-50T-sol2.6-list/script onlsun1[118]% (3-4). 各ファイル中の記述を添削する ファイルの確認。 onlsun1[121]% pwd /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6/CAMAC-list-Kit/FORCE-50T-sol2.6-list onlsun1[122]% ls -lR .: 合計 350 -rw-r--r-- 1 inoue kek 2041 6月 23日 16:19 Makefile -rw-r--r-- 1 inoue kek 3624 6月 23日 16:19 README -rw-r--r-- 1 inoue kek 1170 6月 23日 16:19 cam1.c -rw-r--r-- 1 inoue kek 2295 6月 23日 16:19 cam2.f -rw-r--r-- 1 inoue kek 2055 7月 28日 09:14 cam3.c drwxr-xr-x 2 inoue kek 512 10月 2日 13:43 camasm/ -rw-r--r-- 1 inoue kek 9866 9月 27日 10:24 camlib.c -rw-r--r-- 1 inoue kek 1415 6月 23日 16:19 camlib.h drwxr-xr-x 2 inoue kek 512 10月 2日 15:09 camlist/ drwxr-xr-x 2 inoue kek 512 10月 2日 16:16 camlist-kine/ -rw-r--r-- 1 inoue kek 117836 9月 27日 09:50 cc.c -rw-r--r-- 1 inoue kek 288 6月 23日 16:19 cc.conf -rw-r--r-- 1 inoue kek 3088 8月 25日 13:41 cc.h -rw-r--r-- 1 inoue kek 2288 6月 23日 16:19 cc_common.h -rw-r--r-- 1 inoue kek 876 6月 23日 16:19 cc_config.h -rw-r--r-- 1 inoue kek 3289 6月 23日 16:19 forlib.c -rw-r--r-- 1 inoue kek 4058 6月 23日 16:19 k2917.h drwxr-xr-x 2 inoue kek 512 10月 2日 16:39 script/ ./camasm: 合計 78 -rw-r--r-- 1 inoue kek 448 6月 28日 10:41 Makefile -rw-r--r-- 1 inoue kek 11249 6月 28日 10:41 asm_code.h -rw-r--r-- 1 inoue kek 24762 6月 28日 10:41 camasm.c -rw-r--r-- 1 inoue kek 1646 6月 28日 10:41 err_code.h ./camlist: 合計 38 -rw-r--r-- 1 inoue kek 5023 8月 7日 13:52 Makefile -rw-r--r-- 1 inoue kek 2321 8月 8日 10:20 camtest4c.c -rw-r--r-- 1 inoue kek 709 7月 21日 10:20 camtest4dma.asm -rw-r--r-- 1 inoue kek 939 8月 1日 11:08 camtest4int.asm -rw-r--r-- 1 inoue kek 603 7月 21日 09:21 camtest4single.asm -rw-r--r-- 1 inoue kek 2047 7月 18日 14:57 camtest5c.c -rw-r--r-- 1 inoue kek 2129 7月 24日 14:54 camtest5c1.c -rw-r--r-- 1 inoue kek 2086 7月 21日 10:22 camtest5c2.c ./camlist-kine: 合計 54 -rw-r--r-- 1 inoue kek 1917 9月 20日 16:35 Makefile -rw-r--r-- 1 inoue kek 895 9月 11日 09:59 cam6.asm -rw-r--r-- 1 inoue kek 2098 9月 28日 10:18 cam6.c -rw-r--r-- 1 inoue kek 134 9月 28日 14:51 cam6.klist -rw-r--r-- 1 inoue kek 1471 9月 8日 16:25 cam6a.c -rw-r--r-- 1 inoue kek 2976 9月 11日 14:03 cam6b.c -rw-r--r-- 1 inoue kek 2021 9月 12日 13:07 cam7.c -rw-r--r-- 1 inoue kek 2568 9月 20日 14:36 cam7A.c -rw-r--r-- 1 inoue kek 46 9月 28日 14:54 cam7A.klist -rw-r--r-- 1 inoue kek 1753 9月 20日 16:39 cam7B.c -rw-r--r-- 1 inoue kek 765 9月 14日 13:40 cam7a.asm -rw-r--r-- 1 inoue kek 767 9月 18日 15:54 cam7aA.asm -rw-r--r-- 1 inoue kek 1043 9月 18日 15:28 cam7b.asm -rw-r--r-- 1 inoue kek 1238 9月 20日 13:56 cam7bA.asm -rw-r--r-- 1 inoue kek 790 9月 18日 15:29 cam7cA.asm ./script: 合計 14 -rw-r--r-- 1 inoue kek 66 6月 23日 16:19 awk1.txt -rw-r--r-- 1 inoue kek 37 6月 23日 16:19 awk2.txt -rwxr-xr-x 1 inoue kek 233 6月 23日 16:19 cc_build.gcc.sh* -rwxr-xr-x 1 inoue kek 234 6月 23日 16:19 cc_build.sh* -rwxr-xr-x 1 inoue kek 528 6月 23日 16:19 cc_link.sh* -rwxr-xr-x 1 inoue kek 808 6月 23日 16:19 cc_load.sh* -rwxr-xr-x 1 inoue kek 270 6月 23日 16:19 cc_unload.sh* onlsun1[123]% デバッグで変更した個所を確認するために、既存のキット FORCE-5V-sol2.6 を 入手する。 onlsun1[131]% pwd /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6/CAMAC-list-Kit onlsun1[132]% mkdir tmp1 onlsun1[133]% cd tmp1 /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6/CAMAC-list-Kit/tmp1 onlsun1[134]% ls -l 合計 0 onlsun1[135]% ftp online.kek.jp Connected to onlax2.kek.jp. 220 onlax2.kek.jp FTP server (Compaq Tru64 UNIX Version 5.60) ready. Name (online.kek.jp:inoue): anonymous 331 Guest login ok, send ident as password. Password: 230 Guest login ok, access restrictions apply. ftp> cd pub/kek/camac 250 CWD command successful. ftp> dir 200 PORT command successful. 150 Opening ASCII mode data connection for /bin/ls (130.87.153.10,48337). total 3311 -rw-r--r-- 1 0 10 1173 Apr 19 1995 122d_to_e.tar.gz -rw-r--r-- 1 0 10 24125 Jul 26 1999 FORCE-50T-sol2.6.tar.gz -rw-r--r-- 1 0 10 22160 Nov 19 1997 FORCE-5V-sol2.5.tar.gz -rw-r--r-- 1 0 10 2494 Dec 2 1994 README -rw-r--r-- 1 0 10 30106 Oct 13 1999 SPARC-status.html -rw-r--r-- 1 0 10 21435 Dec 13 1994 camac.sol2-1.30.tar.gz -rw-r--r-- 1 0 10 169539 Aug 18 1993 camac.sparc-1.22b.tar.Z -rw-r--r-- 1 0 10 91662 Aug 18 1993 camac.sparc-1.22b.tar.gz -rw-r--r-- 1 0 10 198417 Aug 19 1993 camac.sparc-1.22c.tar.Z -rw-r--r-- 1 0 10 110755 Aug 19 1993 camac.sparc-1.22c.tar.gz -rw-r--r-- 1 0 10 199103 Sep 4 1993 camac.sparc-1.22d.tar.Z -rw-r--r-- 1 0 10 110752 Sep 4 1993 camac.sparc-1.22d.tar.gz -rw-r--r-- 1 0 10 287493 Apr 20 1995 camacv1.01_decs.tar.Z -rw-r--r-- 1 0 10 231505 Dec 2 1994 camacv1.01_hprt.tar.Z -rw-r--r-- 1 0 10 132002 Dec 2 1994 camacv1.01_hprt.tar.gz -rw-r--r-- 1 0 10 283202 Dec 2 1994 camacv1.0_decs.tar.Z -rw-r--r-- 1 0 10 159495 Dec 2 1994 camacv1.0_decs.tar.gz -rw-r--r-- 1 0 10 216777 Sep 13 1994 camacv1.0_hprt.tar.Z -rw-r--r-- 1 0 10 122114 Sep 13 1994 camacv1.0_hprt.tar.gz -rw-r--r-- 1 0 10 87379 Nov 30 1994 camlib-docs-1.0.tar.Z -rw-r--r-- 1 0 10 51118 Nov 30 1994 camlib-docs-1.0.tar.gz drwxr-xr-x 2 0 10 512 Jul 24 14:08 doc -rw-r--r-- 1 0 10 13589 Jan 17 1995 sparc-3ce.tar.gz -rw-r--r-- 1 0 10 233395 Aug 18 1993 tdaq-1.00.tar.Z -rw-r--r-- 1 0 10 121288 Apr 2 1992 tdaq-1.00.tar.gz -rw-r--r-- 1 0 10 277799 Jan 20 1995 vme-3CE.tar.gz 226 Transfer complete. 1968 bytes received in 0.4 seconds (4.84 Kbytes/s) ftp> binary 200 Type set to I. ftp> get FORCE-50T-sol2.6.tar.gz 200 PORT command successful. 150 Opening BINARY mode data connection for FORCE-50T-sol2.6.tar.gz (130.87.153.10,48338) (24125 bytes). 226 Transfer complete. local: FORCE-50T-sol2.6.tar.gz remote: FORCE-50T-sol2.6.tar.gz 24125 bytes received in 0.027 seconds (865.46 Kbytes/s) ftp> quit 221 Goodbye. onlsun1[136]% onlsun1[136]% ls -l 合計 48 -rw-r--r-- 1 inoue kek 24125 10月 3日 16:19 FORCE-50T-sol2.6.tar.gz onlsun1[137]% gzip -d FORCE-50T-sol2.6.tar.gz onlsun1[138]% ls -l 合計 288 -rw-r--r-- 1 inoue kek 132096 7月 26日 1999年 FORCE-50T-sol2.6.tar onlsun1[139]% tar xvf FORCE-50T-sol2.6.tar x FORCE-50T-sol2.6, 0 bytes, 0 テープブロック x FORCE-50T-sol2.6/Makefile, 2041 bytes, 4 テープブロック x FORCE-50T-sol2.6/README, 3624 bytes, 8 テープブロック x FORCE-50T-sol2.6/cam1.c, 1170 bytes, 3 テープブロック x FORCE-50T-sol2.6/cam2.f, 2295 bytes, 5 テープブロック x FORCE-50T-sol2.6/cam3.c, 2055 bytes, 5 テープブロック x FORCE-50T-sol2.6/camlib.c, 9740 bytes, 20 テープブロック x FORCE-50T-sol2.6/camlib.h, 1415 bytes, 3 テープブロック x FORCE-50T-sol2.6/cc.c, 74943 bytes, 147 テープブロック x FORCE-50T-sol2.6/cc.conf, 288 bytes, 1 テープブロック x FORCE-50T-sol2.6/cc.h, 2931 bytes, 6 テープブロック x FORCE-50T-sol2.6/cc_common.h, 2288 bytes, 5 テープブロック x FORCE-50T-sol2.6/cc_config.h, 876 bytes, 2 テープブロック x FORCE-50T-sol2.6/forlib.c, 3289 bytes, 7 テープブロック x FORCE-50T-sol2.6/k2917.h, 4058 bytes, 8 テープブロック x FORCE-50T-sol2.6/script, 0 bytes, 0 テープブロック x FORCE-50T-sol2.6/script/cc_build.sh, 234 bytes, 1 テープブロック x FORCE-50T-sol2.6/script/cc_load.sh, 808 bytes, 2 テープブロック x FORCE-50T-sol2.6/script/cc_unload.sh, 270 bytes, 1 テープブロック x FORCE-50T-sol2.6/script/cc_build.gcc.sh, 233 bytes, 1 テープブロック x FORCE-50T-sol2.6/script/cc_link.sh, 528 bytes, 2 テープブロック x FORCE-50T-sol2.6/script/awk1.txt, 66 bytes, 1 テープブロック x FORCE-50T-sol2.6/script/awk2.txt, 37 bytes, 1 テープブロック onlsun1[140]% ls -l 合計 290 drwxr-xr-x 3 inoue kek 512 7月 26日 1999年 FORCE-50T-sol2.6/ -rw-r--r-- 1 inoue kek 132096 7月 26日 1999年 FORCE-50T-sol2.6.tar onlsun1[141]% cd FORCE-50T-sol2.6 /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6/CAMAC-list-Kit/tmp1/FORCE-50T-sol2.6 onlsun1[142]% ls -l 合計 234 -rw-r--r-- 1 inoue kek 2041 7月 19日 1999年 Makefile -rw-r--r-- 1 inoue kek 3624 7月 26日 1999年 README -rw-r--r-- 1 inoue kek 1170 7月 16日 1999年 cam1.c -rw-r--r-- 1 inoue kek 2295 7月 16日 1999年 cam2.f -rw-r--r-- 1 inoue kek 2055 7月 16日 1999年 cam3.c -rw-r--r-- 1 inoue kek 9740 7月 16日 1999年 camlib.c -rw-r--r-- 1 inoue kek 1415 7月 16日 1999年 camlib.h -rw-r--r-- 1 inoue kek 74943 7月 26日 1999年 cc.c -rw-r--r-- 1 inoue kek 288 7月 16日 1999年 cc.conf -rw-r--r-- 1 inoue kek 2931 7月 26日 1999年 cc.h -rw-r--r-- 1 inoue kek 2288 7月 16日 1999年 cc_common.h -rw-r--r-- 1 inoue kek 876 7月 16日 1999年 cc_config.h -rw-r--r-- 1 inoue kek 3289 7月 16日 1999年 forlib.c -rw-r--r-- 1 inoue kek 4058 7月 16日 1999年 k2917.h drwxr-xr-x 2 inoue kek 512 7月 16日 1999年 script/ onlsun1[143]% onlsun1[150]% pwd /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6/CAMAC-list-Kit/FORCE-50T-sol2.6-list onlsun1[151]% ls -l 合計 350 -rw-r--r-- 1 inoue kek 2041 6月 23日 16:19 Makefile -rw-r--r-- 1 inoue kek 3624 6月 23日 16:19 README -rw-r--r-- 1 inoue kek 1170 6月 23日 16:19 cam1.c -rw-r--r-- 1 inoue kek 2295 6月 23日 16:19 cam2.f -rw-r--r-- 1 inoue kek 2055 7月 28日 09:14 cam3.c drwxr-xr-x 2 inoue kek 512 10月 2日 13:43 camasm/ -rw-r--r-- 1 inoue kek 9866 9月 27日 10:24 camlib.c -rw-r--r-- 1 inoue kek 1415 6月 23日 16:19 camlib.h drwxr-xr-x 2 inoue kek 512 10月 2日 15:09 camlist/ drwxr-xr-x 2 inoue kek 512 10月 2日 16:16 camlist-kine/ -rw-r--r-- 1 inoue kek 117836 9月 27日 09:50 cc.c -rw-r--r-- 1 inoue kek 288 6月 23日 16:19 cc.conf -rw-r--r-- 1 inoue kek 3088 8月 25日 13:41 cc.h -rw-r--r-- 1 inoue kek 2288 6月 23日 16:19 cc_common.h -rw-r--r-- 1 inoue kek 876 6月 23日 16:19 cc_config.h -rw-r--r-- 1 inoue kek 3289 6月 23日 16:19 forlib.c -rw-r--r-- 1 inoue kek 4058 6月 23日 16:19 k2917.h drwxr-xr-x 2 inoue kek 512 10月 2日 16:39 script/ onlsun1[152]% ls -l ../tmp1/FORCE-50T-sol2.6 合計 234 -rw-r--r-- 1 inoue kek 2041 7月 19日 1999年 Makefile -rw-r--r-- 1 inoue kek 3624 7月 26日 1999年 README -rw-r--r-- 1 inoue kek 1170 7月 16日 1999年 cam1.c -rw-r--r-- 1 inoue kek 2295 7月 16日 1999年 cam2.f -rw-r--r-- 1 inoue kek 2055 7月 16日 1999年 cam3.c -rw-r--r-- 1 inoue kek 9740 7月 16日 1999年 camlib.c -rw-r--r-- 1 inoue kek 1415 7月 16日 1999年 camlib.h -rw-r--r-- 1 inoue kek 74943 7月 26日 1999年 cc.c -rw-r--r-- 1 inoue kek 288 7月 16日 1999年 cc.conf -rw-r--r-- 1 inoue kek 2931 7月 26日 1999年 cc.h -rw-r--r-- 1 inoue kek 2288 7月 16日 1999年 cc_common.h -rw-r--r-- 1 inoue kek 876 7月 16日 1999年 cc_config.h -rw-r--r-- 1 inoue kek 3289 7月 16日 1999年 forlib.c -rw-r--r-- 1 inoue kek 4058 7月 16日 1999年 k2917.h drwxr-xr-x 2 inoue kek 512 7月 16日 1999年 script/ onlsun1[155]% (3-4-1). FORCE-50T-sol2.6-list/Makefileファイルの整備 Makefileファイルの修正個所の確認 onlsun1[156]% diff Makefile ../tmp1/FORCE-50T-sol2.6/Makefile onlsun1[157]% Makefileファイルはデバッグ時に変更は加えていない。 (3-4-2). FORCE-50T-sol2.6-list/cam1.cファイルの整備 cam1.cファイルの修正個所の確認 onlsun1[159]% diff cam1.c ../tmp1/FORCE-50T-sol2.6/cam1.c onlsun1[160]% cam1.cファイルはデバッグ時に変更は加えていない。 (3-4-3). FORCE-50T-sol2.6-list/cam2.fファイルの整備 cam2.fファイルの修正個所の確認 onlsun1[163]% diff cam2.f ../tmp1/FORCE-50T-sol2.6/cam2.f onlsun1[164]% cam2.fファイルはデバッグ時に変更は加えていない。 (3-4-4). FORCE-50T-sol2.6-list/cam3.cファイルの整備 cam3.cファイルの修正個所の確認 onlsun1[164]% diff cam3.c ../tmp1/FORCE-50T-sol2.6/cam3.c onlsun1[165]% cam3.cファイルはデバッグ時に変更は加えていない。 (3-4-5). FORCE-50T-sol2.6-list/camlib.cファイルの整備 camlib.cファイルの修正個所の確認 onlsun1[165]% diff camlib.c ../tmp1/FORCE-50T-sol2.6/camlib.c 217,219d216 < /* E.Inoue < printf("buf's address = 0x%x\n", buf); < end */ 414,416d410 < /* E.Inoue < printf("buf's address = 0x%x\n", buf); < end */ onlsun1[166]% camlib.c にはデバッグ時にトレースのためのプリント文を付加している。 これは、キットでは必要ないので削除する。 (3-4-5-a). FORCE-50T-sol2.6-list/camlib.cファイルの修正 onlsun1[167]% vi camlib.c : CDMAW(mode, naf, buf, len, retlen, err) int mode, naf, len, *retlen, *err; u_short *buf; { register int status; errno = 0; /* E.Inoue <-- 削除 printf("buf's address = 0x%x\n", buf); <-- 削除 end */ <-- 削除 message.command = (u_short)CC_CMD_DOBLOCK; : onlsun1[168]% (3-4-6). FORCE-50T-sol2.6-list/camlib.hファイルの整備 camlib.hファイルの修正個所の確認 onlsun1[44]% diff camlib.h ../tmp1/FORCE-50T-sol2.6/camlib.h onlsun1[45]% camlib.hファイルは変更していない。 (3-4-7). FORCE-50T-sol2.6-list/cc.cファイルの整備 cc.cファイルの修正個所の確認 onlsun1[46]% diff cc.c ../tmp1/FORCE-50T-sol2.6/cc.c > cc.diff onlsun1[47]% cat cc.diff 90,95c90 < /* E.Inoue int klist; */ /* flag for K2917 list processing */ < int klistf; /* flag for K2917 list processing */ < /* E.Inoue */ < int kl_retl; < int kl_s_wr; < /* end */ --- > int klist; /* flag for K2917 list processing */ 636,637c631 < /* E.Inoue register struct iovec *iov = uio->uio_iov; */ < register struct iovec *iov; --- > register struct iovec *iov = uio->uio_iov; 640,643c634,635 < /* E.Inoue struct uio uio_save, *uios = &uio_save; */ < struct uio uio_save, *uios; < /* E.Inoue struct iovec iov_save, *iovs = &iov_save; */ < struct iovec iov_save, *iovs; --- > struct uio uio_save, *uios = &uio_save; > struct iovec iov_save, *iovs = &iov_save; 657,665d648 < /* E.Inoue */ < iov = uio->uio_iov; < uios = &uio_save; < iovs = &iov_save; < /* end */ < /* cmn_err(CE_NOTE," ccwrite: cc->klist1[0].wc = 0x%x", cc->klist1[0].wc); */ < /* < cmn_err(CE_NOTE," ccwrite: cc->klist1[%d].wc = 0x%x", cc->a_reg, cc->klist1[cc->a_reg].wc); < */ 687,690d669 < /* < cmn_err(CE_NOTE," cc_write: 1 copyin: uio->uio_iov = 0x%x", uio->uio_iov); < cmn_err(CE_NOTE," cc_write: 1 copyin: iov->iov_base = 0x%x", iov->iov_base); < */ 737,740d715 < /* < cmn_err(CE_NOTE," cc_write: CC_CMD_DOBLOCK: cc->ptr_udata = 0x%x", cc->ptr_udata); < cmn_err(CE_NOTE," cc_write: CC_CMD_DOBLOCK: iov->iov_base = 0x%x", iov->iov_base); < */ 760,766d734 < /* < cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.status = 0x%x", cc->iosb.status); < cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.ret_length = 0x%x", cc->iosb.ret_length); < cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.s_reg = 0x%x", cc->iosb.s_reg); < cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.devinfo = 0x%x", cc->iosb.devinfo); < */ < 777,780d744 < /* < cmn_err(CE_NOTE," cc_write: CC_CMD_LOADDOLIST: enter CC_CMD_LOADDOLIST"); < */ < 809,812d772 < /* < cmn_err(CE_NOTE," cc_write: CC_CMD_LOADDOLIST: in while, code = 0x%x", code); < cmn_err(CE_NOTE," cc_write: CC_CMD_LOADDOLIST: in while, cc->ptr_udata = 0x%x", cc->ptr_udata); < */ 814d773 < /* E.Inoue 817,822d775 < end */ < cc->status = (*instruction_call)(unit); < /* < cmn_err(CE_NOTE," cc_write: CC_CMD_LOADDOLIST: in while, cc->status = 0x%x", cc->status); < */ < next_instruction(unit); 824,826d776 < /* < cmn_err(CE_NOTE," cc_write: CC_CMD_LOADDOLIST: out while, cc->status = 0x%x", cc->status); < */ 829,832d778 < /* < cmn_err(CE_NOTE," cc_write: CC_CMD_LOADDOLIST: out while #2, cc->status = 0x%x", cc->status); < */ < /* E.Inoue 834,835d779 < end */ < flush_buf(unit); 857d800 < /* E.Inoue 859,864d801 < end */ < kladd(unit, klname); < /* cmn_err(CE_NOTE," ccwrite: CC_CMD_ADDKLIST: cc->klist1[0].wc = 0x%x", cc->klist1[0].wc); */ < /* < cmn_err(CE_NOTE," ccwrite: CC_CMD_ADDKLIST: cc->klist1[%d].wc = 0x%x", cc->a_reg, cc->klist1[cc->a_reg].wc); < */ 870d806 < /* E.Inoue 872,876d807 < end */ < /* < cmn_err(CE_NOTE," ccwrite: CC_CMD_DELKLIST: klname = %s", klname); < */ < kldel(unit, klname); 881,883d811 < /* < cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->klist1[0].wc = 0x%x", cc->klist1[0].wc); < */ 893,897d820 < /* < cmn_err(CE_NOTE," cc_write: CC_CMD_EXEKLIST: cc->ptr_udata = 0x%x", cc->ptr_udata); < cmn_err(CE_NOTE," cc_write: CC_CMD_EXEKLIST: iov->iov_base = 0x%x", iov->iov_base); < */ < /* E.Inoue 899,904d821 < cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->klist1[%d].wc = 0x%x", cc->ptr_dir, cc->klist1[cc->ptr_dir].wc); < end */ < /* < cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->klist1[0].wc = 0x%x", cc->klist1[0].wc); < */ < klexe(unit, klname); 909,915d825 < /* < cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.status = 0x%x", cc->iosb.status); < cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.ret_length = 0x%x", cc->iosb.ret_length); < cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.s_reg = 0x%x", cc->iosb.s_reg); < cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.devinfo = 0x%x", cc->iosb.devinfo); < cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->k->mtc = 0x%x", cc->k->mtc); < */ 922d831 < /* E.Inoue 924,925d832 < end */ < klsave(unit, cc->data_area); 935d841 < /* E.Inoue 937,938d842 < end */ < klload(unit, cc->data_area); 968,970d871 < /* < cmn_err(CE_NOTE," CC_timeout: enter"); < */ 1006,1009d906 < /* E.Inoue */ < register struct uio *uio; < uint_t chk_done; < /* end */ 1025,1030d921 < /* */ < /* < cmn_err(CE_NOTE," CC_intr: cc->interrupt = 0x%x", cc->interrupt); < */ < /* */ < 1034,1067d924 < /* E.Inoue */ < chk_done = 0x7ffffff; /* about 10 sec */ < while (chk_done-- > 0){ < if ((cc->k->csr & CC_DONE) != 0){ < cc->interrupt |= CC_INT_DONE; < break; < } < } < /* end */ < < /* E.Inoue */ < /* < uio = cc->uio; < cmn_err(CE_NOTE," cc_intr: 0x%x %d %d %d %d %d", < uio->uio_iov->iov_base, < uio->uio_iov->iov_len, < uio->uio_iovcnt, < uio->uio_resid, < uio->uio_segflg, < uio->uio_offset); < < copyin((caddr_t)uio->uio_iov->iov_base, (caddr_t)cc->data_area, 10*sizeof(u_short)); < cmn_err(CE_NOTE," cc_intr: contents of uio->uio_iov->iov_base =0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x\n", cc->data_area[0],cc->data_area[1],cc->data_area[2],cc->data_area[3],cc->data_area[4],cc->data_area[5],cc->data_area[6],cc->data_area[7],cc->data_area[8],cc->data_area[9]); < */ < /* < cc->data_area[0] = 1; < cc->data_area[1] = 2; < cc->data_area[2] = 3; < cc->data_area[3] = 4; < cc->data_area[4] = 5; < copyout((caddr_t)cc->data_area, (caddr_t)uio->uio_iov->iov_base, 10*sizeof(u_short)); < */ < /* end */ < 1171,1173d1027 < /* < cmn_err(CE_NOTE," cc_ioctl: CCIOC_WAIT_LAM: before cv_wait_sig: cc->data1 = 0x%x", cc->data1); < */ 1180,1182d1033 < /* < cmn_err(CE_NOTE," cc_ioctl: CCIOC_WAIT_LAM: after cv_wait_sig"); < */ 1197,1199d1047 < /* < cmn_err(CE_NOTE," ioctl: CCIOC_ENABLE_LAM: cc->data1 = 0x%x", cc->data1); < */ 1208,1210d1055 < /* < cmn_err(CE_NOTE," ioctl: CCIOC_ENABLE_LAM: sdat = 0x%x", sdat); < */ 1320,1323d1164 < /* next_instruction(cc) E.Inoue */ < next_instruction(int unit) < /* struct cc_device *cc; E.Inoue */ < { 1325,1328c1166,1168 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ --- > next_instruction(cc) > struct cc_device *cc; > { 1337,1339c1177,1178 < /* flush_buf(cc) E.Inoue */ < flush_buf(int unit) < /* struct cc_device *cc; E.Inoue */ --- > flush_buf(cc) > struct cc_device *cc; 1341,1344d1179 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1354,1356c1189 < /* check_buf(cc, wc) E.Inoue */ < check_buf(int unit, int wc) < /* E.Inoue --- > check_buf(cc, wc) 1358c1191 < int wc; end */ /* wc: word counts */ --- > int wc; /* wc: word counts */ 1360,1363d1192 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1366,1367c1195 < /* flush_buf(cc); E.Inoue */ < flush_buf(unit); --- > flush_buf(cc); 1376,1378c1204,1205 < /* cc_stop(cc) E.Inoue */ < cc_stop(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_stop(cc) > struct cc_device *cc; 1380,1383d1206 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1388,1390c1211,1212 < /* cc_read16(cc) E.Inoue */ < cc_read16(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_read16(cc) > struct cc_device *cc; 1392,1394d1213 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1397,1401c1216 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* if (status = check_buf(cc, 1)) */ < if (status = check_buf(unit, 1)) --- > if (status = check_buf(cc, 1)) 1403,1404c1218 < /* if (status = camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], cc->ptr_kdata)) E.Inoue */ < if (status = camac_s(unit, CC_BIT16, cc->ptr_list[1], cc->ptr_kdata)) --- > if (status = camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], cc->ptr_kdata)) 1415,1417c1229,1230 < /* cc_read24(cc) E.Inoue */ < cc_read24(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_read24(cc) > struct cc_device *cc; 1419,1421d1231 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1424,1428c1234 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* if (status = check_buf(cc, 2)) E.Inoue */ < if (status = check_buf(unit, 2)) --- > if (status = check_buf(cc, 2)) 1430,1431c1236 < /* if (status = camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], cc->ptr_kdata)) E.Inoue */ < if (status = camac_s(unit, CC_BIT24, cc->ptr_list[1], cc->ptr_kdata)) --- > if (status = camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], cc->ptr_kdata)) 1442,1444c1247,1248 < /* cc_read16_a(cc) E.Inoue */ < cc_read16_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_read16_a(cc) > struct cc_device *cc; 1446,1449d1249 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1451,1452c1251 < /* return camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], ((u_short *)&cc->a_reg + 1)); */ < return camac_s(unit, CC_BIT16, cc->ptr_list[1], ((u_short *)&cc->a_reg + 1)); --- > return camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], ((u_short *)&cc->a_reg + 1)); 1456,1458c1255,1256 < /* cc_read24_a(cc) E.Inoue */ < cc_read24_a(int unit) < /* struct cc_device *cc; */ --- > cc_read24_a(cc) > struct cc_device *cc; 1460,1465c1258 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* return camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], (u_short *)&cc->a_reg); */ < return camac_s(unit, CC_BIT24, cc->ptr_list[1], (u_short *)&cc->a_reg); --- > return camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], (u_short *)&cc->a_reg); 1469,1471c1262,1263 < /* cc_write16(cc) E.Inoue */ < cc_write16(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_write16(cc) > struct cc_device *cc; 1473,1478c1265 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* return camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], &cc->ptr_list[2]); E.Inoue */ < return camac_s(unit, CC_BIT16, cc->ptr_list[1], &cc->ptr_list[2]); --- > return camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], &cc->ptr_list[2]); 1482,1484c1269,1270 < /* cc_write24(cc) E.Inoue */ < cc_write24(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_write24(cc) > struct cc_device *cc; 1486,1488c1272 < /* E.Inoue */ < struct cc_device *cc; < /* end */ --- > int dat; 1490,1503c1274,1275 < /* int dat; E.Inoue */ < < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* dat = Tolong(2); E.Inoue */ < cc->data1 = Tolong(2); < /* < cmn_err(CE_NOTE," cc_write24: cc->ptr_list[2] = 0x%x", cc->ptr_list[2]); < cmn_err(CE_NOTE," cc_write24: cc->data1 = 0x%x", cc->data1); < */ < /* return camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], (u_short *)&dat); E.Inoue */ < /* return camac_s(unit, CC_BIT24, cc->ptr_list[1], (u_short *)&dat); E.inoue */ < return camac_s(unit, CC_BIT24, cc->ptr_list[1], (u_short *)&cc->data1); --- > dat = Tolong(2); > return camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], (u_short *)&dat); 1507,1509c1279,1280 < /* cc_write16_a(cc) E.Inoue */ < cc_write16_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_write16_a(cc) > struct cc_device *cc; 1511,1516c1282 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* return camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], ((u_short *)&cc->a_reg + 1)); E.Inoue */ < return camac_s(unit, CC_BIT16, cc->ptr_list[1], ((u_short *)&cc->a_reg + 1)); --- > return camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], ((u_short *)&cc->a_reg + 1)); 1520,1522c1286,1287 < /* cc_write24_a(cc) E.Inoue */ < cc_write24_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_write24_a(cc) > struct cc_device *cc; 1524,1530c1289 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < < /* return camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], (u_short *)&cc->a_reg); E.Inoue */ < return camac_s(unit, CC_BIT24, cc->ptr_list[1], (u_short *)&cc->a_reg); --- > return camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], (u_short *)&cc->a_reg); 1534,1536c1293,1294 < /* cc_ndt(cc) E.Inoue */ < cc_ndt(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_ndt(cc) > struct cc_device *cc; 1538,1542c1296 < /* E.Inoue */ < struct cc_device *cc; < /* end */ < /* u_short dummy; E.Inoue */ < int dummy; --- > u_short dummy; 1544,1548c1298 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* return camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], &dummy); E.Inoue */ < return camac_s(unit, CC_BIT24, cc->ptr_list[1], (u_short *)&dummy); --- > return camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], &dummy); 1552,1554c1302,1303 < /* cc_setcrate_a(cc) E.Inoue */ < cc_setcrate_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_setcrate_a(cc) > struct cc_device *cc; 1556,1559d1304 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1566,1568c1311,1312 < /* cc_setcrate(cc) E.Inoue */ < cc_setcrate(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_setcrate(cc) > struct cc_device *cc; 1570,1573d1313 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1580,1582c1320,1321 < /* cc_genz(cc) E.Inoue */ < cc_genz(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_genz(cc) > struct cc_device *cc; 1584,1586d1322 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1588c1324 < /* int dat; E.Inoue E.Inoue */ --- > int dat; 1590,1594c1326 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), (u_short *)&dat)) E.Inoue */ < if (status = camac_s(unit, CC_BIT24, NAF(30, 0, 1), (u_short *)&cc->data1)) --- > if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), (u_short *)&dat)) 1596,1598c1328,1329 < cc->data1 |= 1; < /* return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_short *)&dat); E.Inoue */ < return camac_s(unit, CC_BIT24, NAF(30, 0, 17), (u_short *)&cc->data1); --- > dat |= 1; > return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_short *)&dat); 1602,1604c1333,1334 < /* cc_genc(cc) E.Inoue */ < cc_genc(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_genc(cc) > struct cc_device *cc; 1606,1608d1335 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1610c1337 < /* int dat; E.Inoue */ --- > int dat; 1612,1616c1339 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), (u_short *)&dat)) E.Inoue */ < if (status = camac_s(unit, CC_BIT24, NAF(30, 0, 1), (u_short *)&cc->data1)) --- > if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), (u_short *)&dat)) 1618,1621c1341,1342 < /* dat |= 2; E.Inoue */ < cc->data1 |= 2; < /* return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_short *)&dat); E.Inoue */ < return camac_s(unit, CC_BIT24, NAF(30, 0, 17), (u_short *)&cc->data1); --- > dat |= 2; > return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_short *)&dat); 1625,1627c1346,1347 < /* cc_remi(cc) E.Inoue */ < cc_remi(int unit) < /* struct cc_device *cc; E.inoue */ --- > cc_remi(cc) > struct cc_device *cc; 1629,1631d1348 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1633c1350 < /* int dat; E.Inoue */ --- > int dat; 1635,1639c1352 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), (u_short *)&dat)) E.Inoue */ < if (status = camac_s(unit, CC_BIT24, NAF(30, 0, 1), (u_short *)&cc->data1)) --- > if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), (u_short *)&dat)) 1641,1643c1354,1355 < cc->data1 &= ~4; < /* return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_short *)&dat); E.Inoue */ < return camac_s(unit, CC_BIT24, NAF(30, 0, 17), (u_short *)&cc->data1); --- > dat &= ~4; > return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_short *)&dat); 1647,1649c1359,1360 < /* cc_seti(cc) E.Inoue */ < cc_seti(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_seti(cc) > struct cc_device *cc; 1651,1653d1361 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1655c1363 < /* int dat; E.Inoue */ --- > int dat; 1657,1661c1365 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), (u_short *)&dat)) E.Inoue */ < if (status = camac_s(unit, CC_BIT24, NAF(30, 0, 1), (u_short *)&cc->data1)) --- > if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), (u_short *)&dat)) 1663,1665c1367,1368 < cc->data1 |= 4; < /* return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_short *)&dat); E.Inoue */ < return camac_s(unit, CC_BIT24, NAF(30, 0, 17), (u_short *)&cc->data1); --- > dat |= 4; > return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_short *)&dat); 1669,1671c1372,1373 < /* cc_enbint(cc) E.Inoue */ < cc_enbint(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_enbint(cc) > struct cc_device *cc; 1673,1675d1374 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1677,1678c1376 < /* E.Inoue int dat; */ < u_short sdat; --- > int dat; 1680,1686d1377 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < mutex_enter(&cc->mutex); < /* end */ < /* < cmn_err(CE_NOTE," cc_enbint: enter"); < */ 1688,1689c1379 < /* E.Inoue dat = cc->a_reg; */ < cc->data1 = cc->a_reg; --- > dat = cc->a_reg; 1691,1692c1381 < /* E.Inoue dat = 0xFFFFFF; */ /* mask */ < cc->data1 = 0xFFFFFF; --- > dat = 0xFFFFFF; /* mask */ 1694,1699c1383 < /* < cmn_err(CE_NOTE," cc_enbint: cc->data1 = 0x%x",cc->data1); < */ < /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 13, 17), (u_short *)&dat)) E.Inoue */ < if (status = camac_s(unit, CC_BIT24, NAF(30, 13, 17), (u_short *)&cc->data1)) { < mutex_exit(&cc->mutex); --- > if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 13, 17), (u_short *)&dat)) 1701,1704c1385 < } < /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), (u_short *)&dat)) E.Inoue */ < if (status = camac_s(unit, CC_BIT16, NAF(30, 0, 1), &sdat)) { < mutex_exit(&cc->mutex); --- > if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), (u_short *)&dat)) 1706,1714c1387,1388 < } < sdat |= 0x0100; < /* < cmn_err(CE_NOTE," cc_enbint: sdat = 0x%x",sdat); < */ < /* return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_short *)&dat); E.Inoue */ < status = camac_s(unit, CC_BIT16, NAF(30, 0, 17), &sdat); < mutex_exit(&cc->mutex); < return status; --- > dat |= 0x0100; > return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_short *)&dat); 1718,1720c1392,1393 < /* cc_dsbint(cc) E.Inoue */ < cc_dsbint(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_dsbint(cc) > struct cc_device *cc; 1722,1724d1394 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1726,1727c1396 < /* int dat; E.Inoue */ < u_short sdat; --- > int dat; 1729,1731d1397 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1735,1738c1401,1402 < /* dat = 0x0; E.Inoue */ /* mask */ < cc->data1 = 0x0; /* mask */ < /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 13, 17), (u_short *)&dat)) E.Inoue */ < if (status = camac_s(unit, CC_BIT24, NAF(30, 13, 17), (u_short *)&cc->data1)) --- > dat = 0x0; /* mask */ > if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 13, 17), (u_short *)&dat)) 1740,1741c1404 < /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), (u_short *)&dat)) E.Inoue */ < if (status = camac_s(unit, CC_BIT16, NAF(30, 0, 1), &sdat)) --- > if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), (u_short *)&dat)) 1743,1745c1406,1407 < sdat &= ~0x0100; < /* return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_short *)&dat); E.Inoue */ < return camac_s(unit, CC_BIT16, NAF(30, 0, 17), &sdat); --- > dat &= ~0x0100; > return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_short *)&dat); 1749,1751c1411,1412 < /* cc_qwait(cc) E.Inoue */ < cc_qwait(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_qwait(cc) > struct cc_device *cc; 1753,1755d1413 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1757c1415 < /* int dat; E.Inoue */ --- > int dat; 1759,1761d1416 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1764,1765c1419 < /* status = camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], (u_short *)&dat); E.inoue */ < status = camac_s(unit, CC_BIT24, cc->ptr_list[1], (u_short *)&cc->data1); --- > status = camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], (u_short *)&dat); 1773,1775c1427,1428 < /* cc_qs16(cc) E.Inoue */ < cc_qs16(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_qs16(cc) > struct cc_device *cc; 1777,1779d1429 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1784,1786d1433 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1790,1793c1437,1438 < /* flush_buf(cc); E.Inoue */ < flush_buf(unit); < /* if (status = check_buf(cc, len)) E.Inoue */ < if (status = check_buf(unit, len)) --- > flush_buf(cc); > if (status = check_buf(cc, len)) 1795,1796c1440 < /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inoue */ < return camac_b(unit, mode, naf, len, &retlen); --- > return camac_b(getminor(cc->dev), mode, naf, len, &retlen); 1800,1802c1444,1445 < /* cc_qs24(cc) E.Inoue */ < cc_qs24(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_qs24(cc) > struct cc_device *cc; 1804,1806d1446 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1811,1813d1450 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1817,1820c1454,1455 < /* flush_buf(cc); E.Inoue */ < flush_buf(unit); < /* if (status = check_buf(cc, len * 2)) E.Inoue */ < if (status = check_buf(unit, len * 2)) --- > flush_buf(cc); > if (status = check_buf(cc, len * 2)) 1822,1823c1457 < /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inoue */ < return camac_b(unit, mode, naf, len, &retlen); --- > return camac_b(getminor(cc->dev), mode, naf, len, &retlen); 1827,1829c1461,1462 < /* cc_qs16_a(cc) E.Inoue */ < cc_qs16_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_qs16_a(cc) > struct cc_device *cc; 1831,1833d1463 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1838,1840d1467 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1844,1847c1471,1472 < /* flush_buf(cc); E.Inoue */ < flush_buf(unit); < /* if (status = check_buf(cc, len)) E.inoue */ < if (status = check_buf(unit, len)) --- > flush_buf(cc); > if (status = check_buf(cc, len)) 1849,1850c1474 < /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inoue */ < return camac_b(unit, mode, naf, len, &retlen); --- > return camac_b(getminor(cc->dev), mode, naf, len, &retlen); 1854,1856c1478,1479 < /* cc_qs24_a(cc) E.Inoue */ < cc_qs24_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_qs24_a(cc) > struct cc_device *cc; 1858,1860d1480 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1865,1867d1484 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1871,1874c1488,1489 < /* flush_buf(cc); E.Inoue */ < flush_buf(unit); < /* if (status = check_buf(cc, len * 2)) E.Inoue */ < if (status = check_buf(unit, len * 2)) --- > flush_buf(cc); > if (status = check_buf(cc, len * 2)) 1876,1877c1491 < /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inoue */ < return camac_b(unit, mode, naf, len, &retlen); --- > return camac_b(getminor(cc->dev), mode, naf, len, &retlen); 1881,1883c1495,1496 < /* cc_as16(cc) E.Inoue */ < cc_as16(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_as16(cc) > struct cc_device *cc; 1885,1887d1497 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1892,1894d1501 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1898,1901c1505,1506 < /* flush_buf(cc); E.Inoue */ < flush_buf(unit); < /* if (status = check_buf(cc, len)) E.Inoue */ < if (status = check_buf(unit, len)) --- > flush_buf(cc); > if (status = check_buf(cc, len)) 1903,1904c1508 < /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inoue */ < return camac_b(unit, mode, naf, len, &retlen); --- > return camac_b(getminor(cc->dev), mode, naf, len, &retlen); 1908,1910c1512,1513 < /* cc_as24(cc) E.Inoue */ < cc_as24(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_as24(cc) > struct cc_device *cc; 1912,1914d1514 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1919,1921d1518 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1925,1928c1522,1523 < /* flush_buf(cc); E.Inoue */ < flush_buf(unit); < /* if (status = check_buf(cc, len * 2)) E.Inoue */ < if (status = check_buf(unit, len * 2)) --- > flush_buf(cc); > if (status = check_buf(cc, len * 2)) 1930,1931c1525 < /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inoue */ < return camac_b(unit, mode, naf, len, &retlen); --- > return camac_b(getminor(cc->dev), mode, naf, len, &retlen); 1935,1937c1529,1530 < /* cc_as16_a(cc) E.inoue */ < cc_as16_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_as16_a(cc) > struct cc_device *cc; 1939,1941d1531 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1946,1948d1535 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1952,1955c1539,1540 < /* flush_buf(cc); E.Inoue */ < flush_buf(unit); < /* if (status = check_buf(cc, len)) E.Inoue */ < if (status = check_buf(unit, len)) --- > flush_buf(cc); > if (status = check_buf(cc, len)) 1957,1958c1542 < /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inoue */ < return camac_b(unit, mode, naf, len, &retlen); --- > return camac_b(getminor(cc->dev), mode, naf, len, &retlen); 1962,1964c1546,1547 < /* cc_as24_a(cc) E.Inoue */ < cc_as24_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_as24_a(cc) > struct cc_device *cc; 1966,1968d1548 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 1973,1975d1552 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 1979,1982c1556,1557 < /* flush_buf(cc); E.Inoue */ < flush_buf(unit); < /* if (status = check_buf(cc, len * 2)) E.Inoue */ < if (status = check_buf(unit, len * 2)) --- > flush_buf(cc); > if (status = check_buf(cc, len * 2)) 1984,1985c1559 < /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inoue */ < return camac_b(unit, mode, naf, len, &retlen); --- > return camac_b(getminor(cc->dev), mode, naf, len, &retlen); 1989,1991c1563,1564 < /* cc_igq16(cc) E.Inoue */ < cc_igq16(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_igq16(cc) > struct cc_device *cc; 1993,1995d1565 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 2000,2002d1569 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2006,2009c1573,1574 < /* flush_buf(cc); E.Inoue */ < flush_buf(unit); < /* if (status = check_buf(cc, len)) E.Inoue */ < if (status = check_buf(unit, len)) --- > flush_buf(cc); > if (status = check_buf(cc, len)) 2011,2012c1576 < /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inoue */ < return camac_b(unit, mode, naf, len, &retlen); --- > return camac_b(getminor(cc->dev), mode, naf, len, &retlen); 2016,2018c1580,1581 < /* cc_igq24(cc) E.Inoue */ < cc_igq24(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_igq24(cc) > struct cc_device *cc; 2020,2022d1582 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 2027,2029d1586 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2033,2036c1590,1591 < /* flush_buf(cc); E.Inoue */ < flush_buf(unit); < /* if (status = check_buf(cc, len * 2)) E.Inoue */ < if (status = check_buf(unit, len * 2)) --- > flush_buf(cc); > if (status = check_buf(cc, len * 2)) 2038,2039c1593 < /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inoue */ < return camac_b(unit, mode, naf, len, &retlen); --- > return camac_b(getminor(cc->dev), mode, naf, len, &retlen); 2043,2045c1597,1598 < /* cc_igq16_a(cc) E.Inoue */ < cc_igq16_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_igq16_a(cc) > struct cc_device *cc; 2047,2049d1599 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 2054,2056d1603 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2060,2063c1607,1608 < /* flush_buf(cc); E.Inoue */ < flush_buf(unit); < /* if (status = check_buf(cc, len)) E.Inoue */ < if (status = check_buf(unit, len)) --- > flush_buf(cc); > if (status = check_buf(cc, len)) 2065,2066c1610 < /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inoue */ < return camac_b(unit, mode, naf, len, &retlen); --- > return camac_b(getminor(cc->dev), mode, naf, len, &retlen); 2070,2072c1614,1615 < /* cc_igq24_a(cc) E.Inoue */ < cc_igq24_a(unit) < /* struct cc_device *cc; E.Inoue */ --- > cc_igq24_a(cc) > struct cc_device *cc; 2074,2076d1616 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 2081,2083d1620 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2087,2090c1624,1625 < /* flush_buf(cc); E.Inoue */ < flush_buf(unit); < /* if (status = check_buf(cc, len * 2)) E.Inoue */ < if (status = check_buf(unit, len * 2)) --- > flush_buf(cc); > if (status = check_buf(cc, len * 2)) 2092,2093c1627 < /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inoue */ < return camac_b(unit, mode, naf, len, &retlen); --- > return camac_b(getminor(cc->dev), mode, naf, len, &retlen); 2097,2099c1631,1632 < /* int cc_move_as(cc) E.Inoue */ < int cc_move_as(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move_as(cc) > struct cc_device *cc; 2101,2105d1633 < /* E.Inoue */ < struct cc_device *cc; < < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2110,2112c1638,1639 < /* int cc_move_at(cc) E.Inoue */ < int cc_move_at(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move_at(cc) > struct cc_device *cc; 2114,2118d1640 < /* E.Inoue */ < struct cc_device *cc; < < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2123,2125c1645,1646 < /* int cc_move_sa(cc) */ < int cc_move_sa(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move_sa(cc) > struct cc_device *cc; 2127,2131d1647 < /* E.Inoue */ < struct cc_device *cc; < < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2136,2138c1652,1653 < /* int cc_move_st(cc) E.Inoue */ < int cc_move_st(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move_st(cc) > struct cc_device *cc; 2140,2144d1654 < /* E.Inoue */ < struct cc_device *cc; < < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2149,2151c1659,1660 < /* int cc_move_ta(cc) E.Inoue */ < int cc_move_ta(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move_ta(cc) > struct cc_device *cc; 2153,2157d1661 < /* E.Inoue */ < struct cc_device *cc; < < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2162,2164c1666,1667 < /* int cc_move_ts(cc) E.Inoue */ < int cc_move_ts(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move_ts(cc) > struct cc_device *cc; 2166,2170d1668 < /* E.Inoue */ < struct cc_device *cc; < < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2175,2177c1673,1674 < /* int cc_move32_a(cc) E.Inoue */ < int cc_move32_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move32_a(cc) > struct cc_device *cc; 2179,2183d1675 < /* E.Inoue */ < struct cc_device *cc; < < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2185,2187d1676 < /* < cmn_err(CE_NOTE," cc_move32_a: cc->a_reg = 0x%x", cc->a_reg); < */ 2191,2193c1680,1681 < /* int cc_move32_s(cc) E.Inoue */ < int cc_move32_s(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move32_s(cc) > struct cc_device *cc; 2195,2199d1682 < /* E.Inoue */ < struct cc_device *cc; < < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2204,2206c1687,1688 < /* int cc_move32_t(cc) E.Inoue */ < int cc_move32_t(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move32_t(cc) > struct cc_device *cc; 2208,2212d1689 < /* E.Inoue */ < struct cc_device *cc; < < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2217,2219c1694,1695 < /* int cc_move16_a_ptr(cc) E.Inoue */ < int cc_move16_a_ptr(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move16_a_ptr(cc) > struct cc_device *cc; 2221,2223d1696 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 2226,2230c1699 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* if (status = check_buf(cc, 1)) E.Inoue */ < if (status = check_buf(unit, 1)) --- > if (status = check_buf(cc, 1)) 2237,2239c1706,1707 < /* int cc_move32_a_ptr(cc) E.Inoue */ < int cc_move32_a_ptr(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move32_a_ptr(cc) > struct cc_device *cc; 2241,2243d1708 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 2246,2250c1711 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* if (status = check_buf(cc, 2)) E.Inoue */ < if (status = check_buf(unit, 2)) --- > if (status = check_buf(cc, 2)) 2258,2260c1719,1720 < /* int cc_move16_ptr(cc) E.Inoue */ < int cc_move16_ptr(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move16_ptr(cc) > struct cc_device *cc; 2262,2264d1721 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 2267,2271c1724 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* if (status = check_buf(cc, 1)) E.inoue */ < if (status = check_buf(unit, 1)) --- > if (status = check_buf(cc, 1)) 2278,2280c1731,1732 < /* int cc_move32_ptr(cc) E.Inoue */ < int cc_move32_ptr(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move32_ptr(cc) > struct cc_device *cc; 2282,2284d1733 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 2287,2291c1736 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ < /* if (status = check_buf(cc, 2)) E.Inoue */ < if (status = check_buf(unit, 2)) --- > if (status = check_buf(cc, 2)) 2299,2301c1744,1745 < /* int cc_move16_a_head(cc) E.Inoue */ < int cc_move16_a_head(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move16_a_head(cc) > struct cc_device *cc; 2303,2306d1746 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2312,2314c1752,1753 < /* int cc_move16_head_a(cc) E.Inoue */ < int cc_move16_head_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move16_head_a(cc) > struct cc_device *cc; 2316,2319d1754 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2326,2328c1761,1762 < /* int cc_move16_head(cc) E.Inoue */ < int cc_move16_head(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_move16_head(cc) > struct cc_device *cc; 2330,2333d1763 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2339,2341c1769,1770 < /* int cc_load_ptr(cc) E.Inoue */ < int cc_load_ptr(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_load_ptr(cc) > struct cc_device *cc; 2343,2346d1771 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2351,2353c1776,1777 < /* int cc_load_remain(cc) E.Inoue */ < int cc_load_remain(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_load_remain(cc) > struct cc_device *cc; 2355,2358d1778 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2363,2365c1783,1784 < /* int cc_load_timer(cc) E.Inoue */ < int cc_load_timer(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_load_timer(cc) > struct cc_device *cc; 2367,2372d1785 < /* E.Inoue */ < struct cc_device *cc; < /* char klname[9]; */ < < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2379,2421c1792 < /* return klexe(cc, cc->klist1[0].name); E.Inoue */ < /* strcpy(klname, cc->klist1[0].name); */ < /* cmn_err(CE_NOTE," cc_load_timer: cc->klist1[0].name = %s", cc->klist1[0].name); */ < /* < cmn_err(CE_NOTE," cc_load_timer: cc->klist1[%d].name = %s", cc->a_reg, cc->klist1[cc->a_reg].name); < cmn_err(CE_NOTE," cc_load_timer: cc->klist1[0] = 0x%x", cc->klist1[0]); < cmn_err(CE_NOTE," cc_load_timer: before flush_buf #1: cc->ptr_udata = 0x%x", cc->ptr_udata); < cmn_err(CE_NOTE," cc_load_timer: cc->now_wc = 0x%x", cc->now_wc); < */ < flush_buf(unit); < /* < cmn_err(CE_NOTE," cc_load_timer: after flush_buf #1: cc->ptr_udata = 0x%x", cc->ptr_udata); < cmn_err(CE_NOTE," cc_load_timer: cc->now_wc = 0x%x", cc->now_wc); < */ < /* cmn_err(CE_NOTE," cc_load_timer: klname = %s", klname); */ < /* return klexe(unit, cc->klist1[0].name); */ < /* return klexe(unit, klname); */ < /* cmn_err(CE_NOTE," cc_load_timer: klexe return value = 0x%x", klexe(unit, klname)); */ < /* < cmn_err(CE_NOTE," cc_load_timer: cc->a_reg = 0x%x", cc->a_reg); < */ < /* cmn_err(CE_NOTE," cc_load_timer: klexe return value = 0x%x", klexe(unit, cc->klist1[0].name)); */ < /* < cmn_err(CE_NOTE," cc_load_timer: klexe return value = 0x%x", klexe(unit, cc->klist1[cc->a_reg].name)); < */ < klexe(unit, cc->klist1[cc->a_reg].name); < /* < cmn_err(CE_NOTE," cc_load_timer: before flush_buf #2: cc->ptr_udata = 0x%x", cc->ptr_udata); < cmn_err(CE_NOTE," cc_load_timer: cc->now_wc = 0x%x", cc->now_wc); < */ < /* flush_buf(unit); */ < /* < cmn_err(CE_NOTE," cc_load_timer: after flush_buf #2: cc->ptr_udata = 0x%x", cc->ptr_udata); < cmn_err(CE_NOTE," cc_load_timer: cc->now_wc = 0x%x", cc->now_wc); < */ < cc->ptr_udata += cc->now_wc + 2; < /* < cmn_err(CE_NOTE," cc_load_timer: increment cc->ptr_udata: cc->ptr_udata = 0x%x", cc->ptr_udata); < */ < return 0; < /* < return 0; < */ --- > return klexe(cc, cc->klist1[0].name); 2424,2426c1795,1796 < /* int cc_load_count(cc) E.Inoue */ < int cc_load_count(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_load_count(cc) > struct cc_device *cc; 2428,2431d1797 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2436,2438c1802,1803 < /* int cc_load_qx(cc) E.Inoue */ < int cc_load_qx(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_load_qx(cc) > struct cc_device *cc; 2440,2443d1804 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2448,2450c1809,1810 < /* int cc_head(cc) E.Inoue */ < int cc_head(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_head(cc) > struct cc_device *cc; 2452,2455d1811 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2462,2464c1818,1819 < /* int cc_exchg_at(cc) E.Inoue */ < int cc_exchg_at(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_exchg_at(cc) > struct cc_device *cc; 2466,2468d1820 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 2471,2473d1822 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2480,2482c1829,1830 < /* int cc_swap_a(cc) E.Inoue */ < int cc_swap_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_swap_a(cc) > struct cc_device *cc; 2484,2486d1831 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 2489,2491d1833 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2501,2503c1843,1844 < /* int cc_bis32_at(cc) E.Inoue */ < int cc_bis32_at(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_bis32_at(cc) > struct cc_device *cc; 2505,2508d1845 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2513,2515c1850,1851 < /* int cc_bis32_ta(cc) E.Inoue */ < int cc_bis32_ta(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_bis32_ta(cc) > struct cc_device *cc; 2517,2520d1852 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2525,2527c1857,1858 < /* int cc_bis32_a(cc) E.Inoue */ < int cc_bis32_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_bis32_a(cc) > struct cc_device *cc; 2529,2532d1859 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2537,2539c1864,1865 < /* int cc_bis32_t(cc) E.Inoue */ < int cc_bis32_t(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_bis32_t(cc) > struct cc_device *cc; 2541,2544d1866 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2549,2551c1871,1872 < /* int cc_bic32_at(cc) E.Inoue */ < int cc_bic32_at(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_bic32_at(cc) > struct cc_device *cc; 2553,2556d1873 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2561,2563c1878,1879 < /* int cc_bic32_ta(cc) E.Inoue */ < int cc_bic32_ta(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_bic32_ta(cc) > struct cc_device *cc; 2565,2568d1880 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2573,2575c1885,1886 < /* int cc_bic32_a(cc) E.Inoue */ < int cc_bic32_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_bic32_a(cc) > struct cc_device *cc; 2577,2580d1887 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2585,2587c1892,1893 < /* int cc_bic32_t(cc) E.Inoue */ < int cc_bic32_t(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_bic32_t(cc) > struct cc_device *cc; 2589,2592d1894 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2597,2599c1899,1900 < /* int cc_add32_at(cc) E.Inoue */ < int cc_add32_at(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_add32_at(cc) > struct cc_device *cc; 2601,2604d1901 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2609,2611c1906,1907 < /* int cc_add32_ta(cc) E.Inoue */ < int cc_add32_ta(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_add32_ta(cc) > struct cc_device *cc; 2613,2616d1908 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2621,2623c1913,1914 < /* int cc_add32_a(cc) E.Inoue */ < int cc_add32_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_add32_a(cc) > struct cc_device *cc; 2625,2628d1915 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2633,2635c1920,1921 < /* int cc_add32_t(cc) E.Inoue */ < int cc_add32_t(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_add32_t(cc) > struct cc_device *cc; 2637,2640d1922 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2645,2647c1927,1928 < /* int cc_sub32_at(cc) E.Inoue */ < int cc_sub32_at(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_sub32_at(cc) > struct cc_device *cc; 2649,2652d1929 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2657,2659c1934,1935 < /* int cc_sub32_ta(cc) E.Inoue */ < int cc_sub32_ta(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_sub32_ta(cc) > struct cc_device *cc; 2661,2664d1936 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2669,2671c1941,1942 < /* int cc_sub32_a(cc) E.Inoue */ < int cc_sub32_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_sub32_a(cc) > struct cc_device *cc; 2673,2676d1943 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2681,2683c1948,1949 < /* int cc_sub32_t(cc) E.Inoue */ < int cc_sub32_t(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_sub32_t(cc) > struct cc_device *cc; 2685,2688d1950 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2693,2695c1955,1956 < /* int cc_mul32_at(cc) E.Inoue */ < int cc_mul32_at(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_mul32_at(cc) > struct cc_device *cc; 2697,2700d1957 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2705,2707c1962,1963 < /* int cc_mul32_ta(cc) E.Inoue */ < int cc_mul32_ta(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_mul32_ta(cc) > struct cc_device *cc; 2709,2712d1964 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2717,2719c1969,1970 < /* int cc_mul32_a(cc) E.Inoue */ < int cc_mul32_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_mul32_a(cc) > struct cc_device *cc; 2721,2724d1971 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2729,2731c1976,1977 < /* int cc_mul32_t(cc) E.Inoue */ < int cc_mul32_t(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_mul32_t(cc) > struct cc_device *cc; 2733,2736d1978 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2741,2743c1983,1984 < /* int cc_div32_at(cc) E.Inoue */ < int cc_div32_at(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_div32_at(cc) > struct cc_device *cc; 2745,2748d1985 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2755,2757c1992,1993 < /* int cc_div32_ta(cc) E.Inoue */ < int cc_div32_ta(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_div32_ta(cc) > struct cc_device *cc; 2759,2762d1994 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2769,2771c2001,2002 < /* int cc_div32_a(cc) E.Inoue */ < int cc_div32_a(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_div32_a(cc) > struct cc_device *cc; 2773,2775d2003 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 2778,2780d2005 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2788,2790c2013,2014 < /* int cc_div32_t(cc) E.Inoue */ < int cc_div32_t(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_div32_t(cc) > struct cc_device *cc; 2792,2794d2015 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 2797,2799d2017 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2806,2808c2024,2025 < /* int cc_waitint(cc) E.Inoue */ < int cc_waitint(int unit) < /* struct cc_device *cc; E.inoue */ --- > int cc_waitint(cc) > struct cc_device *cc; 2810,2812d2026 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 2814c2028 < /* E.Inoue u_long tick, timeout; */ --- > u_long tick, timeout; 2816,2822d2029 < /* < cmn_err(CE_NOTE," cc_waitint: enter"); < */ < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < mutex_enter(&cc->mutex); /* start MUTEX */ < /* end */ 2827c2034 < /* s = spl5(); E.Inoue */ --- > s = spl5(); 2833,2834c2040,2041 < /* mutex_enter(&cc->mutex); E.Inoue */ /* start MUTEX */ < /* E.Inoue drv_getparm(LBOLT, &tick); */ --- > mutex_enter(&cc->mutex); /* start MUTEX */ > drv_getparm(LBOLT, &tick); 2836,2840c2043 < /* E.Inoue timeout = tick + cc->a_reg * hz; */ < /* < cmn_err(CE_NOTE," cc_waitint: set timeout: cc->a_reg = 0x%x", cc->a_reg); < */ < cc->timeout_id = timeout(cc_timeout, (caddr_t)&unit, cc->a_reg * hz); --- > timeout = tick + cc->a_reg * hz; 2842,2843c2045 < /* E.Inoue timeout = tick + CC_TIMEOUT_LAM * hz; */ < cc->timeout_id = timeout(cc_timeout, (caddr_t)&unit, CC_TIMEOUT_LAM * hz); --- > timeout = tick + CC_TIMEOUT_LAM * hz; 2846d2047 < /* E.Inoue 2849,2857d2049 < end */ < /* < cmn_err(CE_NOTE," cc_waitint: before cv_wait_sig"); < */ < if (cv_wait_sig(&cc->cv, &cc->mutex) == 0) { < untimeout(cc->timeout_id); < mutex_exit(&cc->mutex); /* end MUTEX */ < return EINTR; < } 2860c2052 < /* splx(s); E.Inoue */ --- > splx(s); 2862,2864d2053 < /* < cmn_err(CE_NOTE," cc_waitint: after cv_wait_sig"); < */ 2869,2870c2058 < else if( cc->interrupt & CC_INT_TIMEOUT ) { < cc->interrupt &= ~CC_INT_TIMEOUT; --- > else { 2876,2878c2064,2065 < /* int cc_waitevent(cc) E.Inoue */ < int cc_waitevent(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_waitevent(cc) > struct cc_device *cc; 2880,2882d2066 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 2884c2068 < /* E.Inoue u_long tick, timeout; */ --- > u_long tick, timeout; 2886,2889d2069 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < mutex_enter(&cc->mutex); /* start MUTEX */ < /* end */ 2894c2074 < /* s = spl5(); E.Inoue */ --- > s = spl5(); 2901,2902c2081,2082 < /* mutex_enter(&cc->mutex); E.Inoue */ /* start MUTEX */ < /* drv_getparm(LBOLT, &tick); */ --- > mutex_enter(&cc->mutex); /* start MUTEX */ > drv_getparm(LBOLT, &tick); 2904,2905c2084 < /* E.Inoue timeout = tick + cc->a_reg * hz; */ < cc->timeout_id = timeout(cc_timeout, (caddr_t)&unit, cc->a_reg * hz); --- > timeout = tick + cc->a_reg * hz; 2907,2908c2086 < /* E.Inoue timeout = tick + CC_TIMEOUT_LAM * hz; */ < cc->timeout_id = timeout(cc_timeout, (caddr_t)&unit, CC_TIMEOUT_LAM * hz); --- > timeout = tick + CC_TIMEOUT_LAM * hz; 2911d2088 < /* E.Inoue 2914,2919d2090 < */ < if (cv_wait_sig(&cc->cv, &cc->mutex) == 0) { < untimeout(cc->timeout_id); < mutex_exit(&cc->mutex); /* end MUTEX */ < return EINTR; < } 2922c2093 < /* splx(s); E.Inoue */ --- > splx(s); 2929,2930c2100 < else if( cc->interrupt & CC_INT_TIMEOUT ) { < cc->interrupt &= ~CC_INT_TIMEOUT; --- > else { 2936,2938c2106,2107 < /* int cc_br(cc) E.Inoue */ < int cc_br(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_br(cc) > struct cc_device *cc; 2940,2943d2108 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2949,2951c2114,2115 < /* int cc_beq(cc) E.inoue */ < int cc_beq(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_beq(cc) > struct cc_device *cc; 2953,2956d2116 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2964,2966c2124,2125 < /* int cc_bne(cc) E.Inoue */ < int cc_bne(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_bne(cc) > struct cc_device *cc; 2968,2971d2126 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2979,2981c2134,2135 < /* int cc_bgt(cc) E.Inoue */ < int cc_bgt(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_bgt(cc) > struct cc_device *cc; 2983,2986d2136 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 2994,2996c2144,2145 < /* int cc_bge(cc) E.inoue */ < int cc_bge(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_bge(cc) > struct cc_device *cc; 2998,3001d2146 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3009,3011c2154,2155 < /* int cc_blt(cc) E.Inoue */ < int cc_blt(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_blt(cc) > struct cc_device *cc; 3013,3016d2156 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3024,3026c2164,2165 < /* int cc_ble(cc) E.Inoue */ < int cc_ble(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_ble(cc) > struct cc_device *cc; 3028,3031d2166 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3039,3041c2174,2175 < /* int cc_bbc(cc) E.Inoue */ < int cc_bbc(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_bbc(cc) > struct cc_device *cc; 3043,3046d2176 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3054,3056c2184,2185 < /* int cc_bbs(cc) E.inoue */ < int cc_bbs(int unit) < /* struct cc_device *cc; E.Inoue */ --- > int cc_bbs(cc) > struct cc_device *cc; 3058,3061d2186 < /* E.Inoue */ < struct cc_device *cc; < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3080,3082c2205 < /* kladd(cc, name) E.Inoue */ < kladd(int unit, char *name) < /* --- > kladd(cc, name) 3085d2207 < */ 3087,3089d2208 < /* E.Inoue */ < struct cc_device *cc; < /* end */ 3093,3095d2211 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3099,3101d2214 < /* < cmn_err(CE_NOTE," kladd: step1: cc->ptr_dir = 0x%x", cc->ptr_dir); < */ 3105,3109d2217 < /* < cmn_err(CE_NOTE," kladd: step1: name = %s", name); < cmn_err(CE_NOTE," kladd: step1: cc->klist1[%d].name = %s", i, cc->klist1[i].name); < cmn_err(CE_NOTE," kladd: step1: cc->klist1[%d] = 0x%x", i, cc->klist1[i]); < */ 3116,3118d2223 < /* < cmn_err(CE_NOTE," kladd: step2: cc->k->cma = 0x%x, %d(dec)", cc->k->cma, cc->k->cma); < */ 3121,3124d2225 < /* < cmn_err(CE_NOTE," kladd: step3: cc->klist1[%d].cma = 0x%x, %d(dec)", cc->ptr_dir, cc->klist1[cc->ptr_dir].cma, cc->klist1[cc->ptr_dir].cma); < cmn_err(CE_NOTE," kladd: step3: cc->klist1[%d].wc = 0x%x", cc->ptr_dir, cc->klist1[cc->ptr_dir].wc); < */ 3131,3133d2231 < /* < cmn_err(CE_NOTE," kladd: : in while, code = 0x%x", code); < */ 3135d2232 < /* 3138,3140d2234 < */ < cc->status = (*instruction_call)(unit); < next_instruction(unit); 3146,3151d2239 < /* cmn_err(CE_NOTE," kladd: step4: cc->klist1[0].wc = 0x%x", cc->klist1[0].wc); */ < /* < cmn_err(CE_NOTE," kladd: step4: cc->ptr_cma = 0x%x, %d(dec)", cc->ptr_cma, cc->ptr_cma); < cmn_err(CE_NOTE," kladd: step4: cc->klist1[%d].cma = 0x%x, %d(dec)", cc->ptr_dir, cc->klist1[cc->ptr_dir].cma, cc->klist1[cc->ptr_dir].cma); < cmn_err(CE_NOTE," kladd: step4: cc->klist1[%d].wc = 0x%x", cc->a_reg, cc->klist1[cc->a_reg].wc); < */ 3156d2243 < /* E.Inoue 3159,3162d2245 < end */ < /* E.Inoue */ < kldel(int unit, char *name) < /* End */ 3164c2247 < struct cc_device *cc; --- > struct cc_device *cc; 3167,3169d2249 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3174,3177d2253 < cc->klist1[i].wc = 0; < /* < cmn_err(CE_NOTE," kldel: delte list: name = %s", name); < */ 3185d2260 < /* E.Inoue 3189,3192d2263 < end */ < /* E.Inoue */ < klexe(int unit, char *name) < /* End */ 3194,3202c2265,2267 < /* E.Inoue */ < struct cc_device *cc; < /* End */ < /* register dev_t dev = cc->dev; E.Inoue */ < register dev_t dev; < /* register struct uio *uio = cc->uio; E.Inoue */ < register struct uio *uio; < /* register int *retlen = (int *)cc->ptr_udata; E.Inoue */ < register int retlen; --- > register dev_t dev = cc->dev; > register struct uio *uio = cc->uio; > register int *retlen = (int *)cc->ptr_udata; 3204d2268 < u_short cma_save; 3206,3236c2270 < /* E.Inoue */ < /* ====== check */ < cc = ddi_get_soft_state(cc_state,unit); < /* < cmn_err(CE_NOTE," klexe: enter unit = 0x%x", unit); < cmn_err(CE_NOTE," klexe: enter cc = 0x%x", cc); < */ < /* ====== end check */ < /* ====== check */ < /* < cmn_err(CE_NOTE," klexe: enter cc->ptr_dir = 0x%x", cc->ptr_dir); < */ < /* ====== end check */ < /* ====== check */ < dev = cc->dev; < uio = cc->uio; < /* ====== end check */ < /* retlen = (int *)cc->ptr_udata; */ < /* ====== check */ < cc->retlen = 0; < /* ====== end check */ < /* end */ < /* ====== check */ < /* < cmn_err(CE_NOTE," klexe: step0: cc->klist1[0].wc = 0x%x", cc->klist1[0].wc); < cmn_err(CE_NOTE," klexe: step0: retlen = 0x%x", retlen); < cmn_err(CE_NOTE," klexe: step0: cc->ptr_udata = 0x%x", cc->ptr_udata); < */ < < cc->klistf = CC_KLIST_YES; < /* ====== end check */ --- > cc->klist = CC_KLIST_YES; 3239,3245c2273,2274 < /* ====== check */ < for (i = 0; i < cc->ptr_dir; i++){ < if (strcmp(name, cc->klist1[i].name) == 0){ < /* < cmn_err(CE_NOTE," klexe: step1: name = %s", name); < cmn_err(CE_NOTE," klexe: step1: cc->klist1[%d].name = %s", i, cc->klist1[i].name); < */ --- > for (i = 0; i < cc->ptr_dir; i++) > if (strcmp(name, cc->klist1[i].name) == 0) 3247,3252c2276 < } < } < if (i >= cc->ptr_dir){ < /* < cmn_err(CE_NOTE," klexe: step1: No name: name = %s", name); < */ --- > if (i >= cc->ptr_dir) 3254d2277 < } 3256,3258d2278 < /* < cmn_err(CE_NOTE," klexe: step2: cc->ptr_dir = 0x%x", cc->ptr_dir); < */ 3261,3267d2280 < /* < cmn_err(CE_NOTE," klexe: step3: cc->klist1[%d].cma = 0x%x", i, cc->klist1[i].cma); < cmn_err(CE_NOTE," klexe: step3: cc->klist1[%d].wc = 0x%x", i, cc->klist1[i].wc); < cmn_err(CE_NOTE," klexe: step3: cc->now_cma = 0x%x, %d(dec)", cc->now_cma, cc->now_cma); < cmn_err(CE_NOTE," klexe: step3: cc->now_wc = 0x%x", cc->now_wc); < */ < /* ====== end check */ 3270,3271d2282 < /* E.Inoue uio->uio_iov->iov_base = (caddr_t)cc->ptr_udata; */ < /* ====== check */ 3273,3293c2284 < /* ====== end check */ < /* E.Inoue */ < /* ====== check */ < cc->kl_s_wr = 0; < if( cc->klist1[i].wc == 0 ){ < cma_save = cc->k->cma; < if (( cc->k->cmr & 0x0060) == 0x0060){ < cc->kl_s_wr = 1; < cc->k->cma = cma_save; < uio->uio_iov->iov_len = 1 * 2; < } < } < else{ < uio->uio_iov->iov_len = cc->klist1[i].wc * 2; < } < /* ====== end check */ < /* end */ < < /* uio->uio_iov->iov_len = cc->klist1[i].wc * 2; */ < /* uio->uio_iov->iov_len = 1 * 2; */ < /* ====== check */ --- > uio->uio_iov->iov_len = cc->klist1[i].wc * 2; 3296,3308d2286 < /* < cmn_err(CE_NOTE," klexe: step4: uio->uio_iov->iov_base = 0x%x", uio->uio_iov->iov_base); < cmn_err(CE_NOTE," klexe: step4: uio->uio_iov->iov_len = 0x%x", uio->uio_iov->iov_len); < cmn_err(CE_NOTE," klexe: step4: uio->uio_segflg = 0x%x", uio->uio_segflg); < cmn_err(CE_NOTE," klexe: in: 0x%x %d %d %d %d %d", < uio->uio_iov->iov_base, < uio->uio_iov->iov_len, < uio->uio_iovcnt, < uio->uio_resid, < uio->uio_segflg, < uio->uio_offset); < */ < /* ====== end check */ 3310d2287 < 3312,3318d2288 < /* ====== check */ < /* < cmn_err(CE_NOTE," klexe: before physio()"); < */ < /* ====== end check */ < /* E.Inoue */ < /* 3321,3334d2290 < */ < /* ====== check */ < status = physio(cc_strategy, NULL, dev, B_READ, cc_minphys, uio); < /* < cmn_err(CE_NOTE," klexe: after physio(): status = 0x%x", status); < */ < /* ====== end check */ < /* end */ < /* ====== check */ < /* < cmn_err(CE_NOTE," klexe: after physio() &cc->retlen = 0x%x, cc->retlen = 0x%x", &cc->retlen, cc->retlen); < */ < /* ====== end check */ < /* 3336,3368d2291 < */ < /* ====== check */ < /* < cmn_err(CE_NOTE," klexe: after physio(): cc->now_wc = 0x%x", cc->now_wc); < cmn_err(CE_NOTE," klexe: after physio(): cc->k->mtc = 0x%x", cc->k->mtc); < */ < /* ====== end check */ < /* cmn_err(CE_NOTE," klexe: after physio(): cc->k->cwc = 0x%x", cc->k->cwc); */ < /* E.Inoue */ < /* ====== check */ < cc->retlen = cc->now_wc - cc->k->mtc; < if(( cc->k->csr & CC_ERR ) == 0){ < cc->kl_retl = cc->retlen; < } < else{ < cc->kl_retl = -1; < } < /* ====== end check */ < /* E.Inoue cc->retlen = 0xffffffff; for test */ < /* cc->retlen = -1; */ < /* ====== check */ < copyout((caddr_t)&cc->kl_retl, (caddr_t)cc->ptr_udata, sizeof(cc->kl_retl)); < /* ====== end check */ < /* end */ < /* ====== check */ < /* < cmn_err(CE_NOTE," klexe: out: 0x%x %d %d %d %d %d", < uio->uio_iov->iov_base, < uio->uio_iov->iov_len, < uio->uio_iovcnt, < uio->uio_resid, < uio->uio_segflg, < uio->uio_offset); 3370,3380d2292 < cmn_err(CE_NOTE," klexe: after physio() retlen = 0x%x", retlen); < cmn_err(CE_NOTE," klexe: after physio() &cc->retlen = 0x%x, cc->retlen = 0x%x", &cc->retlen, cc->retlen); < */ < copyin((caddr_t)uio->uio_iov->iov_base, (caddr_t)cc->data_area, 10*sizeof(u_short)); < /* < cmn_err(CE_NOTE," klexe: after physio(): contents of uio->uio_iov->iov_base =0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x\n", cc->data_area[0],cc->data_area[1],cc->data_area[2],cc->data_area[3],cc->data_area[4],cc->data_area[5],cc->data_area[6],cc->data_area[7],cc->data_area[8],cc->data_area[9]); < */ < /* ====== end check */ < < < 3384c2296 < /* E.Inoue --- > 3388,3391d2299 < end */ < /* E.Inoue */ < klsave(int unit, u_short *data) < /* end */ 3393d2300 < struct cc_device *cc; 3398,3400d2304 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3426d2329 < /* E.Inoue 3430,3433d2332 < end */ < /* E.Inoue */ < klload(int unit, u_short *data) < /* end */ 3435d2333 < struct cc_device *cc; 3439,3441d2336 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3474d2368 < /* E.Inoue 3477,3478d2370 < end */ < kl_stop(int unit) 3480d2371 < struct cc_device *cc; 3483,3485d2373 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3487,3489d2374 < /* E.Inoue */ < cc->ptr_cma += 1; < /* end */ 3493d2377 < /* E.Inoue 3496,3499d2379 < end */ < /* E.Inoue */ < kl_read16(int unit) < /* end */ 3501d2380 < struct cc_device *cc; 3504,3506d2382 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3514d2389 < /* E.Inoue 3517,3520d2391 < end */ < /* E.Inoue */ < kl_read24(int unit) < /* end */ 3522d2392 < struct cc_device *cc; 3525,3527d2394 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3535d2401 < /* E.inoue 3538,3541d2403 < end */ < /* E.inoue */ < kl_write16(int unit) < /* end */ 3543d2404 < struct cc_device *cc; 3546,3548d2406 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3553,3556d2410 < /* E.Inoue */ < /* cc->klist1[cc->ptr_dir].wc += 1; */ < cc->klist1[cc->ptr_dir].wc += 0; < /* end */ 3561d2414 < /* E.inoue 3564,3567d2416 < end */ < /* E.Inoue */ < kl_write24(int unit) < /* end */ 3569d2417 < struct cc_device *cc; 3572,3574d2419 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3579,3582d2423 < /* E.Inoue */ < /* cc->klist1[cc->ptr_dir].wc += 1; */ < cc->klist1[cc->ptr_dir].wc += 0; < /* end */ 3587d2427 < /* E.Inoue 3590,3593d2429 < end */ < /* E.Inoue */ < kl_ndt(int unit) < /* end */ 3595d2430 < struct cc_device *cc; 3598,3600d2432 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3603,3606d2434 < /* E.Inoue */ < /* cc->klist1[cc->ptr_dir].wc += 1; */ < cc->klist1[cc->ptr_dir].wc += 0; < /* end */ 3611d2438 < /* E.Inoue 3614,3617d2440 < end */ < /* E.Inoue */ < kl_qs16(int unit) < /* end */ 3619d2441 < struct cc_device *cc; 3622,3624d2443 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3634d2452 < /* E.Inoue 3637,3640d2454 < end */ < /* E.Inoue */ < kl_qs24(int unit) < /* end */ 3642d2455 < struct cc_device *cc; 3645,3647d2457 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3650,3651c2460 < /* E.Inoue cc->k->cmr = - cc->ptr_list[2] * 2; */ < cc->k->cmr = - cc->ptr_list[2]; --- > cc->k->cmr = - cc->ptr_list[2] * 2; 3658d2466 < /* E.Inoue 3661,3664d2468 < end */ < /* E.Inoue */ < kl_as16(int unit) < /* end */ 3666d2469 < struct cc_device *cc; 3669,3671d2471 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3681d2480 < /* E.Inoue 3684,3687d2482 < end */ < /* E.Inoue */ < kl_as24(int unit) < /* end */ 3689d2483 < struct cc_device *cc; 3692,3694d2485 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3697,3698c2488 < /* E.Inoue cc->k->cmr = - cc->ptr_list[2] * 2; */ < cc->k->cmr = - cc->ptr_list[2]; --- > cc->k->cmr = - cc->ptr_list[2] * 2; 3705d2494 < /* E.Inoue 3708,3711d2496 < end */ < /* E.Inoue */ < kl_igq16(int unit) < /* end */ 3713d2497 < struct cc_device *cc; 3716,3718d2499 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3728d2508 < /* E.Inoue 3731,3734d2510 < end */ < /* E.Inoue */ < kl_igq24(int unit) < /* end */ 3736d2511 < struct cc_device *cc; 3739,3741d2513 < /* E.Inoue */ < cc = ddi_get_soft_state(cc_state,unit); < /* end */ 3744,3745c2516 < /* E.Inoue cc->k->cmr = - cc->ptr_list[2] * 2; */ < cc->k->cmr = - cc->ptr_list[2]; --- > cc->k->cmr = - cc->ptr_list[2] * 2; 3781,3785d2551 < /* < cmn_err(CE_NOTE," camac_s: cc->cur_crate = 0x%x", cc->cur_crate); < cmn_err(CE_NOTE," camac_s: mode = 0x%x", mode); < cmn_err(CE_NOTE," camac_s: naf = 0x%x", naf); < */ 3916,3918d2681 < /* < cmn_err(CE_NOTE," cc_strategy: enter"); < */ 3925,3941c2688,2698 < /* < cmn_err(CE_NOTE," cc_strategy: cc->naf = 0x%x", cc->naf); < */ < /* By E.Inoue */ < if(cc->klistf == CC_KLIST_NO){ < /* check DMA mode and set flags */ < switch (cc->naf & 0x0018) { < case 0x0000: /* CAMAC read */ < flags = DDI_DMA_READ; < break; < case 0x0010: /* CAMAC write */ < flags = DDI_DMA_WRITE; < break; < default: < cc->status = CC_STA_BLOCK_INVFUNC; < return 0; < } --- > /* check DMA mode and set flags */ > switch (cc->naf & 0x0018) { > case 0x0000: /* CAMAC read */ > flags = DDI_DMA_READ; > break; > case 0x0010: /* CAMAC write */ > flags = DDI_DMA_WRITE; > break; > default: > cc->status = CC_STA_BLOCK_INVFUNC; > return 0; 3943,3947d2699 < else{ < /* flags = DDI_DMA_READ; */ < flags = DDI_DMA_RDWR; < } < /* end */ 3993,3995d2744 < /* < cmn_err(CE_NOTE," cc_strategy: dma_addr = 0x%x", dma_addr); < */ 4000c2749 < if (cc->klistf == CC_KLIST_NO) { --- > if (cc->klist == CC_KLIST_NO) { 4002,4004d2750 < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->cma = 0x%x", cc->k->cma); < */ 4006,4008d2751 < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: mode | (cc->cur_crate << 8) = 0x%x", mode | (cc->cur_crate << 8)); < */ 4010,4012d2752 < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: naf = 0x%x", naf); < */ 4014,4016d2753 < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: -(cc->len & 0xFFFF) = 0x%x", -(cc->len & 0xFFFF)); < */ 4018d2754 < /* cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); */ 4020,4022d2755 < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: CC_HALT = 0x%x", CC_HALT); < */ 4024,4026d2756 < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->cma = 0x%x", cc->k->cma); < */ 4028,4030d2757 < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->maclo = 0x%x", cc->k->maclo); < */ 4032,4034d2758 < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->machi = 0x%x", cc->k->machi); < */ 4036,4038d2759 < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->amr = 0x%x", cc->k->amr); < */ 4040,4043d2760 < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->mtc = 0x%x", cc->k->mtc); < */ < /* cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->cwc = 0x%x", cc->k->cwc); */ 4045,4047d2761 < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->cser = 0x%x", cc->k->cser); < */ 4049,4067c2763,2769 < switch (cc->naf & 0x0018) { < case 0x0000: /* CAMAC read */ < cc->k->docr = CC_DOCR_INIT | CC_DMA_READ; < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->docr = 0x%x", cc->k->docr); < */ < cc->k->sccr = CC_DMA_START; < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->sccr = 0x%x", cc->k->sccr); < */ < cc->k->csr |= CC_DMA; /* DMA mode */ < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->csr = 0x%x", cc->k->csr); < */ < cc->k->csr &= ~CC_WRITE; < /* < cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->csr = 0x%x", cc->k->csr); < */ < break; --- > switch (cc->naf & 0x0018) { > case 0x0000: /* CAMAC read */ > cc->k->docr = CC_DOCR_INIT | CC_DMA_READ; > cc->k->sccr = CC_DMA_START; > cc->k->csr |= CC_DMA; /* DMA mode */ > cc->k->csr &= ~CC_WRITE; > break; 4069,4074c2771,2776 < case 0x0010: /* CAMAC write */ < cc->k->docr = CC_DOCR_INIT | CC_DMA_WRITE; < cc->k->sccr = CC_DMA_START; < cc->k->csr |= CC_DMA; /* DMA mode */ < cc->k->csr |= CC_WRITE; < break; --- > case 0x0010: /* CAMAC write */ > cc->k->docr = CC_DOCR_INIT | CC_DMA_WRITE; > cc->k->sccr = CC_DMA_START; > cc->k->csr |= CC_DMA; /* DMA mode */ > cc->k->csr |= CC_WRITE; > break; 4076,4079c2778,2781 < default: /* ERROR */ < cc->status = CC_STA_BLOCK_INVFUNC; < return 0; < } --- > default: /* ERROR */ > cc->status = CC_STA_BLOCK_INVFUNC; > return 0; > } 4083,4084c2785 < /* < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing"); --- > cc->k->cma = cc->now_cma; /* Initialize memory pointer 4086,4106d2786 < cc->k->cma = cc->now_cma; /* Initialize memory pointer*/ < /* cc->k->cma = 0x0000; */ /* Initialize memory pointer*/ < /* < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->now_cma = 0x%x", cc->now_cma); < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); < */ < /* E.Inoue for testing */ < cc->k->cma = cc->now_cma; /* Initialize memory pointer*/ < /* < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->now_cma = 0x%x", cc->now_cma); < */ < /* end */ 4108,4110d2787 < /* < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->maclo = 0x%x", cc->k->maclo); < */ 4112,4114d2788 < /* < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->machi = 0x%x", cc->k->machi); < */ 4116,4134c2790 < /* < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->amr = 0x%x", cc->k->amr); < */ < /* E.Inoue */ < if (cc->kl_s_wr == 1){ < cc->k->mtc = 0x0000; < cc->kl_s_wr = 0; < } < else{ < cc->k->mtc = cc->now_wc; < } < < /* cc->k->mtc = cc->now_wc; */ < /* cc->k->mtc = 0x0000; */ < /* end */ < /* < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->mtc = 0x%x", cc->k->mtc); < */ < /* cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cwc = 0x%x", cc->k->cwc); */ --- > cc->k->mtc = cc->now_wc; 4136,4138d2791 < /* < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cser = 0x%x", cc->k->cser); < */ 4141,4143d2793 < /* < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->docr = 0x%x", cc->k->docr); < */ 4145,4147d2794 < /* < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->sccr = 0x%x", cc->k->sccr); < */ 4149,4151d2795 < /* < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->csr = 0x%x", cc->k->csr); < */ 4153,4155d2796 < /* < cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->csr = 0x%x", cc->k->csr); < */ 4166,4168d2806 < /* < cmn_err(CE_NOTE," cc_strategy: exit"); < */ 4187c2825 < cc->klistf = CC_KLIST_NO; --- > cc->klist = CC_KLIST_NO; 4210d2847 < 4220d2856 < 4236,4238d2871 < /* < cmn_err(CE_NOTE," camac_b: after physio() &cc->retlen = 0x%x, cc->retlen = 0x%x", &cc->retlen, cc->retlen); < */ 4260d2892 < 4269,4270d2900 < < /* cmn_err(CE_NOTE," camac_b: step1: cc->k->cwc = 0x%x", cc->k->cwc); */ 4280,4282d2909 < /* < cmn_err(CE_NOTE," camac_b: step1: cc->retlen = 0x%x", cc->retlen); < */ 4290,4292d2916 < /* < cmn_err(CE_NOTE," camac_b: step2: cc->retlen = 0x%x", cc->retlen); < */ 4298,4300d2921 < /* < cmn_err(CE_NOTE," camac_b: cc->retlen = 0x%x", cc->retlen); < */ cc.cファイルはかなりの個所に変更がある。 不必要な部分を削除する。 (3-4-7-a). FORCE-50T-sol2.6-list/cc.cファイルの修正 注. ファイル中のレコードを修正するたびにエディタから抜けているために 行番号が少しずつずれてしまって、見にくくなっている。 onlsun1[56]% vi cc.c : 11 * 4-Oct-2000 E.Inoue List-Processing version * <--- 追加 : 91 /* E.Inoue int klist; */ /* flag for K2917 list processing */ <--- 削除 92 int klistf; /* flag for K2917 list processing */ <--- 追加 93 /* E.Inoue */ <--- 削除 94 int kl_retl; <--- 追加 95 int kl_s_wr; <--- 追加 96 /* end */ <--- 削除 : 634 /* E.Inoue register struct iovec *iov = uio->uio_iov; */ <--- 削除 635 register struct iovec *iov; <--- 追加 : 637 /* E.Inoue struct uio uio_save, *uios = &uio_save; */ <--- 削除 638 struct uio uio_save, *uios; <--- 追加 639 /* E.Inoue struct iovec iov_save, *iovs = &iov_save; */ <--- 削除 640 struct iovec iov_save, *iovs; <--- 追加 : 652 /* E.Inoue */ <--- 削除 653 iov = uio->uio_iov; <--- 追加 654 uios = &uio_save; <--- 追加 655 iovs = &iov_save; <--- 追加 656 /* end */ <--- 削除 657 /* cmn_err(CE_NOTE," ccwrite: cc->klist1[0].wc = 0x%x", cc->klist1[0 ].wc); */ <--- 削除 658 /* 659 cmn_err(CE_NOTE," ccwrite: cc->klist1[%d].wc = 0x%x", cc->a_reg, cc ->klist1[cc->a_reg].wc); <--- 削除 660 */ <--- 削除 : 676 /* <--- 削除 677 cmn_err(CE_NOTE," cc_write: 1 copyin: uio->uio_iov = 0x%x", uio->uio _iov); <--- 削除 678 cmn_err(CE_NOTE," cc_write: 1 copyin: iov->iov_base = 0x%x", iov->io v_base); <--- 削除 679 */ <--- 削除 : 722 /* <--- 削除 723 cmn_err(CE_NOTE," cc_write: CC_CMD_DOBLOCK: cc->ptr_udata = 0x%x", c c->ptr_udata); <--- 削除 724 cmn_err(CE_NOTE," cc_write: CC_CMD_DOBLOCK: iov->iov_base = 0x%x", i ov->iov_base); <--- 削除 725 */ <--- 削除 : 741 /* <--- 削除 742 cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.status = 0x%x", cc->iosb.status); <--- 削除 743 cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.ret_length = 0x %x", cc->iosb.ret_length); <--- 削除 744 cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.s_reg = 0x%x", cc->iosb.s_reg); <--- 削除 745 cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.devinfo = 0x%x" , cc->iosb.devinfo); <--- 削除 746 */ <--- 削除 : 752 /* <--- 削除 753 cmn_err(CE_NOTE," cc_write: CC_CMD_LOADDOLIST: enter CC_CMD_LOADDOLI ST"); <--- 削除 754 */ <--- 削除 : /* <--- 削除 cmn_err(CE_NOTE," cc_write: CC_CMD_LOADDOLIST: in while, code = 0x%x", code) ; <--- 削除 cmn_err(CE_NOTE," cc_write: CC_CMD_LOADDOLIST: in while, cc->ptr_udata = 0x% x", cc->ptr_udata); <--- 削除 */ <--- 削除 : /* E.Inoue <--- 削除 cc->status = (*instruction_call)(cc); <--- 削除 next_instruction(cc); <--- 削除 end */ <--- 削除 cc->status = (*instruction_call)(unit); <--- 追加 /* <--- 削除 cmn_err(CE_NOTE," cc_write: CC_CMD_LOADDOLIST: in while, cc->status = 0x%x", cc->status); <--- 削除 */ <--- 削除 next_instruction(unit); <--- 追加 : 785 /* <--- 削除 786 cmn_err(CE_NOTE," cc_write: CC_CMD_LOADDOLIST: out while, cc->status = 0x%x", cc->status); <--- 削除 787 */ <--- 削除 : 787 /* <--- 削除 788 cmn_err(CE_NOTE," cc_write: CC_CMD_LOADDOLIST: out while #2, cc->sta tus = 0x%x", cc->status); <--- 削除 789 */ <--- 削除 790 /* E.Inoue <--- 削除 791 flush_buf(cc); <--- 削除 792 end */ <--- 削除 : 809 /* E.Inoue <--- 削除 810 kladd(cc, klname); <--- 削除 811 end */ <--- 削除 812 kladd(unit, klname); <--- 追加 813 /* cmn_err(CE_NOTE," ccwrite: CC_CMD_ADDKLIST: cc->klist1[0].wc = 0x% x", cc->klist1[0].wc); */ <--- 削除 814 /* <--- 削除 815 cmn_err(CE_NOTE," ccwrite: CC_CMD_ADDKLIST: cc->klist1[%d].wc = 0x%x ", cc->a_reg, cc->klist1[cc->a_reg].wc); <--- 削除 816 */ <--- 削除 : 815 /* E.Inoue <--- 削除 816 kldel(klname); <--- 削除 817 end */ <--- 削除 818 /* <--- 削除 819 cmn_err(CE_NOTE," ccwrite: CC_CMD_DELKLIST: klname = %s", klname); <--- 削除 820 */ <--- 削除 821 kldel(unit, klname); <--- 追加 : 820 /* <--- 削除 821 cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->klist1[0].wc = 0x%x" , cc->klist1[0].wc); <--- 削除 822 */ <--- 削除 : 829 /* <--- 削除 830 cmn_err(CE_NOTE," cc_write: CC_CMD_EXEKLIST: cc->ptr_udata = 0x%x", cc->ptr_udata); <--- 削除 831 cmn_err(CE_NOTE," cc_write: CC_CMD_EXEKLIST: iov->iov_base = 0x%x", iov->iov_base); <--- 削除 832 */ <--- 削除 : 829 /* E.Inoue <--- 削除 830 klexe(cc, klname); <--- 削除 831 cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->klist1[%d].wc = 0x%x ", cc->ptr_dir, cc->klist1[cc->ptr_dir].wc); <--- 削除 832 end */ <--- 削除 833 /* <--- 削除 834 cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->klist1[0].wc = 0x%x" , cc->klist1[0].wc); <--- 削除 835 */ <--- 削除 836 klexe(unit, klname); <--- 追加 : 830 /* <--- 削除 831 cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.status = 0x%x", cc->iosb.status); <--- 削除 832 cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.ret_length = 0x %x", cc->iosb.ret_length); <--- 削除 833 cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.s_reg = 0x%x", cc->iosb.s_reg); <--- 削除 834 cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->iosb.devinfo = 0x%x" , cc->iosb.devinfo); <--- 削除 835 cmn_err(CE_NOTE," ccwrite: CC_CMD_EXEKLIST: cc->k->mtc = 0x%x", cc->k->mtc); 836 */ <--- 削除 : 840 /* E.Inoue <--- 削除 841 klsave(cc, cc->data_area); <--- 削除 842 end */ <--- 削除 843 klsave(unit, cc->data_area); <--- 追加 : 850 /* E.Inoue <--- 削除 851 klload(cc, cc->data_area); <--- 削除 852 end */ <--- 削除 853 klload(unit, cc->data_area); <--- 追加 : 880 /* <--- 削除 881 cmn_err(CE_NOTE," CC_timeout: enter"); <--- 削除 882 */ <--- 削除 : 915 /* E.Inoue */ <--- 削除 916 register struct uio *uio; <--- 追加 917 uint_t chk_done; <--- 追加 918 /* end */ <--- 削除 : 932 /* */ <--- 削除 933 /* <--- 削除 934 cmn_err(CE_NOTE," CC_intr: cc->interrupt = 0x%x", cc->interrupt); <--- 削除 935 */ <--- 削除 936 /* */ <--- 削除 : 936 /* E.Inoue */ <--- 削除 937 chk_done = 0x7ffffff; /* about 10 sec */ <--- 追加 938 while (chk_done-- > 0){ <--- 追加 939 if ((cc->k->csr & CC_DONE) != 0){ <--- 追加 940 cc->interrupt |= CC_INT_DONE; <--- 追加 941 break; <--- 追加 942 } <--- 追加 943 } <--- 追加 944 /* end */ <--- 削除 945 <--- 削除 946 /* E.Inoue */ <--- 削除 947 /* <--- 削除 948 uio = cc->uio; <--- 削除 949 cmn_err(CE_NOTE," cc_intr: 0x%x %d %d %d %d %d",<--- 削除 950 uio->uio_iov->iov_base, <--- 削除 951 uio->uio_iov->iov_len, <--- 削除 952 uio->uio_iovcnt, <--- 削除 953 uio->uio_resid, <--- 削除 954 uio->uio_segflg, <--- 削除 955 uio->uio_offset); <--- 削除 956 <--- 削除 957 copyin((caddr_t)uio->uio_iov->iov_base, (caddr_t)cc->data_area, 10*sizeof(u_short)); <--- 削除 958 cmn_err(CE_NOTE," cc_intr: contents of uio->uio_iov->iov_base =0 <--- 削除 x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x\n", cc->data_area[0],c <--- 削除 c->data_area[1],cc->data_area[2],cc->data_area[3],cc->data_area[4],cc->data_area <--- 削除 [5],cc->data_area[6],cc->data_area[7],cc->data_area[8],cc->data_area[9]); <--- 削除 959 */ <--- 削除 960 /* <--- 削除 961 cc->data_area[0] = 1; <--- 削除 962 cc->data_area[1] = 2; <--- 削除 963 cc->data_area[2] = 3; <--- 削除 964 cc->data_area[3] = 4; <--- 削除 965 cc->data_area[4] = 5; <--- 削除 966 copyout((caddr_t)cc->data_area, (caddr_t)uio->uio_iov->iov_base, 10*sizeof(u_short)); <--- 削除 967 */ <--- 削除 968 /* end */ <--- 削除 : 1047 /* <--- 削除 1048 cmn_err(CE_NOTE," cc_ioctl: CCIOC_WAIT_LAM: before cv_wait_sig: cc-> data1 = 0x%x", cc->data1); <--- 削除 1049 */ <--- 削除 : 1053 /* <--- 削除 1054 cmn_err(CE_NOTE," cc_ioctl: CCIOC_WAIT_LAM: after cv_wait_sig"); <--- 削除 1055 */ <--- 削除 : 1067 /* <--- 削除 1068 cmn_err(CE_NOTE," ioctl: CCIOC_ENABLE_LAM: cc->data1 = 0x%x", cc->da ta1); <--- 削除 1069 */ <--- 削除 : 1075 /* <--- 削除 1076 cmn_err(CE_NOTE," ioctl: CCIOC_ENABLE_LAM: sdat = 0x%x", sdat); <--- 削除 1077 */ <--- 削除 : 1184 /* next_instruction(cc) E.Inoue */ <--- 削除 1185 next_instruction(int unit) <--- 追加 1186 /* struct cc_device *cc; E.Inoue */ <--- 削除 : 1187 /* E.Inoue */ <--- 削除 1188 struct cc_device *cc; <--- 追加 1189 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1190 /* end */ <--- 削除 : 1197 /* flush_buf(cc) E.Inoue */ <--- 削除 1198 flush_buf(int unit) <--- 追加 1199 /* struct cc_device *cc; E.Inoue */ <--- 削除 : 1199 /* E.Inoue */ <--- 削除 1200 struct cc_device *cc; <--- 追加 1201 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1202 /* end */ <--- 削除 : 1211 /* check_buf(cc, wc) E.Inoue */ <--- 削除 1212 check_buf(int unit, int wc) <--- 追加 1213 /* E.Inoue <--- 削除 1214 struct cc_device *cc; <--- 削除 1215 int wc; end */ /* wc: word counts */ <--- 削除 1216 { 1217 /* E.Inoue */ <--- 削除 1218 struct cc_device *cc; <--- 追加 1219 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1220 /* end */ <--- 削除 : 1217 /* flush_buf(cc); E.Inoue */ <--- 削除 1218 flush_buf(unit); <--- 追加 : 1226 /* cc_stop(cc) E.Inoue */ <--- 削除 1227 cc_stop(int unit) <--- 追加 1228 /* struct cc_device *cc; E.Inoue */ <--- 削除 1229 { 1230 /* E.Inoue */ <--- 削除 1231 struct cc_device *cc; <--- 追加 1232 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1233 /* end */ <--- 削除 : 1234 /* cc_read16(cc) E.Inoue */ <--- 削除 1235 cc_read16(int unit) <--- 追加 1236 /* struct cc_device *cc; E.Inoue */ <--- 削除 1237 { 1238 /* E.Inoue */ <--- 削除 1239 struct cc_device *cc; <--- 追加 1240 /* end */ <--- 削除 : 1239 /* E.Inoue */ <--- 削除 1240 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1241 /* end */ <--- 削除 1242 /* if (status = check_buf(cc, 1)) */ <--- 削除 1243 if (status = check_buf(unit, 1)) <--- 追加 : 1242 /* if (status = camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], cc->ptr_kdata)) E.Inoue */ <--- 削除 1243 if (status = camac_s(unit, CC_BIT16, cc->ptr_list[1], cc->ptr_kdata) ) <--- 追加 : 1253 /* cc_read24(cc) E.Inoue */ <--- 削除 1254 cc_read24(int unit) <--- 追加 1255 /* struct cc_device *cc; E.Inoue */ <--- 削除 1256 { 1257 /* E.Inoue */ <--- 削除 1258 struct cc_device *cc; <--- 追加 1259 /* end */ <--- 削除 : 1258 /* E.Inoue */ <--- 削除 1259 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1260 /* end */ <--- 削除 1261 /* if (status = check_buf(cc, 2)) E.Inoue */ <--- 削除 1262 if (status = check_buf(unit, 2)) <--- 追加 : 1261 /* if (status = camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], cc->ptr_kdata)) E.Inoue */ <--- 削除 1262 if (status = camac_s(unit, CC_BIT24, cc->ptr_list[1], cc->ptr_kdata) ) <--- 追加 : 1272 /* cc_read16_a(cc) E.Inoue */ <--- 削除 1273 cc_read16_a(int unit) <--- 追加 1274 /* struct cc_device *cc; E.Inoue */ <--- 削除 1275 { 1276 /* E.Inoue */ <--- 削除 1277 struct cc_device *cc; <--- 追加 1278 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1279 /* end */ <--- 削除 : 1278 /* return camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], ((u_s hort *)&cc->a_reg + 1)); */ <--- 削除 1279 return camac_s(unit, CC_BIT16, cc->ptr_list[1], ((u_short *)&cc->a_r eg + 1)); <--- 追加 : 1282 /* cc_read24_a(cc) E.Inoue */ <--- 削除 1283 cc_read24_a(int unit) <--- 追加 1284 /* struct cc_device *cc; */ <--- 削除 1285 { 1286 /* E.Inoue */ <--- 削除 1287 struct cc_device *cc; <--- 追加 1288 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1289 /* end */ <--- 削除 1290 /* return camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], (u_sh ort *)&cc->a_reg); */ <--- 削除 1291 return camac_s(unit, CC_BIT24, cc->ptr_list[1], (u_short *)&cc->a_re g); <--- 追加 : 1291 /* cc_write16(cc) E.Inoue */ <--- 削除 1292 cc_write16(int unit) <--- 追加 1293 /* struct cc_device *cc; E.Inoue */ <--- 削除 1294 { 1295 /* E.Inoue */ <--- 削除 1296 struct cc_device *cc; <--- 追加 1297 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1298 /* end */ <--- 削除 1299 /* return camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], &cc-> ptr_list[2]); E.Inoue */ <--- 削除 1300 return camac_s(unit, CC_BIT16, cc->ptr_list[1], &cc->ptr_list[2]); <--- 追加 : 1300 /* cc_write24(cc) E.Inoue */ <--- 削除 1301 cc_write24(int unit) <--- 追加 1302 /* struct cc_device *cc; E.Inoue */ <--- 削除 1303 { 1304 /* E.Inoue */ <--- 削除 1305 struct cc_device *cc; <--- 追加 1306 /* end */ <--- 削除 1307 1308 /* int dat; E.Inoue */ <--- 削除 : 1299 /* cc_write24(cc) E.Inoue */ <--- 削除 1300 cc_write24(int unit) <--- 追加 1301 /* struct cc_device *cc; E.Inoue */ <--- 削除 1302 { 1303 /* E.Inoue */ <--- 削除 1304 struct cc_device *cc; <--- 追加 1305 /* end */ <--- 削除 1306 1307 /* int dat; E.Inoue */ <--- 削除 1308 1309 /* E.Inoue */ <--- 削除 1310 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1311 /* end */ <--- 削除 1312 /* dat = Tolong(2); E.Inoue */ <--- 削除 1313 cc->data1 = Tolong(2); <--- 追加 1314 /* <--- 削除 1315 cmn_err(CE_NOTE," cc_write24: cc->ptr_list[2] = 0x%x", cc->ptr_list[ 2]); <--- 削除 1316 cmn_err(CE_NOTE," cc_write24: cc->data1 = 0x%x", cc->data1); <--- 削除 1317 */ <--- 削除 1318 /* return camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], (u_sh ort *)&dat); E.Inoue */ <--- 削除 1319 /* return camac_s(unit, CC_BIT24, cc->ptr_list[1], (u_short *)&dat); E.inoue */ <--- 削除 1320 return camac_s(unit, CC_BIT24, cc->ptr_list[1], (u_short *)&cc->data 1); <--- 追加 : 1310 /* cc_write16_a(cc) E.Inoue */ <--- 削除 1311 cc_write16_a(int unit) <--- 追加 1312 /* struct cc_device *cc; E.Inoue */ <--- 削除 1313 { 1314 /* E.Inoue */ <--- 削除 1315 struct cc_device *cc; <--- 追加 1316 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1317 /* end */ <--- 削除 1318 /* return camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], ((u_s hort *)&cc->a_reg + 1)); E.Inoue */ <--- 削除 1319 return camac_s(unit, CC_BIT16, cc->ptr_list[1], ((u_short *)&cc->a_r eg + 1)); <--- 追加 : 1318 /* cc_write24_a(cc) E.Inoue */ <--- 削除 1319 cc_write24_a(int unit) <--- 追加 1320 /* struct cc_device *cc; E.Inoue */ <--- 削除 1321 { 1322 /* E.Inoue */ <--- 削除 1323 struct cc_device *cc; <--- 追加 1324 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1325 /* end */ <--- 削除 1326 1327 /* return camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], (u_sh ort *)&cc->a_reg); E.Inoue */ <--- 削除 1328 return camac_s(unit, CC_BIT24, cc->ptr_list[1], (u_short *)&cc->a_re g); <--- 追加 : 1327 /* cc_ndt(cc) E.Inoue */ <--- 削除 1328 cc_ndt(int unit) <--- 追加 1329 /* struct cc_device *cc; E.Inoue */ <--- 削除 1330 { 1331 /* E.Inoue */ <--- 削除 1332 struct cc_device *cc; <--- 追加 1333 /* end */ <--- 削除 1334 /* u_short dummy; E.Inoue */ <--- 削除 1335 int dummy; <--- 追加 1336 1337 /* E.Inoue */ <--- 削除 1338 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1339 /* end */ <--- 削除 1340 /* return camac_s(getminor(cc->dev), CC_BIT16, cc->ptr_list[1], &dumm y); E.Inoue */ <--- 削除 1341 return camac_s(unit, CC_BIT24, cc->ptr_list[1], (u_short *)&dummy); <--- 追加 : 1337 /* cc_setcrate_a(cc) E.Inoue */ <--- 削除 1338 cc_setcrate_a(int unit) <--- 追加 1339 /* struct cc_device *cc; E.Inoue */ <--- 削除 1340 { 1341 /* E.Inoue */ <--- 削除 1342 struct cc_device *cc; <--- 追加 1343 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1344 /* end */ <--- 削除 : 1348 /* cc_setcrate(cc) E.Inoue */ <--- 削除 1349 cc_setcrate(int unit) <--- 追加 1350 /* struct cc_device *cc; E.Inoue */ <--- 削除 1351 { 1352 /* E.Inoue */ <--- 削除 1353 struct cc_device *cc; <--- 追加 1354 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1355 /* end */ <--- 削除 : 1359 /* cc_genz(cc) E.Inoue */ <--- 削除 1360 cc_genz(int unit) <--- 追加 1361 /* struct cc_device *cc; E.Inoue */ <--- 削除 1362 { 1363 /* E.Inoue */ <--- 削除 1364 struct cc_device *cc; <--- 追加 1365 /* end */ <--- 削除 1366 register int status; 1367 /* int dat; E.Inoue E.Inoue */ <--- 削除 1368 1369 /* E.Inoue */ <--- 削除 1370 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1371 /* end */ <--- 削除 1372 /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), ( u_short *)&dat)) E.Inoue */ <--- 削除 1373 if (status = camac_s(unit, CC_BIT24, NAF(30, 0, 1), (u_short *)&cc-> data1)) <--- 追加 : 1368 /* return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_sho rt *)&dat); E.Inoue */ <--- 削除 1369 return camac_s(unit, CC_BIT24, NAF(30, 0, 17), (u_short *)&cc->data1 ); <--- 追加 : 1372 /* cc_genc(cc) E.Inoue */ <--- 削除 1373 cc_genc(int unit) <--- 追加 1374 /* struct cc_device *cc; E.Inoue */ <--- 削除 1375 { 1376 /* E.Inoue */ <--- 削除 1377 struct cc_device *cc; <--- 追加 1378 /* end */ <--- 削除 1379 register int status; 1380 /* int dat; E.Inoue */ <--- 削除 1381 1382 /* E.Inoue */ <--- 削除 1383 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1384 /* end */ <--- 削除 1385 /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), ( u_short *)&dat)) E.Inoue */ <--- 削除 1386 if (status = camac_s(unit, CC_BIT24, NAF(30, 0, 1), (u_short *)&cc-> data1)) <--- 追加 1387 return status; 1388 /* dat |= 2; E.Inoue */ <--- 削除 1389 cc->data1 |= 2; <--- 追加 1390 /* return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_sho rt *)&dat); E.Inoue */ <--- 削除 1391 return camac_s(unit, CC_BIT24, NAF(30, 0, 17), (u_short *)&cc->data1 ); <--- 追加 : 1385 /* cc_remi(cc) E.Inoue */ <--- 削除 1386 cc_remi(int unit) <--- 追加 1387 /* struct cc_device *cc; E.inoue */ <--- 削除 1388 { 1389 /* E.Inoue */ <--- 削除 1390 struct cc_device *cc; <--- 追加 1391 /* end */ <--- 削除 1392 register int status; 1393 /* int dat; E.Inoue */ <--- 削除 1394 1395 /* E.Inoue */ <--- 削除 1396 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1397 /* end */ <--- 削除 1398 /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), ( u_short *)&dat)) E.Inoue */ <--- 削除 1399 if (status = camac_s(unit, CC_BIT24, NAF(30, 0, 1), (u_short *)&cc-> data1)) <--- 追加 1400 return status; 1401 cc->data1 &= ~4; 1402 /* return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_sho rt *)&dat); E.Inoue */ <--- 削除 1403 return camac_s(unit, CC_BIT24, NAF(30, 0, 17), (u_short *)&cc->data1 ); <--- 追加 : 1398 /* cc_seti(cc) E.Inoue */ <--- 削除 1399 cc_seti(int unit) <--- 追加 1400 /* struct cc_device *cc; E.Inoue */ <--- 削除 1401 { 1402 /* E.Inoue */ <--- 削除 1403 struct cc_device *cc; <--- 追加 1404 /* end */ <--- 削除 1405 register int status; 1406 /* int dat; E.Inoue */ <--- 削除 1407 1408 /* E.Inoue */ <--- 削除 1409 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1410 /* end */ <--- 削除 1411 /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), ( u_short *)&dat)) E.Inoue */ <--- 削除 1412 if (status = camac_s(unit, CC_BIT24, NAF(30, 0, 1), (u_short *)&cc-> data1)) <--- 追加 1413 return status; 1414 cc->data1 |= 4; 1415 /* return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_sho rt *)&dat); E.Inoue */ <--- 削除 1416 return camac_s(unit, CC_BIT24, NAF(30, 0, 17), (u_short *)&cc->data1 ); <--- 追加 : 1411 /* cc_enbint(cc) E.Inoue */ <--- 削除 1412 cc_enbint(int unit) <--- 追加 1413 /* struct cc_device *cc; E.Inoue */ <--- 削除 1414 { 1415 /* E.Inoue */ <--- 削除 1416 struct cc_device *cc; <--- 追加 1417 /* end */ <--- 削除 1418 register int status; 1419 /* E.Inoue int dat; */ <--- 削除 1420 u_short sdat; 1421 1422 /* E.Inoue */ <--- 削除 1423 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1424 mutex_enter(&cc->mutex); <--- 追加 1425 /* end */ <--- 削除 1426 /* <--- 削除 1427 cmn_err(CE_NOTE," cc_enbint: enter"); <--- 削除 1428 */ <--- 削除 1429 #ifdef CC_SPARC_LIST_EXTENSION 1430 /* E.Inoue dat = cc->a_reg; */ <--- 削除 1431 cc->data1 = cc->a_reg; <--- 追加 1432 #else 1433 /* E.Inoue dat = 0xFFFFFF; */ /* mask */ <--- 削除 1434 cc->data1 = 0xFFFFFF; <--- 追加 1435 #endif 1436 /* <--- 削除 1437 cmn_err(CE_NOTE," cc_enbint: cc->data1 = 0x%x",cc->data1); <--- 削除 1438 */ <--- 削除 1439 /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 13, 17), (u_short *)&dat)) E.Inoue */ <--- 削除 1440 if (status = camac_s(unit, CC_BIT24, NAF(30, 13, 17), (u_short *)&cc ->data1)) { <--- 追加 1441 mutex_exit(&cc->mutex); 1442 return status; 1443 } 1444 /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), ( u_short *)&dat)) E.Inoue */ <--- 削除 1445 if (status = camac_s(unit, CC_BIT16, NAF(30, 0, 1), &sdat)) { <--- 追加 1446 mutex_exit(&cc->mutex); 1447 return status; 1448 } 1449 sdat |= 0x0100; 1450 /* <--- 削除 1451 cmn_err(CE_NOTE," cc_enbint: sdat = 0x%x",sdat); <--- 削除 1452 */ <--- 削除 1453 /* return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_sho rt *)&dat); E.Inoue */ <--- 削除 1454 status = camac_s(unit, CC_BIT16, NAF(30, 0, 17), &sdat); <--- 追加 : 1439 /* cc_dsbint(cc) E.Inoue */ <--- 削除 1440 cc_dsbint(int unit) <--- 追加 1441 /* struct cc_device *cc; E.Inoue */ <--- 削除 1442 { 1443 /* E.Inoue */ <--- 削除 1444 struct cc_device *cc; <--- 追加 1445 /* end */ <--- 削除 1446 register int status; 1447 /* int dat; E.Inoue */ <--- 削除 1448 u_short sdat; 1449 1450 /* E.Inoue */ <--- 削除 1451 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1452 /* end */ <--- 削除 1453 /* disable LAM */ 1454 cc->k->lamc = CC_INT_AUTO_CLEAR | intrpri; 1455 1456 /* dat = 0x0; E.Inoue */ /* mask */ <--- 削除 1457 cc->data1 = 0x0; /* mask */ <--- 追加 1458 /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 13, 17), (u_short *)&dat)) E.Inoue */ <--- 削除 1459 if (status = camac_s(unit, CC_BIT24, NAF(30, 13, 17), (u_short *)&cc ->data1)) <--- 追加 1460 return status; 1461 /* if (status = camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 1), ( u_short *)&dat)) E.Inoue */ <--- 削除 1462 if (status = camac_s(unit, CC_BIT16, NAF(30, 0, 1), &sdat)) <--- 追加 1463 return status; 1464 sdat &= ~0x0100; 1465 /* return camac_s(getminor(cc->dev), CC_BIT24, NAF(30, 0, 17), (u_sho rt *)&dat); E.Inoue */ <--- 削除 1466 return camac_s(unit, CC_BIT16, NAF(30, 0, 17), &sdat); <--- 追加 1467 } 1468 1469 1470 /* cc_qwait(cc) E.Inoue */ <--- 削除 1471 cc_qwait(int unit) <--- 追加 1472 /* struct cc_device *cc; E.Inoue */ <--- 削除 1473 { 1474 /* E.Inoue */ <--- 削除 1475 struct cc_device *cc; <--- 追加 1476 /* end */ <--- 削除 1477 register int status, i; 1478 /* int dat; E.Inoue */ <--- 削除 1479 1480 /* E.Inoue */ <--- 削除 1481 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1482 /* end */ <--- 削除 1483 cc->camac_qx = status = 0; 1484 for (i=0; status==0 && (cc->camac_qx & CC_NOQ)!=0 && iptr_list[ 2];i++) 1485 /* status = camac_s(getminor(cc->dev), CC_BIT24, cc->ptr_list[1], ( u_short *)&dat); E.inoue */ <--- 削除 1486 status = camac_s(unit, CC_BIT24, cc->ptr_list[1], (u_short *)&cc ->data1); <--- 追加 : 1475 /* cc_qs16(cc) E.Inoue */ <--- 削除 1476 cc_qs16(int unit) <--- 追加 1477 /* struct cc_device *cc; E.Inoue */ <--- 削除 1478 { 1479 /* E.Inoue */ <--- 削除 1480 struct cc_device *cc; <--- 追加 1481 /* end */ <--- 削除 1482 register u_short mode, naf; 1483 register int status, len; 1484 int retlen; 1485 1486 /* E.Inoue */ <--- 削除 1487 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1488 /* end */ <--- 削除 1489 mode = CC_BLOCK | CC_BIT16 | CC_QSTOP; 1490 naf = cc->ptr_list[1]; 1491 len = cc->ptr_list[2]; 1492 /* flush_buf(cc); E.Inoue */ <--- 削除 1493 flush_buf(unit); <--- 追加 1494 /* if (status = check_buf(cc, len)) E.Inoue */ <--- 削除 1495 if (status = check_buf(unit, len)) <--- 追加 1496 return status; 1497 /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inou e */ <--- 削除 1498 return camac_b(unit, mode, naf, len, &retlen); <--- 追加 : 1493 /* cc_qs24(cc) E.Inoue */ <--- 削除 1494 cc_qs24(int unit) <--- 追加 1495 /* struct cc_device *cc; E.Inoue */ <--- 削除 1496 { 1497 /* E.Inoue */ <--- 削除 1498 struct cc_device *cc; <--- 追加 1499 /* end */ <--- 削除 1500 register u_short mode, naf; 1501 register int status, len; 1502 int retlen; 1503 1504 /* E.Inoue */ <--- 削除 1505 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1506 /* end */ <--- 削除 1507 mode = CC_BLOCK | CC_BIT24 | CC_QSTOP; 1508 naf = cc->ptr_list[1]; 1509 len = cc->ptr_list[2]; 1510 /* flush_buf(cc); E.Inoue */ <--- 削除 1511 flush_buf(unit); <--- 追加 1512 /* if (status = check_buf(cc, len * 2)) E.Inoue */ <--- 削除 1513 if (status = check_buf(unit, len * 2)) <--- 追加 1514 return status; 1515 /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inou e */ <--- 削除 1516 return camac_b(unit, mode, naf, len, &retlen); <--- 追加 : 1511 /* cc_qs16_a(cc) E.Inoue */ <--- 削除 1512 cc_qs16_a(int unit) <--- 追加 1513 /* struct cc_device *cc; E.Inoue */ <--- 削除 1514 { 1515 /* E.Inoue */ <--- 削除 1516 struct cc_device *cc; <--- 追加 1517 /* end */ <--- 削除 1518 register u_short mode, naf; 1519 register int status, len; 1520 int retlen; 1521 1522 /* E.Inoue */ <--- 削除 1523 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1524 /* end */ <--- 削除 1525 mode = CC_BLOCK | CC_BIT16 | CC_QSTOP; 1526 naf = cc->ptr_list[1]; 1527 len = cc->a_reg; 1528 /* flush_buf(cc); E.Inoue */ <--- 削除 1529 flush_buf(unit); <--- 追加 1530 /* if (status = check_buf(cc, len)) E.inoue */ <--- 削除 1531 if (status = check_buf(unit, len)) <--- 追加 1532 return status; 1533 /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inou e */ <--- 削除 1534 return camac_b(unit, mode, naf, len, &retlen); <--- 追加 : 1529 /* cc_qs24_a(cc) E.Inoue */ <--- 削除 1530 cc_qs24_a(int unit) <--- 追加 1531 /* struct cc_device *cc; E.Inoue */ <--- 削除 1532 { 1533 /* E.Inoue */ <--- 削除 1534 struct cc_device *cc; <--- 追加 1535 /* end */ <--- 削除 1536 register u_short mode, naf; 1537 register int status, len; 1538 int retlen; 1539 1540 /* E.Inoue */ <--- 削除 1541 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1542 /* end */ <--- 削除 1543 mode = CC_BLOCK | CC_BIT24 | CC_QSTOP; 1544 naf = cc->ptr_list[1]; 1545 len = cc->a_reg; 1546 /* flush_buf(cc); E.Inoue */ <--- 削除 1547 flush_buf(unit); <--- 追加 1548 /* if (status = check_buf(cc, len * 2)) E.Inoue */ <--- 削除 1549 if (status = check_buf(unit, len * 2)) 1550 return status; 1551 /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inou e */ <--- 削除 1552 return camac_b(unit, mode, naf, len, &retlen); <--- 追加 : 1547 /* cc_as16(cc) E.Inoue */ <--- 削除 1548 cc_as16(int unit) <--- 追加 1549 /* struct cc_device *cc; E.Inoue */ <--- 削除 1550 { 1551 /* E.Inoue */ <--- 削除 1552 struct cc_device *cc; <--- 追加 1553 /* end */ <--- 削除 1554 register u_short mode, naf; 1555 register int status, len; 1556 int retlen; 1557 1558 /* E.Inoue */ <--- 削除 1559 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1560 /* end */ <--- 削除 1561 mode = CC_BLOCK | CC_BIT16 | CC_QSCAN; 1562 naf = cc->ptr_list[1]; 1563 len = cc->ptr_list[2]; 1564 /* flush_buf(cc); E.Inoue */ <--- 削除 1565 flush_buf(unit); <--- 追加 1566 /* if (status = check_buf(cc, len)) E.Inoue */ <--- 削除 1567 if (status = check_buf(unit, len)) <--- 追加 1568 return status; 1569 /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inou e */ <--- 削除 1570 return camac_b(unit, mode, naf, len, &retlen); <--- 追加 : 1565 /* cc_as24(cc) E.Inoue */ <--- 削除 1566 cc_as24(int unit) <--- 追加 1567 /* struct cc_device *cc; E.Inoue */ <--- 削除 1568 { 1569 /* E.Inoue */ <--- 削除 1570 struct cc_device *cc; <--- 追加 1571 /* end */ <--- 削除 1572 register u_short mode, naf; 1573 register int status, len; 1574 int retlen; 1575 1576 /* E.Inoue */ <--- 削除 1577 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1578 /* end */ <--- 削除 1579 mode = CC_BLOCK | CC_BIT24 | CC_QSCAN; 1580 naf = cc->ptr_list[1]; 1581 len = cc->ptr_list[2]; 1582 /* flush_buf(cc); E.Inoue */ <--- 削除 1583 flush_buf(unit); <--- 追加 1584 /* if (status = check_buf(cc, len * 2)) E.Inoue */ <--- 削除 1585 if (status = check_buf(unit, len * 2)) <--- 追加 1586 return status; 1587 /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inou e */ <--- 削除 1588 return camac_b(unit, mode, naf, len, &retlen); <--- 追加 : 1583 /* cc_as16_a(cc) E.inoue */ <--- 削除 1584 cc_as16_a(int unit) <--- 追加 1585 /* struct cc_device *cc; E.Inoue */ <--- 削除 1586 { 1587 /* E.Inoue */ <--- 削除 1588 struct cc_device *cc; <--- 追加 1589 /* end */ <--- 削除 1590 register u_short mode, naf; 1591 register int status, len; 1592 int retlen; 1593 1594 /* E.Inoue */ <--- 削除 1595 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1596 /* end */ <--- 削除 1597 mode = CC_BLOCK | CC_BIT16 | CC_QSCAN; 1598 naf = cc->ptr_list[1]; 1599 len = cc->a_reg; 1600 /* flush_buf(cc); E.Inoue */ <--- 削除 1601 flush_buf(unit); <--- 追加 1602 /* if (status = check_buf(cc, len)) E.Inoue */ <--- 削除 1603 if (status = check_buf(unit, len)) <--- 追加 1604 return status; 1605 /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inou e */ <--- 削除 1606 return camac_b(unit, mode, naf, len, &retlen); <--- 追加 : 1601 /* cc_as24_a(cc) E.Inoue */ <--- 削除 1602 cc_as24_a(int unit) <--- 追加 1603 /* struct cc_device *cc; E.Inoue */ <--- 削除 1604 { 1605 /* E.Inoue */ <--- 削除 1606 struct cc_device *cc; <--- 追加 1607 /* end */ <--- 削除 1608 register u_short mode, naf; 1609 register int status, len; 1610 int retlen; 1611 1612 /* E.Inoue */ <--- 削除 1613 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1614 /* end */ <--- 削除 1615 mode = CC_BLOCK | CC_BIT24 | CC_QSCAN; 1616 naf = cc->ptr_list[1]; 1617 len = cc->a_reg; 1618 /* flush_buf(cc); E.Inoue */ <--- 削除 1619 flush_buf(unit); <--- 追加 1620 /* if (status = check_buf(cc, len * 2)) E.Inoue */ <--- 削除 1621 if (status = check_buf(unit, len * 2)) <--- 追加 1622 return status; 1623 /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inou e */ <--- 削除 1624 return camac_b(unit, mode, naf, len, &retlen); <--- 追加 : 1619 /* cc_igq16(cc) E.Inoue */ <--- 削除 1620 cc_igq16(int unit) <--- 追加 1621 /* struct cc_device *cc; E.Inoue */ <--- 削除 1622 { 1623 /* E.Inoue */ <--- 削除 1624 struct cc_device *cc; <--- 追加 1625 /* end */ <--- 削除 1626 register u_short mode, naf; 1627 register int status, len; 1628 int retlen; 1629 1630 /* E.Inoue */ <--- 削除 1631 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1632 /* end */ <--- 削除 1633 mode = CC_BLOCK | CC_BIT16 | CC_QIGNO; 1634 naf = cc->ptr_list[1]; 1635 len = cc->ptr_list[2]; 1636 /* flush_buf(cc); E.Inoue */ <--- 削除 1637 flush_buf(unit); <--- 追加 1638 /* if (status = check_buf(cc, len)) E.Inoue */ <--- 削除 1639 if (status = check_buf(unit, len)) <--- 追加 1640 return status; 1641 /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inou e */ <--- 削除 1642 return camac_b(unit, mode, naf, len, &retlen); <--- 追加 : 1637 /* cc_igq24(cc) E.Inoue */ <--- 削除 1638 cc_igq24(int unit) <--- 追加 1639 /* struct cc_device *cc; E.Inoue */ <--- 削除 1640 { 1641 /* E.Inoue */ <--- 削除 1642 struct cc_device *cc; <--- 追加 1643 /* end */ <--- 削除 1644 register u_short mode, naf; 1645 register int status, len; 1646 int retlen; 1647 1648 /* E.Inoue */ <--- 削除 1649 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1650 /* end */ <--- 削除 1651 mode = CC_BLOCK | CC_BIT24 | CC_QIGNO; 1652 naf = cc->ptr_list[1]; 1653 len = cc->ptr_list[2]; 1654 /* flush_buf(cc); E.Inoue */ <--- 削除 1655 flush_buf(unit); <--- 追加 1656 /* if (status = check_buf(cc, len * 2)) E.Inoue */ 1657 if (status = check_buf(unit, len * 2)) <--- 追加 1658 return status; 1659 /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inou e */ <--- 削除 1660 return camac_b(unit, mode, naf, len, &retlen); <--- 追加 : 1655 /* cc_igq16_a(cc) E.Inoue */ <--- 削除 1656 cc_igq16_a(int unit) <--- 追加 1657 /* struct cc_device *cc; E.Inoue */ <--- 削除 1658 { 1659 /* E.Inoue */ <--- 削除 1660 struct cc_device *cc; <--- 追加 1661 /* end */ <--- 削除 1662 register u_short mode, naf; 1663 register int status, len; 1664 int retlen; 1665 1666 /* E.Inoue */ <--- 削除 1667 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1668 /* end */ <--- 削除 1669 mode = CC_BLOCK | CC_BIT16 | CC_QIGNO; 1670 naf = cc->ptr_list[1]; 1671 len = cc->a_reg; 1672 /* flush_buf(cc); E.Inoue */ <--- 削除 1673 flush_buf(unit); <--- 追加 1674 /* if (status = check_buf(cc, len)) E.Inoue */ <--- 削除 1675 if (status = check_buf(unit, len)) <--- 追加 1676 return status; 1677 /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inou e */ <--- 削除 1678 return camac_b(unit, mode, naf, len, &retlen); <--- 追加 : 1673 /* cc_igq24_a(cc) E.Inoue */ <--- 削除 1674 cc_igq24_a(unit) <--- 追加 1675 /* struct cc_device *cc; E.Inoue */ <--- 削除 1676 { 1677 /* E.Inoue */ <--- 削除 1678 struct cc_device *cc; <--- 追加 1679 /* end */ <--- 削除 1680 register u_short mode, naf; 1681 register int status, len; 1682 int retlen; 1683 1684 /* E.Inoue */ <--- 削除 1685 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1686 /* end */ <--- 削除 1687 mode = CC_BLOCK | CC_BIT24 | CC_QIGNO; 1688 naf = cc->ptr_list[1]; 1689 len = cc->a_reg; 1690 /* flush_buf(cc); E.Inoue */ <--- 削除 1691 flush_buf(unit); <--- 追加 1692 /* if (status = check_buf(cc, len * 2)) E.Inoue */ <--- 削除 1693 if (status = check_buf(unit, len * 2)) <--- 追加 1694 return status; 1695 /* return camac_b(getminor(cc->dev), mode, naf, len, &retlen); E.Inou e */ <--- 削除 1696 return camac_b(unit, mode, naf, len, &retlen); <--- 追加 : 1691 /* int cc_move_as(cc) E.Inoue */ <--- 削除 1692 int cc_move_as(int unit) <--- 追加 1693 /* struct cc_device *cc; E.Inoue */ <--- 削除 1694 { 1695 /* E.Inoue */ <--- 削除 1696 struct cc_device *cc; <--- 追加 1697 1698 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1699 /* end */ <--- 削除 : 1700 /* int cc_move_at(cc) E.Inoue */ <--- 削除 1701 int cc_move_at(int unit) <--- 追加 1702 /* struct cc_device *cc; E.Inoue */ <--- 削除 1703 { 1704 /* E.Inoue */ <--- 削除 1705 struct cc_device *cc; <--- 追加 1706 1707 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1708 /* end */ <--- 削除 : 1709 /* int cc_move_sa(cc) */ <--- 削除 1710 int cc_move_sa(int unit) <--- 追加 1711 /* struct cc_device *cc; E.Inoue */ <--- 削除 1712 { 1713 /* E.Inoue */ <--- 削除 1714 struct cc_device *cc; <--- 追加 1715 1716 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1717 /* end */ <--- 削除 : 1718 /* int cc_move_st(cc) E.Inoue */ <--- 削除 1719 int cc_move_st(int unit) <--- 追加 1720 /* struct cc_device *cc; E.Inoue */ <--- 削除 1721 { 1722 /* E.Inoue */ <--- 削除 1723 struct cc_device *cc; <--- 追加 1724 1725 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1726 /* end */ <--- 削除 : 1727 /* int cc_move_ta(cc) E.Inoue */ <--- 削除 1728 int cc_move_ta(int unit) <--- 追加 1729 /* struct cc_device *cc; E.Inoue */ <--- 削除 1730 { 1731 /* E.Inoue */ <--- 削除 1732 struct cc_device *cc; <--- 追加 1733 1734 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1735 /* end */ <--- 削除 : 1736 /* int cc_move_ts(cc) E.Inoue */ <--- 削除 1737 int cc_move_ts(int unit) <--- 追加 1738 /* struct cc_device *cc; E.Inoue */ <--- 削除 1739 { 1740 /* E.Inoue */ <--- 削除 1741 struct cc_device *cc; <--- 追加 1742 1743 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1744 /* end */ <--- 削除 : 1745 /* int cc_move32_a(cc) E.Inoue */ <--- 削除 1746 int cc_move32_a(int unit) <--- 追加 1747 /* struct cc_device *cc; E.Inoue */ <--- 削除 1748 { 1749 /* E.Inoue */ <--- 削除 1750 struct cc_device *cc; <--- 追加 1751 1752 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1753 /* end */ <--- 削除 1754 cc->a_reg = Tolong(1); 1755 /* <--- 削除 1756 cmn_err(CE_NOTE," cc_move32_a: cc->a_reg = 0x%x", cc->a_reg); <--- 削除 1757 */ <--- 削除 : 1754 /* int cc_move32_s(cc) E.Inoue */ <--- 削除 1755 int cc_move32_s(int unit) <--- 追加 1756 /* struct cc_device *cc; E.Inoue */ <--- 削除 1757 { 1758 /* E.Inoue */ <--- 削除 1759 struct cc_device *cc; <--- 追加 1760 1761 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1762 /* end */ <--- 削除 : 1763 /* int cc_move32_t(cc) E.Inoue */ <--- 削除 1764 int cc_move32_t(int unit) <--- 追加 1765 /* struct cc_device *cc; E.Inoue */ <--- 削除 1766 { 1767 /* E.Inoue */ <--- 削除 1768 struct cc_device *cc; <--- 追加 1769 1770 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1771 /* end */ <--- 削除 : 1772 /* int cc_move16_a_ptr(cc) E.Inoue */ <--- 削除 1773 int cc_move16_a_ptr(int unit) <--- 追加 1774 /* struct cc_device *cc; E.Inoue */ <--- 削除 1775 { 1776 /* E.Inoue */ <--- 削除 1777 struct cc_device *cc; <--- 追加 1778 /* end */ <--- 削除 1779 register int status; 1780 1781 /* E.Inoue */ <--- 削除 1782 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1783 /* end */ <--- 削除 1784 /* if (status = check_buf(cc, 1)) E.Inoue */ <--- 削除 1785 if (status = check_buf(unit, 1)) <--- 追加 : 1785 /* int cc_move32_a_ptr(cc) E.Inoue */ <--- 削除 1786 int cc_move32_a_ptr(int unit) <--- 追加 1787 /* struct cc_device *cc; E.Inoue */ <--- 削除 1788 { 1789 /* E.Inoue */ <--- 削除 1790 struct cc_device *cc; <--- 追加 1791 /* end */ <--- 削除 1792 register int status; 1793 1794 /* E.Inoue */ <--- 削除 1795 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1796 /* end */ <--- 削除 1797 /* if (status = check_buf(cc, 2)) E.Inoue */ <--- 削除 1798 if (status = check_buf(unit, 2)) <--- 追加 : 1799 /* int cc_move16_ptr(cc) E.Inoue */ <--- 削除 1800 int cc_move16_ptr(int unit) <--- 追加 1801 /* struct cc_device *cc; E.Inoue */ <--- 削除 1802 { 1803 /* E.Inoue */ <--- 削除 1804 struct cc_device *cc; <--- 追加 1805 /* end */ <--- 削除 1806 register int status; 1807 1808 /* E.Inoue */ <--- 削除 1809 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1810 /* end */ <--- 削除 1811 /* if (status = check_buf(cc, 1)) E.inoue */ <--- 削除 1812 if (status = check_buf(unit, 1)) <--- 追加 : 1812 /* int cc_move32_ptr(cc) E.Inoue */ <--- 削除 1813 int cc_move32_ptr(int unit) <--- 追加 1814 /* struct cc_device *cc; E.Inoue */ <--- 削除 1815 { 1816 /* E.Inoue */ <--- 削除 1817 struct cc_device *cc; <--- 追加 1818 /* end */ <--- 削除 1819 register int status; 1820 1821 /* E.Inoue */ <--- 削除 1822 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1823 /* end */ <--- 削除 1824 /* if (status = check_buf(cc, 2)) E.Inoue */ <--- 削除 1825 if (status = check_buf(unit, 2)) <--- 追加 : 1826 /* int cc_move16_a_head(cc) E.Inoue */ <--- 削除 1827 int cc_move16_a_head(int unit) <--- 追加 1828 /* struct cc_device *cc; E.Inoue */ <--- 削除 1829 { 1830 /* E.Inoue */ <--- 削除 1831 struct cc_device *cc; <--- 追加 1832 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1833 /* end */ <--- 削除 : 1836 /* int cc_move16_head_a(cc) E.Inoue */ <--- 削除 1837 int cc_move16_head_a(int unit) <--- 追加 1838 /* struct cc_device *cc; E.Inoue */ <--- 削除 1839 { 1840 /* E.Inoue */ <--- 削除 1841 struct cc_device *cc; <--- 追加 1842 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1843 /* end */ <--- 削除 : 1847 /* int cc_move16_head(cc) E.Inoue */ <--- 削除 1848 int cc_move16_head(int unit) <--- 追加 1849 /* struct cc_device *cc; E.Inoue */ <--- 削除 1850 { 1851 /* E.Inoue */ <--- 削除 1852 struct cc_device *cc; <--- 追加 1853 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1854 /* end */ <--- 削除 : 1857 /* int cc_load_ptr(cc) E.Inoue */ <--- 削除 1858 int cc_load_ptr(int unit) <--- 追加 1859 /* struct cc_device *cc; E.Inoue */ <--- 削除 1860 { 1861 /* E.Inoue */ <--- 削除 1862 struct cc_device *cc; <--- 追加 1863 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1864 /* end */ <--- 削除 : 1866 /* int cc_load_remain(cc) E.Inoue */ <--- 削除 1867 int cc_load_remain(int unit) <--- 追加 1868 /* struct cc_device *cc; E.Inoue */ <--- 削除 1869 { 1870 /* E.Inoue */ <--- 削除 1871 struct cc_device *cc; <--- 追加 1872 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1873 /* end */ <--- 削除 : 1874 /* int cc_load_timer(cc) E.Inoue */ <--- 削除 1875 int cc_load_timer(int unit) <--- 追加 1876 /* struct cc_device *cc; E.Inoue */ <--- 削除 1877 { 1878 /* E.Inoue */ <--- 削除 1879 struct cc_device *cc; <--- 追加 1880 /* char klname[9]; */ <--- 削除 1881 1882 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1883 /* end */ <--- 削除 1884 /* 1885 cc->a_reg = 0; 1886 return 0; 1887 */ 1888 1889 /*** temporary ***/ 1890 /* return klexe(cc, cc->klist1[0].name); E.Inoue */ <--- 削除 1891 /* strcpy(klname, cc->klist1[0].name); */ <--- 削除 1892 /* cmn_err(CE_NOTE," cc_load_timer: cc->klist1[0].name = %s", cc->kli st1[0].name); */ <--- 削除 1893 /* <--- 削除 1894 cmn_err(CE_NOTE," cc_load_timer: cc->klist1[%d].name = %s", cc->a_re g, cc->klist1[cc->a_reg].name); <--- 削除 1895 cmn_err(CE_NOTE," cc_load_timer: cc->klist1[0] = 0x%x", cc->klist1[0 ]); <--- 削除 1896 cmn_err(CE_NOTE," cc_load_timer: before flush_buf #1: cc->ptr_udata = 0x%x", cc->ptr_udata); <--- 削除 1897 cmn_err(CE_NOTE," cc_load_timer: cc->now_wc = 0x%x", cc->now_wc); 1898 */ <--- 削除 1899 flush_buf(unit); <--- 追加 1900 /* <--- 削除 1901 cmn_err(CE_NOTE," cc_load_timer: after flush_buf #1: cc->ptr_udata = 0x%x", cc->ptr_udata); <--- 削除 1902 cmn_err(CE_NOTE," cc_load_timer: cc->now_wc = 0x%x", cc->now_wc); <--- 削除 1903 */ <--- 削除 1904 /* cmn_err(CE_NOTE," cc_load_timer: klname = %s", klname); */ <--- 削除 1905 /* return klexe(unit, cc->klist1[0].name); */ <--- 削除 1906 /* return klexe(unit, klname); */ <--- 削除 1907 /* cmn_err(CE_NOTE," cc_load_timer: klexe return value = 0x%x", klexe (unit, klname)); */ <--- 削除 1908 /* <--- 削除 1909 cmn_err(CE_NOTE," cc_load_timer: cc->a_reg = 0x%x", cc->a_reg); <--- 削除 1910 */ <--- 削除 1911 /* cmn_err(CE_NOTE," cc_load_timer: klexe return value = 0x%x", klexe (unit, cc->klist1[0].name)); */ <--- 削除 1912 /* <--- 削除 1913 cmn_err(CE_NOTE," cc_load_timer: klexe return value = 0x%x", klexe(u nit, cc->klist1[cc->a_reg].name)); <--- 削除 1914 */ <--- 削除 1915 klexe(unit, cc->klist1[cc->a_reg].name); <--- 追加 1916 /* <--- 削除 1917 cmn_err(CE_NOTE," cc_load_timer: before flush_buf #2: cc->ptr_udata = 0x%x", cc->ptr_udata); <--- 削除 1918 cmn_err(CE_NOTE," cc_load_timer: cc->now_wc = 0x%x", cc->now_wc); <--- 削除 1919 */ <--- 削除 1920 /* flush_buf(unit); */ <--- 削除 1921 /* <--- 削除 1922 cmn_err(CE_NOTE," cc_load_timer: after flush_buf #2: cc->ptr_udata = 0x%x", cc->ptr_udata); <--- 削除 1923 cmn_err(CE_NOTE," cc_load_timer: cc->now_wc = 0x%x", cc->now_wc); <--- 削除 1924 */ <--- 削除 1925 cc->ptr_udata += cc->now_wc + 2; <--- 追加 1926 /* <--- 削除 1927 cmn_err(CE_NOTE," cc_load_timer: increment cc->ptr_udata: cc->ptr_ud ata = 0x%x", cc->ptr_udata); <--- 削除 1928 */ <--- 削除 1929 return 0; <--- 追加 1930 /* <--- 削除 1931 return 0; <--- 削除 1932 */ <--- 削除 : 1891 /* int cc_load_count(cc) E.Inoue */ <--- 削除 1892 int cc_load_count(int unit) <--- 追加 1893 /* struct cc_device *cc; E.Inoue */ <--- 削除 1894 { 1895 /* E.Inoue */ <--- 削除 1896 struct cc_device *cc; <--- 追加 1897 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1898 /* end */ <--- 削除 : 1900 /* int cc_load_qx(cc) E.Inoue */ <--- 削除 1901 int cc_load_qx(int unit) <--- 追加 1902 /* struct cc_device *cc; E.Inoue */ <--- 削除 1903 { 1904 /* E.Inoue */ <--- 削除 1905 struct cc_device *cc; <--- 追加 1906 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1907 /* end */ <--- 削除 : 1909 /* int cc_head(cc) E.Inoue */ <--- 削除 1910 int cc_head(int unit) <--- 追加 1911 /* struct cc_device *cc; E.Inoue */ <--- 削除 1912 { 1913 /* E.Inoue */ <--- 削除 1914 struct cc_device *cc; <--- 追加 1915 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1916 /* end */ <--- 削除 : 1920 /* int cc_exchg_at(cc) E.Inoue */ <--- 削除 1921 int cc_exchg_at(int unit) <--- 追加 1922 /* struct cc_device *cc; E.Inoue */ <--- 削除 1923 { 1924 /* E.Inoue */ <--- 削除 1925 struct cc_device *cc; <--- 追加 1926 /* end */ <--- 削除 1927 register u_int i; 1928 1929 /* E.Inoue */ <--- 削除 1930 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1931 /* end */ <--- 削除 : 1932 /* int cc_swap_a(cc) E.Inoue */ <--- 削除 1933 int cc_swap_a(int unit) <--- 追加 1934 /* struct cc_device *cc; E.Inoue */ <--- 削除 1935 { 1936 /* E.Inoue */ <--- 削除 1937 struct cc_device *cc; <--- 追加 1938 /* end */ <--- 削除 1939 register u_short temp; 1940 1941 /* E.Inoue */ <--- 削除 1942 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1943 /* end */ <--- 削除 : 1947 /* int cc_bis32_at(cc) E.Inoue */ <--- 削除 1948 int cc_bis32_at(int unit) <--- 追加 1949 /* struct cc_device *cc; E.Inoue */ <--- 削除 1950 { 1951 /* E.Inoue */ <--- 削除 1952 struct cc_device *cc; <--- 追加 1953 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1954 /* end */ <--- 削除 : 1956 /* int cc_bis32_ta(cc) E.Inoue */ <--- 削除 1957 int cc_bis32_ta(int unit) <--- 追加 1958 /* struct cc_device *cc; E.Inoue */ <--- 削除 1959 { 1960 /* E.Inoue */ <--- 削除 1961 struct cc_device *cc; <--- 追加 1962 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1963 /* end */ <--- 削除 : 1965 /* int cc_bis32_a(cc) E.Inoue */ <--- 削除 1966 int cc_bis32_a(int unit) <--- 追加 1967 /* struct cc_device *cc; E.Inoue */ <--- 削除 1968 { 1969 /* E.Inoue */ <--- 削除 1970 struct cc_device *cc; <--- 追加 1971 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1972 /* end */ <--- 削除 : 1974 /* int cc_bis32_t(cc) E.Inoue */ <--- 削除 1975 int cc_bis32_t(int unit) <--- 追加 1976 /* struct cc_device *cc; E.Inoue */ <--- 削除 1977 { 1978 /* E.Inoue */ <--- 削除 1979 struct cc_device *cc; <--- 追加 1980 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1981 /* end */ <--- 削除 : 1983 /* int cc_bic32_at(cc) E.Inoue */ <--- 削除 1984 int cc_bic32_at(int unit) <--- 追加 1985 /* struct cc_device *cc; E.Inoue */ <--- 削除 1986 { 1987 /* E.Inoue */ <--- 削除 1988 struct cc_device *cc; <--- 追加 1989 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1990 /* end */ <--- 削除 : 1992 /* int cc_bic32_ta(cc) E.Inoue */ <--- 削除 1993 int cc_bic32_ta(int unit) <--- 追加 1994 /* struct cc_device *cc; E.Inoue */ <--- 削除 1995 { 1996 /* E.Inoue */ <--- 削除 1997 struct cc_device *cc; <--- 追加 1998 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 1999 /* end */ <--- 削除 : 2001 /* int cc_bic32_a(cc) E.Inoue */ <--- 削除 2002 int cc_bic32_a(int unit) <--- 追加 2003 /* struct cc_device *cc; E.Inoue */ <--- 削除 2004 { 2005 /* E.Inoue */ <--- 削除 2006 struct cc_device *cc; <--- 追加 2007 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2008 /* end */ <--- 削除 : 2010 /* int cc_bic32_t(cc) E.Inoue */ <--- 削除 2011 int cc_bic32_t(int unit) <--- 追加 2012 /* struct cc_device *cc; E.Inoue */ <--- 削除 2013 { 2014 /* E.Inoue */ <--- 削除 2015 struct cc_device *cc; <--- 追加 2016 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2017 /* end */ <--- 削除 : 2019 /* int cc_add32_at(cc) E.Inoue */ <--- 削除 2020 int cc_add32_at(int unit) <--- 追加 2021 /* struct cc_device *cc; E.Inoue * <--- 削除 2022 { 2023 /* E.Inoue */ <--- 削除 2024 struct cc_device *cc; <--- 追加 2025 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2026 /* end */ <--- 削除 : 2028 /* int cc_add32_ta(cc) E.Inoue */ <--- 削除 2029 int cc_add32_ta(int unit) <--- 追加 2030 /* struct cc_device *cc; E.Inoue */ <--- 削除 2031 { 2032 /* E.Inoue */ <--- 削除 2033 struct cc_device *cc; <--- 追加 2034 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2035 /* end */ <--- 削除 : 2037 /* int cc_add32_a(cc) E.Inoue */ <--- 削除 2038 int cc_add32_a(int unit) <--- 追加 2039 /* struct cc_device *cc; E.Inoue */ <--- 削除 2040 { 2041 /* E.Inoue */ <--- 削除 2042 struct cc_device *cc; <--- 追加 2043 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2044 /* end */ <--- 削除 : 2046 /* int cc_add32_t(cc) E.Inoue */ <--- 削除 2047 int cc_add32_t(int unit) <--- 追加 2048 /* struct cc_device *cc; E.Inoue */ <--- 削除 2049 { 2050 /* E.Inoue */ <--- 削除 2051 struct cc_device *cc; <--- 追加 2052 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2053 /* end */ <--- 削除 : 2055 /* int cc_sub32_at(cc) E.Inoue */ <--- 削除 2056 int cc_sub32_at(int unit) <--- 追加 2057 /* struct cc_device *cc; E.Inoue */ <--- 削除 2058 { 2059 /* E.Inoue */ <--- 削除 2060 struct cc_device *cc; <--- 追加 2061 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2062 /* end */ <--- 削除 : 2064 /* int cc_sub32_ta(cc) E.Inoue */ <--- 削除 2065 int cc_sub32_ta(int unit) <--- 追加 2066 /* struct cc_device *cc; E.Inoue */ <--- 削除 2067 { 2068 /* E.Inoue */ <--- 削除 2069 struct cc_device *cc; <--- 追加 2070 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2071 /* end */ <--- 削除 : 2073 /* int cc_sub32_a(cc) E.Inoue */ <--- 削除 2074 int cc_sub32_a(int unit) <--- 追加 2075 /* struct cc_device *cc; E.Inoue */ <--- 削除 2076 { 2077 /* E.Inoue */ <--- 削除 2078 struct cc_device *cc; <--- 追加 2079 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2080 /* end */ <--- 削除 : 2082 /* int cc_sub32_t(cc) E.Inoue */ <--- 削除 2083 int cc_sub32_t(int unit) <--- 追加 2084 /* struct cc_device *cc; E.Inoue */ <--- 削除 2085 { 2086 /* E.Inoue */ <--- 削除 2087 struct cc_device *cc; <--- 追加 2088 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2089 /* end */ <--- 削除 : 2091 /* int cc_mul32_at(cc) E.Inoue */ <--- 削除 2092 int cc_mul32_at(int unit) <--- 追加 2093 /* struct cc_device *cc; E.Inoue */ <--- 削除 2094 { 2095 /* E.Inoue */ <--- 削除 2096 struct cc_device *cc; <--- 追加 2097 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2098 /* end */ <--- 削除 : 2100 /* int cc_mul32_ta(cc) E.Inoue */ <--- 削除 2101 int cc_mul32_ta(int unit) <--- 追加 2102 /* struct cc_device *cc; E.Inoue */ <--- 削除 2103 { 2104 /* E.Inoue */ <--- 削除 2105 struct cc_device *cc; <--- 追加 2106 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2107 /* end */ <--- 削除 : 2109 /* int cc_mul32_a(cc) E.Inoue */ <--- 削除 2110 int cc_mul32_a(int unit) <--- 追加 2111 /* struct cc_device *cc; E.Inoue */ <--- 削除 2112 { 2113 /* E.Inoue */ <--- 削除 2114 struct cc_device *cc; <--- 追加 2115 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2116 /* end */ <--- 削除 : 2118 /* int cc_mul32_t(cc) E.Inoue */ <--- 削除 2119 int cc_mul32_t(int unit) <--- 追加 2120 /* struct cc_device *cc; E.Inoue */ <--- 削除 2121 { 2122 /* E.Inoue */ <--- 削除 2123 struct cc_device *cc; <--- 追加 2124 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2125 /* end */ <--- 削除 : 2127 /* int cc_div32_at(cc) E.Inoue */ <--- 削除 2128 int cc_div32_at(int unit) <--- 追加 2129 /* struct cc_device *cc; E.Inoue */ <--- 削除 2130 { 2131 /* E.Inoue */ <--- 削除 2132 struct cc_device *cc; <--- 追加 2133 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2134 /* end */ <--- 削除 : 2138 /* int cc_div32_ta(cc) E.Inoue */ <--- 削除 2139 int cc_div32_ta(int unit) <--- 追加 2140 /* struct cc_device *cc; E.Inoue */ <--- 削除 2141 { 2142 /* E.Inoue */ <--- 削除 2143 struct cc_device *cc; <--- 追加 2144 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2145 /* end */ <--- 削除 : 2149 /* int cc_div32_a(cc) E.Inoue */ <--- 削除 2150 int cc_div32_a(int unit) <--- 追加 2151 /* struct cc_device *cc; E.Inoue */ <--- 削除 2152 { 2153 /* E.Inoue */ <--- 削除 2154 struct cc_device *cc; <--- 追加 2155 /* end */ <--- 削除 2156 register int i; 2157 2158 /* E.Inoue */ <--- 削除 2159 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2160 /* end */ <--- 削除 : 2162 /* int cc_div32_t(cc) E.Inoue */ <--- 削除 2163 int cc_div32_t(int unit) <--- 追加 2164 /* struct cc_device *cc; E.Inoue */ <--- 削除 2165 { 2166 /* E.Inoue */ <--- 削除 2167 struct cc_device *cc; <--- 追加 2168 /* end */ <--- 削除 2169 register int i; 2170 2171 /* E.Inoue */ <--- 削除 2172 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2173 /* end */ <--- 削除 : 2174 /* int cc_waitint(cc) E.Inoue */ <--- 削除 2175 int cc_waitint(int unit) <--- 追加 2176 /* struct cc_device *cc; E.inoue */ <--- 削除 2177 { 2178 /* E.Inoue */ <--- 削除 2179 struct cc_device *cc; <--- 追加 2180 /* end */ <--- 削除 2181 int s; 2182 /* E.Inoue u_long tick, timeout; */ <--- 削除 2183 2184 /* <--- 削除 2185 cmn_err(CE_NOTE," cc_waitint: enter"); <--- 削除 2186 */ <--- 削除 2187 /* E.Inoue */ <--- 削除 2188 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2189 mutex_enter(&cc->mutex); /* start MUTEX */ <--- 追加 2190 /* end */ <--- 削除 2191 cc->interrupt = 0; 2192 cc->k->lamc = CC_INT_AUTO_CLEAR | CC_INT_ENABLE | intrpri; 2193 2194 /* lock out clock */ 2195 /* s = spl5(); E.Inoue */ <--- 削除 2196 if (cc->interrupt & CC_INT_LAM) { 2197 cc->interrupt &= ~CC_INT_LAM; 2198 return 0; 2199 } 2200 2201 /* mutex_enter(&cc->mutex); E.Inoue */ /* start MUTEX */ <--- 削除 2202 /* E.Inoue drv_getparm(LBOLT, &tick); */ <--- 削除 2203 #ifdef CC_SPARC_LIST_EXTENSION 2204 /* E.Inoue timeout = tick + cc->a_reg * hz; */ <--- 削除 2205 /* <--- 削除 2206 cmn_err(CE_NOTE," cc_waitint: set timeout: cc->a_reg = 0x%x", cc->a_ reg); <--- 削除 2207 */ <--- 削除 2208 cc->timeout_id = timeout(cc_timeout, (caddr_t)&unit, cc->a_reg * hz) ; <--- 追加 2209 #else 2210 /* E.Inoue timeout = tick + CC_TIMEOUT_LAM * hz; */ <--- 削除 2211 cc->timeout_id = timeout(cc_timeout, (caddr_t)&unit, CC_TIMEOUT_LAM * hz); <--- 追加 2212 #endif 2213 /* wait interrupt */ 2214 /* E.Inoue <--- 削除 2215 if (cv_timedwait(&cc->cv, &cc->mutex, timeout) == 0) <--- 削除 2216 cc->interrupt |= CC_INT_TIMEOUT; <--- 削除 2217 end */ <--- 削除 2218 /* <--- 削除 2219 cmn_err(CE_NOTE," cc_waitint: before cv_wait_sig"); <--- 削除 2220 */ <--- 削除 2221 if (cv_wait_sig(&cc->cv, &cc->mutex) == 0) { <--- 追加 2222 untimeout(cc->timeout_id); <--- 追加 2223 mutex_exit(&cc->mutex); /* end MUTEX */ <--- 追加 2224 return EINTR; <--- 追加 2225 } <--- 追加 2226 mutex_exit(&cc->mutex); /* end MUTEX */ 2227 2228 /* splx(s); E.Inoue */ <--- 削除 2229 2230 /* <--- 削除 2231 cmn_err(CE_NOTE," cc_waitint: after cv_wait_sig"); <--- 削除 2232 */ <--- 削除 : 2237 else if( cc->interrupt & CC_INT_TIMEOUT ) { <--- 追加 2238 cc->interrupt &= ~CC_INT_TIMEOUT; <--- 追加 : 2214 /* int cc_waitevent(cc) E.Inoue */ <--- 削除 2215 int cc_waitevent(int unit) <--- 追加 2216 /* struct cc_device *cc; E.Inoue */ <--- 削除 2217 { 2218 /* E.Inoue */ <--- 削除 2219 struct cc_device *cc; <--- 追加 2220 /* end */ <--- 削除 2221 int s; 2222 /* E.Inoue u_long tick, timeout; */ <--- 削除 2223 2224 /* E.Inoue */ <--- 削除 2225 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2226 mutex_enter(&cc->mutex); /* start MUTEX */ <--- 追加 2227 /* end */ <--- 削除 2228 cc->interrupt = 0; 2229 cc->k->lamc = CC_INT_AUTO_CLEAR | CC_INT_ENABLE | intrpri; 2230 2231 /* lock out clock */ 2232 /* s = spl5(); E.Inoue */ <--- 削除 2233 if (cc->interrupt & CC_INT_LAM) { 2234 cc->interrupt &= ~CC_INT_LAM; 2235 cc->event_count++; 2236 return 0; 2237 } 2238 2239 /* mutex_enter(&cc->mutex); E.Inoue */ /* start MUTEX */ <--- 削除 2240 /* drv_getparm(LBOLT, &tick); */ <--- 削除 2241 #ifdef CC_SPARC_LIST_EXTENSION 2242 /* E.Inoue timeout = tick + cc->a_reg * hz; */ <--- 削除 2243 cc->timeout_id = timeout(cc_timeout, (caddr_t)&unit, cc->a_reg * hz) ; <--- 追加 2244 #else 2245 /* E.Inoue timeout = tick + CC_TIMEOUT_LAM * hz; */ <--- 削除 2246 cc->timeout_id = timeout(cc_timeout, (caddr_t)&unit, CC_TIMEOUT_LAM * hz); <--- 追加 2247 #endif 2248 /* wait interrupt */ 2249 /* E.Inoue <--- 削除 2250 if (cv_timedwait(&cc->cv, &cc->mutex, timeout) == 0) <--- 削除 2251 cc->interrupt |= CC_INT_TIMEOUT; <--- 削除 2252 */ <--- 削除 2253 if (cv_wait_sig(&cc->cv, &cc->mutex) == 0) { <--- 追加 2254 untimeout(cc->timeout_id); <--- 追加 2255 mutex_exit(&cc->mutex); /* end MUTEX */ <--- 追加 2256 return EINTR; <--- 追加 2257 } <--- 追加 2258 mutex_exit(&cc->mutex); /* end MUTEX */ 2259 2260 /* splx(s); E.Inoue */ <--- 削除 2261 2262 if (cc->interrupt & CC_INT_LAM) { 2263 cc->interrupt &= ~CC_INT_LAM; 2264 cc->event_count++; 2265 return 0; 2266 } 2267 else if( cc->interrupt & CC_INT_TIMEOUT ) { <--- 追加 2268 cc->interrupt &= ~CC_INT_TIMEOUT; <--- 追加 2269 return CC_STA_LIST_TIMEOUT; : 2256 /* int cc_br(cc) E.Inoue */ <--- 削除 2257 int cc_br(int unit) <--- 追加 2258 /* struct cc_device *cc; E.Inoue */ <--- 削除 2259 { 2260 /* E.Inoue */ <--- 削除 2261 struct cc_device *cc; <--- 追加 2262 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2263 /* end */ <--- 削除 : 2266 /* int cc_beq(cc) E.inoue */ <--- 削除 2267 int cc_beq(int unit) <--- 追加 2268 /* struct cc_device *cc; E.Inoue */ <--- 削除 2269 { 2270 /* E.Inoue */ <--- 削除 2271 struct cc_device *cc; <--- 追加 2272 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2273 /* end */ <--- 削除 : 2278 /* int cc_bne(cc) E.Inoue */ <--- 削除 2279 int cc_bne(int unit) <--- 追加 2280 /* struct cc_device *cc; E.Inoue */ <--- 削除 2281 { 2282 /* E.Inoue */ <--- 削除 2283 struct cc_device *cc; <--- 追加 2284 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2285 /* end */ <--- 削除 : 2290 /* int cc_bgt(cc) E.Inoue */ <--- 削除 2291 int cc_bgt(int unit) <--- 追加 2292 /* struct cc_device *cc; E.Inoue */ <--- 削除 2293 { 2294 /* E.Inoue */ <--- 削除 2295 struct cc_device *cc; <--- 追加 2296 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2297 /* end */ <--- 削除 : 2302 /* int cc_bge(cc) E.inoue */ <--- 削除 2303 int cc_bge(int unit) <--- 追加 2304 /* struct cc_device *cc; E.Inoue */ <--- 削除 2305 { 2306 /* E.Inoue */ <--- 削除 2307 struct cc_device *cc; <--- 追加 2308 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2309 /* end */ <--- 削除 : 2314 /* int cc_blt(cc) E.Inoue */ <--- 削除 2315 int cc_blt(int unit) <--- 追加 2316 /* struct cc_device *cc; E.Inoue */ <--- 削除 2317 { 2318 /* E.Inoue */ <--- 削除 2319 struct cc_device *cc; <--- 追加 2320 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2321 /* end */ <--- 削除 : 2326 /* int cc_ble(cc) E.Inoue */ <--- 削除 2327 int cc_ble(int unit) <--- 追加 2328 /* struct cc_device *cc; E.Inoue */ <--- 削除 2329 { 2330 /* E.Inoue */ <--- 削除 2331 struct cc_device *cc; <--- 追加 2332 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2333 /* end */ <--- 削除 : 2338 /* int cc_bbc(cc) E.Inoue */ <--- 削除 2339 int cc_bbc(int unit) <--- 追加 2340 /* struct cc_device *cc; E.Inoue */ <--- 削除 2341 { 2342 /* E.Inoue */ <--- 削除 2343 struct cc_device *cc; <--- 追加 2344 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2345 /* end */ <--- 削除 : 2350 /* int cc_bbs(cc) E.inoue */ <--- 削除 2351 int cc_bbs(int unit) <--- 追加 2352 /* struct cc_device *cc; E.Inoue */ <--- 削除 2353 { 2354 /* E.Inoue */ <--- 削除 2355 struct cc_device *cc; <--- 追加 2356 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2357 /* end */ <--- 削除 : 2371 * 11-OCT-2000 E.Inoue modify for Soalris2.x * <--- 追加 : 2374 /* kladd(cc, name) E.Inoue */ <--- 削除 2375 kladd(int unit, char *name) <--- 追加 2376 /* <--- 削除 2377 struct cc_device *cc; <--- 削除 2378 char *name; <--- 削除 2379 */ <--- 削除 2380 { 2381 /* E.Inoue */ <--- 削除 2382 struct cc_device *cc; <--- 追加 2383 /* end */ <--- 削除 2384 /* register struct K_REG *k = cc->k; */ <--- 削除 2385 register int i, code; 2386 2387 /* E.Inoue */ <--- 削除 2388 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2389 /* end */ <--- 削除 2390 cc->status = 0; 2391 2392 /* same name check */ 2393 /* <--- 削除 2394 cmn_err(CE_NOTE," kladd: step1: cc->ptr_dir = 0x%x", cc->ptr_dir); <--- 削除 2395 */ <--- 削除 2396 for (i = 0; i < cc->ptr_dir; i++) 2397 if (strcmp(name, cc->klist1[i].name) == 0) 2398 return CC_STA_KLIST_SAMENAME; 2399 /* <--- 削除 2400 cmn_err(CE_NOTE," kladd: step1: name = %s", name); <--- 削除 2401 cmn_err(CE_NOTE," kladd: step1: cc->klist1[%d].name = %s", i, cc->kl ist1[i].name); <--- 削除 2402 cmn_err(CE_NOTE," kladd: step1: cc->klist1[%d] = 0x%x", i, cc->klist 1[i]); <--- 削除 2403 */ <--- 削除 2404 2405 if (cc->ptr_dir >= CC_KLIST_MAX_DIR) 2406 return CC_STA_KLIST_MEMORYFULL; 2407 2408 /* add */ 2409 cc->k->cma = cc->ptr_cma; 2410 /* <--- 削除 2411 cmn_err(CE_NOTE," kladd: step2: cc->k->cma = 0x%x, %d(dec)", cc->k-> cma, cc->k->cma); <--- 削除 2412 */ <--- 削除 2413 cc->klist1[cc->ptr_dir].cma = cc->ptr_cma; 2414 cc->klist1[cc->ptr_dir].wc = 0; 2415 /* <--- 削除 2416 cmn_err(CE_NOTE," kladd: step3: cc->klist1[%d].cma = 0x%x, %d(dec)", cc->ptr_dir, cc->klist1[cc->ptr_dir].cma, cc->klist1[cc->ptr_dir].cma); <--- 削除 2417 cmn_err(CE_NOTE," kladd: step3: cc->klist1[%d].wc = 0x%x", cc->ptr_d ir, cc->klist1[cc->ptr_dir].wc); <--- 削除 2418 */ <--- 削除 2419 2420 cc->ptr_list = cc->list_area; 2421 while (cc->status == 0) { 2422 if (cc->ptr_cma >= 0xFFFF - 4) 2423 return CC_STA_KLIST_MEMORYFULL; 2424 code = 0x00FF & cc->ptr_list[0] + 0x60; 2425 /* <--- 削除 2426 cmn_err(CE_NOTE," kladd: : in while, code = 0x%x", code); <--- 削除 2427 */ <--- 削除 2428 instruction_call = instruction[code]; 2429 /* <--- 削除 2430 cc->status = (*instruction_call)(cc); <--- 削除 2431 next_instruction(cc); <--- 削除 2432 */ <--- 削除 2433 cc->status = (*instruction_call)(unit); <--- 追加 2434 next_instruction(unit); <--- 追加 2435 } 2436 2437 strcpy(cc->klist1[cc->ptr_dir].name, name); 2438 cc->ptr_dir++; 2439 2440 /* cmn_err(CE_NOTE," kladd: step4: cc->klist1[0].wc = 0x%x", cc->kli st1[0].wc); */ <--- 削除 2441 /* <--- 削除 2442 cmn_err(CE_NOTE," kladd: step4: cc->ptr_cma = 0x%x, %d(dec)", cc->p tr_cma, cc->ptr_cma); <--- 削除 2443 cmn_err(CE_NOTE," kladd: step4: cc->klist1[%d].cma = 0x%x, %d(dec)", cc->ptr_dir, cc->klist1[cc->ptr_dir].cma, cc->klist1[cc->ptr_dir].cma); <--- 削除 2444 cmn_err(CE_NOTE," kladd: step4: cc->klist1[%d].wc = 0x%x", cc->a_re g, cc->klist1[cc->a_reg].wc); <--- 削除 2445 */ <--- 削除 : 2412 /* E.Inoue <--- 削除 2413 kldel(name) <--- 削除 2414 char *name; <--- 削除 2415 end */ <--- 削除 2416 /* E.Inoue */ <--- 削除 2417 kldel(int unit, char *name) <--- 追加 2418 /* End */ <--- 削除 2419 { 2420 struct cc_device *cc; 2421 register int i; 2422 2423 /* E.Inoue */ <--- 削除 2424 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2425 /* end */ <--- 削除 2426 /* same name check */ 2427 for (i = 0; i < cc->ptr_dir; i++) 2428 if (strcmp(name, cc->klist1[i].name) == 0) { 2429 cc->klist1[i].name[0] = '\0'; 2430 cc->klist1[i].wc = 0; <--- 追加 2431 /* <--- 削除 2432 cmn_err(CE_NOTE," kldel: delte list: name = %s", name); <--- 削除 2433 */ <--- 削除 : 2430 /* E.Inoue <--- 削除 2431 klexe(cc, name) <--- 削除 2432 struct cc_device *cc; <--- 削除 2433 char *name; <--- 削除 2434 end */ <--- 削除 2435 /* E.Inoue */ <--- 削除 2436 klexe(int unit, char *name) <--- 追加 2437 /* End */ <--- 削除 2438 { 2439 /* E.Inoue */ <--- 削除 2440 struct cc_device *cc; <--- 追加 2441 /* End */ <--- 削除 2442 /* register dev_t dev = cc->dev; E.Inoue */ <--- 削除 2443 register dev_t dev; <--- 追加 2444 /* register struct uio *uio = cc->uio; E.Inoue */ <--- 削除 2445 register struct uio *uio; <--- 追加 2446 /* register int *retlen = (int *)cc->ptr_udata; E.Inoue */ <--- 削除 2447 register int retlen; <--- 追加 2448 register int i, status; 2449 u_short cma_save; <--- 追加 2450 2451 /* E.Inoue */ <--- 削除 2452 /* ====== check */ <--- 削除 2453 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2454 /* <--- 削除 2455 cmn_err(CE_NOTE," klexe: enter unit = 0x%x", unit); <--- 削除 2456 cmn_err(CE_NOTE," klexe: enter cc = 0x%x", cc); <--- 削除 2457 */ <--- 削除 2458 /* ====== end check */ <--- 削除 2459 /* ====== check */ <--- 削除 2460 /* <--- 削除 2461 cmn_err(CE_NOTE," klexe: enter cc->ptr_dir = 0x%x", cc->ptr_dir); <--- 削除 2462 */ <--- 削除 2463 /* ====== end check */ <--- 削除 2464 /* ====== check */ <--- 削除 2465 dev = cc->dev; <--- 追加 2466 uio = cc->uio; <--- 追加 2467 /* ====== end check */ <--- 削除 2468 /* retlen = (int *)cc->ptr_udata; */ <--- 削除 2469 /* ====== check */ <--- 削除 2470 cc->retlen = 0; <--- 追加 2471 /* ====== end check */ <--- 削除 2472 /* end */ <--- 削除 2473 /* ====== check */ <--- 削除 2474 /* <--- 削除 2475 cmn_err(CE_NOTE," klexe: step0: cc->klist1[0].wc = 0x%x", cc->klist1 [0].wc); <--- 削除 2476 cmn_err(CE_NOTE," klexe: step0: retlen = 0x%x", retlen); <--- 削除 2477 cmn_err(CE_NOTE," klexe: step0: cc->ptr_udata = 0x%x", cc->ptr_udata ); <--- 削除 2478 */ <--- 削除 2479 2480 cc->klistf = CC_KLIST_YES; <--- 追加 2481 /* ====== end check */ <--- 削除 2482 2483 /* same name check */ 2484 /* ====== check */ <--- 削除 2485 for (i = 0; i < cc->ptr_dir; i++){ 2486 if (strcmp(name, cc->klist1[i].name) == 0){ 2487 /* <--- 削除 2488 cmn_err(CE_NOTE," klexe: step1: name = %s", name); <--- 削除 2489 cmn_err(CE_NOTE," klexe: step1: cc->klist1[%d].name = %s", i, cc->kl ist1[i].name); <--- 削除 2490 */ <--- 削除 2491 break; 2492 } 2493 } 2494 if (i >= cc->ptr_dir){ 2495 /* <--- 削除 2496 cmn_err(CE_NOTE," klexe: step1: No name: name = %s", name); <--- 削除 2497 */ <--- 削除 2498 return CC_STA_KLIST_NONAME; 2499 } 2500 2501 /* <--- 削除 2502 cmn_err(CE_NOTE," klexe: step2: cc->ptr_dir = 0x%x", cc->ptr_dir); <--- 削除 2503 */ <--- 削除 2504 cc->now_cma = cc->klist1[i].cma; 2505 cc->now_wc = cc->klist1[i].wc; 2506 /* <--- 削除 2507 cmn_err(CE_NOTE," klexe: step3: cc->klist1[%d].cma = 0x%x", i, cc->k list1[i].cma); <--- 削除 2508 cmn_err(CE_NOTE," klexe: step3: cc->klist1[%d].wc = 0x%x", i, cc->kl ist1[i].wc); <--- 削除 2509 cmn_err(CE_NOTE," klexe: step3: cc->now_cma = 0x%x, %d(dec)", cc->no w_cma, cc->now_cma); <--- 削除 2510 cmn_err(CE_NOTE," klexe: step3: cc->now_wc = 0x%x", cc->now_wc); <--- 削除 2511 */ <--- 削除 2512 /* ====== end check */ <--- 削除 2513 2514 /* first 2words for retlen */ 2515 /* E.Inoue uio->uio_iov->iov_base = (caddr_t)cc->ptr_udata; */ <--- 削除 2516 /* ====== check */ <--- 削除 2517 uio->uio_iov->iov_base = (caddr_t)(cc->ptr_udata + 2); 2518 /* ====== end check */ <--- 削除 2519 /* E.Inoue */ <--- 削除 2520 /* ====== check */ <--- 削除 2521 cc->kl_s_wr = 0; <--- 追加 2522 if( cc->klist1[i].wc == 0 ){ <--- 追加 2523 cma_save = cc->k->cma; <--- 追加 2524 if (( cc->k->cmr & 0x0060) == 0x0060){ <--- 追加 2525 cc->kl_s_wr = 1; <--- 追加 2526 cc->k->cma = cma_save; <--- 追加 2527 uio->uio_iov->iov_len = 1 * 2; <--- 追加 2528 } <--- 追加 2529 } <--- 追加 2530 else{ <--- 追加 2531 uio->uio_iov->iov_len = cc->klist1[i].wc * 2; <--- 追加 2532 } <--- 追加 2533 /* ====== end check */ <--- 削除 2534 /* end */ <--- 削除 2535 2536 /* uio->uio_iov->iov_len = cc->klist1[i].wc * 2; */ <--- 削除 2537 /* uio->uio_iov->iov_len = 1 * 2; */ <--- 削除 2538 /* ====== check */ <--- 削除 2539 uio->uio_iovcnt = 1; 2540 uio->uio_offset = 0; 2541 /* <--- 削除 2542 cmn_err(CE_NOTE," klexe: step4: uio->uio_iov->iov_base = 0x%x", uio- >uio_iov->iov_base); <--- 削除 2543 cmn_err(CE_NOTE," klexe: step4: uio->uio_iov->iov_len = 0x%x", uio-> uio_iov->iov_len); <--- 削除 2544 cmn_err(CE_NOTE," klexe: step4: uio->uio_segflg = 0x%x", uio->uio_se gflg); <--- 削除 2545 cmn_err(CE_NOTE," klexe: in: 0x%x %d %d %d %d %d", <--- 削除 2546 uio->uio_iov->iov_base, <--- 削除 2547 uio->uio_iov->iov_len, <--- 削除 2548 uio->uio_iovcnt, <--- 削除 2549 uio->uio_resid, <--- 削除 2550 uio->uio_segflg, <--- 削除 2551 uio->uio_offset); <--- 削除 2552 */ <--- 削除 2553 /* ====== end check */ <--- 削除 2554 2555 2556 /* Kinetic 2917 list is now READ ONLY. */ 2557 /* ====== check */ <--- 削除 2558 /* <--- 削除 2559 cmn_err(CE_NOTE," klexe: before physio()"); <--- 削除 2560 */ <--- 削除 2561 /* ====== end check */ <--- 削除 2562 /* E.Inoue */ <--- 削除 2563 /* <--- 削除 2564 status = physio(cc_strategy, (struct buf *)NULL, dev, B_READ, <--- 削除 2565 cc_minphys, uio); <--- 削除 2566 */ <--- 削除 2567 /* ====== check */ <--- 削除 2568 status = physio(cc_strategy, NULL, dev, B_READ, cc_minphys, uio); 2569 /* <--- 削除 2570 cmn_err(CE_NOTE," klexe: after physio(): status = 0x%x", status); <--- 削除 2571 */ <--- 削除 2572 /* ====== end check */ <--- 削除 2573 /* end */ <--- 削除 2574 /* ====== check */ <--- 削除 2575 /* <--- 削除 2576 cmn_err(CE_NOTE," klexe: after physio() &cc->retlen = 0x%x, cc->retl en = 0x%x", &cc->retlen, cc->retlen); <--- 削除 2577 */ <--- 削除 2578 /* ====== end check */ <--- 削除 2579 /* <--- 削除 2580 *retlen = cc->retlen; <--- 削除 2581 */ <--- 削除 2582 /* ====== check */ <--- 削除 2583 /* <--- 削除 2584 cmn_err(CE_NOTE," klexe: after physio(): cc->now_wc = 0x%x", cc->now _wc); <--- 削除 2585 cmn_err(CE_NOTE," klexe: after physio(): cc->k->mtc = 0x%x", cc->k-> mtc); <--- 削除 2586 */ <--- 削除 2587 /* ====== end check */ <--- 削除 2588 /* cmn_err(CE_NOTE," klexe: after physio(): cc->k->cwc = 0x%x", cc->k ->cwc); */ <--- 削除 2589 /* E.Inoue */ <--- 削除 2590 /* ====== check */ <--- 削除 2591 cc->retlen = cc->now_wc - cc->k->mtc; <--- 追加 2592 if(( cc->k->csr & CC_ERR ) == 0){ <--- 追加 2593 cc->kl_retl = cc->retlen; <--- 追加 2594 } <--- 追加 2595 else{ <--- 追加 2596 cc->kl_retl = -1; <--- 追加 2597 } <--- 追加 2598 /* ====== end check */ <--- 削除 2599 /* E.Inoue cc->retlen = 0xffffffff; for test */ <--- 削除 2600 /* cc->retlen = -1; */ <--- 削除 2601 /* ====== check */ <--- 削除 2602 copyout((caddr_t)&cc->kl_retl, (caddr_t)cc->ptr_udata, sizeof(cc->kl _retl)); <--- 追加 2603 /* ====== end check */ <--- 削除 2604 /* end */ <--- 削除 2605 /* ====== check */ <--- 削除 2606 /* <--- 削除 2607 cmn_err(CE_NOTE," klexe: out: 0x%x %d %d %d %d %d", <--- 削除 2608 uio->uio_iov->iov_base, <--- 削除 2609 uio->uio_iov->iov_len, <--- 削除 2610 uio->uio_iovcnt, <--- 削除 2611 uio->uio_resid, <--- 削除 2612 uio->uio_segflg, <--- 削除 2613 uio->uio_offset); <--- 削除 2614 2615 cmn_err(CE_NOTE," klexe: after physio() retlen = 0x%x", retlen); <--- 削除 2616 cmn_err(CE_NOTE," klexe: after physio() &cc->retlen = 0x%x, cc->retl en = 0x%x", &cc->retlen, cc->retlen); <--- 削除 2617 */ <--- 削除 2618 copyin((caddr_t)uio->uio_iov->iov_base, (caddr_t)cc->data_area, 10*sizeof(u_short)); <--- 追加 2619 /* <--- 削除 2620 cmn_err(CE_NOTE," klexe: after physio(): contents of uio->uio_io v->iov_base =0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x\n", cc-> data_area[0],cc->data_area[1],cc->data_area[2],cc->data_area[3],cc->data_area[4] ,cc->data_area[5],cc->data_area[6],cc->data_area[7],cc->data_area[8],cc->data_ar ea[9]); <--- 削除 2621 */ <--- 削除 2622 /* ====== end check */ <--- 削除 : 2491 /* E.Inoue <--- 削除 2492 klsave(cc, data) <--- 削除 2493 struct cc_device *cc; <--- 削除 2494 u_short *data; <--- 削除 2495 end */ <--- 削除 2496 /* E.Inoue */ <--- 削除 2497 klsave(int unit, u_short *data) <--- 追加 2498 /* end */ <--- 削除 2499 { 2500 struct cc_device *cc; <--- 追加 2501 /* register struct K_REG *k = cc->k; */ <--- 削除 2502 register int i, j, ptr = 1; 2503 register u_short save; 2504 2505 /* E.Inoue */ <--- 削除 2506 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2507 /* end */ <--- 削除 : 2523 /* E.Inoue <--- 削除 2524 klload(cc, data) <--- 削除 2525 struct cc_device *cc; <--- 削除 2526 u_short *data; <--- 削除 2527 end */ <--- 削除 2528 /* E.Inoue */ <--- 削除 2529 klload(int unit, u_short *data) <--- 追加 2530 /* end */ <--- 削除 2531 { 2532 struct cc_device *cc; <--- 追加 2533 /* register struct K_REG *k = cc->k; */ <--- 削除 2534 register int j, ptr = 1; <--- 追加 2535 2536 /* E.Inoue */ <--- 削除 2537 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2538 /* end */ <--- 削除 : 2561 /* E.Inoue <--- 削除 2562 kl_stop(cc) <--- 削除 2563 struct cc_device *cc; <--- 削除 2564 end */ <--- 削除 2565 kl_stop(int unit) <--- 追加 2566 { 2567 struct cc_device *cc; <--- 追加 2568 /* register struct K_REG *k = cc->k; */ <--- 削除 2569 2570 /* E.Inoue */ <--- 削除 2571 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2572 /* end */ <--- 削除 2573 cc->k->cmr = CC_HALT; 2574 /* E.Inoue */ <--- 削除 2575 cc->ptr_cma += 1; <--- 追加 2576 /* end */ <--- 削除 : 2571 /* E.Inoue <--- 削除 2572 kl_read16(cc) <--- 削除 2573 struct cc_device *cc; <--- 削除 2574 end */ <--- 削除 2575 /* E.Inoue */ <--- 削除 2576 kl_read16(int unit) <--- 追加 2577 /* end */ <--- 削除 2578 { 2579 struct cc_device *cc; <--- 追加 2580 /* register struct K_REG *k = cc->k; */ <--- 削除 2581 2582 /* E.Inoue */ <--- 削除 2583 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2584 /* end */ <--- 削除 : 2583 /* E.Inoue <--- 削除 2584 kl_read24(cc) <--- 削除 2585 struct cc_device *cc; <--- 削除 2586 end */ <--- 削除 2587 /* E.Inoue */ <--- 削除 2588 kl_read24(int unit) <--- 追加 2589 /* end */ <--- 削除 2590 { 2591 struct cc_device *cc; <--- 追加 2592 /* register struct K_REG *k = cc->k; */ <--- 削除 2593 2594 /* E.Inoue */ <--- 削除 2595 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2596 /* end */ <--- 削除 : 2595 /* E.inoue <--- 削除 2596 kl_write16(cc) <--- 削除 2597 struct cc_device *cc; <--- 削除 2598 end */ <--- 削除 2599 /* E.inoue */ <--- 削除 2600 kl_write16(int unit) <--- 追加 2601 /* end */ <--- 削除 2602 { 2603 struct cc_device *cc; <--- 追加 2604 /* register struct K_REG *k = cc->k; */ <--- 削除 2605 2606 /* E.Inoue */ <--- 削除 2607 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2608 /* end */ <--- 削除 2609 cc->k->cmr = CC_AD | CC_INLINE | CC_BIT16 | (cc->cur_crate << 8); 2610 cc->k->cmr = cc->ptr_list[1]; 2611 cc->k->cmr = cc->ptr_list[2]; 2612 cc->k->cmr = 0; 2613 /* E.Inoue */ <--- 削除 2614 /* cc->klist1[cc->ptr_dir].wc += 1; */ <--- 削除 2615 cc->klist1[cc->ptr_dir].wc += 0; <--- 追加 2616 /* end */ <--- 削除 : 2609 /* E.inoue <--- 削除 2610 kl_write24(cc) <--- 削除 2611 struct cc_device *cc; <--- 削除 2612 end */ <--- 削除 2613 /* E.Inoue */ <--- 削除 2614 kl_write24(int unit) <--- 追加 2615 /* end */ <--- 削除 2616 { 2617 struct cc_device *cc; <--- 追加 2618 /* register struct K_REG *k = cc->k; */ <--- 削除 2619 2620 /* E.Inoue */ <--- 削除 2621 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2622 /* end */ <--- 削除 2623 cc->k->cmr = CC_AD | CC_INLINE | CC_BIT24 | (cc->cur_crate << 8); 2624 cc->k->cmr = cc->ptr_list[1]; 2625 cc->k->cmr = cc->ptr_list[2]; 2626 cc->k->cmr = cc->ptr_list[3]; 2627 /* E.Inoue */ <--- 削除 2628 /* cc->klist1[cc->ptr_dir].wc += 1; */ <--- 削除 2629 cc->klist1[cc->ptr_dir].wc += 0; <--- 追加 2630 /* end */ <--- 削除 : 2623 /* E.Inoue <--- 削除 2624 kl_ndt(cc) <--- 削除 2625 struct cc_device *cc; <--- 削除 2626 end */ <--- 削除 2627 /* E.Inoue */ <--- 削除 2628 kl_ndt(int unit) <--- 追加 2629 /* end */ <--- 削除 2630 { 2631 struct cc_device *cc; <--- 追加 2632 /* register struct K_REG *k = cc->k; */ <--- 削除 2633 2634 /* E.Inoue */ <--- 削除 2635 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2636 /* end */ <--- 削除 2637 cc->k->cmr = CC_AD | CC_BIT16 | (cc->cur_crate << 8); 2638 cc->k->cmr = cc->ptr_list[1]; 2639 /* E.Inoue */ <--- 削除 2640 /* cc->klist1[cc->ptr_dir].wc += 1; */ <--- 削除 2641 cc->klist1[cc->ptr_dir].wc += 0; <--- 追加 2642 /* end */ <--- 削除 : 2636 /* E.Inoue <--- 削除 2637 kl_qs16(cc) <--- 削除 2638 struct cc_device *cc; <--- 削除 2639 end */ <--- 削除 2640 /* E.Inoue */ <--- 削除 2641 kl_qs16(int unit) <--- 追加 2642 /* end */ <--- 削除 2643 { 2644 struct cc_device *cc; <--- 追加 2645 /* register struct K_REG *k = cc->k; */ <--- 削除 2646 2647 /* E.Inoue */ <--- 削除 2648 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2649 /* end */ <--- 削除 : 2650 /* E.Inoue <--- 削除 2651 kl_qs24(cc) <--- 削除 2652 struct cc_device *cc; <--- 削除 2653 end */ <--- 削除 2654 /* E.Inoue */ <--- 削除 2655 kl_qs24(int unit) <--- 追加 2656 /* end */ <--- 削除 2657 { 2658 struct cc_device *cc; <--- 追加 2659 /* register struct K_REG *k = cc->k; */ <--- 削除 2660 2661 /* E.Inoue */ <--- 削除 2662 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2663 /* end */ <--- 削除 2664 cc->k->cmr = CC_AD | CC_BLOCK | CC_BIT24 | CC_QSTOP | (cc->cur_crate << 8); 2665 cc->k->cmr = cc->ptr_list[1]; 2666 /* E.Inoue cc->k->cmr = - cc->ptr_list[2] * 2; */ <--- 削除 2667 cc->k->cmr = - cc->ptr_list[2]; <--- 追加 : 2664 /* E.Inoue <--- 削除 2665 kl_as16(cc) <--- 削除 2666 struct cc_device *cc; <--- 削除 2667 end */ <--- 削除 2668 /* E.Inoue */ <--- 削除 2669 kl_as16(int unit) <--- 追加 2670 /* end */ <--- 削除 2671 { 2672 struct cc_device *cc; <--- 追加 2673 /* register struct K_REG *k = cc->k; */ <--- 削除 2674 2675 /* E.Inoue */ <--- 削除 2676 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2677 /* end */ <--- 削除 : 2678 /* E.Inoue <--- 削除 2679 kl_as24(cc) <--- 削除 2680 struct cc_device *cc; <--- 削除 2681 end */ <--- 削除 2682 /* E.Inoue */ <--- 削除 2683 kl_as24(int unit) <--- 追加 2684 /* end */ <--- 削除 2685 { 2686 struct cc_device *cc; <--- 追加 2687 /* register struct K_REG *k = cc->k; */ <--- 削除 2688 2689 /* E.Inoue */ <--- 削除 2690 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2691 /* end */ <--- 削除 2692 cc->k->cmr = CC_AD | CC_BLOCK | CC_BIT24 | CC_QSCAN | (cc->cur_crate << 8); 2693 cc->k->cmr = cc->ptr_list[1]; 2694 /* E.Inoue cc->k->cmr = - cc->ptr_list[2] * 2; */ <--- 削除 2695 cc->k->cmr = - cc->ptr_list[2]; <--- 追加 : 2692 /* E.Inoue <--- 削除 2693 kl_igq16(cc) <--- 削除 2694 struct cc_device *cc; <--- 削除 2695 end */ <--- 削除 2696 /* E.Inoue */ <--- 削除 2697 kl_igq16(int unit) <--- 追加 2698 /* end */ <--- 削除 2699 { 2700 struct cc_device *cc; <--- 追加 2701 /* register struct K_REG *k = cc->k; */ <--- 削除 2702 2703 /* E.Inoue */ <--- 削除 2704 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2705 /* end */ <--- 削除 : 2706 /* E.Inoue <--- 削除 2707 kl_igq24(cc) <--- 削除 2708 struct cc_device *cc; <--- 削除 2709 end */ <--- 削除 2710 /* E.Inoue */ <--- 削除 2711 kl_igq24(int unit) <--- 追加 2712 /* end */ <--- 削除 2713 { 2714 struct cc_device *cc; <--- 追加 2715 /* register struct K_REG *k = cc->k; */ <--- 削除 2716 2717 /* E.Inoue */ <--- 削除 2718 cc = ddi_get_soft_state(cc_state,unit); <--- 追加 2719 /* end */ <--- 削除 2720 cc->k->cmr = CC_AD | CC_BLOCK | CC_BIT24 | CC_QIGNO | (cc->cur_crate << 8); 2721 cc->k->cmr = cc->ptr_list[1]; 2722 /* E.Inoue cc->k->cmr = - cc->ptr_list[2] * 2; */ <--- 削除 2723 cc->k->cmr = - cc->ptr_list[2]; <--- 追加 : 2729 static int 2730 camac_s(int unit, u_short mode, u_short naf, u_short *dat) 2731 { 2732 register struct cc_device *cc; : 2749 /* <--- 削除 2750 cmn_err(CE_NOTE," camac_s: cc->cur_crate = 0x%x", cc->cur_crate); <--- 削除 2751 cmn_err(CE_NOTE," camac_s: mode = 0x%x", mode); <--- 削除 2752 cmn_err(CE_NOTE," camac_s: naf = 0x%x", naf); <--- 削除 2753 */ <--- 削除 : 2862 static int cc_strategy(struct buf *bp) 2863 { 2864 /* register struct cc_device *cc = &ccdevice[0]; */ : 2879 /* <--- 削除 2880 cmn_err(CE_NOTE," cc_strategy: enter"); <--- 削除 2881 */ <--- 削除 : 2885 /* <--- 削除 2886 cmn_err(CE_NOTE," cc_strategy: cc->naf = 0x%x", cc->naf); <--- 削除 2887 */ <--- 削除 2888 /* By E.Inoue */ <--- 追加 2889 if(cc->klistf == CC_KLIST_NO){ <--- 追加 2890 /* check DMA mode and set flags */ 2891 switch (cc->naf & 0x0018) { 2892 case 0x0000: /* CAMAC read */ 2893 flags = DDI_DMA_READ; 2894 break; 2895 case 0x0010: /* CAMAC write */ 2896 flags = DDI_DMA_WRITE; 2897 break; 2898 default: 2899 cc->status = CC_STA_BLOCK_INVFUNC; 2900 return 0; 2901 } 2902 } <--- 追加 2903 else{ <--- 追加 2904 /* flags = DDI_DMA_READ; */ <--- 削除 2905 flags = DDI_DMA_RDWR; <--- 追加 2906 } <--- 追加 2907 /* end */ <--- 追加 : 2949 /* <--- 削除 2950 cmn_err(CE_NOTE," cc_strategy: dma_addr = 0x%x", dma_addr); <--- 削除 2951 */ <--- 削除 : 2953 if (cc->klistf == CC_KLIST_NO) { <--- 追加 2954 cc->k->cma = CC_CMA_INIT; /* Initialize memory poi nter */ 2955 /* <--- 削除 2956 cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->c ma = 0x%x", cc->k->cma); <--- 削除 2957 */ <--- 削除 2958 cc->k->cmr = mode | (cc->cur_crate << 8); 2959 /* <--- 削除 2960 cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: mode | ( cc->cur_crate << 8) = 0x%x", mode | (cc->cur_crate << 8)); <--- 削除 2961 */ <--- 削除 2962 cc->k->cmr = naf; 2963 /* <--- 削除 2964 cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: naf = 0x %x", naf); <--- 削除 2965 */ <--- 削除 2966 cc->k->cmr = -(cc->len & 0xFFFF); /* Max len = 1MWord */ 2967 /* <--- 削除 2968 cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: -(cc->le n & 0xFFFF) = 0x%x", -(cc->len & 0xFFFF)); <--- 削除 2969 */ <--- 削除 2970 cc->k->cmr = 0xFFFF; 2971 /* cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k- >cmr = 0x%x", cc->k->cmr); */ <--- 削除 2972 cc->k->cmr = CC_HALT; 2973 /* <--- 削除 2974 cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: CC_HALT = 0x%x", CC_HALT); <--- 削除 2975 */ <--- 削除 2976 cc->k->cma = CC_CMA_INIT; /* Reset memory pointe r */ 2977 /* <--- 削除 2978 cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->c ma = 0x%x", cc->k->cma); <--- 削除 2979 */ <--- 削除 2980 cc->k->maclo = dma_addr & 0xFFFF; /* Set DMA base addres s */ 2981 /* <--- 削除 2982 cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->m aclo = 0x%x", cc->k->maclo); <--- 削除 2983 */ <--- 削除 2984 cc->k->machi = dma_addr >> 16; 2985 /* <--- 削除 2986 cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->m achi = 0x%x", cc->k->machi); <--- 削除 2987 */ <--- 削除 2988 cc->k->amr = CC_AMR_INIT; /* Set VME AM code */ 2989 /* <--- 削除 2990 cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->a mr = 0x%x", cc->k->amr); <--- 削除 2991 */ <--- 削除 2992 cc->k->mtc = wc; 2993 /* <--- 削除 2994 cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->m tc = 0x%x", cc->k->mtc); <--- 削除 2995 */ <--- 削除 2996 /* cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k- >cwc = 0x%x", cc->k->cwc); */ <--- 削除 2997 cc->k->cser = CC_DMA_RESET; /* DMA reset */ 2998 /* <--- 削除 2999 cmn_err(CE_NOTE," cc_strategy: Not Kinetic list-processing: cc->k->c ser = 0x%x", cc->k->cser); <--- 削除 3000 */ <--- 削除 : 2989 /* <--- 削除 2990 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing"); <--- 削除 2991 */ <--- 削除 2992 cc->k->cma = cc->now_cma; /* Initialize memory p ointer*/ 2993 /* cc->k->cma = 0x0000; */ /* Initialize memory po inter*/ <--- 削除 2994 /* <--- 削除 2995 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->now_cma = 0x%x", cc->now_cma); <--- 削除 2996 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); <--- 削除 2997 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); <--- 削除 2998 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); <--- 削除 2999 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); <--- 削除 3000 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); <--- 削除 3001 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); <--- 削除 3002 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); <--- 削除 3003 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); <--- 削除 3004 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); <--- 削除 3005 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cmr = 0x%x", cc->k->cmr); <--- 削除 3006 */ <--- 削除 3007 /* E.Inoue for testing */ <--- 削除 3008 cc->k->cma = cc->now_cma; /* Initialize memory p ointer*/ <--- 削除 3009 /* <--- 削除 3010 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->now_cma = 0x%x", cc->now_cma); <--- 削除 3011 */ <--- 削除 3012 /* end */ <--- 削除 3013 cc->k->maclo = dma_addr & 0xFFFF; /* Set DMA base addres s */ 3014 /* <--- 削除 3015 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->maclo = 0x%x", cc->k->maclo); <--- 削除 3016 */ <--- 削除 3017 cc->k->machi = dma_addr >> 16; 3018 /* <--- 削除 3019 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->machi = 0x%x", cc->k->machi); <--- 削除 3020 */ <--- 削除 3021 cc->k->amr = CC_AMR_INIT; /* Set VME AM code */ 3022 /* <--- 削除 3023 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->amr = 0x%x", cc->k->amr); <--- 削除 3024 */ <--- 削除 3025 /* E.Inoue */ <--- 追加 3026 if (cc->kl_s_wr == 1){ <--- 追加 3027 cc->k->mtc = 0x0000; <--- 追加 3028 cc->kl_s_wr = 0; <--- 追加 3029 } <--- 追加 3030 else{ <--- 追加 3031 cc->k->mtc = cc->now_wc; <--- 追加 3032 } <--- 追加 3033 3034 /* cc->k->mtc = cc->now_wc; */ <--- 削除 3035 /* cc->k->mtc = 0x0000; */ <--- 削除 3036 /* end */ <--- 追加 3037 /* <--- 削除 3038 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->mtc = 0x%x", cc->k->mtc); <--- 削除 3039 */ <--- 削除 3040 /* cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cwc = 0x%x", cc->k->cwc); */ <--- 削除 3041 cc->k->cser = CC_DMA_RESET; /* DMA reset */ 3042 /* <--- 削除 3043 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->cser = 0x%x", cc->k->cser); <--- 削除 3044 */ <--- 削除 3045 3046 cc->k->docr = CC_DOCR_INIT | CC_DMA_READ; 3047 /* <--- 削除 3048 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->docr = 0x%x", cc->k->docr); <--- 削除 3049 */ <--- 削除 3050 cc->k->sccr = CC_DMA_START; 3051 /* <--- 削除 3052 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->sccr = 0x%x", cc->k->sccr); <--- 削除 3053 */ <--- 削除 3054 cc->k->csr |= CC_DMA; /* DMA mode */ 3055 /* <--- 削除 3056 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->csr = 0x%x", cc->k->csr); <--- 削除 3057 */ <--- 削除 3058 cc->k->csr &= ~CC_WRITE; 3059 /* <--- 削除 3060 cmn_err(CE_NOTE," cc_strategy: Kinetic list-processing: cc->k->csr = 0x%x", cc->k->csr); <--- 削除 3061 */ <--- 削除 : 3018 /* <--- 削除 3019 cmn_err(CE_NOTE," cc_strategy: exit"); <--- 削除 3020 */ <--- 削除 : 3022 static int 3023 camac_b(int unit, u_short mode, u_short naf, int len, int *retlen) 3024 { 3025 register struct cc_device *cc; : 3036 cc->klistf = CC_KLIST_NO; <--- 削除 : 3085 /* <--- 削除 3086 cmn_err(CE_NOTE," camac_b: after physio() &cc->retlen = 0x%x, cc->re tlen = 0x%x", &cc->retlen, cc->retlen); <--- 削除 3087 */ <--- 削除 : 3116 /* cmn_err(CE_NOTE," camac_b: step1: cc->k->cwc = 0x%x", cc->k->cwc); */ <--- 削除 : 3125 /* <--- 削除 3126 cmn_err(CE_NOTE," camac_b: step1: cc->retlen = 0x%x", cc->retlen); <--- 削除 3127 */ <--- 削除 : 3132 /* <--- 削除 3133 cmn_err(CE_NOTE," camac_b: step2: cc->retlen = 0x%x", cc->retlen); <--- 削除 3134 */ <--- 削除 : 3137 /* <--- 削除 3138 cmn_err(CE_NOTE," camac_b: cc->retlen = 0x%x", cc->retlen); <--- 削除 3139 */ <--- 削除 : onlsun1[268]% onlsun1[272]% vi cc.c : 208 "CAMAC driver v2.0 by Y.Takeuchi(ICRR), E.Inoue(KEK)", : "cc.c" 3138 行、82172 バイト onlsun1[273]% onlsun1[273]% make cc ./script/cc_build.sh [Building for sun4m] rm -f cc.o onlsun1[274]% (3-4-8). FORCE-50T-sol2.6-list/cc.confファイルの整備 onlsun1[279]% diff cc.conf ../tmp1/FORCE-50T-sol2.6/cc.conf onlsun1[280]% cc.confファイルは変更していない。 (3-4-9). FORCE-50T-sol2.6-list/cc.hファイルの整備 onlsun1[280]% diff cc.h ../tmp1/FORCE-50T-sol2.6/cc.h 23c23 < /* #define CC_MINPHYS_SIZE 0x1f000 */ /* max word count = 128k */ --- > #define CC_MINPHYS_SIZE 0x1f000 /* max word count = 128k */ 25d24 < #define CC_MINPHYS_SIZE 0x10000 /* max word count = 64k */ 64d62 < /* E.Inoue #define CC_KLIST_CMAINIT 100 */ /* beginning of kinetic lists */ onlsun1[281]% デバッグ時に付加したゴミがある。 削除する。 (3-4-9-a). FORCE-50T-sol2.6-list/cc.hファイルの修正 onlsun1[283]% vi cc.h : 16 #define CC_START_MESSAGE \ 17 /* "CAMAC device driver V1.4x, 1991-1993 by Y.TAKEUCHI (T.I.T.)" */ <--- 削除 18 "CAMAC device driver V2.0, 1991-2000 by Y.TAKEUCHI(ICRR), E.Inoue(KE K)" <--- 追加 : 21 /* E.Inoue: begin */ <--- 削除 22 /* #define CC_MINPHYS_SIZE 0x10000 */ /* max word count = 64k */ <--- 削除 23 /* #define CC_MINPHYS_SIZE 0x1f000 */ /* max word count = 128k */ <--- 削除 24 /* E.Inoue: end */ <--- 削除 25 #define CC_MINPHYS_SIZE 0x10000 /* max word count = 64k */ <--- 追加 : 60 /* E.Inoue #define CC_KLIST_CMAINIT 100 */ /* beginning of kin etic lists */ <--- 削除 61 #define CC_KLIST_CMAINIT 100 /* beginning of kinetic lists */ <--- 追加 : onlsun1[284]% (3-4-10). FORCE-50T-sol2.6-list/cc_common.hファイルの整備 onlsun1[288]% diff cc_common.h ../tmp1/FORCE-50T-sol2.6/cc_common.h onlsun1[289]% cc_common.hファイルは変更していない。 (3-4-11). FORCE-50T-sol2.6-list/cc_config.hファイルの整備 onlsun1[289]% diff cc_config.h ../tmp1/FORCE-50T-sol2.6/cc_config.h onlsun1[290]% cc_config.hファイルは変更していない。 (3-4-12). FORCE-50T-sol2.6-list/forlib.cファイルの整備 onlsun1[290]% diff forlib.c ../tmp1/FORCE-50T-sol2.6/forlib.c onlsun1[291]% forlib.cファイルは変更していない。 (3-4-13). FORCE-50T-sol2.6-list/k2917.hファイルの整備 onlsun1[291]% diff k2917.h ../tmp1/FORCE-50T-sol2.6/k2917.h onlsun1[292]% (3-4-14). FORCE-50T-sol2.6-list/camasm/ ディレクトリの整備 onlsun1[304]% pwd /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6/CAMAC-list-Kit/FORCE-50T-sol2.6-list/camasm onlsun1[305]% ls -l 合計 78 -rw-r--r-- 1 inoue kek 448 6月 28日 10:41 Makefile -rw-r--r-- 1 inoue kek 11249 6月 28日 10:41 asm_code.h -rw-r--r-- 1 inoue kek 24762 6月 28日 10:41 camasm.c -rw-r--r-- 1 inoue kek 1646 6月 28日 10:41 err_code.h onlsun1[306]% このディレクトリのファイルに関しては全く変更を加えていない。 従って、 デバッグ後の削除、変更の作業は必要ない。 (3-4-15). FORCE-50T-sol2.6-list/camlist/ ディレクトリの整備 onlsun1[311]% pwd /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6/CAMAC-list-Kit/FORCE-50T-sol2.6-list/camlist onlsun1[312]% ls -l 合計 38 -rw-r--r-- 1 inoue kek 5023 8月 7日 13:52 Makefile -rw-r--r-- 1 inoue kek 2321 8月 8日 10:20 camtest4c.c -rw-r--r-- 1 inoue kek 709 7月 21日 10:20 camtest4dma.asm -rw-r--r-- 1 inoue kek 939 8月 1日 11:08 camtest4int.asm -rw-r--r-- 1 inoue kek 603 7月 21日 09:21 camtest4single.asm -rw-r--r-- 1 inoue kek 2047 7月 18日 14:57 camtest5c.c -rw-r--r-- 1 inoue kek 2129 7月 24日 14:54 camtest5c1.c -rw-r--r-- 1 inoue kek 2086 7月 21日 10:22 camtest5c2.c onlsun1[313]% (3-4-15A). FORCE-50T-sol2.6-list/camlist/Makefileファイルの整備 onlsun1[317]% pwd /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6/CAMAC-list-Kit/FORCE-50T-sol2.6-list/camlist onlsun1[318]% diff Makefile ../../camlist/Makefile.org 8,10d7 < # Modified : June 2000, E.Inoue < # : for Solaris 2.x < 12,16c9,10 < #LIBDIR = $(CAMDIR)/lib < LIBDIR = $(CAMDIR) < #INCDIR = $(CAMDIR)/include < #INCDIR = $(CAMDIR)/includes < INCDIR = $(CAMDIR) --- > LIBDIR = $(CAMDIR)/lib > INCDIR = $(CAMDIR)/include 22,24c16 < #CC = ccrt < #CC = /usr/ucb/cc < CC = cc --- > CC = ccrt 26,27c18 < #CC_OPTION = -DHP_RT < #CC_OPTION = -DOSF1 --- > CC_OPTION = -DHP_RT 37,38d27 < camtest5c1 \ < camtest5c2 \ 91,99d79 < camtest5c1: camtest5c1.c $(CAMLIBRARY) $(CAMLIBINCC) < $(CC) $(CC_OPTION) -o camtest5c1 camtest5c1.c $(CAMLIB) < < camtest5c2: camtest5c2.c $(CAMLIBRARY) $(CAMLIBINCC) < $(CC) $(CC_OPTION) -o camtest5c2 camtest5c2.c $(CAMLIB) < < inoue: inoue.c $(CAMLIBRARY) $(CAMLIBINCC) < $(CC) $(CC_OPTION) -o inoue inoue.c $(CAMLIB) < 115,117d94 < inouesingle.obj: inouesingle.asm < $(CAMASM) inouesingle.asm < 133,137d109 < t1 : t1.c $(CAMLIBRARY) $(CAMLIBINCC) < $(CC) $(CC_OPTION) -o t1 t1.c $(CAMLIB) < t2 : t2.c $(CAMLIBRARY) $(CAMLIBINCC) < $(CC) $(CC_OPTION) -o t2 t2.c $(CAMLIB) < onlsun1[319]% (3-4-15Aa). FORCE-50T-sol2.6-list/camlist/Makefileファイルの修正 onlsun1[320]% vi Makefile : 8 # Modified : June 2000, E.Inoue <--- 追加 9 # : for Solaris 2.x <--- 追加 : 11 CAMDIR = .. 12 #LIBDIR = $(CAMDIR)/lib <--- 削除 13 LIBDIR = $(CAMDIR) <--- 追加 14 #INCDIR = $(CAMDIR)/include <--- 削除 15 #INCDIR = $(CAMDIR)/includes <--- 削除 16 INCDIR = $(CAMDIR) <--- 追加 : 19 #CC = ccrt <--- 削除 20 #CC = /usr/ucb/cc <--- 削除 21 CC = cc <--- 追加 22 #CC_OPTION = +O3 -Wl,-aarchive <--- 削除 23 #CC_OPTION = -DHP_RT <--- 削除 24 #CC_OPTION = -DOSF1 <--- 削除 : 21 /* <--- 削除 22 all: creset cregdump cmdump \ <--- 削除 23 camtest1c \ <--- 削除 24 camtest10c camtest11c camtest12c camtest13c camtest14c \ <--- 削除 25 camtest2c \ <--- 削除 26 camtest3c camtest31c \ <--- 削除 27 camtest4c \ <--- 削除 28 camtest4.obj camtest4single.obj camtest4dma.obj camtest4etc.obj \ <--- 削除 29 camtest5c \ <--- 削除 30 camtest5c1 \ <--- 削除 31 camtest5c2 \ <--- 削除 32 camsingle_measure camsingle_measure1 camblock_measure camblock_meas ure1 \ <--- 削除 33 camint_measure1 <--- 削除 34 */ <--- 削除 35 all: camtest4c camtest5c camtest5c1 camtest5c2 \ <--- 追加 36 camtest4single.obj camtest4dma.obj camtest4int.obj <--- 追加 : 24 # VME CAMAC interface reset <--- 削除 25 creset: creset.c $(CAMLIBINCC) <--- 削除 26 $(CC) $(CC_OPTION) -o creset creset.c $(CAMLIB) <--- 削除 27 <--- 削除 28 # dump registers of VME-CAMAC interface <--- 削除 29 cregdump: cregdump.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 30 $(CC) $(CC_OPTION) -o cregdump cregdump.c $(CAMLIB) <--- 削除 31 <--- 削除 32 # dump contents of Command buffer with camlib <--- 削除 33 cmdump: cmdump.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 34 $(CC) $(CC_OPTION) -o cmdump cmdump.c $(CAMLIB) <--- 削除 35 <--- 削除 36 # camac test for c <--- 削除 37 camtestc: camtestc.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 38 $(CC) $(CC_OPTION) -o camtestc camtestc.c $(CAMLIB) <--- 削除 39 <--- 削除 40 # camac test1... for c <--- 削除 41 camtest1c: camtest1c.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 42 $(CC) $(CC_OPTION) -o camtest1c camtest1c.c $(CAMLIB) <--- 削除 43 camtest10c: camtest10c.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 44 $(CC) $(CC_OPTION) -o camtest10c camtest10c.c $(CAMLIB) <--- 削除 45 camtest11c: camtest11c.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 46 $(CC) $(CC_OPTION) -o camtest11c camtest11c.c $(CAMLIB) <--- 削除 47 camtest12c: camtest12c.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 48 $(CC) $(CC_OPTION) -o camtest12c camtest12c.c $(CAMLIB) <--- 削除 49 camtest13c: camtest13c.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 50 $(CC) $(CC_OPTION) -o camtest13c camtest13c.c $(CAMLIB) <--- 削除 51 camtest14c: camtest14c.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 52 $(CC) $(CC_OPTION) -o camtest14c camtest14c.c $(CAMLIB) <--- 削除 53 <--- 削除 54 # camac test2 for c <--- 削除 55 camtest2c: camtest2c.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 56 $(CC) $(CC_OPTION) -o camtest2c camtest2c.c $(CAMLIB) <--- 削除 57 <--- 削除 58 camtest3c: camtest3c.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 59 $(CC) $(CC_OPTION) -o camtest3c camtest3c.c $(CAMLIB) <--- 削除 60 <--- 削除 61 camtest31c: camtest31c.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 62 $(CC) $(CC_OPTION) -o camtest31c camtest31c.c $(CAMLIB) <--- 削除 63 <--- 削除 : 27 camtest41c: camtest41c.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 28 $(CC) $(CC_OPTION) -o camtest41c camtest41c.c $(CAMLIB) <--- 削除 29 30 camtest5c: camtest5c.c $(CAMLIBRARY) $(CAMLIBINCC) 31 $(CC) $(CC_OPTION) -o camtest5c camtest5c.c $(CAMLIB) 32 33 camtest5c1: camtest5c1.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 追加 34 $(CC) $(CC_OPTION) -o camtest5c1 camtest5c1.c $(CAMLIB) <--- 追加 35 <--- 追加 36 camtest5c2: camtest5c2.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 追加 37 $(CC) $(CC_OPTION) -o camtest5c2 camtest5c2.c $(CAMLIB) <--- 追加 : 36 inoue: inoue.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 37 $(CC) $(CC_OPTION) -o inoue inoue.c $(CAMLIB) <--- 削除 38 <--- 削除 39 camtest4.obj: camtest4.asm <--- 削除 40 $(CAMASM) camtest4.asm <--- 削除 41 <--- 削除 : 45 camtest4etc.obj: camtest4etc.asm <--- 削除 46 $(CAMASM) camtest4etc.asm <--- 削除 47 <--- 削除 48 inouesingle.obj: inouesingle.asm <--- 削除 49 $(CAMASM) inouesingle.asm <--- 削除 50 <--- 削除 51 camsingle_measure : camsingle_measure.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 52 $(CC) $(CC_OPTION) -o camsingle_measure camsingle_measure.c $(CA MLIB) <--- 削除 53 <--- 削除 54 camsingle_measure1 : camsingle_measure1.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 55 $(CC) $(CC_OPTION) -o camsingle_measure1 camsingle_measure1.c $( CAMLIB) <--- 削除 56 <--- 削除 57 camblock_measure : camblock_measure.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 58 $(CC) $(CC_OPTION) -o camblock_measure camblock_measure.c $(CAML IB) <--- 削除 59 <--- 削除 60 camblock_measure1 : camblock_measure1.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 61 $(CC) $(CC_OPTION) -o camblock_measure1 camblock_measure1.c $(CA MLIB) <--- 削除 62 63 camint_measure1 : camint_measure1.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 64 $(CC) $(CC_OPTION) -o camint_measure1 camint_measure1.c $(CAMLIB ) <--- 削除 65 <--- 削除 66 t1 : t1.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 67 $(CC) $(CC_OPTION) -o t1 t1.c $(CAMLIB) <--- 削除 68 t2 : t2.c $(CAMLIBRARY) $(CAMLIBINCC) <--- 削除 69 $(CC) $(CC_OPTION) -o t2 t2.c $(CAMLIB) <--- 削除 : 45 /* <--- 削除 46 clean: <--- 削除 47 rm -f creset cregdump cmdump \ <--- 削除 48 camtestc camtestf \ <--- 削除 49 camtest1c camtest1f \ <--- 削除 50 camtest10c camtest11c camtest12c camtest13c camtest14c \ <--- 削除 51 camtest2c camtest2f \ <--- 削除 52 camtest3c camtest3f camtest31c \ <--- 削除 53 camtest4c camtest4.obj camtest41c \ <--- 削除 54 camtest4single.obj camtest4dma.obj camtest4int.obj \ <--- 削除 55 camtest4etc.obj \ <--- 削除 56 camtest5c \ <--- 削除 57 camsingle_measure camsingle_measure1 camblock_measure camblock_meas ure1 \ <--- 削除 58 camint_measure1 \ <--- 削除 59 core <--- 削除 60 */ <--- 削除 61 clean: rm -f camtest4c camtest5c camtest5c1 camtest5c2 \ <--- 追加 62 camtest4single.obj camtest4dma.obj camtest4int.obj \ <--- 追加 63 core <--- 追加 onlsun1[321]% (3-4-15B). FORCE-50T-sol2.6-list/camlist/camtest4c.cファイルの整備 onlsun1[447]% diff camtest4c.c ../../camlist/camtest4c.c-org 7d6 < * Modified : August 2000, E.Inoue 30,31c29 < /* perror(strerror(status)); */ < perror((const char *)strerror(status)); --- > perror(strerror(status)); 47,48c45,46 < /* strcpy(Filename, "camtest4etc.obj"); */ < /* strcpy(Filename, "camtest4dma.obj"); */ --- > strcpy(Filename, "camtest4etc.obj"); > strcpy(Filename, "camtest4dma.obj"); 50c48 < /* strcpy(Filename, "camtest4.obj"); */ --- > strcpy(Filename, "camtest4.obj"); onlsun1[448]% (3-4-15Ba). FORCE-50T-sol2.6-list/camlist/camtest4c.cファイルの修正 onlsun1[452]% vi camtest4c.c : 30 /* perror(strerror(status)); */ <--- 削除 31 perror((const char *)strerror(status)); <--- 追加 : 46 /* strcpy(Filename, "camtest4etc.obj"); */ <--- 削除 47 /* strcpy(Filename, "camtest4dma.obj"); */ <--- 削除 48 strcpy(Filename, "camtest4single.obj"); <--- 追加 49 /* strcpy(Filename, "camtest4.obj"); */ <--- 削除 : onlsun1[453]% (3-4-15C). FORCE-50T-sol2.6-list/camlist/camtest4dma.asmファイルの整備 onlsun1[517]% diff camtest4dma.asm ../../camtest4dma.asm-org 46a47,55 > > > > > > > > > onlsun1[518]% (3-4-15Ca). FORCE-50T-sol2.6-list/camlist/camtest4dma.asmファイルの修正 修正の必要はない。 (3-4-15D). FORCE-50T-sol2.6-list/camlist/camtest4int.asmファイルの整備 onlsun1[545]% diff camtest4int.asm ../../camtest4int.asm-org 4d3 < ; Modified : Jul 31,2000 E.Inoue 17d15 < MOVE #0x10,A ; INT module's LAM mask. Station # = 5. 21,23c19 < ;LOOPIN1 WAITINT < LOOPIN1 MOVE #0xa,A ; Setting up timeout time. < WAITINT --- > LOOPIN1 WAITINT 36,38c32 < ;LOOPIN2 WAITEVENT < LOOPIN2 MOVE #0xa,A ; Setting up timeout time. < WAITEVENT --- > LOOPIN2 WAITEVENT 53a48,51 > > > > onlsun1[546]% (3-4-15Da). FORCE-50T-sol2.6-list/camlist/camtest4int.asmファイルの修正 onlsun1[554]% vi camtest4int.asm : 4 ; Modified : Jul 31,2000 E.Inoue <--- 追加 : 17 MOVE #0x10,A ; INT module's LAM mask. Station # = 5. <--- 追加 : 21 ;LOOPIN1 WAITINT <--- 削除 22 LOOPIN1 MOVE #0xa,A ; Setting up timeout time. <--- 追加 : 35 ;LOOPIN2 WAITEVENT <--- 削除 36 LOOPIN2 MOVE #0xa,A ; Setting up timeout time. <--- 追加 : onlsun1[555]% (3-4-15E). FORCE-50T-sol2.6-list/camlist/camtest4single.asmファイルの整備 onlsun1[564]% diff camtest4single.asm ../../camtest4single.asm-org 4d3 < ; Modified : July 21, 2000 E.Inoue 25d23 < WRITE #0x5555,(16,SW,0) onlsun1[565]% (3-4-15Ea). FORCE-50T-sol2.6-list/camlist/camtest4single.asmファイルの修正 onlsun1[569]% vi camtest4single.asm : 4 ; Modified : July 21, 2000 E.Inoue <--- 追加 : 25 WRITE #0x5555,(16,SW,0) <--- 追加 : onlsun1[570]% (3-4-15F). FORCE-50T-sol2.6-list/camlist/camtest5c.cファイルの整備 onlsun1[579]% diff camtest5c.c ../../camtest5c.c-org 5d4 < * Modified : October 16, 2000 E.Inoue 29,30c28 < /* perror(strerror(status)); */ < perror((const char *)strerror(status)); --- > perror(strerror(status)); 46c44 < /* strcpy(Filename, "camtest4.obj"); */ --- > strcpy(Filename, "camtest4.obj"); 48c46 < /* strcpy(Filename, "camtest4dma.obj"); */ --- > strcpy(Filename, "camtest4dma.obj"); 74a73,85 > > > > > > > > > > > > > onlsun1[580]% (3-4-15Fa). FORCE-50T-sol2.6-list/camlist/camtest5c.cファイルの修正 onlsun1[581]% vi camtest5c.c : 5 * Modified : October 16, 2000 E.Inoue <--- 追加 : 29 /* perror(strerror(status)); */ <--- 削除 30 perror((const char *)strerror(status)); <--- 追加 : 46 /* strcpy(Filename, "camtest4.obj"); */ <--- 削除 47 strcpy(Filename, "camtest4single.obj"); 48 /* strcpy(Filename, "camtest4dma.obj"); */ <--- 削除 : onlsun1[582]% (3-4-15G). FORCE-50T-sol2.6-list/camlist/camtest5c1.cファイルの整備 onlsun1[598]% diff camtest5c1.c ../../camtest5c.c-org 1c1 < /* File name : camtest5c1.c --- > /* File name : camtest5c.c 6d5 < * Modified : June 30, E.Inoue 29,30c28 < /* perror(strerror(status)); */ < perror((const char *)strerror(status)); --- > perror(strerror(status)); 46,49c44,46 < /* strcpy(Filename, "camtest4.obj"); */ < strcpy(Filename, "camtest4int.obj"); < /* strcpy(Filename, "camtest4single.obj"); */ < /* strcpy(Filename, "camtest4dma.obj"); */ --- > strcpy(Filename, "camtest4.obj"); > strcpy(Filename, "camtest4single.obj"); > strcpy(Filename, "camtest4dma.obj"); 75a73,85 > > > > > > > > > > > > > onlsun1[599]% (3-4-15Ga). FORCE-50T-sol2.6-list/camlist/camtest5c1.cファイルの修正 onlsun1[599]% vi camtest5c1.c : 1 /* File name : camtest5c1.c <--- 変更 : 6 * Modified : June 30, E.Inoue <--- 追加 : 29 /* perror(strerror(status)); */ <--- 削除 30 perror((const char *)strerror(status)); <--- 追加 : 46 /* strcpy(Filename, "camtest4.obj"); */ <--- 削除 47 strcpy(Filename, "camtest4int.obj"); <--- 追加 48 /* strcpy(Filename, "camtest4single.obj"); */ <--- 削除 49 /* strcpy(Filename, "camtest4dma.obj"); */ <--- 削除 : onlsun1[600]% (3-4-15H). FORCE-50T-sol2.6-list/camlist/camtest5c2.cファイルの整備 onlsun1[610]% diff camtest5c2.c ../../camtest5c.c-org 1c1 < /* File name : camtest5c2.c --- > /* File name : camtest5c.c 6d5 < * Modified : June 2000, E.Inoue 29,30c28 < /* perror(strerror(status)); */ < perror((const char *)strerror(status)); --- > perror(strerror(status)); 46,47c44,45 < /* strcpy(Filename, "camtest4.obj"); */ < /* strcpy(Filename, "camtest4single.obj"); */ --- > strcpy(Filename, "camtest4.obj"); > strcpy(Filename, "camtest4single.obj"); 74a73,85 > > > > > > > > > > > > > onlsun1[611]% (3-4-15Ha). FORCE-50T-sol2.6-list/camlist/camtest5c2.cファイルの修正 onlsun1[619]% vi camtest5c2.c : 1 /* File name : camtest5c2.c <--- 追加 : 6 * Modified : June 2000, E.Inoue <--- 追加 : 29 /* perror(strerror(status)); */ <--- 削除 30 perror((const char *)strerror(status)); <--- 追加 : 45 /* strcpy(Filename, "camtest4.obj"); */ <--- 削除 46 /* strcpy(Filename, "camtest4single.obj"); */ <--- 削除 47 strcpy(Filename, "camtest4dma.obj"); : onlsun1[620]% (3-4-16). FORCE-50T-sol2.6-list/camlist-kine/ ディレクトリの整備 onlsun1[634]% pwd /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6/CAMAC-list-Kit/FORCE-50T-sol2.6-list/camlist-kine onlsun1[635]% ls -l 合計 54 -rw-r--r-- 1 inoue kek 1917 9月 20日 16:35 Makefile -rw-r--r-- 1 inoue kek 895 9月 11日 09:59 cam6.asm -rw-r--r-- 1 inoue kek 2098 9月 28日 10:18 cam6.c -rw-r--r-- 1 inoue kek 134 9月 28日 14:51 cam6.klist -rw-r--r-- 1 inoue kek 1471 9月 8日 16:25 cam6a.c -rw-r--r-- 1 inoue kek 2976 9月 11日 14:03 cam6b.c -rw-r--r-- 1 inoue kek 2021 9月 12日 13:07 cam7.c -rw-r--r-- 1 inoue kek 2568 9月 20日 14:36 cam7A.c -rw-r--r-- 1 inoue kek 46 9月 28日 14:54 cam7A.klist -rw-r--r-- 1 inoue kek 1753 9月 20日 16:39 cam7B.c -rw-r--r-- 1 inoue kek 765 9月 14日 13:40 cam7a.asm -rw-r--r-- 1 inoue kek 767 9月 18日 15:54 cam7aA.asm -rw-r--r-- 1 inoue kek 1043 9月 18日 15:28 cam7b.asm -rw-r--r-- 1 inoue kek 1238 9月 20日 13:56 cam7bA.asm -rw-r--r-- 1 inoue kek 790 9月 18日 15:29 cam7cA.asm onlsun1[636]% (3-4-16A). FORCE-50T-sol2.6-list/camlist-kine/Makefileファイルの整備 onlsun1[669]% pwd /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6/CAMAC-list-Kit/FORCE-50T-sol2.6-list/camlist-kine onlsun1[670]% diff Makefile ../../camlist-kine/Makefile-org 5d4 < # * Modified Aug 9, 2000 E.Inoue * 7,10c6 < #CAMDIR = /usr/local/vme/camac < CAMDIR = .. < LIBDIR = $(CAMDIR) < INCDIR = $(CAMDIR) --- > CAMDIR = /usr/local/vme/camac 12,16c8 < #CLIB = -I$(CAMDIR)/include -L$(CAMDIR)/lib -lcamac < CLIB = -I$(INCDIR) -L$(LIBDIR) -lcamac < CAMLIBRARY = $(LIBDIR)/libcamac.a < CAMLIBINCC = $(INCDIR)/camlib.h < #CAMLIBINCF = $(INCDIR)/camlib.inc --- > CLIB = -I$(CAMDIR)/include -L$(CAMDIR)/lib -lcamac 20,21c12 < #CFLAGS = -O < CFLAGS = --- > CFLAGS = -O 23c14 < OBJ = cam0 cam1 cam1w cam3 cam4 cam5 cam6 cam6a cam7 cam6b cam7A cam7B --- > OBJ = cam0 cam1 cam1w cam3 cam4 cam5 cam6 cam6a cam7 47,50c38 < #cam6 : cam6.c cam6.asm < # $(CC) $(CFLAGS) cam6.c -o cam6 $(CLIB) < # $(CAMASM) cam6 a < cam6 : cam6.c cam6.asm $(CAMLIBRARY) $(CAMLIBINCC) --- > cam6 : cam6.c cam6.asm 57,59d44 < cam6b : cam6b.c < $(CC) $(CFLAGS) cam6b.c -o cam6b $(CLIB) < 65,73d49 < cam7A : cam7A.c cam7aA.asm cam7bA.asm cam7cA.asm < $(CC) $(CFLAGS) cam7A.c -o cam7A $(CLIB) < $(CAMASM) cam7aA a < $(CAMASM) cam7bA a < $(CAMASM) cam7cA a < < cam7B : cam7B.c < $(CC) $(CFLAGS) cam7B.c -o cam7B $(CLIB) < onlsun1[671]% (3-4-16Aa). FORCE-50T-sol2.6-list/camlist-kine/Makefileファイルの修正 onlsun1[672]% vi Makefile : 5 # * Modified Aug 9, 2000 E.Inoue * <--- 追加 : 7 #CAMDIR = /usr/local/vme/camac <--- 削除 8 CAMDIR = .. <--- 追加 9 LIBDIR = $(CAMDIR) <--- 追加 10 INCDIR = $(CAMDIR) <--- 追加 : 12 #CLIB = -I$(CAMDIR)/include -L$(CAMDIR)/lib -lcamac <--- 削除 13 CLIB = -I$(INCDIR) -L$(LIBDIR) -lcamac <--- 追加 14 CAMLIBRARY = $(LIBDIR)/libcamac.a <--- 追加 15 CAMLIBINCC = $(INCDIR)/camlib.h <--- 追加 16 #CAMLIBINCF = $(INCDIR)/camlib.inc <--- 削除 : 16 #CFLAGS = -g <--- 削除 17 #CFLAGS = -O <--- 削除 18 CFLAGS = <--- 追加 : 18 #OBJ = cam0 cam1 cam1w cam3 cam4 cam5 cam6 cam6a cam7 cam6b cam7A cam 7B <--- 削除 19 OBJ = cam6 cam6a cam7 cam6b cam7A cam7B <--- 追加 : 23 cam0 : cam0.c <--- 削除 24 $(CC) $(CFLAGS) cam0.c -o cam0 $(CLIB) <--- 削除 25 <--- 削除 26 cam1 : cam1.c <--- 削除 27 $(CC) $(CFLAGS) cam1.c -o cam1 $(CLIB) <--- 削除 28 <--- 削除 29 cam1w : cam1w.c <--- 削除 30 $(CC) $(CFLAGS) cam1w.c -o cam1w $(CLIB) <--- 削除 31 <--- 削除 32 cam3 : cam3.c <--- 削除 33 $(CC) $(CFLAGS) cam3.c -o cam3 $(CLIB) <--- 削除 34 <--- 削除 35 cam4 : cam4.c cam4.asm <--- 削除 36 $(CC) $(CFLAGS) cam4.c -o cam4 $(CLIB) <--- 削除 37 $(CAMASM) cam4 a <--- 削除 38 <--- 削除 39 cam5 : cam5.c <--- 削除 40 $(CC) $(CFLAGS) cam5.c -o cam5 $(CLIB) <--- 削除 41 <--- 削除 42 #cam6 : cam6.c cam6.asm <--- 削除 43 # $(CC) $(CFLAGS) cam6.c -o cam6 $(CLIB) <--- 削除 44 # $(CAMASM) cam6 a <--- 削除 45 cam6 : cam6.c cam6.asm $(CAMLIBRARY) $(CAMLIBINCC) <--- 追加 46 $(CC) $(CFLAGS) cam6.c -o cam6 $(CLIB) <--- 追加 47 $(CAMASM) cam6 a <--- 追加 48 <--- 追加 49 cam6a : cam6a.c <--- 追加 50 $(CC) $(CFLAGS) cam6a.c -o cam6a $(CLIB) <--- 追加 51 <--- 追加 52 cam6b : cam6b.c <--- 追加 53 $(CC) $(CFLAGS) cam6b.c -o cam6b $(CLIB) <--- 追加 : 38 cam7A : cam7A.c cam7aA.asm cam7bA.asm cam7cA.asm <--- 追加 39 $(CC) $(CFLAGS) cam7A.c -o cam7A $(CLIB) <--- 追加 40 $(CAMASM) cam7aA a <--- 追加 41 $(CAMASM) cam7bA a <--- 追加 42 $(CAMASM) cam7cA a <--- 追加 43 <--- 追加 44 cam7B : cam7B.c <--- 追加 45 $(CC) $(CFLAGS) cam7B.c -o cam7B $(CLIB) <--- 追加 : onlsun1[673]% (3-4-16B). FORCE-50T-sol2.6-list/camlist-kine/cam6.asmファイルの整備 onlsun1[683]% diff cam6.asm ../../camlist-kine/cam6.asm-org 警告: ファイル ../../camlist-kine/cam6.asm-org の末尾に復帰改行 (newline) がありません。 3d2 < * Modified : 4-Jul-2000 E.Inoue * 7,9c6,7 < ;SW equ 11 ; Switch Register < SW equ 3 ; Switch Register < ;SCALER equ 6 ; CAMAC Scaler --- > SW equ 11 ; Switch Register > SCALER equ 6 ; CAMAC Scaler 11,30c9,14 < IGQ (0,SW,1),#6 < NDT (10,SW,0) < READ (0,SW,1) < READ.l (0,SW,1) < WRITE #6,(16,SW,0) < WRITE #7,(16,SW,0) < WRITE.l #6636321,(16,SW,0) < ; IGQ (0,SW,1),#32000 < IGQ (0,SW,1),#100 < IGQ.l (0,SW,1),#7 < ; IGQ.l (0,SW,1),#16000 < IGQ.l (0,SW,1),#100 < QS (0,SW,1),#7 < ; QS (0,SW,1),#32000 < QS (0,SW,1),#100 < QS.l (0,SW,1),#7 < ; QS.l (0,SW,1),#32000 < QS.l (0,SW,1),#100 < AS (0,SW,1),#1 < AS.l (0,SW,1),#1 --- > NDT (9,SCALER,1) > READ (0,SCALER,1) > READ (0,SCALER,1) > IGQ (0,SCALER,1),#10 > READ (0,SCALER,1) > READ (0,SCALER,1) 33c17 < end --- > end onlsun1[684]% (3-4-16Ba). FORCE-50T-sol2.6-list/camlist-kine/cam6.asmファイルの修正 onlsun1[713]% vi cam6.asm : 3 * Modified : 4-Jul-2000 E.Inoue * <--- 追加 : 7 ;SW equ 11 ; Switch Register <--- 削除 8 SW equ 3 ; Switch Register <--- 追加 9 ;SCALER equ 6 ; CAMAC Scaler <--- 削除 : 16 ; IGQ (0,SW,1),#32000 <--- 削除 17 IGQ (0,SW,1),#100 18 IGQ.l (0,SW,1),#7 19 ; IGQ.l (0,SW,1),#16000 <--- 削除 20 IGQ.l (0,SW,1),#100 21 QS (0,SW,1),#7 22 ; QS (0,SW,1),#32000 <--- 削除 23 QS (0,SW,1),#100 24 QS.l (0,SW,1),#7 25 ; QS.l (0,SW,1),#32000 <--- 削除 : onlsun1[714]% (3-4-16C). FORCE-50T-sol2.6-list/camlist-kine/cam6.cファイルの整備 onlsun1[723]% diff cam6.c ../../camlist-kine/cam6.c-org 20,23c20,21 < /* int data[D_size]; */ < unsigned short data[D_size]; < /* unsigned short *usp = (unsigned short *)data; */ < unsigned short *usp; --- > int data[D_size]; > unsigned short *usp = (unsigned short *)data; 29,33d26 < usp = data; < /* < printf("data buf's address = 0x%x\n", data); < */ < 41,48d33 < /* E.Inoue < data[0] = 1; < data[1] = 2; < data[2] = 3; < data[3] = 4; < data[4] = 5; < data[5] = 6; < end */ onlsun1[724]% (3-4-16Ca). FORCE-50T-sol2.6-list/camlist-kine/cam6.cファイルの修正 onlsun1[725]% vi cam6.c : 3 * 17-OCT-2000 Modified E.Inoue * : 21 /* int data[D_size]; */ <--- 削除 22 unsigned short data[D_size]; <--- 追加 23 /* unsigned short *usp = (unsigned short *)data; */ <--- 削除 24 unsigned short *usp; <--- 追加 : 28 usp = data; <--- 追加 29 /* <--- 削除 30 printf("data buf's address = 0x%x\n", data); <--- 削除 31 */ <--- 削除 : 37 /* E.Inoue <--- 削除 38 data[0] = 1; <--- 削除 39 data[1] = 2; <--- 削除 40 data[2] = 3; <--- 削除 41 data[3] = 4; <--- 削除 42 data[4] = 5; <--- 削除 43 data[5] = 6; <--- 削除 44 end */ <--- 削除 45 <--- 削除 : onlsun1[726]% (3-4-16D). FORCE-50T-sol2.6-list/camlist-kine/cam6a.cファイルの整備 onlsun1[730]% diff cam6a.c ../../camlist-kine/cam6.c-org 2c2 < * cam6a.c 20-FEB-1992 Y.Takeuchi * --- > * cam6.c 20-FEB-1992 Y.Takeuchi * 12c12 < #define DEFNAME "cam6.klist" --- > #define DEFNAME "cam6.obj" 45,46d44 < /* load klist */ < CKLOAD(filename); 47a46,60 > /* read camac list */ > status = CRLIST(filename, list, L_size, &lenlis, &i); > printf(" list length = %d\n", lenlis); > if (status) { > printf("Read list error!\n"); > exit(status); > } > > /* install the list to K2917 */ > status = CKADD("test1", list, lenlis); > if (status) { > printf("Load list error!\n"); > exit(status); > } > 49c62 < printf(" Now execute ---test1---\n"); --- > printf(" Now execute %s ...\n", filename); 58a72,74 > /* save to file */ > CKSAVE("cam6.klist"); > onlsun1[731]% (3-4-16Da). FORCE-50T-sol2.6-list/camlist-kine/cam6a.cファイルの修正 onlsun1[735]% vi cam6a.c : 2 * cam6a.c 20-FEB-1992 Y.Takeuchi * <--- 修正 3 * 17-OCT-2000 Modified E.Inoue * <--- 追加 : 13 /*#define DEFNAME "cam6.obj" */ <--- 削除 14 #define DEFNAME "cam6.klist" <--- 追加 : 46 /* load klist */ <--- 追加 47 CKLOAD(filename); <--- 追加 48 <--- 追加 : 49 /* Execute */ 50 printf(" Now execute ---test1---\n"); <--- 追加 51 CKEXEC("test1", data, D_size, &iosb); : onlsun1[736]% (3-4-16E). FORCE-50T-sol2.6-list/camlist-kine/cam6b.cファイルの整備 onlsun1[738]% diff cam6b.c ../../camlist-kine/cam6.c-org 2,3c2 < * cam6a.c 20-FEB-1992 Y.Takeuchi * < * modified 11-Sep-2000 E.Inoue --- > * cam6.c 20-FEB-1992 Y.Takeuchi * 13,14c12 < #define DEFNAME "cam6.klist" < #define UNDEFNAME "test1" --- > #define DEFNAME "cam6.obj" 28d25 < char filename1[33]; 32d28 < strcpy(filename1, UNDEFNAME); 49,50d44 < /* load klist */ < CKLOAD(filename); 52,55c46,52 < /* Execute */ < printf(" Now execute ---test1---\n"); < CKEXEC("test1", data, D_size, &iosb); < printf("\n"); --- > /* read camac list */ > status = CRLIST(filename, list, L_size, &lenlis, &i); > printf(" list length = %d\n", lenlis); > if (status) { > printf("Read list error!\n"); > exit(status); > } 57,61c54,59 < /* Dump buffer */ < for(i = 0; i < 10; i++) < printf("data[%3d]=0x%8x %10u usp[%3d]=0x%4x %5d usp[%3d]=0x%4x %5d\n", < i, data[i], data[i], i*2, usp[i*2], usp[i*2], i*2+1, usp[i*2+1], usp[i*2+1]); < printf("\n"); --- > /* install the list to K2917 */ > status = CKADD("test1", list, lenlis); > if (status) { > printf("Load list error!\n"); > exit(status); > } 63,66d60 < /* Initialize data buffer */ < for(i = 0; i < D_size; i++) < usp[i] = 0; < 68c62 < printf(" Now execute ---test1---\n"); --- > printf(" Now execute %s ...\n", filename); 78,79c72,73 < /* delete "test1" */ < CKDEL(filename1); --- > /* save to file */ > CKSAVE("cam6.klist"); 81,113d74 < /* Initialize data buffer */ < for(i = 0; i < D_size; i++) < usp[i] = 0; < < /* Execute */ < printf(" Now execute ---test1---\n"); < CKEXEC("test1", data, D_size, &iosb); < printf("\n"); < < /* Dump buffer */ < for(i = 0; i < 10; i++) < printf("data[%3d]=0x%8x %10u usp[%3d]=0x%4x %5d usp[%3d]=0x%4x %5d\n", < i, data[i], data[i], i*2, usp[i*2], usp[i*2], i*2+1, usp[i*2+1], usp[i*2+1]); < printf("\n"); < < /* load klist */ < CKLOAD(filename); < < /* Initialize data buffer */ < for(i = 0; i < D_size; i++) < usp[i] = 0; < < /* Execute */ < printf(" Now execute ---test1---\n"); < CKEXEC("test1", data, D_size, &iosb); < printf("\n"); < < /* Dump buffer */ < for(i = 0; i < 10; i++) < printf("data[%3d]=0x%8x %10u usp[%3d]=0x%4x %5d usp[%3d]=0x%4x %5d\n", < i, data[i], data[i], i*2, usp[i*2], usp[i*2], i*2+1, usp[i*2+1], usp[i*2+1]); < printf("\n"); < onlsun1[739]% (3-4-16Ea). FORCE-50T-sol2.6-list/camlist-kine/cam6b.cファイルの修正 onlsun1[743]% vi cam6b.c : 2 * cam6b.c 20-FEB-1992 Y.Takeuchi * <--- 修正 3 * modified 11-Sep-2000 E.Inoue * <--- 追加 : 13 #define DEFNAME "cam6.klist" <--- 修正 14 #define UNDEFNAME "test1" <--- 追加 : 28 char filename1[33]; <--- 追加 : 32 strcpy(filename1, UNDEFNAME); <--- 追加 : 49 /* load klist */ <--- 追加 50 CKLOAD(filename); <--- 追加 51 <--- 追加 : 52 /* Execute */ <--- 追加 53 printf(" Now execute ---test1---\n"); <--- 追加 54 CKEXEC("test1", data, D_size, &iosb); <--- 追加 55 printf("\n"); <--- 追加 56 <--- 追加 : 57 /* Dump buffer */ <--- 追加 58 for(i = 0; i < 10; i++) <--- 追加 59 printf("data[%3d]=0x%8x %10u usp[%3d]=0x%4x %5d usp[%3d]=0x%4x %5d\n", <--- 追加 60 i, data[i], data[i], i*2, usp[i*2], usp[i*2], i*2+1, usp[ i*2+1], usp[i*2+1]); <--- 追加 61 printf("\n"); <--- 追加 62 <--- 追加 : 63 /* Initialize data buffer */ <--- 追加 64 for(i = 0; i < D_size; i++) <--- 追加 65 usp[i] = 0; <--- 追加 66 <--- 追加 : 68 printf(" Now execute ---test1---\n"); <--- 追加 : 78 /* delete "test1" */ <--- 追加 79 CKDEL(filename1); <--- 追加 80 <--- 追加 : 81 /* Initialize data buffer */ <--- 追加 82 for(i = 0; i < D_size; i++) <--- 追加 83 usp[i] = 0; <--- 追加 84 <--- 追加 85 /* Execute */ <--- 追加 86 printf(" Now execute ---test1---\n"); <--- 追加 87 CKEXEC("test1", data, D_size, &iosb); <--- 追加 88 printf("\n"); <--- 追加 89 <--- 追加 90 /* Dump buffer */ <--- 追加 91 for(i = 0; i < 10; i++) <--- 追加 92 printf("data[%3d]=0x%8x %10u usp[%3d]=0x%4x %5d usp[%3d]=0x%4x %5d\n", <--- 追加 93 i, data[i], data[i], i*2, usp[i*2], usp[i*2], i*2+1, usp[ i*2+1], usp[i*2+1]); <--- 追加 94 printf("\n"); <--- 追加 95 <--- 追加 96 /* load klist */ <--- 追加 97 CKLOAD(filename); <--- 追加 98 <--- 追加 99 /* Initialize data buffer */ <--- 追加 100 for(i = 0; i < D_size; i++) <--- 追加 101 usp[i] = 0; <--- 追加 102 <--- 追加 103 /* Execute */ <--- 追加 104 printf(" Now execute ---test1---\n"); <--- 追加 105 CKEXEC("test1", data, D_size, &iosb); <--- 追加 106 printf("\n"); <--- 追加 107 <--- 追加 108 /* Dump buffer */ <--- 追加 109 for(i = 0; i < 10; i++) <--- 追加 110 printf("data[%3d]=0x%8x %10u usp[%3d]=0x%4x %5d usp[%3d]=0x%4x %5d\n", <--- 追加 111 i, data[i], data[i], i*2, usp[i*2], usp[i*2], i*2+1, usp[ i*2+1], usp[i*2+1]); <--- 追加 112 printf("\n"); <--- 追加 : onlsun1[744]% (3-4-16F). FORCE-50T-sol2.6-list/camlist-kine/cam7.cファイルの整備 onlsun1[780]% diff cam7.c ../../camlist-kine/cam7.c-org onlsun1[781]% (3-4-16Fa). FORCE-50T-sol2.6-list/camlist-kine/cam7.cファイルの修正 cam7.cファイルの修正個所はない。 (3-4-16G). FORCE-50T-sol2.6-list/camlist-kine/cam7A.cファイルの整備 onlsun1[787]% diff cam7A.c ../../camlist-kine/cam7.c-org 2,3c2 < * cam7A.c 29-MAR-1992 Y.Takeuchi * < * Modified E.Inoue * --- > * cam7.c 29-MAR-1992 Y.Takeuchi * 13,15c12,13 < #define DEFNAME "cam7aA.obj" < #define DEFNAME1 "cam7cA.obj" < #define NAME1 "cam7bA.obj" --- > #define DEFNAME "cam7a.obj" > #define NAME1 "cam7b.obj" 29d26 < char filename1[33]; 33d29 < strcpy(filename1, DEFNAME1); 51c47 < /* read camac list 0 */ --- > /* read camac list */ 59,60c55,56 < /* install the list 0 to K2917 */ < status = CKADD("test0", list, lenlis); --- > /* install the list to K2917 */ > status = CKADD("test1", list, lenlis); 66,80d61 < /* read camac list 1 */ < status = CRLIST(filename1, list, L_size, &lenlis, &i); < printf(" list length = %d\n", lenlis); < if (status) { < printf("Read list error!\n"); < exit(status); < } < < /* install the list 1 to K2917 */ < status = CKADD("test1", list, lenlis); < if (status) { < printf("Load list error!\n"); < exit(status); < } < 100,102d80 < /* save to file */ < CKSAVE("cam7A.klist"); < onlsun1[788]% (3-4-16Ga). FORCE-50T-sol2.6-list/camlist-kine/cam7A.cファイルの修正 onlsun1[792]% vi cam7A.c : 2 * cam7A.c 29-MAR-1992 Y.Takeuchi * <--- 修正 3 * 17-OCT-2000 Modified E.Inoue * <--- 追加 : 13 #define DEFNAME "cam7aA.obj" <--- 追加 14 #define DEFNAME1 "cam7cA.obj" <--- 追加 15 #define NAME1 "cam7bA.obj" <--- 追加 : 29 char filename1[33]; <--- 追加 : 33 strcpy(filename1, DEFNAME1); <--- 追加 : 51 /* read camac list 0 */ <--- 追加 : 59 /* install the list 0 to K2917 */ <--- 追加 60 status = CKADD("test0", list, lenlis); <--- 追加 : 66 /* read camac list 1 */ <--- 追加 67 status = CRLIST(filename1, list, L_size, &lenlis, &i); <--- 追加 68 printf(" list length = %d\n", lenlis); <--- 追加 69 if (status) { <--- 追加 70 printf("Read list error!\n"); <--- 追加 71 exit(status); <--- 追加 72 } <--- 追加 73 <--- 追加 74 /* install the list 1 to K2917 */ <--- 追加 75 status = CKADD("test1", list, lenlis); <--- 追加 76 if (status) { <--- 追加 77 printf("Load list error!\n"); <--- 追加 78 exit(status); <--- 追加 79 } <--- 追加 : 100 /* save to file */ <--- 追加 101 CKSAVE("cam7A.klist"); <--- 追加 102 <--- 追加 : onlsun1[793]% (3-4-16G). FORCE-50T-sol2.6-list/camlist-kine/cam7B.cファイルの整備 onlsun1[794]% diff cam7B.c ../../camlist-kine/cam7.c-org 2,3c2 < * cam7B.c 29-MAR-1992 Y.Takeuchi * < * Modified 20-Sep-2000 E.Inoue * --- > * cam7.c 29-MAR-1992 Y.Takeuchi * 13,14c12,13 < #define DEFNAME "cam7A.klist" < #define NAME1 "cam7bA.obj" --- > #define DEFNAME "cam7a.obj" > #define NAME1 "cam7b.obj" 48,49c47,53 < /* load klist */ < CKLOAD(filename); --- > /* read camac list */ > status = CRLIST(filename, list, L_size, &lenlis, &i); > printf(" list length = %d\n", lenlis); > if (status) { > printf("Read list error!\n"); > exit(status); > } 50a55,61 > /* install the list to K2917 */ > status = CKADD("test1", list, lenlis); > if (status) { > printf("Load list error!\n"); > exit(status); > } > onlsun1[795]% (3-4-16Ga). FORCE-50T-sol2.6-list/camlist-kine/cam7B.cファイルの修正 onlsun1[798]% vi cam7B.c : 2 * cam7B.c 29-MAR-1992 Y.Takeuchi * <--- 修正 3 * Modified 20-Sep-2000 E.Inoue * <--- 追加 : 13 #define DEFNAME "cam7A.klist" <--- 修正 14 #define NAME1 "cam7bA.obj" <--- 修正 : 48 /* load klist */ <--- 追加 49 CKLOAD(filename); <--- 追加 50 <--- 追加 : onlsun1[799]% (3-4-16H). FORCE-50T-sol2.6-list/camlist-kine/cam7a.asmファイルの整備 onlsun1[819]% diff cam7a.asm ../../camlist-kine/cam7a.asm-org 警告: ファイル ../../camlist-kine/cam7a.asm-org の末尾に復帰改行 (newline) がありません。 3d2 < * Modified: 4-Jul-2000 E.Inoue * 7,8c6 < ;SW equ 11 ; Switch Register < SW equ 3 ; Switch Register --- > SW equ 11 ; Switch Register 10a9 > READ (0,SCALER,1) 12,18c11,16 < ;; READ (0,SCALER,1) < ;; IGQ (0,SCALER,1),#3 < ;; READ (0,SCALER,1) < ;; READ (0,SCALER,1) < ;; IGQ (0,SCALER,1),#4 < ;; READ (0,SCALER,1) < ;; READ (0,SCALER,1) --- > ; IGQ (0,SCALER,1),#3 > ; READ (0,SCALER,1) > ; READ (0,SCALER,1) > ; IGQ (0,SCALER,1),#4 > ; READ (0,SCALER,1) > ; READ (0,SCALER,1) 20,28d17 < READ.l (0,SW,1) < ; READ (0,SCALER,1) < ; IGQ (0,SCALER,1),#3 < ; READ (0,SCALER,1) < ; READ (0,SCALER,1) < ; IGQ (0,SCALER,1),#4 < ; READ (0,SCALER,1) < ; READ (0,SCALER,1) < ; 30c19 < end --- > end onlsun1[820]% (3-4-16Ha). FORCE-50T-sol2.6-list/camlist-kine/cam7a.asmファイルの修正 onlsun1[821]% vi cam7a.asm : 2 * cam7a.ASM 29-MAR-1992 Y.Takeuchi * <--- 修正 3 * Modified: 4-Jul-2000 E.Inoue * <--- 追加 : 7 ;SW equ 11 ; Switch Register <--- 削除 8 SW equ 3 ; Switch Register <--- 追加 9 SCALER equ 6 ; CAMAC Scaler <--- 削除 10 ; 11 ; READ (0,SCALER,1) <--- 削除 12 ;; READ (0,SCALER,1) <--- 削除 13 ;; IGQ (0,SCALER,1),#3 <--- 削除 14 ;; READ (0,SCALER,1) <--- 削除 15 ;; READ (0,SCALER,1) <--- 削除 16 ;; IGQ (0,SCALER,1),#4 <--- 削除 17 ;; READ (0,SCALER,1) <--- 削除 18 ;; READ (0,SCALER,1) <--- 削除 19 ; <--- 削除 20 READ.l (0,SW,1) <--- 追加 21 ; READ (0,SCALER,1) <--- 削除 22 ; IGQ (0,SCALER,1),#3 <--- 削除 23 ; READ (0,SCALER,1) <--- 削除 24 ; READ (0,SCALER,1) <--- 削除 25 ; IGQ (0,SCALER,1),#4 <--- 削除 26 ; READ (0,SCALER,1) <--- 削除 27 ; READ (0,SCALER,1) <--- 削除 : onlsun1[822]% (3-4-16I). FORCE-50T-sol2.6-list/camlist-kine/cam7aA.asmファイルの整備 onlsun1[825]% diff cam7aA.asm ../../camlist-kine/cam7a.asm-org 警告: ファイル ../../camlist-kine/cam7a.asm-org の末尾に復帰改行 (newline) がありません。 2,3c2 < * cam7aA.ASM 29-MAR-1992 Y.Takeuchi * < * Modified: 4-Jul-2000 E.Inoue * --- > * cam7a.ASM 29-MAR-1992 Y.Takeuchi * 5c4 < * camasm cam7aA a * --- > * camasm cam7a a * 7,8c6 < ;SW equ 11 ; Switch Register < SW equ 3 ; Switch Register --- > SW equ 11 ; Switch Register 10a9 > READ (0,SCALER,1) 12,18c11,16 < ;; READ (0,SCALER,1) < ;; IGQ (0,SCALER,1),#3 < ;; READ (0,SCALER,1) < ;; READ (0,SCALER,1) < ;; IGQ (0,SCALER,1),#4 < ;; READ (0,SCALER,1) < ;; READ (0,SCALER,1) --- > ; IGQ (0,SCALER,1),#3 > ; READ (0,SCALER,1) > ; READ (0,SCALER,1) > ; IGQ (0,SCALER,1),#4 > ; READ (0,SCALER,1) > ; READ (0,SCALER,1) 20,28d17 < READ.l (0,SW,1) < ; READ (0,SCALER,1) < ; IGQ (0,SCALER,1),#3 < ; READ (0,SCALER,1) < ; READ (0,SCALER,1) < ; IGQ (0,SCALER,1),#4 < ; READ (0,SCALER,1) < ; READ (0,SCALER,1) < ; 30c19 < end --- > end onlsun1[826]% (3-4-16Ia). FORCE-50T-sol2.6-list/camlist-kine/cam7aA.asmファイルの修正 onlsun1[847]% vi cam7aA.asm : 2 * cam7aA.ASM 29-MAR-1992 Y.Takeuchi * <--- 修正 3 * Modified: 4-Jul-2000 E.Inoue * <--- 追加 4 * * 5 * camasm cam7aA a * <--- 修正 : 7 ;SW equ 11 ; Switch Register <--- 削除 8 SW equ 3 ; Switch Register <--- 追加 9 SCALER equ 6 ; CAMAC Scaler <--- 削除 : 9 ; READ (0,SCALER,1) <--- 削除 10 ;; READ (0,SCALER,1) <--- 削除 11 ;; IGQ (0,SCALER,1),#3 <--- 削除 12 ;; READ (0,SCALER,1) <--- 削除 13 ;; READ (0,SCALER,1) <--- 削除 14 ;; IGQ (0,SCALER,1),#4 <--- 削除 15 ;; READ (0,SCALER,1) <--- 削除 16 ;; READ (0,SCALER,1) <--- 削除 17 ; <--- 削除 18 READ.l (0,SW,1) <--- 追加 19 ; READ (0,SCALER,1) <--- 削除 20 ; IGQ (0,SCALER,1),#3 <--- 削除 21 ; READ (0,SCALER,1) <--- 削除 22 ; READ (0,SCALER,1) <--- 削除 23 ; IGQ (0,SCALER,1),#4 <--- 削除 24 ; READ (0,SCALER,1) <--- 削除 25 ; READ (0,SCALER,1) <--- 削除 : onlsun1[848]% (3-4-16I). FORCE-50T-sol2.6-list/camlist-kine/cam7b.asmファイルの整備 onlsun1[851]% diff cam7b.asm ../../camlist-kine/cam7b.asm-org 警告: ファイル ../../camlist-kine/cam7b.asm-org の末尾に復帰改行 (newline) がありません。 3d2 < * Modified: 4-Jul-2000 E.Inoue * 7,8c6 < ;SCALER equ 6 ; CAMAC Scaler < SW equ 3 ; CAMAC SW register --- > SCALER equ 6 ; CAMAC Scaler 10,16c8,14 < ; NDT (9,SCALER,1) ; Clear scaler < ; READ (0,SCALER,1) ; Read scaler < ; READ (0,SCALER,1) ; Read scaler < ; MOVE #1,A ; Set Klist name to "test1" < ; LOAD TIMER ; Execute Klist < ; READ (0,SCALER,1) ; Read scaler < ; READ (0,SCALER,1) ; Read scaler --- > NDT (9,SCALER,1) ; Clear scaler > READ (0,SCALER,1) ; Read scaler > READ (0,SCALER,1) ; Read scaler > MOVE #1,A ; Set Klist name to "test1" > LOAD TIMER ; Execute Klist > READ (0,SCALER,1) ; Read scaler > READ (0,SCALER,1) ; Read scaler 18,26d15 < NDT (10,SW,0) ; Clear LAM < READ (0,SW,1) ; Read SW < READ (0,SW,1) ; Read SW < ; MOVE #1,A ; Set Klist name to "test1" < MOVE #0,A ; Set Klist name to "test1" < LOAD TIMER ; Execute Klist < READ (0,SW,1) ; Read SW < READ (0,SW,1) ; Read SW < ; 28c17 < end --- > end onlsun1[852]% (3-4-16Ia). FORCE-50T-sol2.6-list/camlist-kine/cam7b.asmファイルの修正 onlsun1[854]% vi cam7b.asm : 2 * cam7b.ASM 29-MAR-1992 Y.Takeuchi * <--- 修正 3 * Modified: 4-Jul-2000 E.Inoue * <--- 追加 : 7 ;SCALER equ 6 ; CAMAC Scaler <--- 削除 8 SW equ 3 ; CAMAC SW register <--- 追加 : 9 ; NDT (9,SCALER,1) ; Clear scaler <--- 削除 10 ; READ (0,SCALER,1) ; Read scaler <--- 削除 11 ; READ (0,SCALER,1) ; Read scaler <--- 削除 12 ; MOVE #1,A ; Set Klist name to "test1" <--- 削除 13 ; LOAD TIMER ; Execute Klist <--- 削除 14 ; READ (0,SCALER,1) ; Read scaler <--- 削除 15 ; READ (0,SCALER,1) ; Read scaler <--- 削除 16 ; <--- 削除 : 9 NDT (10,SW,0) ; Clear LAM <--- 追加 10 READ (0,SW,1) ; Read SW <--- 追加 11 READ (0,SW,1) ; Read SW <--- 追加 12 ; MOVE #1,A ; Set Klist name to "test1" <--- 削除 13 MOVE #0,A ; Set Klist name to "test1" <--- 追加 14 LOAD TIMER ; Execute Klist <--- 追加 15 READ (0,SW,1) ; Read SW <--- 追加 16 READ (0,SW,1) ; Read SW <--- 追加 : onlsun1[855]% (3-4-16J). FORCE-50T-sol2.6-list/camlist-kine/cam7bA.asmファイルの整備 onlsun1[868]% diff cam7bA.asm ../../camlist-kine/cam7b.asm-org 警告: ファイル ../../camlist-kine/cam7b.asm-org の末尾に復帰改行 (newline) がありません。 2,3c2 < * cam7bA.ASM 29-MAR-1992 Y.Takeuchi * < * Modified: 4-Jul-2000 E.Inoue * --- > * cam7b.ASM 29-MAR-1992 Y.Takeuchi * 5c4 < * camasm cam7bA a * --- > * camasm cam7b a * 7,8c6 < ;SCALER equ 6 ; CAMAC Scaler < SW equ 3 ; CAMAC SW register --- > SCALER equ 6 ; CAMAC Scaler 10,16c8,14 < ; NDT (9,SCALER,1) ; Clear scaler < ; READ (0,SCALER,1) ; Read scaler < ; READ (0,SCALER,1) ; Read scaler < ; MOVE #1,A ; Set Klist name to "test1" < ; LOAD TIMER ; Execute Klist < ; READ (0,SCALER,1) ; Read scaler < ; READ (0,SCALER,1) ; Read scaler --- > NDT (9,SCALER,1) ; Clear scaler > READ (0,SCALER,1) ; Read scaler > READ (0,SCALER,1) ; Read scaler > MOVE #1,A ; Set Klist name to "test1" > LOAD TIMER ; Execute Klist > READ (0,SCALER,1) ; Read scaler > READ (0,SCALER,1) ; Read scaler 18,29d15 < NDT (10,SW,0) ; Clear LAM < READ (0,SW,1) ; Read SW < READ (0,SW,1) ; Read SW < ; MOVE #0,A ; Set Klist name to "test0" < MOVE #1,A ; Set Klist name to "test1" < LOAD TIMER ; Execute Klist < READ (0,SW,1) ; Read SW < ; MOVE #1,A ; Set Klist name to "test1" < MOVE #0,A ; Set Klist name to "test0" < LOAD TIMER ; Execute Klist < READ (0,SW,1) ; Read SW < ; 31c17 < end --- > end onlsun1[869]% (3-4-16Ja). FORCE-50T-sol2.6-list/camlist-kine/cam7bA.asmファイルの修正 onlsun1[872]% vi cam7bA.asm : 2 * cam7bA.ASM 29-MAR-1992 Y.Takeuchi * <--- 修正 3 * Modified: 4-Jul-2000 E.Inoue * <--- 追加 4 * * 5 * camasm cam7bA a * <--- 修正 : 7 ;SCALER equ 6 ; CAMAC Scaler <--- 削除 8 SW equ 3 ; CAMAC SW register <--- 追加 : 9 ; NDT (9,SCALER,1) ; Clear scaler <--- 削除 10 ; READ (0,SCALER,1) ; Read scaler <--- 削除 11 ; READ (0,SCALER,1) ; Read scaler <--- 削除 12 ; MOVE #1,A ; Set Klist name to "test1" <--- 削除 13 ; LOAD TIMER ; Execute Klist <--- 削除 14 ; READ (0,SCALER,1) ; Read scaler <--- 削除 15 ; READ (0,SCALER,1) ; Read scaler <--- 削除 16 ; : 9 NDT (10,SW,0) ; Clear LAM <--- 追加 10 READ (0,SW,1) ; Read SW <--- 追加 11 READ (0,SW,1) ; Read SW <--- 追加 12 ; MOVE #0,A ; Set Klist name to "test0" <--- 削除 13 MOVE #1,A ; Set Klist name to "test1" <--- 追加 14 LOAD TIMER ; Execute Klist <--- 追加 15 READ (0,SW,1) ; Read SW <--- 追加 16 ; MOVE #1,A ; Set Klist name to "test1" <--- 削除 17 MOVE #0,A ; Set Klist name to "test0" <--- 追加 18 LOAD TIMER ; Execute Klist <--- 追加 19 READ (0,SW,1) ; Read SW <--- 追加 : onlsun1[873]% (3-4-16K). FORCE-50T-sol2.6-list/camlist-kine/cam7cA.asmファイルの整備 onlsun1[879]% diff cam7cA.asm ../../camlist-kine/cam7a.asm-org 警告: ファイル ../../camlist-kine/cam7a.asm-org の末尾に復帰改行 (newline) がありません。 2,3c2 < * cam7cA.ASM 29-MAR-1992 Y.Takeuchi * < * Modified: 4-Jul-2000 E.Inoue * --- > * cam7a.ASM 29-MAR-1992 Y.Takeuchi * 5c4 < * camasm cam7cA a * --- > * camasm cam7a a * 7,8c6 < ;SW equ 11 ; Switch Register < SW equ 3 ; Switch Register --- > SW equ 11 ; Switch Register 10a9 > READ (0,SCALER,1) 12,18c11,16 < ;; READ (0,SCALER,1) < ;; IGQ (0,SCALER,1),#3 < ;; READ (0,SCALER,1) < ;; READ (0,SCALER,1) < ;; IGQ (0,SCALER,1),#4 < ;; READ (0,SCALER,1) < ;; READ (0,SCALER,1) --- > ; IGQ (0,SCALER,1),#3 > ; READ (0,SCALER,1) > ; READ (0,SCALER,1) > ; IGQ (0,SCALER,1),#4 > ; READ (0,SCALER,1) > ; READ (0,SCALER,1) 20,29d17 < READ (0,SW,1) < READ (0,SW,1) < ; READ (0,SCALER,1) < ; IGQ (0,SCALER,1),#3 < ; READ (0,SCALER,1) < ; READ (0,SCALER,1) < ; IGQ (0,SCALER,1),#4 < ; READ (0,SCALER,1) < ; READ (0,SCALER,1) < ; 31c19 < end --- > end onlsun1[880]% (3-4-16Ka). FORCE-50T-sol2.6-list/camlist-kine/cam7cA.asmファイルの修正 onlsun1[883]% vi cam7cA.asm : 2 * cam7cA.ASM 29-MAR-1992 Y.Takeuchi * <--- 修正 3 * Modified: 4-Jul-2000 E.Inoue * <--- 追加 4 * * 5 * camasm cam7cA a * <--- 修正 : 7 ;SW equ 11 ; Switch Register <--- 削除 8 SW equ 3 ; Switch Register <--- 追加 9 SCALER equ 6 ; CAMAC Scaler <--- 削除 : 9 ; READ (0,SCALER,1) <--- 削除 10 ;; READ (0,SCALER,1) <--- 削除 11 ;; IGQ (0,SCALER,1),#3 <--- 削除 12 ;; READ (0,SCALER,1) <--- 削除 13 ;; READ (0,SCALER,1) <--- 削除 14 ;; IGQ (0,SCALER,1),#4 <--- 削除 15 ;; READ (0,SCALER,1) <--- 削除 16 ;; READ (0,SCALER,1) <--- 削除 17 ; : 9 READ (0,SW,1) <--- 追加 10 READ (0,SW,1) <--- 追加 11 ; READ (0,SCALER,1) <--- 削除 12 ; IGQ (0,SCALER,1),#3 <--- 削除 13 ; READ (0,SCALER,1) <--- 削除 14 ; READ (0,SCALER,1) <--- 削除 15 ; IGQ (0,SCALER,1),#4 <--- 削除 16 ; READ (0,SCALER,1) <--- 削除 17 ; READ (0,SCALER,1) <--- 削除 : onlsun1[884]% (3-4-17). FORCE-50T-sol2.6-list/script/ ディレクトリの整備 onlsun1[951]% pwd /export/home/onlsun1/inoue/workstation/onl50t/Solaris2.6/CAMAC-list-Kit/FORCE-50T-sol2.6-list/script onlsun1[952]% ls -l 合計 14 -rw-r--r-- 1 inoue kek 66 6月 23日 16:19 awk1.txt -rw-r--r-- 1 inoue kek 37 6月 23日 16:19 awk2.txt -rwxr-xr-x 1 inoue kek 233 6月 23日 16:19 cc_build.gcc.sh* -rwxr-xr-x 1 inoue kek 234 6月 23日 16:19 cc_build.sh* -rwxr-xr-x 1 inoue kek 528 6月 23日 16:19 cc_link.sh* -rwxr-xr-x 1 inoue kek 808 6月 23日 16:19 cc_load.sh* -rwxr-xr-x 1 inoue kek 270 6月 23日 16:19 cc_unload.sh* onlsun1[953]% (3-4-17A). FORCE-50T-sol2.6-list/script/awk1.txtファイルの整備 onlsun1[953]% diff awk1.txt ../../script/awk1.txt-org onlsun1[954]% (3-4-17Aa). FORCE-50T-sol2.6-list/script/awk1.txtファイルの修正 このファイルに関しては変更を加えていない。 従って、デバッグ後の削除、 変更の作業は必要ない。 (3-4-17B). FORCE-50T-sol2.6-list/script/awk2.txtファイルの整備 onlsun1[958]% diff awk2.txt ../../script/awk2.txt-org onlsun1[959]% (3-4-17Ba). FORCE-50T-sol2.6-list/script/awk2.txtファイルの修正 このファイルに関しては変更を加えていない。 従って、デバッグ後の削除、 変更の作業は必要ない。 (3-4-17C). FORCE-50T-sol2.6-list/script/cc_build.gcc.shファイルの整備 onlsun1[962]% diff cc_build.gcc.sh ../../script/cc_build.gcc.sh-org onlsun1[963]% (3-4-17Ca). FORCE-50T-sol2.6-list/script/cc_build.gcc.shファイルの修正 このファイルに関しては変更を加えていない。 従って、デバッグ後の削除、 変更の作業は必要ない。 (3-4-17D). FORCE-50T-sol2.6-list/script/cc_build.shファイルの整備 onlsun1[965]% diff cc_build.sh ../../script/cc_build.sh-org onlsun1[966]% (3-4-17Da). FORCE-50T-sol2.6-list/script/cc_build.shファイルの修正 このファイルに関しては変更を加えていない。 従って、デバッグ後の削除、 変更の作業は必要ない。 (3-4-17E). FORCE-50T-sol2.6-list/script/cc_link.shファイルの整備 onlsun1[969]% diff cc_link.sh ../../script/cc_link.sh-org onlsun1[970]% (3-4-17Ea). FORCE-50T-sol2.6-list/script/cc_link.shファイルの修正 このファイルに関しては変更を加えていない。 従って、デバッグ後の削除、 変更の作業は必要ない。 (3-4-17F). FORCE-50T-sol2.6-list/script/cc_load.shファイルの整備 onlsun1[972]% diff cc_load.sh ../../script/cc_load.sh-org onlsun1[973]% (3-4-17Fa). FORCE-50T-sol2.6-list/script/cc_load.shファイルの修正 このファイルに関しては変更を加えていない。 従って、デバッグ後の削除、 変更の作業は必要ない。 (3-4-17G). FORCE-50T-sol2.6-list/script/cc_unload.shファイルの整備 onlsun1[976]% diff cc_unload.sh ../../script/cc_unload.sh-org onlsun1[977]% (3-4-17Ga). FORCE-50T-sol2.6-list/script/cc_unload.shファイルの修正 このファイルに関しては変更を加えていない。 従って、デバッグ後の削除、 変更の作業は必要ない。 (3-4-17H). FORCE-50T-sol2.6-list/READMEファイルの整備 onlsun1[1113]% diff README-org README 1c1 < 26-July-1999 --- > Oct 19, 2000 4c4 < Release 1.40-50T --- > Release 2.0 7c7 < Yasuo Takeuchi (ICRR) --- > Yasuo Takeuchi (ICRR) 9,10c9,11 < 23-May-1997 modified by Eiji Inoue (KEK) < 26-Jul-1999 modified by Kouji Takahashi(LHS), Eiji Inoue (KEK) --- > May 23, 1997 modified by Eiji Inoue (KEK) > Jul 26, 1999 modified by Kouji Takahashi(LHS), Eiji Inoue (KEK) > Oct 19, 2000 modified by Eiji Inoue (KEK) 12,19d12 < ************************************** < ***** FORCE SPARC CPU-50T VERSION ***** < ************************************** < This distribution is a FORCE SPARC CPU-50T version, and it contains < a CAMAC device driver, a CAMAC library, and three sample programs for < the SPARC SPARC CPU-50T. The CAMAC functions for SPARC/Solaris2 is fully < compatible with those for SPARC/SunOS4, and almost compatible with the CAMAC < drivers on some machines developed at KEK. 21,24c14,15 < The example programs and the CAMASM/CAMEXE in "camac.sparc-1.22d.tar.gz" < can be probably used. It is available at the following URLs. < http://www-sk.icrr.u-tokyo.ac.jp/~takeuchi/camac/ < ftp://online.kek.jp/pub/kek/camac/ --- > FORCE SPARC CPU VERSION > ========================= 25a17,31 > This is CAMAC Device Driver distribution kit for FORCE SPARC CPU board > of the VME standard. It contains a CAMAC device driver, a CAMAC library, > and sample programs for the SPARC CPU board. This program works with > Solaris2.6. A summary of newfeachers added in a CAMAC device driver > of this version is as follows. The 1st point is that it become posssible > to use of KEK List Processing and 2nd point is that it become posssible to > use of Kinetic List Processing. Please refer to "Usage Guide of CAMAC > Library for UNIX" for these function and directions. Because there is > an exercise in the "camlist" and "camlist-kine" directory in this distribution > kit, refer to this, too. You can get this document from web site, > "ftp://online.kek.jp/pub/kek/camac/doc/user_guide.txt". The CAMAC > functions for SPARC/Solaris2 is fully compatible with those for SPARC/SunOS4, > and almost compatible with the CAMAC drivers on some machines developed > at KEK. > 27c33 < via E-mail to "eiji.inoue@kek.jp" and/or "takeuchi@icrr.u-tokyo.ac.jp". --- > via E-mail to "eiji.inoue@kek.jp" and/or "takeuchi@icrr.u-tokyo.ac.jp". 30,32c36,38 < ************************ < ***** INSTALLATION ***** < ************************ --- > INSTALLATION > ============== > 51a58,60 > If necessary, > camlist/ > camlist-kine/ 59,61c68,71 < ******************************* < ***** OTHER INFORMATIONS ***** < ******************************* --- > > OTHER INFORMATIONS > ==================== > 69a80,83 > v2.0 Modified Release v1.40-50T for List processing. > KEK List processing and Kinetic List processing became > able to be used. > 97,98c111,112 <  TEL:03-5337-2631 FAX:03-5337-2635 E-mail:k_taka@qa2.so-net.ne.jp < URL: http://www.lhs.co.jp/ --- >  TEL:03-5337-2631 FAX:03-5337-2635 E-mail:ktaka@lhss.co.jp > URL: http://www.lhss.co.jp/ onlsun1[1114]% (3-4-17Ha). FORCE-50T-sol2.6-list/READMEファイルの修正 以下のように修正した。 onlsun1[1119]% vi README Oct 20, 2000 CAMAC Device Driver on Solaris2.x Release 2.0 Yasuo Takeuchi (ICRR) May 23, 1997 modified by Eiji Inoue (KEK) Jul 26, 1999 modified by Kouji Takahashi(LHS), Eiji Inoue (KEK) Oct 19, 2000 modified by Eiji Inoue (KEK) FORCE SPARC CPU VERSION ========================= This is CAMAC Device Driver distribution kit for FORCE SPARC CPU board of the VME standard. It contains a CAMAC device driver, a CAMAC library, and sample programs for the SPARC CPU board. This program works with Solaris2.6. A summary of newfeachers added in a CAMAC device driver of this version is as follows. The 1st point is that it become posssible to use of KEK List Processing and 2nd point is that it become posssible to use of Kinetic List Processing. Please refer to "Usage Guide of CAMAC Library for UNIX" for these function and directions. You can get this document from web site,"ftp://online.kek.jp/pub/kek/camac/doc/ user_guide.txt". Because there is an exercise in the "camlist" and "camlist-kine" directory in this distribution kit, refer to this, too. The CAMAC functions for SPARC/Solaris2 is fully compatible with those for SPARC/SunOS4, and almost compatible with the CAMAC drivers on some machines developed at KEK. Any comment about the CAMAC driver on SPARC is welcome. Please send it via E-mail to "eiji.inoue@kek.jp" and/or "takeuchi@icrr.u-tokyo.ac.jp". INSTALLATION ============== (0.) connect SPARC CPU-50T, K2917 and K3922, and then install the VME device driver according to its manual. (1.) check Makefile and compile. make (2.) Reboot your system shutdown : boot -r (3.) copy and load CAMAC device driver. su make load exit (4.) execute sample programs. cam1 cam3 If necessary, camlist/ camlist-kine/ (5.) To remove the CAMAC device driver, type as follows. su make unload exit OTHER INFORMATIONS ==================== Hardware & Software: (our environment) FORCE Computers Inc. SPARC CPU-50T Solaris2.6 HArdware : 5/98 VME driver V2.3.1 Kinetic Systems Corporation K3922-Z1B (CAMAC CC) K2917-Z1A (VME-CAMAC interface) History: v2.0 Modified Release v1.40-50T for List processing. KEK List processing and Kinetic List processing became able to be used. v1.40-50T Modified Release v1.30-5V for FORCE SPARC CPU-50T. This version of CAMAC driver can also be used under the Server & Diskless Clients system. v1.30-5V Modified Release v1.30 for FORCE SPARC CPU-5V. The CAMAC single action, LAM interruption, block transfer, work well. v1.30 test release. under porting from the CAMAC driver for SPARC/SunOS4 v1.22d DMA dosen't work well. ============================================================================== 竹内 康雄 東京大学宇宙線研究所 神岡宇宙素粒子研究施設 Yasuo Takeuchi Kamioka Observatory, ICRR, Univ. of Tokyo TEL:0578-5-9607 FAX:0578-5-2121 E-mail:takeuchi@icrr.u-tokyo.ac.jp URL: http://www-sk.icrr.u-tokyo.ac.jp/~takeuchi/ 井上 栄二 高エネルギー加速器研究機構 素粒子原子核研究所 Eiji Inoue High Energy Accelerator Research Organization, Institute of Particle and Nuclear Studies TEL:0298-64-1171 FAX:0298-64-2580 E-mail:eiji.inoue@kek.jp URL: http://www-online.kek.jp/~inoue/   高橋 幸治 株式会社エルエッチエス   Kouji Takahashi LHS Incorporated, Technical Support  TEL:03-5337-2631 FAX:03-5337-2635 E-mail:ktaka@lhss.co.jp URL: http://www.lhss.co.jp/ ============================================================================== onlsun1[1120]% これでキット中の全てのファイルについて、修正が終わった。 このキットを使って最終テストを行う。 ---xxxx ここまでやった(継続中) --- (6). 項目タイトル (6-1). サブ項目タイトル (6-1-1). サブサブ項目タイトル