source: soft/giet_vm/giet_drivers/icu_driver.h @ 260

Last change on this file since 260 was 258, checked in by alain, 11 years ago

This is a major release, including a deep restructuration of code.
The main evolutions are

  • use of the Tsar preloader to load the GIET boot-loader from disk
  • introduction of a FAT32 file system library,
  • use of this fat32 library by the boot-loader to load the map.bin data structure, and the various .elf files
  • reorganisation of drivers (one file per peripheral).
  • introduction of drivers for new peripherals: vci_chbuf_dma and vci_multi_ahci.
  • introduction of a new physical memory allocator in the boot code.

This release has been tested on the tsar_generic_iob architecture,
for the two following mappings: 4c_1p_iob_four.xml and 4c_1p_iob_sort.xml

File size: 1.6 KB
Line 
1///////////////////////////////////////////////////////////////////////////////////
2// File     : icu_driver.h
3// Date     : 01/11/2013
4// Author   : alain greiner
5// Copyright (c) UPMC-LIP6
6///////////////////////////////////////////////////////////////////////////////////
7
8#ifndef _GIET_ICU_DRIVER_H_
9#define _GIET_ICU_DRIVER_H_
10
11///////////////////////////////////////////////////////////////////////////////////
12// ICU registers offsets
13///////////////////////////////////////////////////////////////////////////////////
14
15enum ICU_registers
16{
17    ICU_INT         = 0,
18    ICU_MASK        = 1,
19    ICU_MASK_SET    = 2,
20    ICU_MASK_CLEAR  = 3,
21    ICU_IT_VECTOR   = 4,
22    /**/
23    ICU_END         = 5,
24    ICU_SPAN        = 8,
25};
26
27///////////////////////////////////////////////////////////////////////////////////
28// ICU and XICU access functions
29///////////////////////////////////////////////////////////////////////////////////
30
31extern unsigned int _icu_get_index( unsigned int cluster_id, 
32                                    unsigned int proc_id, 
33                                    unsigned int * buffer );
34
35extern unsigned int _icu_set_mask( unsigned int cluster_id,
36                                   unsigned int proc_id,
37                                   unsigned int value );
38
39///////////////////////////////////////////////////////////////////////////////////
40
41#endif
42
43// Local Variables:
44// tab-width: 4
45// c-basic-offset: 4
46// c-file-offsets:((innamespace . 0)(inline-open . 0))
47// indent-tabs-mode: nil
48// End:
49// vim: filetype=c:expandtab:shiftwidth=4:tabstop=4:softtabstop=4
50
Note: See TracBrowser for help on using the repository browser.