master/slave.c
changeset 188 c0e49f4a1c07
parent 185 af570302dcee
child 190 4e32bcc6b361
equal deleted inserted replaced
187:01613bde2796 188:c0e49f4a1c07
    27 ssize_t ec_show_slave_attribute(struct kobject *, struct attribute *, char *);
    27 ssize_t ec_show_slave_attribute(struct kobject *, struct attribute *, char *);
    28 
    28 
    29 /*****************************************************************************/
    29 /*****************************************************************************/
    30 
    30 
    31 EC_SYSFS_READ_ATTR(ring_position);
    31 EC_SYSFS_READ_ATTR(ring_position);
    32 EC_SYSFS_READ_ATTR(station_address);
    32 EC_SYSFS_READ_ATTR(coupler_address);
    33 EC_SYSFS_READ_ATTR(vendor_name);
    33 EC_SYSFS_READ_ATTR(vendor_name);
    34 EC_SYSFS_READ_ATTR(product_name);
    34 EC_SYSFS_READ_ATTR(product_name);
    35 EC_SYSFS_READ_ATTR(product_desc);
    35 EC_SYSFS_READ_ATTR(product_desc);
    36 EC_SYSFS_READ_ATTR(type);
    36 EC_SYSFS_READ_ATTR(type);
    37 
    37 
    38 static struct attribute *def_attrs[] = {
    38 static struct attribute *def_attrs[] = {
    39     &attr_ring_position,
    39     &attr_ring_position,
    40     &attr_station_address,
    40     &attr_coupler_address,
    41     &attr_vendor_name,
    41     &attr_vendor_name,
    42     &attr_product_name,
    42     &attr_product_name,
    43     &attr_product_desc,
    43     &attr_product_desc,
    44     &attr_type,
    44     &attr_type,
    45     NULL,
    45     NULL,
    87         kobject_put(&slave->kobj);
    87         kobject_put(&slave->kobj);
    88         return -1;
    88         return -1;
    89     }
    89     }
    90 
    90 
    91     slave->master = master;
    91     slave->master = master;
    92     slave->buscoupler_index = 0;
    92     slave->coupler_index = 0;
    93     slave->index_after_buscoupler = 0xFFFF;
    93     slave->coupler_subindex = 0xFFFF;
    94     slave->base_type = 0;
    94     slave->base_type = 0;
    95     slave->base_revision = 0;
    95     slave->base_revision = 0;
    96     slave->base_build = 0;
    96     slave->base_build = 0;
    97     slave->base_fmmu_count = 0;
    97     slave->base_fmmu_count = 0;
    98     slave->base_sync_count = 0;
    98     slave->base_sync_count = 0;
  1209     ec_slave_t *slave = container_of(kobj, ec_slave_t, kobj);
  1209     ec_slave_t *slave = container_of(kobj, ec_slave_t, kobj);
  1210 
  1210 
  1211     if (attr == &attr_ring_position) {
  1211     if (attr == &attr_ring_position) {
  1212         return sprintf(buffer, "%i\n", slave->ring_position);
  1212         return sprintf(buffer, "%i\n", slave->ring_position);
  1213     }
  1213     }
  1214     else if (attr == &attr_station_address) {
  1214     else if (attr == &attr_coupler_address) {
  1215         return sprintf(buffer, "%i\n", slave->station_address);
  1215         return sprintf(buffer, "%i:%i\n", slave->coupler_index,
       
  1216                        slave->coupler_subindex);
  1216     }
  1217     }
  1217     else if (attr == &attr_vendor_name) {
  1218     else if (attr == &attr_vendor_name) {
  1218         if (slave->type)
  1219         if (slave->type)
  1219             return sprintf(buffer, "%s\n", slave->type->vendor_name);
  1220             return sprintf(buffer, "%s\n", slave->type->vendor_name);
  1220     }
  1221     }