Changeset ba95e8f in mainline for uspace/lib/libdrv


Ignore:
Timestamp:
2010-05-06T10:31:02Z (15 years ago)
Author:
Lenka Trochtova <trochtova.lenka@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
ca97cad
Parents:
bb864a0
Message:

fixed some bugs; now it is possible to read from serial port using character interface, this might be tested with the test_serial application

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/libdrv/generic/remote_char.c

    rbb864a0 rba95e8f  
    5858{       
    5959        char_iface_t *char_iface = (char_iface_t *)iface;
     60        ipc_callid_t cid;
    6061       
    6162        size_t len;
    62         if (!async_data_read_receive(&callid, &len)) {
     63        if (!async_data_read_receive(&cid, &len)) {
    6364                // TODO handle protocol error
    6465                ipc_answer_0(callid, EINVAL);
     
    6768       
    6869        if (!char_iface->read) {
    69                 async_data_read_finalize(callid, NULL, 0);
     70                async_data_read_finalize(cid, NULL, 0);
    7071                ipc_answer_0(callid, ENOTSUP);
    7172                return;
     
    8081       
    8182        if (ret < 0) { // some error occured
    82                 async_data_read_finalize(callid, buf, 0);
     83                async_data_read_finalize(cid, buf, 0);
    8384                ipc_answer_0(callid, ret);
    8485                return;
    8586        }
    8687       
    87         printf("remote_char_read - async_data_read_finalize\n");
    88         async_data_read_finalize(callid, buf, ret);
    89         printf("remote_char_read - ipc_answer_0(callid, EOK);\n");
    90         ipc_answer_0(callid, EOK);     
     88        async_data_read_finalize(cid, buf, ret);
     89        ipc_answer_1(callid, EOK, ret);
    9190}
    9291
     
    117116                ipc_answer_0(callid, ret);
    118117        } else {
    119                 ipc_answer_0(callid, EOK);
     118                ipc_answer_1(callid, EOK, ret);
    120119        }
    121120}
Note: See TracChangeset for help on using the changeset viewer.