Changeset 5d50c419 in mainline for uspace/drv/hid/xtkbd/xtkbd.c
- Timestamp:
- 2017-11-19T21:14:19Z (6 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- c657bd7
- Parents:
- 75fcf9b
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/hid/xtkbd/xtkbd.c
r75fcf9b r5d50c419 208 208 { 209 209 xt_kbd_t *kbd = arg; 210 size_t nread; 211 int rc; 210 212 211 213 while (true) { … … 214 216 215 217 uint8_t code = 0; 216 ssize_t size = chardev_read(kbd->chardev, &code, 1);217 if ( size != 1)218 rc = chardev_read(kbd->chardev, &code, 1, &nread); 219 if (rc != EOK) 218 220 return EIO; 219 221 … … 227 229 map_size = sizeof(scanmap_e0) / sizeof(unsigned int); 228 230 229 size = chardev_read(kbd->chardev, &code, 1);230 if ( size != 1)231 rc = chardev_read(kbd->chardev, &code, 1, &nread); 232 if (rc != EOK) 231 233 return EIO; 232 234 … … 234 236 235 237 if (code == 0x2a) { /* Print Screen */ 236 size = chardev_read(kbd->chardev, &code, 1);237 if ( size != 1)238 rc = chardev_read(kbd->chardev, &code, 1, &nread); 239 if (rc != EOK) 238 240 return EIO; 239 241 … … 241 243 continue; 242 244 243 size = chardev_read(kbd->chardev, &code, 1);244 if ( size != 1)245 rc = chardev_read(kbd->chardev, &code, 1, &nread); 246 if (rc != EOK) 245 247 return EIO; 246 248 … … 252 254 253 255 if (code == 0x46) { /* Break */ 254 size = chardev_read(kbd->chardev, &code, 1);255 if ( size != 1)256 rc = chardev_read(kbd->chardev, &code, 1, &nread); 257 if (rc != EOK) 256 258 return EIO; 257 259 … … 259 261 continue; 260 262 261 size = chardev_read(kbd->chardev, &code, 1);262 if ( size != 1)263 rc = chardev_read(kbd->chardev, &code, 1, &nread); 264 if (rc != EOK) 263 265 return EIO; 264 266 … … 272 274 /* Extended special set */ 273 275 if (code == KBD_SCANCODE_SET_EXTENDED_SPECIAL) { 274 size = chardev_read(kbd->chardev, &code, 1);275 if ( size != 1)276 rc = chardev_read(kbd->chardev, &code, 1, &nread); 277 if (rc != EOK) 276 278 return EIO; 277 279 … … 279 281 continue; 280 282 281 size = chardev_read(kbd->chardev, &code, 1);282 if ( size != 1)283 rc = chardev_read(kbd->chardev, &code, 1, &nread); 284 if (rc != EOK) 283 285 return EIO; 284 286 … … 286 288 continue; 287 289 288 size = chardev_read(kbd->chardev, &code, 1);289 if ( size != 1)290 rc = chardev_read(kbd->chardev, &code, 1, &nread); 291 if (rc != EOK) 290 292 return EIO; 291 293 … … 293 295 continue; 294 296 295 size = chardev_read(kbd->chardev, &code, 1);296 if ( size != 1)297 rc = chardev_read(kbd->chardev, &code, 1, &nread); 298 if (rc != EOK) 297 299 return EIO; 298 300 … … 300 302 continue; 301 303 302 size = chardev_read(kbd->chardev, &code, 1);303 if ( size != 1)304 rc = chardev_read(kbd->chardev, &code, 1, &nread); 305 if (rc != EOK) 304 306 return EIO; 305 307 … … 350 352 uint8_t cmds[] = { KBD_CMD_SET_LEDS, status }; 351 353 352 ssize_t size = chardev_write(kbd->chardev, cmds, sizeof(cmds)); 353 354 async_answer_0(icallid, size < 0 ? size : EOK); 354 size_t nwr; 355 int rc = chardev_write(kbd->chardev, cmds, sizeof(cmds), &nwr); 356 if (nwr != sizeof(cmds)) 357 rc = EIO; 358 359 async_answer_0(icallid, rc); 355 360 break; 356 361 }
Note:
See TracChangeset
for help on using the changeset viewer.