Changeset 619 for trunk/kernel/kern/chdev.c
- Timestamp:
- Feb 12, 2019, 1:15:47 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/kernel/kern/chdev.c
r601 r619 168 168 169 169 #if (DEBUG_CHDEV_CMD_RX || DEBUG_CHDEV_CMD_TX) 170 bool_t is_rx = hal_remote_l32( XPTR( chdev_cxy , &chdev_ptr->is_rx ) ); 170 bool_t is_rx = hal_remote_l32( XPTR( chdev_cxy , &chdev_ptr->is_rx ) ); 171 trdid_t server_trdid = hal_remote_l32( XPTR( chdev_cxy , &server_ptr->trdid ) ); 172 process_t * process_ptr = hal_remote_lpt( XPTR( chdev_cxy , &server_ptr->process ) ); 173 pid_t server_pid = hal_remote_l32( XPTR( chdev_cxy , &process_ptr->pid ) ); 171 174 #endif 172 175 … … 175 178 if( (is_rx) && (DEBUG_CHDEV_CMD_RX < rx_cycle) ) 176 179 printk("\n[%s] client[%x,%x] enter for RX / server[%x,%x] / cycle %d\n", 177 __FUNCTION__, this->process->pid, this->trdid, 178 server_ptr->process->pid, server_ptr->trdid, rx_cycle ); 180 __FUNCTION__, this->process->pid, this->trdid, server_pid, server_trdid, rx_cycle ); 179 181 #endif 180 182 … … 183 185 if( (is_rx == 0) && (DEBUG_CHDEV_CMD_TX < tx_cycle) ) 184 186 printk("\n[%s] client[%x,%x] enter for TX / server[%x,%x] / cycle %d\n", 185 __FUNCTION__, this->process->pid, this->trdid, 186 server_ptr->process->pid, server_ptr->trdid, tx_cycle ); 187 __FUNCTION__, this->process->pid, this->trdid, server_pid, server_trdid, tx_cycle ); 187 188 #endif 188 189 … … 241 242 if( (is_rx == 0) && (DEBUG_CHDEV_CMD_TX < tx_cycle) ) 242 243 printk("\n[%s] TX server thread[%x,%x] unblocked\n", 243 __FUNCTION__, server_p tr->process->pid, server_ptr->trdid );244 __FUNCTION__, server_pid, server_trdid ); 244 245 #endif 245 246 … … 247 248 if( (is_rx) && (DEBUG_CHDEV_CMD_RX < rx_cycle) ) 248 249 printk("\n[%s] RX server thread[%x,%x] unblocked\n", 249 __FUNCTION__, server_p tr->process->pid, server_ptr->trdid );250 __FUNCTION__, server_pid, server_trdid ); 250 251 #endif 251 252 … … 273 274 if( (is_rx == 0) && (DEBUG_CHDEV_CMD_TX < tx_cycle) ) 274 275 printk("\n[%s] client thread[%x,%x] sent IPI to TX server thread[%x,%x]\n", 275 __FUNCTION__, this->process->pid, this->trdid, server_p tr->process->pid, server_ptr->trdid );276 __FUNCTION__, this->process->pid, this->trdid, server_pid, server_trdid ); 276 277 #endif 277 278 … … 279 280 if( (is_rx) && (DEBUG_CHDEV_CMD_RX < rx_cycle) ) 280 281 printk("\n[%s] client thread[%x,%x] sent IPI to RX server thread[%x,%x]\n", 281 __FUNCTION__, this->process->pid, this->trdid, server_p tr->process->pid, server_ptr->trdid );282 __FUNCTION__, this->process->pid, this->trdid, server_pid, server_trdid ); 282 283 #endif 283 284 … … 317 318 } // end chdev_register_command() 318 319 319 ///////////////////////////////////////// //////320 void chdev_se quencial_server( chdev_t * chdev )320 ///////////////////////////////////////// 321 void chdev_server_func( chdev_t * chdev ) 321 322 { 322 323 xptr_t client_xp; // extended pointer on waiting thread … … 340 341 { 341 342 342 #if DEBUG_CHDEV_SERVER_RX343 #if( DEBUG_CHDEV_SERVER_RX || DEBUG_CHDEV_SERVER_TX ) 343 344 uint32_t rx_cycle = (uint32_t)hal_get_cycles(); 344 345 if( (chdev->is_rx) && (DEBUG_CHDEV_SERVER_RX < rx_cycle) ) 345 printk("\n[%s] thread[%x,%x] start RX/ cycle %d\n",346 __FUNCTION__ , server->process->pid, server->trdid, rx_cycle );346 printk("\n[%s] DEV thread[%x,%x] check TXT_RX channel %d / cycle %d\n", 347 __FUNCTION__ , server->process->pid, server->trdid, chdev->channel, rx_cycle ); 347 348 #endif 348 349 … … 350 351 uint32_t tx_cycle = (uint32_t)hal_get_cycles(); 351 352 if( (chdev->is_rx == 0) && (DEBUG_CHDEV_SERVER_TX < tx_cycle) ) 352 printk("\n[%s] thread[%x,%x] start TX/ cycle %d\n",353 __FUNCTION__ , server->process->pid, server->trdid, tx_cycle );353 printk("\n[%s] thread[%x,%x] check TXT_TX channel %d / cycle %d\n", 354 __FUNCTION__ , server->process->pid, server->trdid, chdev->channel, tx_cycle ); 354 355 #endif 355 356 … … 397 398 client_ptr = GET_PTR( client_xp ); 398 399 399 #if( D DEBUG_CHDEV_SERVER_TX || DEBUG_CHDEV_SERVER_RX )400 #if( DEBUG_CHDEV_SERVER_TX || DEBUG_CHDEV_SERVER_RX ) 400 401 process_t * process = hal_remote_lpt( XPTR( client_cxy , &client_ptr->process ) ); 401 402 pid_t client_pid = hal_remote_l32( XPTR( client_cxy , &process->pid ) ); 402 process_tclient_trdid = hal_remote_l32( XPTR( client_cxy , &client_ptr->trdid ) );403 trdid_t client_trdid = hal_remote_l32( XPTR( client_cxy , &client_ptr->trdid ) ); 403 404 #endif 404 405 … … 407 408 if( (chdev->is_rx) && (DEBUG_CHDEV_SERVER_RX < rx_cycle) ) 408 409 printk("\n[%s] thread[%x,%x] for RX get client thread[%x,%x] / cycle %d\n", 409 __FUNCTION__, server->process->pid, server->trdid, client_pid, client_trdid, cycle );410 __FUNCTION__, server->process->pid, server->trdid, client_pid, client_trdid, rx_cycle ); 410 411 #endif 411 412 … … 414 415 if( (chdev->is_rx == 0) && (DEBUG_CHDEV_SERVER_TX < tx_cycle) ) 415 416 printk("\n[%s] thread[%x,%x] for TX get client thread[%x,%x] / cycle %d\n", 416 __FUNCTION__, server->process->pid, server->trdid, client_pid, client_trdid, cycle );417 __FUNCTION__, server->process->pid, server->trdid, client_pid, client_trdid, tx_cycle ); 417 418 #endif 418 419 … … 445 446 if( (chdev->is_rx) && (DEBUG_CHDEV_SERVER_RX < rx_cycle) ) 446 447 printk("\n[%s] thread[%x,%x] completes RX for client thread[%x,%x] / cycle %d\n", 447 __FUNCTION__, server->process->pid, server->trdid, client_pid, client_trdid, cycle );448 __FUNCTION__, server->process->pid, server->trdid, client_pid, client_trdid, rx_cycle ); 448 449 #endif 449 450 … … 452 453 if( (chdev->is_rx == 0) && (DEBUG_CHDEV_SERVER_TX < tx_cycle) ) 453 454 printk("\n[%s] thread[%x,%x] completes TX for client thread[%x,%x] / cycle %d\n", 454 __FUNCTION__, server->process->pid, server->trdid, client_pid, client_trdid, cycle );455 __FUNCTION__, server->process->pid, server->trdid, client_pid, client_trdid, tX_cycle ); 455 456 #endif 456 457 … … 465 466 } 466 467 } // end while 467 } // end chdev_se quencial_server()468 } // end chdev_server_func() 468 469 469 470 ////////////////////////////////////////
Note: See TracChangeset
for help on using the changeset viewer.