Subversion Repositories HelenOS

Rev

Rev 2801 | Rev 2806 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2801 svoboda 1
#include <stdio.h>
2
#include <unistd.h>
3
#include <ipc/ipc.h>
4
#include "../tester.h"
5
 
6
 
7
char * test_debug1(bool quiet)
8
{
9
    int taskid;
10
    int rc;
11
    int phoneid;
12
    int i;
2805 svoboda 13
    unsigned sc_args[6];
14
    unsigned copied;
15
    unsigned ev_type;
16
    unsigned sc_id;
17
    int sc_rc;
2801 svoboda 18
 
19
    printf("running debug1 test\n");
20
    taskid = 12;
21
    printf("ipc_connect_task(%d)...\n", taskid);
22
    rc = ipc_connect_task(taskid);
23
    printf("-> %d\n", rc);
24
    phoneid = rc;
25
 
26
    printf("send IPC_M_DEBUG_BEGIN message\n");
27
    rc = ipc_call_sync_0_0(phoneid, IPC_M_DEBUG_BEGIN);
28
    printf("-> %d\n", rc);
29
 
30
    while (1) {
2805 svoboda 31
        rc = ipc_call_sync_0_3(phoneid, IPC_M_DEBUG_GO, &ev_type,
32
            &sc_id, &sc_rc);
33
        rc = ipc_call_sync_3_1(phoneid, IPC_M_DEBUG_ARGS_READ, NULL,
34
            sc_args, 6 * sizeof(unsigned), &copied);
35
        if (rc >= 0) {
36
            printf("id %u(%u, %u, %u, %u, %u, %u) -> %d\n",
37
                sc_id,
38
                sc_args[0], sc_args[1], sc_args[2],
39
                sc_args[3], sc_args[4], sc_args[5],
40
                sc_rc);
41
        }
2801 svoboda 42
    }
43
 
44
    printf("done\n");
45
    return NULL;
46
}