Changeset f2d88f3 in mainline for uspace/drv/char/pl050/pl050.c
- Timestamp:
- 2019-01-04T21:22:17Z (6 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- af7b85b
- Parents:
- 06412ba
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/drv/char/pl050/pl050.c
r06412ba rf2d88f3 59 59 static errno_t pl050_fun_offline(ddf_fun_t *); 60 60 static void pl050_char_conn(ipc_call_t *, void *); 61 static errno_t pl050_read(chardev_srv_t *, void *, size_t, size_t *); 61 static errno_t pl050_read(chardev_srv_t *, void *, size_t, size_t *, 62 chardev_flags_t); 62 63 static errno_t pl050_write(chardev_srv_t *, const void *, size_t, size_t *); 63 64 … … 242 243 243 244 static errno_t pl050_read(chardev_srv_t *srv, void *buffer, size_t size, 244 size_t *nread )245 size_t *nread, chardev_flags_t flags) 245 246 { 246 247 pl050_t *pl050 = (pl050_t *)srv->srvs->sarg; … … 252 253 left = size; 253 254 while (left > 0) { 254 while (left == size && pl050->buf_rp == pl050->buf_wp) 255 while ((flags & chardev_f_nonblock) == 0 && 256 left == size && pl050->buf_rp == pl050->buf_wp) 255 257 fibril_condvar_wait(&pl050->buf_cv, &pl050->buf_lock); 256 258 if (pl050->buf_rp == pl050->buf_wp)
Note:
See TracChangeset
for help on using the changeset viewer.