master/module.c
changeset 104 052bc82d5442
parent 101 b0c19892145a
child 111 9963537ec776
equal deleted inserted replaced
103:d2a8adde27c4 104:052bc82d5442
   143 
   143 
   144    \return 0 wenn alles ok, oder < 0 wenn bereits ein Gerät registriert
   144    \return 0 wenn alles ok, oder < 0 wenn bereits ein Gerät registriert
   145            oder das Geraet nicht geöffnet werden konnte.
   145            oder das Geraet nicht geöffnet werden konnte.
   146 */
   146 */
   147 
   147 
   148 ec_device_t *EtherCAT_dev_register(unsigned int master_index,
   148 ec_device_t *ecdev_register(unsigned int master_index,
   149                                    /**< Index des EtherCAT-Masters */
   149                             /**< Index des EtherCAT-Masters */
   150                                    struct net_device *net_dev,
   150                             struct net_device *net_dev,
   151                                    /**< net_device des EtherCAT-Gerätes */
   151                             /**< net_device des EtherCAT-Gerätes */
   152                                    irqreturn_t (*isr)(int, void *,
   152                             ec_isr_t isr,
   153                                                       struct pt_regs *),
   153                             /**< Interrupt-Service-Routine */
   154                                    /**< Interrupt-Service-Routine */
   154                             struct module *module
   155                                    struct module *module
   155                             /**< Zeiger auf das Modul */
   156                                    /**< Zeiger auf das Modul */
   156                             )
   157                                    )
       
   158 {
   157 {
   159     ec_master_t *master;
   158     ec_master_t *master;
   160 
   159 
   161     if (!net_dev) {
   160     if (!net_dev) {
   162         EC_WARN("Device is NULL!\n");
   161         EC_WARN("Device is NULL!\n");
   191 
   190 
   192 /**
   191 /**
   193    Hebt die Registrierung eines EtherCAT-Gerätes auf.
   192    Hebt die Registrierung eines EtherCAT-Gerätes auf.
   194 */
   193 */
   195 
   194 
   196 void EtherCAT_dev_unregister(unsigned int master_index,
   195 void ecdev_unregister(unsigned int master_index,
   197                              /**< Index des EtherCAT-Masters */
   196                       /**< Index des EtherCAT-Masters */
   198                              ec_device_t *device
   197                       ec_device_t *device
   199                              /**< EtherCAT-Geraet */
   198                       /**< EtherCAT-Geraet */
   200                              )
   199                       )
   201 {
   200 {
   202     ec_master_t *master;
   201     ec_master_t *master;
   203 
   202 
   204     if (master_index >= ec_master_count) {
   203     if (master_index >= ec_master_count) {
   205         EC_WARN("Master %i does not exist!\n", master_index);
   204         EC_WARN("Master %i does not exist!\n", master_index);
   230    Gibt einen Zeiger auf den reservierten EtherCAT-Master zurueck.
   229    Gibt einen Zeiger auf den reservierten EtherCAT-Master zurueck.
   231 
   230 
   232    \return Zeiger auf EtherCAT-Master oder NULL, wenn Parameter ungueltig.
   231    \return Zeiger auf EtherCAT-Master oder NULL, wenn Parameter ungueltig.
   233 */
   232 */
   234 
   233 
   235 ec_master_t *EtherCAT_rt_request_master(unsigned int index
   234 ec_master_t *ecrt_request_master(unsigned int index
   236                                         /**< EtherCAT-Master-Index */
   235                                  /**< EtherCAT-Master-Index */
   237                                         )
   236                                  )
   238 {
   237 {
   239     ec_master_t *master;
   238     ec_master_t *master;
   240 
   239 
   241     EC_INFO("===== Starting master %i... =====\n", index);
   240     EC_INFO("===== Starting master %i... =====\n", index);
   242 
   241 
   295 
   294 
   296 /**
   295 /**
   297    Gibt einen zuvor angeforderten EtherCAT-Master wieder frei.
   296    Gibt einen zuvor angeforderten EtherCAT-Master wieder frei.
   298 */
   297 */
   299 
   298 
   300 void EtherCAT_rt_release_master(ec_master_t *master /**< EtherCAT-Masdter */)
   299 void ecrt_release_master(ec_master_t *master /**< EtherCAT-Masdter */)
   301 {
   300 {
   302     unsigned int i, found;
   301     unsigned int i, found;
   303 
   302 
   304     found = 0;
   303     found = 0;
   305     for (i = 0; i < ec_master_count; i++) {
   304     for (i = 0; i < ec_master_count; i++) {
   329 /*****************************************************************************/
   328 /*****************************************************************************/
   330 
   329 
   331 module_init(ec_init_module);
   330 module_init(ec_init_module);
   332 module_exit(ec_cleanup_module);
   331 module_exit(ec_cleanup_module);
   333 
   332 
   334 EXPORT_SYMBOL(EtherCAT_dev_register);
   333 EXPORT_SYMBOL(ecdev_register);
   335 EXPORT_SYMBOL(EtherCAT_dev_unregister);
   334 EXPORT_SYMBOL(ecdev_unregister);
   336 EXPORT_SYMBOL(EtherCAT_rt_request_master);
   335 EXPORT_SYMBOL(ecrt_request_master);
   337 EXPORT_SYMBOL(EtherCAT_rt_release_master);
   336 EXPORT_SYMBOL(ecrt_release_master);
   338 
   337 
   339 /*****************************************************************************/
   338 /*****************************************************************************/
   340 
   339 
   341 /* Emacs-Konfiguration
   340 /* Emacs-Konfiguration
   342 ;;; Local Variables: ***
   341 ;;; Local Variables: ***