82 int EtherCAT_read_value(EtherCAT_slave_t *slave, |
81 int EtherCAT_read_value(EtherCAT_slave_t *slave, |
83 unsigned int channel) |
82 unsigned int channel) |
84 { |
83 { |
85 if (!slave->desc) |
84 if (!slave->desc) |
86 { |
85 { |
87 EC_DBG(KERN_WARNING "EtherCAT: Reading failed on slave %04X (addr %0X)" |
86 printk(KERN_WARNING "EtherCAT: Reading failed on slave %04X (addr %0X)" |
88 " - Slave has no description.\n", |
87 " - Slave has no description.\n", |
89 slave->station_address, (unsigned int) slave); |
88 slave->station_address, (unsigned int) slave); |
90 return 0; |
89 return 0; |
91 } |
90 } |
92 |
91 |
93 if (!slave->desc->read) |
92 if (!slave->desc->read) |
94 { |
93 { |
95 EC_DBG(KERN_WARNING "EtherCAT: Reading failed on slave %04X (addr %0X)" |
94 printk(KERN_WARNING "EtherCAT: Reading failed on slave %04X (addr %0X)" |
96 " - Slave type (%s %s) has no read method.\n", |
95 " - Slave type (%s %s) has no read method.\n", |
97 slave->station_address, (unsigned int) slave, |
96 slave->station_address, (unsigned int) slave, |
98 slave->desc->vendor_name, slave->desc->product_name); |
97 slave->desc->vendor_name, slave->desc->product_name); |
99 return 0; |
98 return 0; |
100 } |
99 } |
101 |
100 |
102 if (channel >= slave->desc->channels) |
101 if (channel >= slave->desc->channels) |
103 { |
102 { |
104 EC_DBG(KERN_WARNING "EtherCAT: Reading failed on slave %4X (addr %0X)" |
103 printk(KERN_WARNING "EtherCAT: Reading failed on slave %4X (addr %0X)" |
105 " - Type (%s %s) has no channel %i.\n", |
104 " - Type (%s %s) has no channel %i.\n", |
106 slave->station_address, (unsigned int) slave, |
105 slave->station_address, (unsigned int) slave, |
107 slave->desc->vendor_name, slave->desc->product_name, |
106 slave->desc->vendor_name, slave->desc->product_name, |
108 channel); |
107 channel); |
109 return 0; |
108 return 0; |
132 unsigned int channel, |
131 unsigned int channel, |
133 int value) |
132 int value) |
134 { |
133 { |
135 if (!slave->desc) |
134 if (!slave->desc) |
136 { |
135 { |
137 EC_DBG(KERN_WARNING "EtherCAT: Writing failed on slave %04X (addr %0X)" |
136 printk(KERN_WARNING "EtherCAT: Writing failed on slave %04X (addr %0X)" |
138 " - Slave has no description.\n", |
137 " - Slave has no description.\n", |
139 slave->station_address, (unsigned int) slave); |
138 slave->station_address, (unsigned int) slave); |
140 return; |
139 return; |
141 } |
140 } |
142 |
141 |
143 if (!slave->desc->write) |
142 if (!slave->desc->write) |
144 { |
143 { |
145 EC_DBG(KERN_WARNING "EtherCAT: Writing failed on slave %04X (addr %0X)" |
144 printk(KERN_WARNING "EtherCAT: Writing failed on slave %04X (addr %0X)" |
146 " - Type (%s %s) has no write method.\n", |
145 " - Type (%s %s) has no write method.\n", |
147 slave->station_address, (unsigned int) slave, |
146 slave->station_address, (unsigned int) slave, |
148 slave->desc->vendor_name, slave->desc->product_name); |
147 slave->desc->vendor_name, slave->desc->product_name); |
149 return; |
148 return; |
150 } |
149 } |
151 |
150 |
152 if (channel >= slave->desc->channels) |
151 if (channel >= slave->desc->channels) |
153 { |
152 { |
154 EC_DBG(KERN_WARNING "EtherCAT: Writing failed on slave %4X (addr %0X)" |
153 printk(KERN_WARNING "EtherCAT: Writing failed on slave %4X (addr %0X)" |
155 " - Type (%s %s) has no channel %i.\n", |
154 " - Type (%s %s) has no channel %i.\n", |
156 slave->station_address, (unsigned int) slave, |
155 slave->station_address, (unsigned int) slave, |
157 slave->desc->vendor_name, slave->desc->product_name, |
156 slave->desc->vendor_name, slave->desc->product_name, |
158 channel); |
157 channel); |
159 return; |
158 return; |