equal
deleted
inserted
replaced
141 (u32) filp, (u32) cmd, (u32) arg); |
141 (u32) filp, (u32) cmd, (u32) arg); |
142 |
142 |
143 // FIXME lock |
143 // FIXME lock |
144 |
144 |
145 switch (cmd) { |
145 switch (cmd) { |
146 case EC_IOCTL_SLAVE_COUNT: |
146 case EC_IOCTL_MASTER: |
|
147 { |
|
148 ec_ioctl_master_t data; |
|
149 |
|
150 data.slave_count = master->slave_count; |
|
151 data.mode = (uint8_t) master->mode; |
|
152 |
|
153 memcpy(data.devices[0].address, master->main_mac, ETH_ALEN); |
|
154 data.devices[0].attached = master->main_device.dev ? 1 : 0; |
|
155 data.devices[0].tx_count = master->main_device.tx_count; |
|
156 data.devices[0].rx_count = master->main_device.rx_count; |
|
157 memcpy(data.devices[1].address, master->backup_mac, ETH_ALEN); |
|
158 data.devices[1].attached = master->backup_device.dev ? 1 : 0; |
|
159 data.devices[1].tx_count = master->backup_device.tx_count; |
|
160 data.devices[1].rx_count = master->backup_device.rx_count; |
|
161 |
|
162 if (copy_to_user((void __user *) arg, &data, sizeof(data))) { |
|
163 retval = -EFAULT; |
|
164 break; |
|
165 } |
|
166 |
|
167 break; |
|
168 } |
|
169 |
147 retval = master->slave_count; |
170 retval = master->slave_count; |
148 break; |
171 break; |
149 |
172 |
150 case EC_IOCTL_SLAVE: |
173 case EC_IOCTL_SLAVE: |
151 { |
174 { |
447 break; |
470 break; |
448 } |
471 } |
449 break; |
472 break; |
450 } |
473 } |
451 |
474 |
452 case EC_IOCTL_DEBUG_LEVEL: |
475 case EC_IOCTL_SET_DEBUG: |
453 if (ec_master_debug_level(master, (unsigned int) arg)) { |
476 if (ec_master_debug_level(master, (unsigned int) arg)) { |
454 retval = -EINVAL; |
477 retval = -EINVAL; |
455 } |
478 } |
456 break; |
479 break; |
457 |
480 |