examples/mini/mini.c
changeset 641 811952909e11
parent 637 d5d04c868e0e
child 643 78929d878b2c
equal deleted inserted replaced
640:16e9ad7d8e12 641:811952909e11
    65 static void *r_ana_out;
    65 static void *r_ana_out;
    66 static void *r_count;
    66 static void *r_count;
    67 static void *r_freq;
    67 static void *r_freq;
    68 
    68 
    69 #if 1
    69 #if 1
    70 ec_pdo_reg_t domain1_pdos[] = {
    70 ec_pdo_reg_t domain1_pdo_regs[] = {
    71     {"2", Beckhoff_EL2004_Outputs,   &r_dig_out},
    71     {"2", Beckhoff_EL2004_Outputs,   &r_dig_out},
    72     {"3", Beckhoff_EL4132_Output1,   &r_ana_out},
    72     {"3", Beckhoff_EL4132_Output1,   &r_ana_out},
    73     {"4", Beckhoff_EL5101_Value,     &r_count},
    73     {"4", Beckhoff_EL5101_Value,     &r_count},
    74     {"4", Beckhoff_EL5101_Frequency, &r_freq},
    74     {"4", Beckhoff_EL5101_Frequency, &r_freq},
    75     {}
    75     {}
   177         goto out_release_master;
   177         goto out_release_master;
   178     }
   178     }
   179 
   179 
   180 #if 1
   180 #if 1
   181     printk(KERN_INFO PFX "Configuring alternative PDO mapping...\n");
   181     printk(KERN_INFO PFX "Configuring alternative PDO mapping...\n");
   182     if (!(slave = ecrt_master_get_slave(master, "4")))
   182     if (!(slave = ecrt_master_get_slave(master, "4", Beckhoff_EL5101)))
   183         goto out_release_master;
   183         goto out_release_master;
   184 
   184 
   185     if (ecrt_slave_pdo_mapping(slave, EC_DIR_INPUT, 2, 0x1A00, 0x1A02))
   185     if (ecrt_slave_pdo_mapping(slave, EC_DIR_INPUT, 2, 0x1A00, 0x1A02))
   186         goto out_release_master;
   186         goto out_release_master;
   187 #endif
   187 #endif
   188 
   188 
   189     printk(KERN_INFO PFX "Registering PDOs...\n");
   189     printk(KERN_INFO PFX "Registering PDOs...\n");
   190 #if 1
   190 #if 1
   191     if (ecrt_domain_register_pdo_list(domain1, domain1_pdos)) {
   191     if (ecrt_domain_register_pdo_list(domain1, domain1_pdo_regs)) {
   192         printk(KERN_ERR PFX "PDO registration failed!\n");
   192         printk(KERN_ERR PFX "PDO registration failed!\n");
   193         goto out_release_master;
   193         goto out_release_master;
   194     }
   194     }
   195 #endif
   195 #endif
   196 
   196 
   197 #ifdef KBUS
   197 #ifdef KBUS
   198     if (!ecrt_domain_register_pdo_range(domain1, "0", Beckhoff_BK1120,
   198     if (!(slave = ecrt_master_get_slave(master, "0", Beckhoff_BK1120)))
   199                                         EC_DIR_OUTPUT, 0, 4, &r_outputs)) {
   199         goto out_release_master;
       
   200     
       
   201     if (!ecrt_domain_register_pdo_range(
       
   202                 domain1, slave, EC_DIR_OUTPUT, 0, 4, &r_outputs)) {
   200         printk(KERN_ERR PFX "PDO registration failed!\n");
   203         printk(KERN_ERR PFX "PDO registration failed!\n");
   201         goto out_release_master;
   204         goto out_release_master;
   202     }
   205     }
   203     if (!ecrt_domain_register_pdo_range(domain1, "0", Beckhoff_BK1120,
   206     
   204                                         EC_DIR_INPUT, 0, 4, &r_inputs)) {
   207     if (!ecrt_domain_register_pdo_range(
       
   208                 domain1, slave, EC_DIR_INPUT, 0, 4, &r_inputs)) {
   205         printk(KERN_ERR PFX "PDO registration failed!\n");
   209         printk(KERN_ERR PFX "PDO registration failed!\n");
   206         goto out_release_master;
   210         goto out_release_master;
   207     }
   211     }
   208 #endif
   212 #endif
   209 
   213 
   210 #if 0
   214 #if 0
   211     if (!(slave = ecrt_master_get_slave(master, "4")))
   215     if (!(slave = ecrt_master_get_slave(master, "4", Beckhoff_EL5001)))
   212         goto out_release_master;
   216         goto out_release_master;
   213 
   217 
   214     if (ecrt_slave_conf_sdo8(slave, 0x4061, 1, 0))
   218     if (ecrt_slave_conf_sdo8(slave, 0x4061, 1, 0))
   215         goto out_release_master;
   219         goto out_release_master;
   216 #endif
   220 #endif