1#ifndef _ASM_CRIS_ARCH_ARBITER_H
2#define _ASM_CRIS_ARCH_ARBITER_H
3
4#define EXT_REGION 0
5#define INT_REGION 1
6
7typedef void (watch_callback)(void);
8
9enum
10{
11  arbiter_all_dmas = 0x3ff,
12  arbiter_cpu = 0xc00,
13  arbiter_all_clients = 0x3fff
14};
15
16enum
17{
18  arbiter_all_read = 0x55,
19  arbiter_all_write = 0xaa,
20  arbiter_all_accesses = 0xff
21};
22
23int crisv32_arbiter_allocate_bandwidth(int client, int region,
24				       unsigned long bandwidth);
25int crisv32_arbiter_watch(unsigned long start, unsigned long size,
26                          unsigned long clients, unsigned long accesses,
27                          watch_callback* cb);
28int crisv32_arbiter_unwatch(int id);
29
30#endif
31