master/module.c
changeset 1312 74853e018898
parent 1279 6911450535b7
child 1313 ed15eef57d5c
equal deleted inserted replaced
1311:bf7c62bc533f 1312:74853e018898
   463 
   463 
   464 /******************************************************************************
   464 /******************************************************************************
   465  *  Realtime interface
   465  *  Realtime interface
   466  *****************************************************************************/
   466  *****************************************************************************/
   467 
   467 
   468 ec_master_t *ecrt_request_master(unsigned int master_index)
   468 /** Request a master.
       
   469  *
       
   470  * Same as ecrt_request_master(), but with ERR_PTR() return value.
       
   471  */
       
   472 ec_master_t *ecrt_request_master_err(unsigned int master_index)
   469 {
   473 {
   470     ec_master_t *master, *errptr = NULL;
   474     ec_master_t *master, *errptr = NULL;
   471 
   475 
   472     EC_INFO("Requesting master %u...\n", master_index);
   476     EC_INFO("Requesting master %u...\n", master_index);
   473 
   477 
   526     module_put(master->main_device.module);
   530     module_put(master->main_device.module);
   527  out_release:
   531  out_release:
   528     master->reserved = 0;
   532     master->reserved = 0;
   529  out_return:
   533  out_return:
   530     return errptr;
   534     return errptr;
       
   535 }
       
   536 
       
   537 /*****************************************************************************/
       
   538 
       
   539 ec_master_t *ecrt_request_master(unsigned int master_index)
       
   540 {
       
   541     ec_master_t *master = ecrt_request_master_err(master_index);
       
   542     return IS_ERR(master) ? NULL : master;
   531 }
   543 }
   532 
   544 
   533 /*****************************************************************************/
   545 /*****************************************************************************/
   534 
   546 
   535 void ecrt_release_master(ec_master_t *master)
   547 void ecrt_release_master(ec_master_t *master)