summaryrefslogtreecommitdiff
path: root/cesar/cp/av/cco/region/src/region.c
blob: 98673c1bfddf96de0c6f8554fc4128edb1012383 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/* Cesar project {{{
 *
 * Copyright (C) 2009 Spidcom
 *
 * <<<Licence>>>
 *
 * }}} */
/**
 * \file    cp/av/cco/region/src/region.c
 * \brief   HomePlug AV region manager.
 * \ingroup cp_av
 */
#include "common/std.h"
#include "mac/common/timings.h"
#include "cp/av/cco/region/region.h"
#include "cp/pwl/pwl.h"

#include "cp/inc/context.h"

void
cp_av_cco_region_default (cp_t *ctx)
{
    cp_cco_region_alloc_t *region;
    dbg_assert (ctx);

    /* Create a default region. */
    region = cp_cco_region_alloc_init (ctx);
    region->type = CP_CCO_REGION_TYPE_SHARED_CSMA;
    region->end_time_atu = MAC_TCK_TO_ATU(CP_PWL_BP_50);
    cp_cco_region_alloc_add (ctx, &ctx->region.region_list, region);
    slab_release (region);
}

void
cp_av_cco_region_uninit (cp_t *ctx)
{
    dbg_assert (ctx);
    cp_cco_region_uninit (ctx);
}