1/**
2 * \file
3 * \brief e1000 driver domain.
4 *
5 * Implements a simple driver domain for e1000
6 */
7/*
8 * Copyright (c) 2016, ETH Zurich.
9 * All rights reserved.
10 *
11 * This file is distributed under the terms in the attached LICENSE file.
12 * If you do not find this file, copies can be found by writing to:
13 * ETH Zurich D-INFK, Universitaetstr. 6, CH-8092 Zurich. Attn: Systems Group.
14 */
15
16#include <stdlib.h>
17#include <stdio.h>
18#include <string.h>
19#include <assert.h>
20
21#include <barrelfish/barrelfish.h>
22#include <driverkit/driverkit.h>
23#include <barrelfish/nameservice_client.h>
24
25/**
26 * Instantiate the driver domain.
27 *
28 * Connect to Kaluga and wait for eventual ddomain requests.
29 */
30int main(int argc, char** argv)
31{
32    iref_t kaluga_iref = 0;
33    errval_t err = nameservice_blocking_lookup("ddomain_controller", &kaluga_iref);
34    assert(err_is_ok(err));
35    err = ddomain_communication_init(kaluga_iref, atoi(argv[argc-1]));
36    assert(err_is_ok(err));
37
38    while(1) {
39        err = event_dispatch(get_default_waitset());
40        if (err_is_fail(err)) {
41            USER_PANIC_ERR(err, "error in event_dispatch for messages_wait_and_handle_next hack");
42        }
43    }
44
45    return 0;
46}
47