- Timestamp:
- Jul 23, 2017, 2:29:40 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
rubycfg_asp/trunk/asp_dcre/tinet/netdev/if_rx62n/if_rx62n.c
-
Property svn:mime-type
changed from
text/x-csrc
totext/x-csrc; charset=UTF-8
r313 r315 6 6 * Copyright (C) 2014-2015 Cores Co., Ltd. Japan 7 7 * 8 * ä¸è¨èä½æ¨©è 9 ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§ 10 * ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ã使ç¨ã»è¤è£½ã»æ¹ 11 * å¤ã»åé 12 å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼ 13 * (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½ 14 * 権表示ï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼ 15 * ã¹ã³ã¼ãä¸ã«å«ã¾ãã¦ãããã¨ï¼ 16 * (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 17 * ç¨ã§ããå½¢ã§åé 18 å¸ããå ´åã«ã¯ï¼åé 19 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨ 20 * è 21 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ 22 * ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 23 * (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿ 24 * ç¨ã§ããªãå½¢ã§åé 25 å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã 26 * ã¨ï¼ 27 * (a) åé 28 å¸ã«ä¼´ãããã¥ã¡ã³ãï¼å©ç¨è 29 ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è 30 * ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼ 31 * (b) åé 32 å¸ã®å½¢æ 33 ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSããã¸ã§ã¯ãã« 34 * å ±åãããã¨ï¼ 35 * (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ 36 * 害ãããï¼ä¸è¨èä½æ¨©è 37 ããã³TOPPERSããã¸ã§ã¯ããå 38 責ãããã¨ï¼ 39 * ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç 40 * ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è 41 ããã³TOPPERSããã¸ã§ã¯ãã 42 * å 43 責ãããã¨ï¼ 44 * 45 * æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è 46 ã 47 * ãã³TOPPERSããã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç 48 * ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§ 49 * ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ害ã«é¢ãã¦ãï¼ã 50 * ã®è²¬ä»»ãè² ããªãï¼ 8 * 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ 9 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 10 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. 11 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 12 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 13 * スコード中に含まれていること. 14 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 15 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 16 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 17 * の無保証規定を掲載すること. 18 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 19 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 20 * と. 21 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 22 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 23 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 24 * 報告すること. 25 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 26 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 27 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理 28 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 29 * 免責すること. 30 * 31 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 32 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 33 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 34 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 35 * の責任を負わない. 51 36 * 52 37 * @(#) $Id$ … … 124 109 125 110 /* 126 * ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã«ä¾åããã½ããã¦ã§ã¢æ 127 å ± 111 * ネットワークインタフェースに依存するソフトウェア情報 128 112 */ 129 113 … … 137 121 138 122 /* 139 * ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®ã½ããã¦ã§ã¢æ 140 å ± 141 */ 142 143 /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã«ä¾åããã½ããã¦ã§ã¢æ 144 å ± */ 123 * ネットワークインタフェースのソフトウェア情報 124 */ 125 126 /* ネットワークインタフェースに依存するソフトウェア情報 */ 145 127 146 128 static T_RX62N_SOFTC rx62n_softc; … … 162 144 #endif 163 145 164 /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã«ä¾åããªãã½ããã¦ã§ã¢æ 165 å ± */ 146 /* ネットワークインタフェースに依存しないソフトウェア情報 */ 166 147 167 148 T_IF_SOFTC if_softc = { 168 {0,}, /* ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®ã¢ãã¬ã¹ */ 169 0, /* éä¿¡ã¿ã¤ã ã¢ã¦ã */ 170 &rx62n_softc, /* ãã£ãã¤ã¹ä¾åã®ã½ããã¦ã§ã¢æ 171 å ± */ 172 SEM_IF_RX62N_SBUF_READY, /* éä¿¡ã»ããã© */ 173 SEM_IF_RX62N_RBUF_READY, /* åä¿¡ã»ããã© */ 149 {0,}, /* ネットワークインタフェースのアドレス */ 150 0, /* 送信タイムアウト */ 151 &rx62n_softc, /* ディバイス依存のソフトウェア情報 */ 152 SEM_IF_RX62N_SBUF_READY, /* 送信セマフォ */ 153 SEM_IF_RX62N_RBUF_READY, /* 受信セマフォ */ 174 154 175 155 #ifdef SUPPORT_INET6 176 156 177 IF_MADDR_INIT, /* ãã«ããã£ã¹ãã¢ãã¬ã¹ãªã¹ã*/157 IF_MADDR_INIT, /* マルチキャストアドレスリスト */ 178 158 179 159 #endif /* of #ifdef SUPPORT_INET6 */ … … 181 161 182 162 /* 183 * å±æå¤æ°163 * 局所変数 184 164 */ 185 165 … … 194 174 195 175 /* 196 * ds_crc -- ã¤ã¼ãµãããã¢ãã¬ã¹ã® CRC ãè¨ç®ããã176 * ds_crc -- イーサネットアドレスの CRC を計算する。 197 177 */ 198 178 … … 222 202 223 203 /* 224 * ds_getmcaf -- ãã«ããã£ã¹ãã¢ãã¬ã¹ã®ãªã¹ããããã«ããã£ã¹ãã¢ãã¬ã¹225 * ãã£ã«ã¿ãè¨ç®ããã204 * ds_getmcaf -- マルチキャストアドレスのリストからマルチキャストアドレス 205 * フィルタを計算する。 226 206 */ 227 207 … … 241 221 242 222 /* 243 * rx62n_setrcr -- åä¿¡æ§æã¬ã¸ã¹ã¿ (RCR) ãè¨å®ããã223 * rx62n_setrcr -- 受信構成レジスタ (RCR) を設定する。 244 224 */ 245 225 … … 251 231 252 232 /* 253 * rx62n_addmulti -- ãã«ããã£ã¹ãã¢ãã¬ã¹ã追å ããã233 * rx62n_addmulti -- マルチキャストアドレスを追加する。 254 234 */ 255 235 … … 264 244 265 245 /* 266 * rx62n_stop -- ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ãåæ¢ããã 267 * 268 * 注æ: NIC å²ãè¾¼ã¿ç¦æ¢ç¶æ 269 ã§å¼ã³åºããã¨ã 246 * rx62n_stop -- ネットワークインタフェースを停止する。 247 * 248 * 注意: NIC 割り込み禁止状態で呼び出すこと。 270 249 */ 271 250 … … 273 252 rx62n_stop (T_RX62N_SOFTC *sc) 274 253 { 275 /* åä½ã¢ã¼ãã¯ãªã¢*/254 /* 動作モードクリア */ 276 255 sil_wrw_mem(ETHERC_ECMR, 0x00000000); 277 256 } 278 257 279 258 /* 280 * rx62n_init_sub -- ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®åæå 281 * 282 * 注æ: NIC å²ãè¾¼ã¿ç¦æ¢ç¶æ 283 ã§å¼ã³åºããã¨ã 259 * rx62n_init_sub -- ネットワークインタフェースの初期化 260 * 261 * 注意: NIC 割り込み禁止状態で呼び出すこと。 284 262 */ 285 263 … … 289 267 enum phy_mode_t mode; 290 268 291 /* MAC é¨ã½ããã¦ã¨ã¢ã»ãªã»ãã*/269 /* MAC部ソフトウエア・リセット */ 292 270 sil_wrw_mem(EDMAC_EDMR, sil_rew_mem(EDMAC_EDMR) | EDMAC_EDMR_SWR_BIT); 293 271 … … 300 278 | (uint32_t)mac_addr[5]); 301 279 302 /* PHY ãªã»ãã*/280 /* PHYリセット */ 303 281 phy_reset(0); 304 282 … … 306 284 sil_wrw_mem(ETHERC_ECSR, 0x00000037); 307 285 308 /* ãªã³ã¯å¤åå²ãè¾¼ã¿æå¹*/286 /* リンク変化割り込み有効 */ 309 287 sil_wrw_mem(ETHERC_ECSIPR, sil_rew_mem(ETHERC_ECSIPR) | ETHERC_ECSIPR_LCHNGIP); 310 288 … … 312 290 sil_wrw_mem(EDMAC_EESR, 0x47FF0F9F); 313 291 314 /* éåä¿¡å²ãè¾¼ã¿æå¹*/292 /* 送受信割り込み有効 */ 315 293 sil_wrw_mem(EDMAC_EESIPR, (EDMAC_EESIPR_TCIP | EDMAC_EESIPR_FRIP | EDMAC_EESIPR_RDEIP | EDMAC_EESIPR_FROFIP)); 316 294 317 /* åä¿¡ãã¬ã¼ã é·ä¸éï¼ãããã¡ãµã¤ãºï¼*/295 /* 受信フレーム長上限(バッファサイズ) */ 318 296 sil_wrw_mem(ETHERC_RFLR, IF_RX62N_BUF_PAGE_SIZE); 319 297 320 /* 96 ãããæéï¼åæå¤ï¼*/298 /* 96ビット時間(初期値) */ 321 299 sil_wrw_mem(ETHERC_IPGR, 0x00000014); 322 300 … … 337 315 sil_wrw_mem(EDMAC_RMCR, 0x00000001); 338 316 339 /* PHY ã®åæå*/317 /* PHYの初期化 */ 340 318 mode = phy_initialize(0); 341 319 342 /* ECMR ã¬ã¸ã¹ã¿ã®è¨å®*/320 /* ECMRレジスタの設定 */ 343 321 rx62n_set_ecmr(ic, mode); 344 322 345 323 #if defined(TARGET_KERNEL_ASP) 346 324 347 /* ã¿ã¼ã²ããä¾åé¨ã®å²è¾¼ã¿åæå*/325 /* ターゲット依存部の割込み初期化 */ 348 326 rx62n_inter_init(); 349 327 350 328 #endif /* of #if defined(TARGET_KERNEL_ASP) */ 351 329 352 #if defined(TARGET_KERNEL_JSP) && TKERNEL_PRVER >= 0x1042u /* JSP-1.4.2 以é*/353 354 /* ã¿ã¼ã²ããä¾åé¨ã®å²è¾¼ã¿åæå*/330 #if defined(TARGET_KERNEL_JSP) && TKERNEL_PRVER >= 0x1042u /* JSP-1.4.2 以降 */ 331 332 /* ターゲット依存部の割込み初期化 */ 355 333 rx62n_inter_init(); 356 334 … … 360 338 361 339 /* 362 * rx62n_set_ecmr -- ECMR ã¬ã¸ã¹ã¿ã®è¨å®340 * rx62n_set_ecmr -- ECMRレジスタの設定 363 341 */ 364 342 … … 375 353 ecmr |= ETHERC_ECMR_RTM; 376 354 377 /* åä½ã¢ã¼ãè¨å®*/355 /* 動作モード設定 */ 378 356 sil_wrw_mem(ETHERC_ECMR, ecmr); 379 357 } 380 358 381 359 /* 382 * rx62n_reset -- ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ããªã»ããããã360 * rx62n_reset -- ネットワークインタフェースをリセットする。 383 361 */ 384 362 … … 390 368 #endif 391 369 392 /* NIC ããã®å²ãè¾¼ã¿ãç¦æ¢ããã*/370 /* NIC からの割り込みを禁止する。*/ 393 371 #ifdef TARGET_KERNEL_JSP 394 372 ipm = rx62n_dis_inter(); … … 402 380 rx62n_init_sub(ic); 403 381 404 /* NIC ããã®å²ãè¾¼ã¿ã許å¯ããã*/382 /* NIC からの割り込みを許可する。*/ 405 383 #ifdef TARGET_KERNEL_JSP 406 384 rx62n_ena_inter(ipm); … … 412 390 413 391 /* 414 * get_rx62n_softc -- ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®ã½ããã¦ã§ã¢æ 415 å ±ãè¿ãã 392 * get_rx62n_softc -- ネットワークインタフェースのソフトウェア情報を返す。 416 393 */ 417 394 … … 423 400 424 401 /* 425 * rx62n_watchdog -- ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®ã¯ããããã°ã¿ã¤ã ã¢ã¦ã402 * rx62n_watchdog -- ネットワークインタフェースのワッチドッグタイムアウト 426 403 */ 427 404 … … 433 410 434 411 /* 435 * rx62n_probe -- ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®æ¤åº412 * rx62n_probe -- ネットワークインタフェースの検出 436 413 */ 437 414 … … 442 419 #if defined(TARGET_KERNEL_ASP) 443 420 444 /* ã¿ã¼ã²ããä¾åé¨ã®ãã¹ã®åæå*/421 /* ターゲット依存部のバスの初期化 */ 445 422 rx62n_bus_init(); 446 423 447 424 #endif /* of #if defined(TARGET_KERNEL_ASP) */ 448 #if defined(TARGET_KERNEL_JSP) && TKERNEL_PRVER >= 0x1042u /* JSP-1.4.2 以é*/449 450 /* ã¿ã¼ã²ããä¾åé¨ã®ãã¹ã®åæå*/425 #if defined(TARGET_KERNEL_JSP) && TKERNEL_PRVER >= 0x1042u /* JSP-1.4.2 以降 */ 426 427 /* ターゲット依存部のバスの初期化 */ 451 428 rx62n_bus_init(); 452 429 … … 459 436 460 437 /* 461 * rx62n_init -- ãããã¯ã¼ã¯ã¤ã³ã¿ãã§ã¼ã¹ã®åæå438 * rx62n_init -- ネットワークインタフェースの初期化 462 439 */ 463 440 … … 473 450 int i; 474 451 475 /* NIC ããã®å²ãè¾¼ã¿ãç¦æ¢ããã*/452 /* NIC からの割り込みを禁止する。*/ 476 453 #ifdef TARGET_KERNEL_JSP 477 454 ipm = rx62n_dis_inter(); … … 505 482 rdsc->rdle = 1; 506 483 507 /* rx62n_init æ¬ä½ãå¼ã³åºãã*/484 /* rx62n_init 本体を呼び出す。*/ 508 485 rx62n_init_sub(ic); 509 486 … … 512 489 } 513 490 514 /* NIC ããã®å²ãè¾¼ã¿ã許å¯ããã*/491 /* NIC からの割り込みを許可する。*/ 515 492 #ifdef TARGET_KERNEL_JSP 516 493 rx62n_ena_inter(ipm); … … 522 499 523 500 /* 524 * rx62n_read -- ãã¬ã¼ã ã®èªã¿è¾¼ã¿501 * rx62n_read -- フレームの読み込み 525 502 */ 526 503 … … 537 514 enum phy_mode_t mode; 538 515 539 /* ãªã³ã¯ç¶æ 540 ã«å¤åãã */ 516 /* リンク状態に変化あり */ 541 517 if (sc->link_pre != sc->link_now) { 542 518 sc->link_pre = sc->link_now; 543 519 544 520 if (!phy_is_link(0)) { 545 /* PHY ã®åæå*/521 /* PHYの初期化 */ 546 522 mode = phy_initialize(0); 547 523 548 /* ECMR ã¬ã¸ã¹ã¿ã®è¨å®*/524 /* ECMRレジスタの設定 */ 549 525 rx62n_set_ecmr(ic, mode); 550 526 } … … 569 545 * <----------------- len ----------------> 570 546 * ^ 571 * t_net_buf 㧠4 ãªã¯ãããå¢çã«ã¢ã©ã¤ã³ããã¦ããã547 * t_net_buf で 4 オクテット境界にアラインされている。 572 548 * 573 * tcp_input 㨠udp_input ã§ã¯ãæ¬ä¼¼ããã㨠SDU ã§ãã§ãã¯ãµã ã 574 * è¨ç®ããããn ã 4 ãªã¯ãããå¢çã«ãªãããã« SDU ã®å¾ãã« 0 ã 575 * ãããã£ã³ã°ããããã®åãèæ 576 ®ã㦠net_buf ãç²å¾ããªããã°ãªããªãã 549 * tcp_input と udp_input では、擬似ヘッダと SDU でチェックサムを 550 * 計算するが、n が 4 オクテット境界になるように SDU の後ろに 0 を 551 * パッディングする。その分を考慮して net_buf を獲得しなければならない。 577 552 */ 578 553 align = ((((len - sizeof(T_IF_HDR)) + 3) >> 2) << 2) + sizeof(T_IF_HDR); … … 604 579 605 580 /* 606 * rx62n_start -- éä¿¡ãã¬ã¼ã ããããã¡ãªã³ã°ããã581 * rx62n_start -- 送信フレームをバッファリングする。 607 582 */ 608 583 … … 655 630 656 631 /* 657 * RX62N Ethernet Controler éåä¿¡å²ãè¾¼ã¿ãã³ãã©632 * RX62N Ethernet Controler 送受信割り込みハンドラ 658 633 */ 659 634 … … 673 648 674 649 if (ecsr & ETHERC_ECSR_LCHNG) { 675 /* ETHERC é¨å²ãè¾¼ã¿è¦å ã¯ãªã¢*/650 /* ETHERC部割り込み要因クリア */ 676 651 sil_wrw_mem(ETHERC_ECSR, ETHERC_ECSR_LCHNG); 677 652 … … 679 654 sc->link_now = (psr & ETHERC_PSR_LMON) != 0; 680 655 681 /* ãªã³ã¯ç¶æ 682 ã«å¤åãã */ 656 /* リンク状態に変化あり */ 683 657 if (sc->link_pre != sc->link_now) { 684 /* åä¿¡å²ãè¾¼ã¿å¦ç*/658 /* 受信割り込み処理 */ 685 659 isig_sem(ic->semid_rxb_ready); 686 660 } … … 690 664 691 665 if (eesr & EDMAC_EESR_FR) { 692 /* DMA é¨å²ãè¾¼ã¿è¦å ã¯ãªã¢*/666 /* DMA部割り込み要因クリア */ 693 667 sil_wrw_mem(EDMAC_EESR, EDMAC_EESR_FR); 694 668 695 /* åä¿¡å²ãè¾¼ã¿å¦ç*/669 /* 受信割り込み処理 */ 696 670 isig_sem(ic->semid_rxb_ready); 697 671 } 698 672 if (eesr & EDMAC_EESR_TC) { 699 /* DMA é¨å²ãè¾¼ã¿è¦å ã¯ãªã¢*/673 /* DMA部割り込み要因クリア */ 700 674 sil_wrw_mem(EDMAC_EESR, EDMAC_EESR_TC); 701 675 702 /* éä¿¡å²ãè¾¼ã¿å¦ç*/676 /* 送信割り込み処理 */ 703 677 isig_sem(ic->semid_txb_ready); 704 678 } 705 679 if (eesr & (EDMAC_EESR_FROF | EDMAC_EESR_RDE)) { 706 /* DMA é¨å²ãè¾¼ã¿è¦å ã¯ãªã¢*/680 /* DMA部割り込み要因クリア */ 707 681 sil_wrw_mem(EDMAC_EESR, EDMAC_EESR_FROF | EDMAC_EESR_RDE); 708 682 709 683 sc->over_flow = true; 710 684 711 /* åä¿¡å²ãè¾¼ã¿å¦ç*/685 /* 受信割り込み処理 */ 712 686 isig_sem(ic->semid_rxb_ready); 713 687 } -
Property svn:mime-type
changed from
Note:
See TracChangeset
for help on using the changeset viewer.